![]() |
ufe 6.2
Universal Front End is a DCC-agnostic component that will allow a DCC to browse and edit data in multiple data models
|
Abstract base class for 3D object interface. More...
#include <object3d.h>
Public Types | |
typedef std::shared_ptr< Object3d > | Ptr |
Public Member Functions | |
Object3d () | |
Constructor. More... | |
Object3d (const Object3d &)=default | |
Default copy constructor. More... | |
virtual | ~Object3d () |
Destructor. More... | |
virtual SceneItem::Ptr | sceneItem () const =0 |
Scene item accessor. More... | |
virtual BBox3d | boundingBox () const =0 |
virtual bool | visibility () const =0 |
virtual void | setVisibility (bool vis)=0 |
Set the visibility state of the object. More... | |
virtual Ufe::UndoableCommand::Ptr | setVisibleCmd (bool vis)=0 |
Create an undoable visible command. More... | |
Static Public Member Functions | |
static Ptr | object3d (const SceneItem::Ptr &item) |
static bool | addObserver (const Observer::Ptr &obs) |
static bool | removeObserver (const Observer::Ptr &obs) |
static std::size_t | nbObservers () |
static bool | hasObserver (const Observer::Ptr &obs) |
static void | notify (const Notification ¬if) |
Abstract base class for 3D object interface.
This base class defines the interface that runtimes can implement to provide basic 3D object behavior. 3D objects have visibility, and have 3D space bounds.
To avoid the memory-consuming "one proxy object per scene object" approach, Object3d interface objects should be obtained and used within a local scope, and not stored. Object3d interfaces should be considered stateless, and can be bound to new selection items.
Definition at line 38 of file object3d.h.
typedef std::shared_ptr<Object3d> Ufe::Object3d::Ptr |
Definition at line 41 of file object3d.h.
Ufe::Object3d::Object3d | ( | ) |
Constructor.
|
default |
Default copy constructor.
|
virtual |
Destructor.
|
static |
|
pure virtual |
Return the local space, axis-aligned 3D extents of the object.
|
static |
|
static |
Number of observers for Object3d changes on any item in the scene (global observers).
|
static |
Notify all global observers. The order in which observers are notified is unspecified. If no observer exists, does nothing.
notif | The Object3d notification to send. |
|
static |
|
static |
|
pure virtual |
Scene item accessor.
|
pure virtual |
Set the visibility state of the object.
|
pure virtual |
Create an undoable visible command.
|
pure virtual |
Return the visibility state of the object.