Rhino C++ API  7.21
Public Member Functions | Friends | List of all members
ON_MeshXLine Class Reference

#include <opennurbs_mesh.h>

Inheritance diagram for ON_MeshXLine:
ON_MeshX

Public Member Functions

 ON_MeshXLine (const ON_Mesh &mesh, const ON_RTree &mesh_face_rtree, ON__UINT_PTR mesh_id)
 
 ON_MeshXLine (const ON_Mesh &mesh, ON__UINT_PTR mesh_id)
 
 ON_MeshXLine (unsigned int vertex_count, const class ON_3dPoint *mesh_dV, const class ON_3fPoint *mesh_fV, const class ON_2dPoint *mesh_S, unsigned int face_count, const class ON_MeshFace *mesh_F, const ON_RTree &mesh_face_rtree, ON__UINT_PTR mesh_id)
 
 ~ON_MeshXLine ()
 
unsigned int IntersectLine (const ON_Line &L, double tolerance, unsigned int line_id, ON_MeshXPointPool &mxpointpool)
 
unsigned int IntersectLine (ON_3dPoint A, ON_3dPoint B, double tolerance, unsigned int line_id, ON_MeshXPointPool &mxpointpool)
 
- Public Member Functions inherited from ON_MeshX
 ON_MeshX (const ON_Mesh &mesh, const ON_RTree &mesh_face_rtree, ON__UINT_PTR mesh_id)
 
 ON_MeshX (const ON_Mesh &mesh, ON__UINT_PTR mesh_id)
 
 ON_MeshX (unsigned int vertex_count, const class ON_3dPoint *mesh_dV, const class ON_3fPoint *mesh_fV, const class ON_2dPoint *mesh_S, unsigned int face_count, const class ON_MeshFace *mesh_F, const ON_RTree &mesh_face_rtree, ON__UINT_PTR mesh_id)
 
 ~ON_MeshX ()
 
double BarycentricCoordinateTolerance () const
 
ON_Xform MeshInverseTransform () const
 
ON_Xform MeshTransform () const
 
bool SetBarycentricCoordinateTolerance (double bc_tolerance)
 
bool SetMeshTransform (ON_Xform xform)
 
void SetSurfaceProperties (const class ON_Surface *surface)
 
void SetSurfaceProperties (const class ON_SurfaceProperties *surface_properties)
 
const class ON_SurfacePropertiesSurfaceProperties () const
 

Friends

class ON_MeshXPlaneCache
 

Additional Inherited Members

- Public Attributes inherited from ON_MeshX
const ON_Meshm_mesh
 
ON_BoundingBox m_mesh_bbox
 
const class ON_3dPointm_mesh_dV
 
const class ON_MeshFacem_mesh_F
 
const ON_RTreem_mesh_face_rtree
 
const unsigned int m_mesh_Fcnt
 
const class ON_3fPointm_mesh_fV
 
const ON__UINT_PTR m_mesh_id
 
const class ON_2dPointm_mesh_S
 
const unsigned int m_mesh_Vcnt
 
ON__UINT_PTR m_tag
 
- Protected Attributes inherited from ON_MeshX
double m_bc_tolerance
 default is ON_EPSILON More...
 
unsigned char m_bHaveXform
 
ON_Xform m_inverse_xform
 
unsigned char m_reserved1 [7]
 
ON_SurfaceProperties m_surface_properties
 
ON_Xform m_xform
 

Constructor & Destructor Documentation

◆ ON_MeshXLine() [1/3]

ON_MeshXLine::ON_MeshXLine ( const ON_Mesh mesh,
ON__UINT_PTR  mesh_id 
)

Parameters: mesh - [in] mesh.MeshFaceTree(true) is used to get a mesh face rtree. mesh_id - [in] Vaue of that is assigned to ON_MeshXPoint.m_mesh_id.

◆ ON_MeshXLine() [2/3]

ON_MeshXLine::ON_MeshXLine ( const ON_Mesh mesh,
const ON_RTree mesh_face_rtree,
ON__UINT_PTR  mesh_id 
)

◆ ON_MeshXLine() [3/3]

ON_MeshXLine::ON_MeshXLine ( unsigned int  vertex_count,
const class ON_3dPoint mesh_dV,
const class ON_3fPoint mesh_fV,
const class ON_2dPoint mesh_S,
unsigned int  face_count,
const class ON_MeshFace mesh_F,
const ON_RTree mesh_face_rtree,
ON__UINT_PTR  mesh_id 
)

◆ ~ON_MeshXLine()

ON_MeshXLine::~ON_MeshXLine ( )

Member Function Documentation

◆ IntersectLine() [1/2]

unsigned int ON_MeshXLine::IntersectLine ( const ON_Line L,
double  tolerance,
unsigned int  line_id,
ON_MeshXPointPool mxpointpool 
)

Parameters: line - [in] tolerance - [in] If the input value of tolerance is < 0.0 or not valid, then 0.0 is used. line_id - [in] Vaue of that is assigned to ON_MeshXPoint.m_other_id. Remarks: This function is not thread safe. If you want to use multiple threads to interesect multiple lines with the same mesh, then create a local ON_MeshXLine class for each thread.

◆ IntersectLine() [2/2]

unsigned int ON_MeshXLine::IntersectLine ( ON_3dPoint  A,
ON_3dPoint  B,
double  tolerance,
unsigned int  line_id,
ON_MeshXPointPool mxpointpool 
)

Friends And Related Function Documentation

◆ ON_MeshXPlaneCache

friend class ON_MeshXPlaneCache
friend