Developer Documentation
|
Public Member Functions | |
SplatCloudObject () | |
Constructor. More... | |
SplatCloudObject (const SplatCloudObject &_object) | |
Copy constructor. More... | |
virtual | ~SplatCloudObject () |
Destructor. More... | |
virtual void | cleanup () |
Reset current Object, including all related Nodes. More... | |
BaseObject * | copy () |
void | reloadShaders () |
Reload standard and picking Shaders from file. More... | |
void | enableBackfaceCulling (bool _enable) |
Enable or disable backface culling for all Shaders. More... | |
void | enableGeometryShaderQuads (bool _enable) |
Enable or disable quad extrusion in geometry shader (shader pipeline) More... | |
void | setPointsizeScale (float _scale) |
Set the scaling factor for pointsizes for all Shaders. More... | |
bool | isBackfaceCullingEnabled () const |
float | pointsizeScale () const |
Name and Path handling | |
void | setName (QString _name) |
Set the name of the Object. More... | |
Object Information | |
QString | getObjectinfo () |
Get all Info for the Object as a string. More... | |
Picking | |
bool | picked (uint _node_idx) |
Detect if the node has been picked. More... | |
void | enablePicking (bool _enable) |
Enable or disable picking for this Object. | |
bool | pickingEnabled () |
Check if picking is enabled for this Object. | |
Public Member Functions inherited from BaseObjectData | |
BaseObjectData (const BaseObjectData &_object) | |
copy constructor More... | |
BaseObjectData () | |
constructor | |
virtual | ~BaseObjectData () |
destructor | |
virtual ACG::Vec3d | refinePick (ACG::SceneGraph::PickTarget _pickTarget, const ACG::Vec3d _hitPoint, const ACG::Vec3d _start, const ACG::Vec3d _dir, const unsigned int _targetIdx) |
Refine picking. More... | |
virtual void | show () |
Sets the whole Scenegraph subtree of this node to visible. | |
virtual void | hide () |
Sets the whole Scenegraph subtree of this node to invisible. | |
virtual bool | visible () |
return visiblity | |
virtual void | visible (bool _visible) |
Sets visiblity of the whole Scenegraph subtree of this node. | |
SeparatorNode * | baseNode () |
virtual bool | hasNode (BaseNode *_node) |
Check if the given node is owned by this object. More... | |
virtual BaseNode * | primaryNode () |
QtTranslationManipulatorNode * | manipulatorNode () |
MaterialNode * | materialNode () |
get a pointer to the materialnode | |
const MaterialNode * | materialNode () const |
get a const pointer to the materialnode | |
BoundingBoxNode * | boundingBoxNode () |
get a pointer to the bounding box node | |
StencilRefNode * | stencilRefNode () |
get a pointer to the stencil reference node | |
bool | manipPlaced () |
Check if the manipulator has been placed. | |
void | manipPlaced (bool _placed) |
set the manipulator place status | |
void | getBoundingBox (ACG::Vec3d &bbmin, ACG::Vec3d &bbmax) |
get the bounding box of the object | |
void | setObjectDrawMode (const ACG::SceneGraph::DrawModes::DrawMode &_mode, const bool &_force=false) |
Set the draw mode for the object. More... | |
template<typename NodeT > | |
bool | addAdditionalNode (NodeT *_node, QString _pluginName, QString _nodeName, int _id=0) |
add an additional node to the object More... | |
bool | hasAdditionalNode (QString _pluginName, QString _nodeName, int _id=0) |
check if an object has the additional node More... | |
template<typename NodeT > | |
bool | getAdditionalNode (NodeT *&_node, QString _pluginName, QString _nodeName, int _id=0) |
get an addition node from the object More... | |
template<typename NodeT > | |
bool | removeAdditionalNode (NodeT *&_node, QString _pluginName, QString _nodeName, int _id=0) |
remove an additional node from the object More... | |
Public Member Functions inherited from BaseObject | |
BaseObject (const BaseObject &_object) | |
BaseObject (BaseObject *_parent=0) | |
virtual void | printObjectInfo () |
Print all information about the object. | |
void | dumpTree () |
Debugging function, writing the subtree to output. | |
int | row () const |
get the row of this item from the parent | |
BaseObject * | parent () |
Get the parent item ( 0 if rootitem ) | |
const BaseObject * | parent () const |
get the row of this item from the parent | |
void | setParent (BaseObject *_parent) |
Set the parent pointer. | |
BaseObject * | childExists (int _objectId) |
Check if the element exists in the subtree of this element. | |
BaseObject * | childExists (QString _name) |
Check if the element exists in the subtree of this element. | |
void | appendChild (BaseObject *child) |
add a child to this node | |
BaseObject * | child (int row) |
return a child | |
int | childCount () const |
get the number of children | |
void | removeChild (BaseObject *_item) |
Remove a child from this object. | |
QList< BaseObject *> | getLeafs () |
get all leafes of the tree below this object ( These will be all visible objects ) | |
void | deleteSubtree () |
delete the whole subtree below this item ( The item itself is not touched ) | |
int | group () const |
bool | isGroup () const |
Check if object is a group. | |
bool | isInGroup (int _id) const |
bool | isInGroup (QString _name) const |
std::vector< int > | getGroupIds () |
QStringList | getGroupNames () |
void | setObjectData (QString _dataName, PerObjectData *_data) |
void | clearObjectData (QString _dataName) |
Clear the object data pointer ( this will not delete the object!! ) | |
bool | hasObjectData (QString _dataName) |
Checks if object data with given name is available. | |
PerObjectData * | objectData (QString _dataName) |
Returns the object data pointer. | |
void | deleteData () |
Delete all data attached to this object ( calls delete on each object ) | |
int | id () const |
int | persistentId () const |
void | persistentId (int _id) |
bool | dataType (DataType _type) const |
DataType | dataType () const |
void | setDataType (DataType _type) |
bool | target () |
void | target (bool _target) |
bool | source () |
void | source (bool _source) |
bool | flag (QString _flag) |
void | setFlag (QString _flag, bool _set) |
QStringList | flags () |
BaseObject * | last () |
BaseObject * | next () |
int | level () |
void | setFromFileName (const QString &_filename) |
QString | path () const |
return the path to the object ( defaults to "." if unset ) | |
void | setPath (const QString &_path) |
set the path to the object. | |
QString | name () const |
return the name of the object. The name defaults to NONAME if unset. | |
QString | filename () const |
return the filename of the object | |
void | setFileName (const QString &_filename) |
set the filename for this object | |
QMap< QString, PerObjectData * > & | getPerObjectDataMap () |
get reference to map of all perObject Datas More... | |
QString & | getCommentByKey (const QString &key) |
Get comment for the specified key. More... | |
const QString | getCommentByKey (const QString &key) const |
Get comment for the specified key. More... | |
bool | hasCommentForKey (const QString &key) const |
bool | hasComments () const |
void | clearComment (const QString &key) |
Get comment for the specified key. More... | |
void | clearAllComments () |
Get comment for the specified key. More... | |
const QMap< QString, QString > & | getAllComments () const |
const QString | getAllCommentsFlat () const |
Protected Member Functions | |
virtual void | init (const SplatCloud *_splatCloud=0) |
Initialise current Object, including all related Nodes. More... | |
Update handling | |
This is mostly private. Updates have to be triggered via emit updatedObject() | |
void | update (UpdateType _type=UPDATE_ALL) |
Called by the core if the object has to be updated. More... | |
Update handling | |
Update handling |
Private Attributes | |
bool | backfaceCullingEnabled_ |
float | pointsizeScale_ |
Friends | |
class | TypeSplatCloudPlugin |
Content | |
SplatCloud * | splatCloud_ |
Get SplatCloud. | |
SplatCloud * | splatCloud () |
Get SplatCloud. | |
const SplatCloud * | splatCloud () const |
Get SplatCloud. | |
Visualization | |
ShaderNode * | shaderNode_ |
Get Shader's scenegraph Node. | |
SplatCloudNode * | splatCloudNode_ |
Get Shader's scenegraph Node. | |
ShaderNode * | shaderNode () |
Get Shader's scenegraph Node. | |
const ShaderNode * | shaderNode () const |
Get Shader's scenegraph Node. | |
SplatCloudNode * | splatCloudNode () |
Get SplatCloud's scenegraph Node. | |
const SplatCloudNode * | splatCloudNode () const |
Get Shader's scenegraph Node. | |
Additional Inherited Members | |
Signals inherited from BaseObject | |
void | objectSelectionChanged (int _objectId) |
void | visibilityChanged (int _objectId) |
void | objectPropertiesChanged (int _objectId) |
Static Public Attributes inherited from BaseObject | |
static int | NOOBJECT = -1 |
Protected Attributes inherited from BaseObject | |
bool | visible_ |
Definition at line 76 of file SplatCloudObject.hh.
SplatCloudObject::SplatCloudObject | ( | ) |
Constructor.
Constructor for SplatCloud Objects. This object class gets a Separator Node giving the root node to which it should be connected. The SplatCloud is generated internally and all nodes for visualization will be added below the scenegraph node.
You dont need to create an object of this type manually. Use PluginFunctions::addSplatCloud instead. ( see Types.hh::DataType )
Definition at line 79 of file SplatCloudObject.cc.
SplatCloudObject::SplatCloudObject | ( | const SplatCloudObject & | _object | ) |
Copy constructor.
Create a copy of this Object
Copy Constructor - generates a copy of the given object
Definition at line 105 of file SplatCloudObject.cc.
|
virtual |
Destructor.
Destructor for SplatCloud Objects. The destructor deletes the Line and all Scenegraph nodes associated with the SplatCloud or the object.
Definition at line 118 of file SplatCloudObject.cc.
|
virtual |
Reset current Object, including all related Nodes.
Cleanup Function for SplatCloud Objects. Deletes the contents of the whole object and calls SplatCloudObject::init afterwards.
Reimplemented from BaseObjectData.
Definition at line 143 of file SplatCloudObject.cc.
|
virtual |
Return a full copy of this Object ( all scenegraph Nodes will be created ) but the object will not be a part of the object tree
Generate a copy
Reimplemented from BaseObject.
Definition at line 160 of file SplatCloudObject.cc.
void SplatCloudObject::enableBackfaceCulling | ( | bool | _enable | ) |
Enable or disable backface culling for all Shaders.
Enable or disable backface culling
Definition at line 264 of file SplatCloudObject.cc.
void SplatCloudObject::enableGeometryShaderQuads | ( | bool | _enable | ) |
Enable or disable quad extrusion in geometry shader (shader pipeline)
Enable or disable quad extrusion in geometry shader. This only affects the shader pipeline renderers.
Definition at line 345 of file SplatCloudObject.cc.
|
virtual |
Get all Info for the Object as a string.
Returns a string containing all information about the current object. This also includes the information provided by BaseObjectData::getObjectinfo
Reimplemented from BaseObject.
Definition at line 568 of file SplatCloudObject.cc.
|
protectedvirtual |
Initialise current Object, including all related Nodes.
This function initalizes the SplatCloud object. It creates the scenegraph nodes.
Definition at line 419 of file SplatCloudObject.cc.
|
virtual |
Detect if the node has been picked.
Given an node index from PluginFunctions::scenegraphPick this function can be used to check if the splatCloudNode of the object has been picked.
_node_idx | Index of the picked splatcloud node |
Reimplemented from BaseObjectData.
Definition at line 641 of file SplatCloudObject.cc.
void SplatCloudObject::reloadShaders | ( | ) |
Reload standard and picking Shaders from file.
Shader uniforms has to be updated after this!
Reload shaders from file
Definition at line 173 of file SplatCloudObject.cc.
|
virtual |
Set the name of the Object.
Set the name of an object. All Scenegraph nodes are renamed too. It also calls BaseObjectData::setName.
Reimplemented from BaseObjectData.
Definition at line 544 of file SplatCloudObject.cc.
void SplatCloudObject::setPointsizeScale | ( | float | _scale | ) |
Set the scaling factor for pointsizes for all Shaders.
Set scale for point sizes
Definition at line 357 of file SplatCloudObject.cc.
|
protectedvirtual |
Called by the core if the object has to be updated.
Update object and scenegraph nodes
Reimplemented from BaseObjectData.
Definition at line 459 of file SplatCloudObject.cc.