v11.0 (2013)


Adds a new port at the specified location and returns an XSICollection of new port object(s). Most of the time the collection will contain only one port. However, when a port group instance is added then the collection may contain multiple ports.

Scripting Syntax

oReturn = AddPortToICENode2( Port, [InsertLocation] );

Return Value

XSICollection of new port object(s). If you add input port(s), a collection of ICENodeInputPort is returned. If you add output port(s), a collection of ICENodeOutputPort is returned.


Parameter Type Description
Port String The port after or before which to add the new port. The port full name needs to be specified.
InsertLocation siNodePortDataInsertionLocation The relative location where the port will be added.

Default Value: siNodePortDataInsertionLocationBefore


Python Example


# Basic examples to demonstrate how to use AddPortToICENode2.


from siutils import *

si = si()

si.NewScene("", "")

si.CreatePrim("Cone", "MeshSurface", "", "")

si.ApplyOp("ICETree", "cone", "siNode", "", "", 0)

si.AddICENode("$XSI_DSPRESETS\\ICENodes\\BlendNode.Preset", "cone.polymsh.ICETree")

# Add a new port group instance

ports = si.AddPortToICENode2("cone.polymsh.ICETree.BlendNode.value2", C.siNodePortDataInsertionLocationAfter )

for p in ports:

	logf( '%s: %s', si.ClassName( p ), p )

# Output

# INFO : ICENodeInputPort: cone.polymsh.ICETree.BlendNode.value3

# INFO : ICENodeInputPort: cone.polymsh.ICETree.BlendNode.weight3

# Add a new port 

si.AddICENode("$XSI_DSPRESETS\\ICENodes\\BuildArrayNode.Preset", "cone.polymsh.ICETree")

ports = si.AddPortToICENode2("cone.polymsh.ICETree.BuildArrayNode.value1", C.siNodePortDataInsertionLocationBefore )

for p in ports:

	logf( '%s: %s', si.ClassName( p ), p )

# Output	

# INFO : ICENodeInputPort: cone.polymsh.ICETree.BuildArrayNode.value1

See Also

AddAttributeToSetDataICENode AddICECompoundNode AddExposedParamToICECompoundNode AddICENode AddNodeToICECompoundNode CleanDisconnectedICENodes ConnectICENodes CreateICECompoundNode DisconnectICENodePort EditExposedParamInICECompoundNode ExplodeICECompoundNode RemoveAttributeFromSetDataICENode RemoveExposedParamFromICECompoundNode RemoveNodeFromICECompoundNode RemovePortFromICENode