## TextureLayer.TextureLayerPorts

### Introduced

v4.0

### Description

Returns a TextureLayerPortCollection containing each TextureLayerPort object owned by the texture layer.

### C# Syntax

    // get accessor
    TextureLayerPortCollection rtn = TextureLayer.TextureLayerPorts;

### Examples

#### 1. JScript Example

    // This example shows creation of texture layer ports,
    // plus enumerating and removing them.
    oRoot = ActiveProject.ActiveScene.Root;
    oSph = oRoot.AddGeometry( "Sphere", "MeshSurface" );
    oMat = oSph.AddMaterial( "Phong" );
    oPhong = oMat.Shaders(0);
    // Add a layer at the end.
    oLayer = oPhong.CreateTextureLayer( "DirtLayer" );
    // Add some texture layer port connections on this layer.
    oPorts = new Array(3);
    oPorts[0] = oLayer.AddTextureLayerPort( oPhong.parameters( "ambient" ) );
    oPorts[1] = oLayer.AddTextureLayerPort( oPhong.parameters( "diffuse" ) );
    oPorts[2] = oLayer.AddTextureLayerPort( oPhong.parameters( "specular" ) );
    Application.LogMessage( "Created " + oLayer.TextureLayerPorts.count + " ports." );
    for ( i = 0; i < oLayer.TextureLayerPorts.count; i++ )
    {
            oPort = oLayer.TextureLayerPorts(i);
            Application.LogMessage( (i+1) + ": " + oPort );
    }
    oLayer.RemoveTextureLayerPort( oPorts[1] );
    oLayer.RemoveTextureLayerPort( oLayer.fullname + "." + oPorts[2].name );
    count = oLayer.TextureLayerPorts.count;
    Application.LogMessage( "Only " + count + " remain(s) after removal." );
    for ( i = 0; i < count; i++ )
    {
            Application.LogMessage( (i+1) +": " + oLayer.TextureLayerPorts.item(i) );
    }
    // This example should log something like:
    //INFO : "Created 3 ports."
    //INFO : "1: sphere.Material.Phong.DirtLayer.ambient"
    //INFO : "2: sphere.Material.Phong.DirtLayer.diffuse"
    //INFO : "3: sphere.Material.Phong.DirtLayer.specular"
    //INFO : "Only 1 remain(s) after removal."
    //INFO : "1: sphere.Material.Phong.DirtLayer.ambient"

#### 2. VBScript Example

    ' This shows creation of texture layer ports,
    ' plus enumerating and removing them.
    set oRoot = ActiveProject.ActiveScene.Root
    set oSph = oRoot.AddGeometry( "Sphere", "MeshSurface" )
    set oMat = oSph.AddMaterial( "Phong" )
    set oPhong = oMat.Shaders(0)
    ' Add a layer at the end.
    set oLayer = oPhong.CreateTextureLayer( "DirtLayer" )
    ' Add some texture layer port connections on this layer.
    dim oPorts(2)
    set oPorts(0) = oLayer.AddTextureLayerPort( oPhong.parameters( "ambient" ) )
    set oPorts(1) = oLayer.AddTextureLayerPort( oPhong.parameters( "diffuse" ) )
    set oPorts(2) = oLayer.AddTextureLayerPort( oPhong.parameters( "specular" ) )
    logmessage "Created " & oLayer.TextureLayerPorts.count & " ports."
    i = 1
    for each oPort in oLayer.TextureLayerPorts
            logmessage i & ": " & oPort
            i = i + 1
    next
    oLayer.RemoveTextureLayerPort oPorts(1)
    oLayer.RemoveTextureLayerPort oLayer.fullname & "." & oPorts(2).name
    count = oLayer.TextureLayerPorts.count
    logmessage "Only " & count & " remain(s) after removal."
    for i = 0 to count - 1
            logmessage i + 1 & ": " & oLayer.TextureLayerPorts.item(i)
    next
    ' This example should log something like:
    'INFO : "Created 3 ports."
    'INFO : "1: sphere.Material.Phong.DirtLayer.ambient"
    'INFO : "2: sphere.Material.Phong.DirtLayer.diffuse"
    'INFO : "3: sphere.Material.Phong.DirtLayer.specular"
    'INFO : "Only 1 remain(s) after removal."
    'INFO : "1: sphere.Material.Phong.DirtLayer.ambient"

### See Also

TextureLayer.AddTextureLayerPort TextureLayer.RemoveTextureLayerPort