Scene Class Reference

#include <scene.h>

Class Description

The Scene class is the container object for all the data in a Mudbox scene.

All the geometry, lights, cameras, etc, are accessed and maintained through this object. To get a pointer to the current Mudbox scene, call Kernel()->Scene(). The scene class provides access to functions and events related to scene objects.

Definition at line 53 of file scene.h.

+ Inheritance diagram for Scene:

Classes

struct  LoadData
 Data structure to hold file import/load options, and diagnostic data. More...
 

Public Member Functions

virtual QStringList SelectedObjectListNames (void)
 
virtual mudbox::CurveBaseActiveCurve (void) const
 Returns a pointer to the curve that is currently active. More...
 
virtual void SetActiveCurve (mudbox::CurveBase *curve)
 Sets a different curve to be active. More...
 
virtual mudbox::CameraActiveCamera (void) const
 Returns a pointer to the camera that is currently being used. More...
 
virtual void SetActiveCamera (mudbox::Camera *camera)
 Sets a different camera to be active. More...
 
virtual mudbox::LightActiveLight (void) const
 Returns a pointer to the currently active light. More...
 
virtual void SetActiveLight (mudbox::Light *light)
 Sets a different light to be active. More...
 
virtual unsigned int CameraCount (void) const
 Returns the number of cameras in the scene. More...
 
virtual unsigned int CurveCount (void) const
 Returns the number of Curve objects in the scene. More...
 
virtual unsigned int SelectedCurveCount (void) const
 Returns the number of selected Curves. More...
 
virtual unsigned int LightCount (void) const
 Returns the number of lights in the scene. More...
 
virtual unsigned int GeometryCount (void) const
 Returns the number of Geometry objects in the scene. More...
 
virtual unsigned int SelectedGeometryCount (void) const
 Returns the number of Geometry objects that are currently selected. More...
 
virtual mudbox::CameraAddCamera (mudbox::Camera *pCamera)
 Adds a camera to the scene. More...
 
virtual mudbox::LightAddLight (mudbox::Light *pLight)
 Adds a light to the scene. More...
 
virtual mudbox::CurveBaseAddCurve (mudbox::CurveBase *pCurve, mudbox::Transformation *pTransformation=0)
 Adds a curve object to the scene. More...
 
virtual void RemoveCurve (mudbox::CurveBase *pCurve)
 Removes a curve object from the scene. More...
 
virtual mudbox::GeometryAddGeometry (mudbox::Geometry *pGeometry, mudbox::Transformation *pTransformation=0)
 Adds a geometry object to the scene. More...
 
virtual void RemoveGeometry (mudbox::Geometry *pGeometry)
 Removes a geometry object from the scene. More...
 
virtual mudbox::CameraCamera (unsigned int iIndex) const
 Returns a pointer to a Camera in the scene. More...
 
virtual mudbox::LightLight (unsigned int iIndex) const
 Returns a pointer to a Light in the scene. More...
 
virtual mudbox::CurveBaseSelectedCurve (unsigned int iIndex) const
 Returns a pointer to a selected curve object in the scene. More...
 
virtual mudbox::CurveBaseCurve (unsigned int iIndex) const
 Returns a pointer to a Curve object in the scene. More...
 
virtual mudbox::GeometrySelectedGeometry (unsigned int iIndex) const
 Returns a pointer to a selected Geometry object in the scene. More...
 
virtual mudbox::GeometryGeometry (unsigned int iIndex) const
 Returns a pointer to a Geometry object in the scene. More...
 
virtual AxisAlignedBoundingBox BoundingBox (void) const
 Returns the bounding box of the scene. More...
 
virtual void Render (bool bSkipMaterials=false) const
 Render the scene to the current render target using the current OpenGL pipeline settings. More...
 
virtual bool Export (const QString &sFileName, bool bSelectedOnly=false)
 Export models in the scene to an OBJ file. Returns true if successful. More...
 
virtual bool Load (QString sFileName, Scene::LoadData &cData)
 Load a MUD file into this scene. Returns true if successful. More...
 
virtual mudbox::GeometryImport (Scene::LoadData &cData, QString sFileName="")
 Imports data from a file, and returns a Mudbox geometry. More...
 
virtual bool Save (QString sFileName)
 Save this scene. Returns true if successful. More...
 
mudbox::GeometryActiveGeometry () const
 Returns a pointer to the active object (that is, the object whose layers are displayed in the UI) More...
 
void SetActiveGeometry (mudbox::Geometry *geometry) const
 Sets the specified geometry to be active. This means that its layers will be displayed in the UI. This is unrelated to selection. More...
 
virtual void SetActivePaintLayer (mudbox::Layer *layer)
 Sets the specified paint layer to be active. More...
 
virtual void SetActivePaintLayerGroup (mudbox::LayerGroup *layergroup)
 Sets the specified paint layer group to be active. More...
 
virtual void SetActiveTexture (mudbox::TexturePool *layer)
 Sets the layer associated with the active texture pool to be active. More...
 
virtual mudbox::LayerActivePaintLayer () const
 Returns a pointer to the currently active paint layer. More...
 
virtual mudbox::LayerGroupActivePaintLayerGroup () const
 Returns a pointer to the currently active paint layer group This returns NULL if a paint layer is currently active. More...
 
virtual mudbox::TexturePoolActiveTexture () const
 Returns a pointer to the currently active texture map. More...
 
virtual void MakeThumbnail (QImage &image, int iSize=128)
 Creates a thumbnail of the current scene. More...
 
virtual QString FileName () const
 Returns an absolute path to the scene's .mud file on disk, or an empty string if the scene has not been saved yet. More...
 
virtual bool Dirty () const
 This indicates if the scene has been dirtied since the last time it was saved. More...
 
virtual void SetDirty (bool bDirty=true)
 Sets the dirty status of the scene. More...
 
MeshCreateMesh (Topology::FaceType eType)
 Creates an empty mesh object and returns a pointer to it. More...
 
- Public Member Functions inherited from TreeNode
 TreeNode (void)
 
 ~TreeNode (void)
 
virtual void Serialize (Stream &s)
 Serializes the node. More...
 
virtual void AddChild (TreeNode *pChild, bool bFirst=false) const
 Adds a node/subtree to the list of children. The added node will be removed from the current parent if it has one. More...
 
virtual void RemoveChild (TreeNode *pChild) const
 Removes a node/subtree from the list of children. More...
 
virtual TreeNodeFirstChild (void) const
 Returns the first node from the child list. More...
 
virtual TreeNodeParent (void) const
 Returns the parent node. More...
 
virtual TreeNodeNextSibling (void) const
 Returns the next linked node with the same parent. More...
 
virtual TreeNodePrevSibling (void) const
 Returns the previous linked node with the same parent. More...
 
virtual void MoveChild (TreeNode *pChild, TreeNode *pAfter)
 Moves the child after the given node in order. More...
 
virtual TreeNodeChildByClass (const ClassDesc *pClass, bool bAutoCreate=true) const
 Returns the first child with the specified type. When the bAutoCreate parameter is true and such a child does not exists, it creates it with the preferred descedant type. More...
 
template<typename type >
typeChildByClass (bool bAutoCreate=true) const
 Same as above, a most confortable version. More...
 
virtual TreeNodeChildByClass (const ClassDesc *pClass, unsigned int iIndex=0) const
 Returns the first child with the specified type, or returns zero if no child found. More...
 
template<typename type >
typeChildByClass (unsigned int iIndex=0) const
 Same as above, a most confortable version. More...
 
virtual void DeleteChildByClass (const ClassDesc *pClass)
 Deletes all child which is derived from a specific class. More...
 
virtual QString Info (void) const
 Returns descriptive information about the node. More...
 
virtual bool Visible (void) const
 Returns if the node is visible. Should be overridden in derived classes. More...
 
virtual void SetVisible (bool b)
 Sets the node visibility Should be overridden in derived classes. More...
 
virtual bool Locked (void) const
 Returns if the node is locked. Should be overridden in derived classes. More...
 
virtual void SetLocked (bool b)
 Sets the locking of the node. Should be overridden in derived classes. More...
 
virtual bool HiddenFromUI (void) const
 Returns true if the node cannot be seen from UI. More...
 
virtual void SetHiddenFromUI (bool b)
 Sets visibility in UI. More...
 
virtual void OnLinked (const TreeNode *pOldParent)
 This function is called then the node is linked to a new parent. More...
 
virtual void CheckValidity (Node::DiagnosticLevel iLevel=dgnLevel2) const
 See the documentation for Node::CheckValidity. More...
 
QString UniqueChildName (const TreeNode *pChild, const QString &sPrefix="") const
 Finds a node name that is unique among the children of this node. More...
 
virtual void SetStringID (const QString &sName)
 This method does the same thing as Node::SetStringID, except it ensures the name is unique among this node's siblings. More...
 
virtual void CopyTo (Node *pNode) const
 
- Public Member Functions inherited from Node
 Node (const QString &sStringID="", const QString &sDisplayName="")
 Standard constructor. More...
 
virtual ~Node (void)
 
virtual void Initialize (void)
 
void LoadTemplate (const QString &sFileName="", bool bStartEvent=false)
 Use an external XML file to initialize the attributes. More...
 
void SaveTemplate (const QString &sFileName="", bool bSaveOnlyVisible=false)
 Save current attributes as an XML template. More...
 
unsigned int Version (void) const
 Returns the current version of the node. This number increases when the content of the node changed (when ContentChanged() called). More...
 
void SetVersion (unsigned int iVersion)
 Sets the current version number for the node. More...
 
unsigned int ReferenceCount (void) const
 Returns the number of pointers referencing this node. More...
 
AttributeReferencePointer (unsigned int iIndex) const
 Returns the address of an attribute which refers to this node. The type of the attribute is always aptr. More...
 
NodeReferenceNode (unsigned int iIndex) const
 Returns the address of a node referencing this node. More...
 
virtual QString Name (const ClassDesc *pClass=0) const
 Deprecated. More...
 
virtual void SetName (const QString &sName)
 Deprecated. More...
 
virtual QString StringID (const ClassDesc *pClass=0) const
 Returns the string id of the node. More...
 
virtual QString DisplayName (void) const
 Returns the display name of the node. More...
 
virtual void SetDisplayName (const QString &sDisplayName)
 Sets the display name of the node. More...
 
virtual QString HelpID (void) const
 Returns the help entry id of the node. Can be overwritten in derived classes. More...
 
virtual void SetHelpID (const QString &sHelpID)
 Sets the help entry id of the node. More...
 
void Annex (Node *pSource, const QString &sCategory="")
 Relink all the attributes of the source node to this one. More...
 
bool IsKindOf (const ClassDesc *pClass) const
 Returns true if this node is derived from the pClass class. More...
 
void ContentChanged (void) const
 This function must be called if the content of the node is changed. More...
 
virtual NodeDuplicate (void) const
 
virtual void OnNodeEvent (const Attribute &cAttribute, NodeEventType cType)
 This function is called if an event occurs with any of the attributes of the node. More...
 
virtual void OnEvent (const EventGate &cEvent)
 This function is called when a generic event occurs. See EventGate class. More...
 
void RequestDeferredEvent (Attribute &cAttribute)
 Request for a deferred event, which will occur only in the main loop. More...
 
unsigned int AttributeCount (void) const
 Returns the number of attributes owned by the node. More...
 
AttributeAttributeByIndex (int iIndex) const
 Returns a specified attribute (or 0 if iIndex is greater than the number of attributes). More...
 
AttributeAttributeByName (const QString &sName) const
 Returns a specified attribute by its name. Returns 0 if the attribute not found. More...
 
AttributeAttributeByID (const QString &sID) const
 Returns a specified attribute by its ID. Returns 0 if the attribute not found. More...
 
void SetAttributeValue (const QString &sAttributeID, const QString &sNewValue)
 Set the value of an attribute from a string. More...
 
QString AttributeValue (const QString &sAttributeID) const
 Returns the current value of an attribute as a string. More...
 
void LogAttributes (void) const
 Write all attributes into the log file. More...
 
virtual QWidgetCreatePropertiesWindow (QWidget *pParent)
 Create a window which displays the attributes of the node. Can be overriden to provide a custom interface. More...
 
AttributeAddAttribute (Attribute::AttributeType type, const QString &id)
 Allows SDK users to add attributes at runtime. More...
 
NodeNext (void) const
 Returns the next node in the chain. Used to enumerate the current nodes. See also First(). More...
 
int ID (void) const
 Returns an ID for the node. The ID is unique in the whole application life. More...
 
bool SetID (int iID)
 Set ID for the node. More...
 

Static Public Attributes

static aevent MaterialChangeEvent
 This event is triggered after a new material is set to a mesh. More...
 
static aevent ActiveCameraChangeEvent
 This event is triggered after a different camera is set as the active camera in the SetActiveCamera(). More...
 
static aptr< SceneMembershipEventNotifierSceneMembershipEvent
 This is a pointer to the latest scene membership event. More...
 
static aptr< NodeSelectedNode
 This pointer contains the address of the currently selected node in the scene. More...
 
static aevent PaintSelectionEvent
 This event is triggered when selection set of faces vary, i.e. more faces or less faces are selected. More...
 
static aevent PaintLayerAddedEvent
 This event is triggered after a paint layer is created. More...
 
static aevent PaintLayerRemovedEvent
 This event is triggered after a paint layer is deleted. More...
 
static aevent PaintLayerPropertiesChangedEvent
 This event is triggered after changes happend to existing paint layers. More...
 
static aevent GeometryTransformedEvent
 This event is triggered when a geometry is transformed by translate/rotate/scale tools. More...
 

Protected Member Functions

 Scene (void)
 Do not use the constructor directly. More...
 

Additional Inherited Members

- Public Types inherited from Node
enum  DiagnosticLevel { dgnLevel1, dgnLevel2, dgnLevel3 }
 Indicates the level of validity checking that is performed in CheckValidity() More...
 
- Static Public Member Functions inherited from Node
static void StartHashing ()
 This is called once in main once static ctors are done. More...
 
static NodeFirst (void)
 This function will return the first node in the memory. Used to enumerate all the current nodes. See also Next(). More...
 
static NodeByID (int iID)
 Returns the node with the specified ID, or zero if such a node does not exists. More...
 
static NodeByName (const QString &sClass, const QString &sName)
 Search for a node with the name sName. More...
 
- Public Attributes inherited from TreeNode
 DECLARE_CLASS
 
- Public Attributes inherited from Node
AttributeThisPointer m_pThis
 
 DECLARE_CLASS
 

Constructor & Destructor Documentation

Scene ( void  )
protected

Do not use the constructor directly.

It is unlikely that you would ever create your own scene in a plug-in. If you do need to, you should not call the constructor directly. Instead, use CreateInstances, like this:

Scene *myNewScene = CreateInstance<Scene>();

Member Function Documentation

virtual QStringList SelectedObjectListNames ( void  )
virtual
virtual mudbox::CurveBase* ActiveCurve ( void  ) const
virtual

Returns a pointer to the curve that is currently active.

virtual void SetActiveCurve ( mudbox::CurveBase curve)
virtual

Sets a different curve to be active.

virtual mudbox::Camera* ActiveCamera ( void  ) const
virtual

Returns a pointer to the camera that is currently being used.

virtual void SetActiveCamera ( mudbox::Camera camera)
virtual

Sets a different camera to be active.

virtual mudbox::Light* ActiveLight ( void  ) const
virtual

Returns a pointer to the currently active light.

virtual void SetActiveLight ( mudbox::Light light)
virtual

Sets a different light to be active.

virtual unsigned int CameraCount ( void  ) const
virtual

Returns the number of cameras in the scene.

virtual unsigned int CurveCount ( void  ) const
virtual

Returns the number of Curve objects in the scene.

Returns number of all objects derived from CurveBase.

virtual unsigned int SelectedCurveCount ( void  ) const
virtual

Returns the number of selected Curves.

virtual unsigned int LightCount ( void  ) const
virtual

Returns the number of lights in the scene.

virtual unsigned int GeometryCount ( void  ) const
virtual

Returns the number of Geometry objects in the scene.

virtual unsigned int SelectedGeometryCount ( void  ) const
virtual

Returns the number of Geometry objects that are currently selected.

virtual mudbox::Camera* AddCamera ( mudbox::Camera pCamera)
virtual

Adds a camera to the scene.

Returns a pointer to the camera you added.

Once you add a camera to the scene, the scene is responsible for deleting it.

Parameters
[in]pCameraa pointer to an instance of a Camera
virtual mudbox::Light* AddLight ( mudbox::Light pLight)
virtual

Adds a light to the scene.

Returns a pointer to the light you added.

Once you add a light to the scene, the scene is responsible for deleting it.

Parameters
[in]pLighta pointer to an instance of a Light
virtual mudbox::CurveBase* AddCurve ( mudbox::CurveBase pCurve,
mudbox::Transformation pTransformation = 0 
)
virtual

Adds a curve object to the scene.

Returns a pointer to the object you added.

Once you add a curve object to the scene, the scene is responsible for deleting it.

Parameters
[in]pCurvea pointer to an instance of a Curve object
[in]pTransformationa pointer to an instance of a Transformation for the Geometry
virtual void RemoveCurve ( mudbox::CurveBase pCurve)
virtual

Removes a curve object from the scene.

Note that the removed curve is not deleted. Once the curve is removed, it becomes the caller's responsibility to delete it.

Parameters
[in]pCurvea pointer to the object that you want removed.
virtual mudbox::Geometry* AddGeometry ( mudbox::Geometry pGeometry,
mudbox::Transformation pTransformation = 0 
)
virtual

Adds a geometry object to the scene.

Returns a pointer to the object you added.

Once you add a geometry object to the scene, the scene is responsible for deleting it.

Parameters
[in]pGeometrya pointer to an instance of a Geometry object
[in]pTransformationa pointer to an instance of a Transformation for the Geometry
virtual void RemoveGeometry ( mudbox::Geometry pGeometry)
virtual

Removes a geometry object from the scene.

Note that the removed geometry is not deleted. Once the geometry is removed, it becomes the caller's responsibility to delete it.

Parameters
[in]pGeometrya pointer to the object that you want removed.
virtual mudbox::Camera* Camera ( unsigned int  iIndex) const
virtual

Returns a pointer to a Camera in the scene.

(If the index is out of range, NULL is returned. To find out how many cameras are in the scene, call CameraCount().)

Parameters
[in]iIndexthe index of the camera to be returned (0-based)
virtual mudbox::Light* Light ( unsigned int  iIndex) const
virtual

Returns a pointer to a Light in the scene.

(If the index is out of range, NULL is returned. To find out how many lights are in the scene, call LightCount().)

Parameters
[in]iIndexthe index of the light to be returned (0-based)
virtual mudbox::CurveBase* SelectedCurve ( unsigned int  iIndex) const
virtual

Returns a pointer to a selected curve object in the scene.

(If the index is out of range, NULL is returned. To find out how many curve objects are selected in the scene, call SelectedCurveCount().)

Parameters
[in]iIndexthe index of the selected curve object to be returned (0-based)
virtual mudbox::CurveBase* Curve ( unsigned int  iIndex) const
virtual

Returns a pointer to a Curve object in the scene.

(If the index is out of range, NULL is returned. To find out how many Curve objects are in the scene, call CurveCount().)

Parameters
[in]iIndexthe index of the Curve object to be returned (0-based)
virtual mudbox::Geometry* SelectedGeometry ( unsigned int  iIndex) const
virtual

Returns a pointer to a selected Geometry object in the scene.

(If the index is out of range, NULL is returned. To find out how many geometry objects are selected in the scene, call SelectedGeometryCount().)

Parameters
[in]iIndexthe index of the selected geometry object to be returned (0-based)
virtual mudbox::Geometry* Geometry ( unsigned int  iIndex) const
virtual

Returns a pointer to a Geometry object in the scene.

(If the index is out of range, NULL is returned. To find out how many geometry objects are in the scene, call GeometryCount().)

Parameters
[in]iIndexthe index of the geometry object to be returned (0-based)
virtual AxisAlignedBoundingBox BoundingBox ( void  ) const
virtual

Returns the bounding box of the scene.

This bounding box is axis-aligned, and in World Space.

virtual void Render ( bool  bSkipMaterials = false) const
virtual

Render the scene to the current render target using the current OpenGL pipeline settings.

Note: This method is not part of the regular refresh cycle. To force the screen to refresh after making changes, call Kernel->Refresh()

Use this method when you need to render the scene for purposes internal to your plug-in. For example, you can create a custom texture, make it the render target (see the Texture class defined in material.h), set up whatever special shaders you need, then call this method to render the scene into your texture.

By default, objects will be rendered with their own materials. If you want to render everything with a shader that you set up, set bSkipMaterials to true.

Parameters
[in]bSkipMaterialsIf true, then the materials attached to objects in the scene are ignored. Everything uses the current shader.
virtual bool Export ( const QString sFileName,
bool  bSelectedOnly = false 
)
virtual

Export models in the scene to an OBJ file. Returns true if successful.

Parameters
[in]sFileNameThe path to the file to be saved (with a .obj extension)
[in]bSelectedOnlyIf true, only selected models will be saved
virtual bool Load ( QString  sFileName,
Scene::LoadData cData 
)
virtual

Load a MUD file into this scene. Returns true if successful.

Parameters
[in]sFileNameThe path to the MUD file to be loaded
[in]cDataThe load options
virtual mudbox::Geometry* Import ( Scene::LoadData cData,
QString  sFileName = "" 
)
virtual

Imports data from a file, and returns a Mudbox geometry.

If cData.Merge() is true, then the contents of the file are merged into the current scene, otherwise the first geometry contained within the file is returned, but not added to the scene. If sFileName is blank, a file dialog is opened. returns a geometry corresponding to the file, or NULL on error.

Parameters
[in]cDataImport options
[in]sFileNamePath to the file
virtual bool Save ( QString  sFileName)
virtual

Save this scene. Returns true if successful.

Parameters
[in]sFileNameThe path to the MUD file to be saved (with a .mud extension )
mudbox::Geometry* ActiveGeometry ( ) const

Returns a pointer to the active object (that is, the object whose layers are displayed in the UI)

Note that the 'active' object is unrelated to 'selected' objects. 'Active' refers to the object that is currently the focus of the user interface. For example, only one object at a time displays its layer information — this is the active object.

void SetActiveGeometry ( mudbox::Geometry geometry) const

Sets the specified geometry to be active. This means that its layers will be displayed in the UI. This is unrelated to selection.

Parameters
[in]geometrya pointer to the geometry to be made active
virtual void SetActivePaintLayer ( mudbox::Layer layer)
virtual

Sets the specified paint layer to be active.

Parameters
[in]layerA pointer to the layer to be made active
virtual void SetActivePaintLayerGroup ( mudbox::LayerGroup layergroup)
virtual

Sets the specified paint layer group to be active.

Parameters
[in]layergroupA pointer to the layer group to be made active
virtual void SetActiveTexture ( mudbox::TexturePool layer)
virtual

Sets the layer associated with the active texture pool to be active.

Parameters
[in]layerA pointer to the texture to be made active
virtual mudbox::Layer* ActivePaintLayer ( ) const
virtual

Returns a pointer to the currently active paint layer.

The active paint layer can be used in different ways, Use TexturePool::Usage to determine how a paint layer is being used. This returns NULL if a paint layer group is currently active.

virtual mudbox::LayerGroup* ActivePaintLayerGroup ( ) const
virtual

Returns a pointer to the currently active paint layer group This returns NULL if a paint layer is currently active.

virtual mudbox::TexturePool* ActiveTexture ( ) const
virtual

Returns a pointer to the currently active texture map.

virtual void MakeThumbnail ( QImage image,
int  iSize = 128 
)
virtual

Creates a thumbnail of the current scene.

virtual QString FileName ( ) const
virtual

Returns an absolute path to the scene's .mud file on disk, or an empty string if the scene has not been saved yet.

virtual bool Dirty ( ) const
virtual

This indicates if the scene has been dirtied since the last time it was saved.

virtual void SetDirty ( bool  bDirty = true)
virtual

Sets the dirty status of the scene.

When set to true, the user will be prompted to save the scene when he closes the file, or exits Mudbox.

Mesh* CreateMesh ( Topology::FaceType  eType)

Creates an empty mesh object and returns a pointer to it.

Mesh objects must be entirely triangles, or entirely quads.

Parameters
[in]eTypeThe mesh type, one of Topology::typeTriangular or Topology::typeQuadric

Member Data Documentation

aevent MaterialChangeEvent
static

This event is triggered after a new material is set to a mesh.

Definition at line 414 of file scene.h.

aevent ActiveCameraChangeEvent
static

This event is triggered after a different camera is set as the active camera in the SetActiveCamera().

Plugins can connect to this event to get informed when the active camera is changed to a different one.

Definition at line 418 of file scene.h.

aptr<SceneMembershipEventNotifier> SceneMembershipEvent
static

This is a pointer to the latest scene membership event.

Plugins can use this pointer to catch scene membership event. When a new scene membership event is triggered, for example, when a geometry is removed from the scene, this pointer will change its value to the new scene membership event. Plugins can also have their own pointer with the same type. At startup they can connect their pointer to this pointer in kernel by calling the Connect() function on their pointer. This means that when the SceneMembershipEvent pointer in kernel changes, their own pointer will also change. They can then catch this in their OnNodeEvent() function. Using this pointer to anything else than connecting an own pointer to it is forbidden.

Definition at line 428 of file scene.h.

aptr<Node> SelectedNode
static

This pointer contains the address of the currently selected node in the scene.

Plugins can connect their own pointers of the same type to this attribute to respond to selection related events.

See also
Attribute::Connect().

Definition at line 432 of file scene.h.

aevent PaintSelectionEvent
static

This event is triggered when selection set of faces vary, i.e. more faces or less faces are selected.

Definition at line 435 of file scene.h.

aevent PaintLayerAddedEvent
static

This event is triggered after a paint layer is created.

Definition at line 438 of file scene.h.

aevent PaintLayerRemovedEvent
static

This event is triggered after a paint layer is deleted.

Definition at line 441 of file scene.h.

aevent PaintLayerPropertiesChangedEvent
static

This event is triggered after changes happend to existing paint layers.

Definition at line 444 of file scene.h.

aevent GeometryTransformedEvent
static

This event is triggered when a geometry is transformed by translate/rotate/scale tools.

Definition at line 447 of file scene.h.


The documentation for this class was generated from the following file: