54 #include <ACG/Scenegraph/StatusNodesT.hh> 55 #include <ACG/QtScenegraph/QtTranslationManipulatorNode.hh> 82 TriMesh::FaceHandle fh =
mesh()->face_handle(_targetIdx);
100 hitpointNew = _start + t * _dir;
108 TriMesh::EdgeHandle eh =
mesh()->edge_handle(_targetIdx);
111 TriMesh::HalfedgeHandle heh =
mesh()->halfedge_handle(eh,0);
Vec::value_type distPointLineSquared(const Vec &_p, const Vec &_v0, const Vec &_v1, Vec *_min_v)
squared distance from point _p to line segment (_v0,_v1)
picks edges (may not be implemented for all nodes)
picks faces (should be implemented for all nodes)
Kernel::FaceVertexIter FaceVertexIter
Circulator.
TriMeshObject(const TriMeshObject &_object)
copy constructor
virtual ~TriMeshObject()
destructor
bool triangleIntersection(const Vec &_o, const Vec &_dir, const Vec &_v0, const Vec &_v1, const Vec &_v2, typename Vec::value_type &_t, typename Vec::value_type &_u, typename Vec::value_type &_v)
Intersect a ray and a triangle.
TriMesh * mesh()
return a pointer to the mesh
PickTarget
What target to use for picking.
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.
picks verices (may not be implemented for all nodes)
Type for a MeshObject containing a triangle mesh.
Kernel::Scalar Scalar
Scalar type.
Kernel::VertexHandle VertexHandle
Handle for referencing the corresponding item.