## 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