v4.0
Adds an InputPort to the custom
operator.
Note: When defining a CustomOperator it is good practice to add the
output ports before the input ports. This enables Softimage to
correctly identify I/O ports.
InputPort CustomOperator.AddInputPort( Object in_PortTarget, String in_PortName, Int32 in_portgroup, Int32 in_InsertAt, Int32 in_flags ); |
oReturn = CustomOperator.AddInputPort( PortTarget, [PortName], [PortGroup], [InsertAt], [Flags] ); |
The newly created InputPort.
Parameter | Type | Description |
---|---|---|
PortTarget | Variant | Object or full name of the object to connect to the port. Softimage will remember the full name of the object, but this can be overridden at connection time to connect to a different object (see Operator.Connect and Operator.ConnectToGroup). |
PortName | String | Name of the port
Default Value: The default name is "In" + the Parameter.ScriptName of the object being connected, for example "Inposx". |
PortGroup | Long | Index of the port group.
Default Value: -1 |
InsertAt | Long | Index of the port at a specific index. (Not Implemented)
Default Value: -1 |
Flags | Long | Mask of port group flags described by siPortFlags.
Default Value: 0 |
/* This example illustrates how to use the AddInputPort method to define an input port. */ NewScene( null, false ); var obj = CreatePrim( "Cube", "MeshSurface"); var sop = XSIFactory.CreateScriptedOp( "MyOperator", MyOperator_Update.toString(), "JScript" ) var group1 = sop.AddPortGroup( "MainGroup" ); sop.AddOutputPort( obj.ActivePrimitive, "OutPolygonMesh", group1.Index ); sop.AddInputPort( "cube.polymsh", "InPolygonMesh", group1.Index ); sop.Connect(); // The operator's update function function MyOperator_Update( ctx, out, in1 ) { Application.LogMessage( "MyOperator_Update: " + out.Value ); var aPos = in1.Value.Geometry.Points.PositionArray.toArray(); out.Value.Geometry.Points.PositionArray = aPos; } |