Provided by: inventor-doc_2.1.5-10-18_all
NAME
SoProfile — abstract base class for all profile nodes
INHERITS FROM
SoBase > SoFieldContainer > SoNode > SoProfile
SYNOPSIS
#include <Inventor/nodes/SoProfile.h> enum Profile { SoProfile::START_FIRST Start a new profile and remove any existing profiles from the current list SoProfile::START_NEW Start a new profile and add it to the current list SoProfile::ADD_TO_CURRENT Add to end of the last profile in the current list } Fields from class SoProfile: SoMFInt32 index SoSFEnum linkage Methods from class SoProfile: static SoType getClassTypeId() Methods from class SoNode: void setOverride(SbBool state) SbBool isOverride() const SoNode * copy(SbBool copyConnections = FALSE) const virtual SbBool affectsState() const static SoNode * getByName(const SbName &name) static int getByName(const SbName &name, SoNodeList &list) Methods from class SoFieldContainer: void setToDefaults() SbBool hasDefaultValues() const SbBool fieldsAreEqual(const SoFieldContainer *fc) const void copyFieldValues(const SoFieldContainer *fc, SbBool copyConnections = FALSE) SbBool set(const char *fieldDataString) void get(SbString &fieldDataString) virtual int getFields(SoFieldList &resultList) const virtual SoField * getField(const SbName &fieldName) const SbBool getFieldName(const SoField *field, SbName &fieldName) const SbBool isNotifyEnabled() const SbBool enableNotify(SbBool flag) Methods from class SoBase: void ref() void unref() const void unrefNoDelete() const void touch() virtual SoType getTypeId() const SbBool isOfType(SoType type) const virtual void setName(const SbName &name) virtual SbName getName() const
DESCRIPTION
This node is the abstract base class for all profile nodes, which define 2D curves. A profile is not itself geometry, but is used to change or delimit the geometry of something else. For an SoText3 node, the profile determines the cross-section of the side of each text character. For an SoNurbsSurface node, the profile is used to specify trim curves for the surface. The current profile state can consist of one or more profiles, each of which can be made up of one or more instances of SoProfile subclass nodes. Each profile node specifies (in the index field) a set of indices that refer to the current set of profile coordinates, specified using either an SoProfileCoordinate2 or an SoProfileCoordinate3 node. No profile curve should intersect itself or another profile curve. Profiles are part of the state, just like all other properties. The state contains a current list of profiles. Depending on the linkage field, a profile can clear the list and begin a new profile, begin a new profile at the end of those already in the list, or append to the last profile in the current list. Note that when appending profile B to the end of profile A, B must begin at the same 2D point at which A ends.
FIELDS
SoMFInt32 index Indices into profile coordinates. SoSFEnum linkage Specifies connectivity of profile curve with respect to profiles in current list in state.
METHODS
static SoType getClassTypeId() Returns type identifier for this class.
ACTION BEHAVIOR
SoGLRenderAction, SoCallbackAction, SoGetBoundingBoxAction, SoRayPickAction Adds profile to current traversal state.
FILE FORMAT/DEFAULTS
This is an abstract class. See the reference page of a derived class for the format and default values.
SEE ALSO
SoLinearProfile, SoNurbsProfile, SoNurbsSurface, SoProfileCoordinate2, SoProfileCoordinate3, SoText3 SoProfile(3IV)()