Developer Documentation

Public Member Functions | List of all members
PolyMeshObject Class Reference

Type for a Meshobject containing a poly mesh. More...

`#include <Type-OpenMesh/ObjectTypes/PolyMesh/PolyMesh.hh>`

Inheritance diagram for PolyMeshObject:

## Public Member Functions
| PolyMeshObject (const PolyMeshObject &_object)
| copy constructor More...
| PolyMeshObject (DataType _typeId)
| Constructor. More...
virtual | ~PolyMeshObject ()
| destructor
BaseObject * | copy ()
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 on triangle meshes.
Public Member Functions inherited from MeshObject< PolyMesh >
| MeshObject (const MeshObject &_object)
| copy constructor More...
| MeshObject (DataType _typeId)
| Constructor. More...
virtual | ~MeshObject ()
| destructor More...
virtual void | cleanup ()
| Reset current object, including all related nodes. More...
void | setName (QString _name)
| Set the name of the Object. More...
bool | loadMesh (QString _filename)
| Load a mesh from the given file. More...
QString | getObjectinfo ()
| Get all Info for the Object as a string. More...
bool | picked (uint _node_idx)
| detect if the node has been picked More...
void | enablePicking (bool _enable)
| Enable or disable picking for this Node.
bool | pickingEnabled ()
| Check if picking is enabled for this Node.
OMTriangleBSP * | requestTriangleBsp ()
void | invalidateTriangleBsp ()
OMTriangleBSP * | resetTriangleBsp ()
bool | hasBsp () const
| check if a BSP has been computed and is valid More...
PolyMesh * | mesh ()
| return a pointer to the mesh More...
const PolyMesh * | mesh () const
| return a const pointer to the mesh More...
ACG::SceneGraph::EnvMapNode * | textureNode ()
| Get the TextureNode of the current mesh. More...
ACG::SceneGraph::ShaderNode * | shaderNode ()
| Return pointer to the shader node. More...
void | hideSelection (bool _hide)
| Hide or show the selection Node of the object. More...
bool | selectionVisible ()
| return if the selections are currently visible
void | hideFeatures (bool _hide)
| Hide or show the feature Node of the object.
bool | featuresVisible ()
| return if the feature Node of the object is currently visible
void | hideArea (StatusBits _bit, bool _hide)
| Hide or show the area Nodes of the object. More...
bool | areaVisible (StatusBits _bit)
| Return if the selected areas are currently visible. More...
ACG::SceneGraph::MeshNodeT< PolyMesh > * | meshNode ()
| Get the Scenegraph Mesh Node. More...
void | boundingBox (ACG::Vec3d &_bbMin, typename ACG::Vec3d &_bbMax)
| Get the BoundingBox of this object. More...
BaseNode * | primaryNode ()
| Status Node for a mesh, visualizing the selection state of a mesh.
void | setSelectionColor (const ACG::Vec4f &_color)
| set color for selection
ACG::Vec4f | selectionColor () const
| get color for selection. returns -1 vector, if handle node does not exists
void | setAreaColor (const ACG::Vec4f &_color)
| set color for areas
ACG::Vec4f | areaColor () const
| get color for areas. returns -1 vector, if handle node does not exists
void | setFeatureColor (const ACG::Vec4f &_color)
| set color for features
ACG::Vec4f | featureColor () const
| get color for features. returns -1 vector, if handle node does not exists
void | setHandleColor (const ACG::Vec4f &_color)
| set color for handles
ACG::Vec4f | handleColor () const
| get color for handles. returns -1 vector, if handle node does not exists
ACG::SceneGraph::SelectionNodeT< PolyMesh > * | statusNode ()
ACG::SceneGraph::StatusNodeT< PolyMesh, AreaNodeMod< PolyMesh > > * | areaNode ()
| Returns the area selection node if available, nullptr otherwise.
ACG::SceneGraph::StatusNodeT< PolyMesh, HandleNodeMod< PolyMesh > > * | handleNode ()
| Returns the handle selection node if available, nullptr otherwise.
ACG::SceneGraph::StatusNodeT< PolyMesh, FeatureNodeMod< PolyMesh > > * | featureNode ()
| Returns the feature selection node if available, nullptr otherwise.
Public Member Functions inherited from BaseObjectData
| BaseObjectData (const BaseObjectData &_object)
| copy constructor More...
| BaseObjectData ()
| constructor
virtual | ~BaseObjectData ()
| destructor
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 () override
| return visiblity
virtual void | visible (bool _visible) override
| 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...
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

## Additional Inherited Members
Public Types inherited from MeshObject< PolyMesh >
typedef OpenMeshTriangleBSPT< PolyMesh > | OMTriangleBSP
| If requested a bsp is created for this object.
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 Member Functions inherited from MeshObject< PolyMesh >
virtual void | init (PolyMesh *_mesh=0)
| Initialise current object, including all related nodes. More...
virtual void | update (UpdateType _type=UPDATE_ALL)
| Update the whole Object (Selection,Topology,...) More...
void | updateSelection ()
| Call this function to update the modeling regions. More...
void | updateModelingRegions ()
| Call this function to update the modeling regions. More...
void | updateFeatures ()
| Update Feature Visualization Node. More...
void | updateGeometry ()
| Update Geometry of all data structures. More...
void | updateColor ()
| Update Colors of all data structures. More...
void | updateTopology ()
| Update Topology of all data structures. More...
void | updateTexture ()
| Update Texture of all data structures. More...
Update handling
Update handling
Protected Attributes inherited from BaseObject
bool | visible_

## Detailed Description

Type for a Meshobject containing a poly mesh.

Definition at line 65 of file PolyMesh.hh.

## Constructor & Destructor Documentation

## ◆ PolyMeshObject() [1/2]

PolyMeshObject::PolyMeshObject | ( | const PolyMeshObject & | _object | ) |

copy constructor

Create a copy of this object

Definition at line 60 of file PolyMesh.cc.

## ◆ PolyMeshObject() [2/2]

PolyMeshObject::PolyMeshObject | ( | DataType | _typeId | ) |

Constructor.

This is the standard constructor for MeshObjects. As triangle and Poly Meshes are handled by this class, the typeId is passed to the MeshObject to specify it.

Parameters

  _typeId | This is the type Id the Object will use. Should be typeId("TriangleMesh") or typeId("PolyMesh")

Definition at line 65 of file PolyMesh.cc.

## Member Function Documentation

## ◆ copy()

BaseObject * PolyMeshObject::copy | ( |  | ) |
| 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.

Reimplemented from BaseObject.

Definition at line 74 of file PolyMesh.cc.

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

- Type-OpenMesh/ObjectTypes/PolyMesh/PolyMesh.hh
- Type-OpenMesh/ObjectTypes/PolyMesh/PolyMesh.cc