IRIS Inventor Nodes Quick Reference Guide Release 1.0 Copyright 1993, Silicon Graphics, Inc. All rights reserved. Silicon Graphics, the Silicon Graphics logo, and IRIS are registered trademarks, and Inventor and Graphics Library are trademarks of Silicon Graphics. Specifications are subject to change without notice. Table of Contents Section 1 Node Classes by Category 1 Table 1-1 Shape Node Classes 1 Table 1-2 Property Node Classes 2 Table 1-3 Group Node Classes 3 Table 1-4 Light Node Classes 3 Table 1-5 Camera Node Classes 3 Section 2 Inventor Nodes/ File Format Quick Reference 4 Table 2-1 Inventor Nodes/ File Format Quick Reference 4 This document provides reference information on IRIS Inventor nodes. It is especially useful as a quick reference for the Inventor file format. The following sections are included: o A set of tables grouping node classes according to general usage o A quick reference table for nodes 1 Node Classes by Category The tables in this section group Inventor node classes according to usage. The categories are o Shapes o Properties o Groups o Lights o Cameras SoCallback and SoEventCallback, general-purpose nodes, do not fall into any of these categories and are therefore not included in any table. * in the tables indicates an abstract base class. Table 1-1 Shape Node Classes SoCone SoNonIndexedShape* SoCube SoNurbsCurve SoCylinder SoNurbsSurface SoFaceSet SoPointSet SoIndexedFaceSet SoQuadMesh SoIndexedLineSet SoShape* SoIndexedNurbsCurve SoSphere SoIndexedNurbsSurface SoText2 SoIndexedShape* SoText3 SoIndexedTriangleMesh SoTriangleStripSet SoLineSet SoVertexShape* Table 1-2 Property Node Classes SoBaseColor SoProfileCoordinate2 SoComplexity SoProfileCoordinate3 SoCoordinate3 SoResetTransform SoCoordinate4 SoRotation SoDrawStyle SoRotationXYZ SoEnvironment SoScale SoFont SoShapeHints SoInfo SoTexture2 SoLabel SoTexture2Transform SoLightModel SoTextureCoordinate2 SoLinearProfile SoTextureCoordinate-Binding SoMaterial SoTextureCoordinateCube SoMaterialBinding SoTextureCoordinate-Cylinder SoMatrixTransform SoTextureCoordinate-Environment SoNormal SoTextureCoordinate-Function* SoNormalBinding SoTextureCoordinatePlane SoNurbsProfile SoTextureCoordinate-Sphere SoPackedColor SoTransform SoPickStyle SoTranslation SoProfile* SoUnits Table 1-3 Group Node Classes SoArray SoCustomNode SoFile SoGroup SoLayerGroup SoMultipleCopy SoPathSwitch SoSelection SoSeparator SoSwitch Table 1-4 Light Node Classes SoDirectionalLight SoLight* SoPointLight SoSpotLight Table 1-5 Camera Node Classes SoCamera* SoOrthographicCamera SoPerspectiveCamera 2 Inventor Nodes/ File Format Quick Reference Table 2-1 Inventor Nodes/ File Format Quick Reference Node Field Default Value Value Type Value Range Array numElements1 1 SoSFShort > 0 numElements2 1 SoSFShort > 0 numElements3 1 SoSFShort > 0 separation1 1 0 0 SoSFVec3f any separation2 0 1 0 SoSFVec3f any separation3 0 0 1 SoSFVec3f any origin FIRST SoSFEnum FIRST, CENTER, LAST Group node that creates a regular IxJxK array of copies of children, separated in space by arbitrary 3D vectors BaseColor rgb [ 0.8 0.8 0.8 ] SoMFColor 0 - 1 Defines an object's base/diffuse color Callback none none none none Provides custom behavior during action traversal Complexity type OBJECT_SPACE SoSFEnum OBJECT_SPACE SCREEN_SPACE BOUNDING_BOX value 0.5 SoSFFloat 0 - 1 Controls shape complexity Cone parts ALL SoSFBitMask SIDES, BOTTOM, ALL bottomRadius 1 SoSFFloat > 0 height 2 SoSFFloat > 0 Represents a cone shape Coordinate3 point [ 0 0 0 ] SoMFVec3f any Defines coordinates, vertices, or control points for shapes Coordinate4 point [ 0 0 0 1 ] SoMFVec4f any Defines rational coordinates, vertices, or control points for shapes Cube width 2 SoSFFloat > 0 height 2 SoSFFloat > 0 depth 2 SoSFFloat > 0 Represents a cube shape CustomNode className [ "" ] SoMFName any fields [ "" ] SoMFString any customData [ "" ] SoMFString any A user-defined node with custom data Cylinder parts ALL SoSFBitMask SIDES TOP BOTTOM ALL radius 1 SoSFFloat > 0 height 2 SoSFFloat > 0 Represents a cylinder shape DirectionalLight intensity 1 SoSFFloat 0 - 1 color 1 1 1 SoSFColor 0 - 1 direction 0 0 -1 SoSFVec3f any unit vector Represents a directional light source intensity DrawStyle style FILLED SoSFEnum FILLED LINES POINTS INVISIBLE lineWidth 1 SoSFShort > 0 linePattern 0xffff SoSFUShort any Defines a drawing style Environment ambientIntensity 0.2 SoSFFloat 0 - 1 ambientColor 1 1 1 SoSFColor 0 - 1 attenuation 0 0 1 SoSFVec3 >=0 fogType NONEl SoSFEnum NONE LINEAR EXPONENTIAL EXPONENTIAL_SQUARED fogComputed PER_VERTEX SoSFEnum PER_VERTEX PER_PIXEL fogColor 1 1 1 SoSFColor 0 - 1 fogDensity 0 SoSFFloat 0 - 1 fogNearDistance 1 SoSFFloat >=0 fogFarDistance 10 SoSFFloat > fogNearDistance Defines the global environment, including attributes for fog and ambient lighting FaceSet startIndex 0 SoSFLong >=0 numVertices [ -1 ] SoMFLong -1 (SO_FACE_SET_- USE_REST_OF_- VERTICES) or >=0 Shape node that constructs faces from the current coordinates File name "" SoSFName any Group node that reads children from a named file name Font name "defaultFont" SoSFName any size 10 SoSFFloat > 0 Defines the font type and size for all subsequent text shapes Group Group node base class IndexedFaceSet coordIndex [ 0 ] SoMFLong -1 (SO_END_FACE_- INDEX) or >=0 materialIndex [ -1 ] SoMFLong (see above) normalIndex [ -1 ] SoMFLong (see above) textureCoordIndex [ -1 ] SoMFLong (see above) Constructs a 3D shape by drawing its faces from an indexed list of vertices IndexedLineSet coordIndex [ 0 ] SoMFLong -1 (SO_END_LINE_- INDEX) or >=0 materialIndex [ -1 ] SoMFLong (see above) normalIndex [ -1 ] SoMFLong (see above) textureCoordIndex[ -1 ] SoMFLong (see above) Constructs a 3D polyline shape from an indexed list of vertices IndexedNurbsCurve coordIndex [ 0 ] SoMFLong >=0 >=0 knotVector [ 0 ] SoMFFloat Refer to Inventor Programming Guide, Vol. I, Ch. 8, for information on restrictions to knot vectors. NURBS curve shape node whose control points are indexed coordinates IndexedNurbsSurface numUControlPoints 0 SoSFLong >=0 numVControlPoints 0 SoSFLong >=0 numSControlPoints 0 SoSFLong >=0 numTControlPoints 0 SoSFLong >=0 coordIndex [ 0 ] SoMFLong >=0 uKnotVector [ 0 ] SoMFFloat Refer to Inventor vKnotVector [ 0 ] SoMFFloat Programming Guide, sKnotVector [ 0 ] SoMFFloat Vol. I, Ch. 8, for tKnotVector [ 0 ] SoMFFloat information on restrictions to knot vectors. textureCoordIndex [ -1 ] SoMFLong >=0, -1 NURBS surface shape node whose control points are indexed coordinates IndexedTriangleMesh coordIndex [ 0 ] SoMFLong -1 (SO_END_- MESH_INDEX) -2 (SO_SWAP_- MESH_INDEX)or >=0 materialIndex [ -1 ] SoMFLong (see above) normalIndex [ -1 ] SoMFLong (see above) textureCoordIndex [ -1 ] SoMFLong (see above) Constructs a triangle mesh from an indexed list of vertices Info string "" SoSFString any Contains an information text string Label label "" SoSFName any Contains a label text string LayerGroup Defines a layered group LightModel model PHONG SoSFEnum BASE_COLOR PHONG DEPTH nearColor 1 1 1 SoSFColor 0 - 1 farColor 0 0 0 SoSFColor 0 - 1 Defines the lighting model to use when rendering model LinearProfile index [ 0 ] SoMFLong >=0 linkage START_FIRST SoSFEnum START_FIRST START_NEW ADD_TO_CURRENT Piecewise-linear profile curve LineSet startIndex 0 SoSFLong >=0 numVertices [ -1 ] SoMFLong -1 (SO_LINE_SET_- USE_REST_OF_- VERTICES) or >=0 Shape node that constructs polylines from the current coordinates Material ambientColor [ 0.2 0.2 0.2 ] SoMFColor 0 - 1 diffuseColor [ 0.8 0.8 0.8 ] SoMFColor 0 - 1 specularColor [ 0 0 0 ] SoMFColor 0 - 1 emissiveColor [ 0 0 0 ] SoMFColor 0 - 1 shininess [ 0 ] SoMFFloat 0 - 1 transparency [ 0 ] SoMFFloat 0 - 1 Surface material node MaterialBinding value DEFAULT SoSFEnum DEFAULT NONE OVERALL PER_PART PER_FACE PER_FACE_INDEXED PER_VERTEX PER_VERTEX_INDEXED Specifies how materials are bound to shapes MatrixTransform matrix 1 0 0 0 SoSFMatrix any 0 1 0 0 0 0 1 0 0 0 0 1 Specifies a 3D geometric transformation as a matrix MultipleCopy matrix [ 1 0 0 0 SoMFMatrix any 0 1 0 0 0 0 1 0 0 0 0 1 ] Group node that traverses its children multiple times, applying a different transformation matrix each time Normal vector [ 0 0 1 ] SoMFVec3f any unit vector Defines surface normals for shapes NormalBinding value DEFAULT SoSFEnum DEFAULT NONE OVERALL PER_PART PER_FACE PER_FACE_INDEXED PER_VERTEX PER_VERTEX_INDEXED Specifies how surface normals are bound to shapes NurbsCurve numControlPoints 0 SoSFLong 0 knotVector [ 0 ] SoMFFloat Refer to Inventor Programming Guide, Vol. I, Ch. 8, for information on restrictions to knot vectors. NURBS curve shape node NurbsProfile knotVector [ 0 ] SoMFFloat Refer to Inventor Programming Guide, Vol. I, Ch. 8, for information on restrictions to knot vectors. index [ 0 ] SoMFLong >=0 linkage START_FIRST SoSFEnum START_FIRST START_NEW ADD_TO_CURRENT NURBS profile curve NurbsSurface numUControlPoints 0 SoSFLong >=0 numVControlPoints 0 SoSFLong >=0 numSControlPoints 0 SoSFLong >=0 numTControlPoints 0 SoSFLong >=0 uKnotVector [ 0 ] SoMFFloat Refer to Inventor vKnotVector [ 0 ] SoMFFloat Programming Guide, sKnotVector [ 0 ] SoMFFloat Vol. I, Ch. 8, for tKnotVector [ 0 ] SoMFFloat information on restrictions to knot vectors. NURBS surface shape node OrthographicCamera viewportMapping ADJUST_CAMERA SoSFEnum ADJUST_CAMERA CROP_VIEWPORT_FILL_FRAME CROP_VIEWPORT_LINE_FRAME CROP_VIEWPORT_NO_FRAME LEAVE_ALONE position 0 0 1 SoSFVec3f any orientation 0 0 1 0 SFRotation any aspectRatio 1 SoSFFloat > 0 nearDistance 1 SoSFFloat any farDistance 10 SoSFFloat > nearDistance focalDistance 5 SoSFFloat any height 2 SoSFFloat > 0 Defines an orthographic camera PackedColor rgba [ 0xffcccccc ] SoMFULong any Defines an object's base color using packed colors PathSwitch path -- SoSFPath any Group node that traverses only the child that matches a path field PerspectiveCamera viewportMapping ADJUST_CAMERA SoSFEnum ADJUST_CAMERA CROP_VIEWPORT_FILL_FRAME CROP_VIEWPORT_LINE_FRAME CROP_VIEWPORT_NO_FRAME LEAVE_ALONE position 0 0 1 SoSFVec3f any orientation 0 0 1 0 SoSFRotation any aspectRatio 1 SoSFFloat > 0 nearDistance 1 SoSFFloat any farDistance 10 SoSFFloat > nearDistance focalDistance 5 SoSFFloat any heightAngle 0.785398 SoSFFloat > 0 , < pi (pi/4) Defines a perspective camera node PickStyle style PICKABLE SoSFEnum PICKABLE, UNPICKABLE Defines a picking style PointLight intensity 1 SoSFFloat 0 - 1 color 1 1 1 SoSFColor 0 - 1 location 0 0 1 SoSFVec3f any Represents a point light source PointSet startIndex 0 SoSFLong >=0 numPoints -1 SoSFLong -1 (SO_POINT_SET_- USE_REST_OF_- VERTICES) or >=0 Shape node that creates points at the current coordinates ProfileCoordinate2 point [ 0 0 ] SoMFVec2f any Nonrational profile coordinate node ProfileCoordinate3 point [ 0 0 1 ] SoMFVec3f any Rational profile coordinate node QuadMesh startIndex 0 SoSFLong >=0 verticesPerColumn 1 SoSFLong >=1 verticesPerRow 1 SoSFLong >=1 Quadrilateral mesh shape node ResetTransform whatToReset TRANSFORM SoSFBitMask TRANSFORM, BBOX Resets the current transformation to identity; resets the current bounding box to empty Rotation rotation 0 0 1 0 SoSFRotation any Represents a 3D rotation about an arbitrary axis RotationXYZ axis X SoSFEnum X, Y, Z angle 0 SoSFFloat any Represents a 3D rotation about the x axis, y axis, or z axis Scale scaleFactor 1 1 1 SoSFVec3f > 0 Represents a 3D geometric scale ShapeHints hints SURFACE SoSFBitMask SOLID ORDERED CONVEX SURFACE UNORDERED CONCAVE creaseAngle 0.5 SoSFFloat any Provides hints about subsequent shapes Sphere radius 1 SoSFFloat > 0 Represents a sphere shape SpotLight intensity 1 SoSFFloat 0 - 1 color 1 1 1 SoSFColor 0 - 1 location 0 0 1 SoSFVec3f any direction 0 0 -1 SoSFVec3f any unit vector dropOffRate 0 SoSFFloat 0 - 1 cutOffAngle 0.785398 SoSFFloat 0 - pi (pi/4) Represents a spotlight source Switch whichChild -1 SoSFLong -1 (SO_SWITCH_NONE) -2 (SO_SWITCH_INHERIT) -3 (SO_SWITCH_ALL)or >=0 Group node that traverses one chosen child Text2 string [ "" ] SoMFString any spacing 1 SoSFFloat any justification LEFT SoSFEnum LEFT, RIGHT, CENTER Screen-aligned 2D text node Text3 string [ "" ] SoMFString any spacing 1 SoSFFloat any justification LEFT SoSFEnum LEFT, RIGHT, CENTER parts ALL SoSFBitMask SIDES, FRONT, BACK, ALL 3D text node Texture2 component INTENSITY SoSFBitMask INTENSITY, TRANSPARENCY filename "" SoSFName any minFilter BILINEAR SoSFEnum POINT BILINEAR MIPMAP_POINT MIPMAP_LINEAR MIPMAP_BILINEAR MIPMAP_TRILINEAR magFilter BILINEAR SoSFEnum POINT, BILINEAR wrapS REPEAT SoSFEnum REPEAT, CLAMP wrapT REPEAT SoSFEnum REPEAT, CLAMP model MODULATE SoSFEnum MODULATE, DECAL, BLEND blendColor 1 1 1 SoSFColor 0 - 1 translation 0 0 SoSFVec2f any scaleFactor 1 1 SoSFVec2f > 0 rotation 0 SoSFFloat any center 0 0 SoSFVec2f any Texture map node Texture2Transform translation 0 0 SoSFVec2f any rotation 0 SoSFFloat any scaleFactor 1 1 SoSFVec2f > 0 center 0 0 SoSFVec2f any 2D texture transformation node TextureCoordinate2 point [ 0 0 ] SoMFVec2f any Defines 2D texture coordinates TextureCoordinateBinding value DEFAULT SoSFEnum DEFAULT PER_VERTEX PER_VERTEX_INDEXED Specifies how texture coordinates are bound to shapes TextureCoordinateCube coord ALL SoSFEnum S, T, ALL center 0 0 0 SoSFVec3f any rotation 0 0 1 0 SoSFRotation any Specifies texture coordinates by projection from a cube TextureCoordinateCylinder coord ALL SoSFEnum S, T, ALL center 0 0 0 SoSFVec3f any rotation 0 0 1 0 SoSFRotation any height 1 SoSFFloat > 0 Specifies texture coordinates by projection from a cylinder TextureCoordinateEnvironment coord ALL SoSFEnum S, T, ALL Specifies texture coordinates by reflecting an eye vector around the normal vector at each vertex TextureCoordinatePlane coord ALL SoSFEnum S, T, ALL normal 1 0 0 SoSFVec3f any unit vector distanceFromOrigin 0 SoSFFloat any repeatInterval 1 SoSFFloat any Specifies texture coordinates by projection from a plane TextureCoordinateSphere coord ALL SoSFEnum S, T, ALL center 0 0 0 SoSFVec3f any rotation 0 0 1 0 SoSFRotation any Specifies texture coordinates by projection from a sphere Transform translation 0 0 0 SoSFVec3f any rotation 0 0 1 0 SoSFRotation any scaleFactor 1 1 1 SoSFVec3f > 0 scaleOrientation 0 0 1 0 SoSFRotation any center 0 0 0 SoSFVec3f any Represents a 3D geometric transformation Translation translation 0 0 0 SoSFVec3f any Represents a 3D geometric translation TriangleStripSet startIndex 0 SoSFLong >=00 numVertices [ -1 ] SoMFLong -1 (SO_TRI_STRIP_- SET_USE_REST_OF_ VERTICES) or >=0 Shape node that constructs strips of triangular faces from the current coordinates Units units METERS SoSFEnum METERS CENTIMETERS MILLIMETERS MICROMETERS MICRONS NANOMETERS ANGSTROMS KILOMETERS FEET INCHES POINTS YARDS MILES NAUTICAL_MILES Scales to convert units of length