#include <opennurbs_plus.h>
|
| ON_MeshTreeNode () |
|
const ON_MeshTreeNode * | FindNode (int mesh_face_index) const |
|
bool | GetClosestPoint (const ON_3dPoint &P, ON_MESH_POINT *t, double maximum_distance=0.0) const |
| See ON_CurveTreeNode for working example. More...
|
|
int | IntersectLine (ON_Line line, ON_SimpleArray< ON_CMX_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0) const |
|
int | IntersectMesh (const class ON_MeshTreeNode *mnodeB, ON_ClassArray< ON_SimpleArray< ON_MMX_POINT > > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0) const |
| slow and careful More...
|
|
int | IntersectMesh (const class ON_MeshTreeNode *mnodeB, ON_SimpleArray< ON_Line > &lines) const |
| fast and sloppy More...
|
|
int | IntersectPolyline (const int &count, const ON_3dPoint *points, ON_SimpleArray< ON_CMX_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0) const |
|
int | IntersectPolyline (const ON_SimpleArray< ON_3dPoint > &points, ON_SimpleArray< ON_CMX_EVENT > &x, double intersection_tolerance=0.0, double overlap_tolerance=0.0) const |
|
bool | IsValid (ON_TextLog *text_log=0) const |
|
◆ ON_MeshTreeNode()
ON_MeshTreeNode::ON_MeshTreeNode |
( |
| ) |
|
◆ FindNode()
const ON_MeshTreeNode* ON_MeshTreeNode::FindNode |
( |
int |
mesh_face_index | ) |
const |
Description: This is a debugging function. It is slow. Starting at this node, find the node that contains the specified mesh face. Parameters: mesh_face_index - [in] ON_Mesh m_F[] array index Returns: Pointer to the node that contains the specified face.
◆ GetClosestPoint()
bool ON_MeshTreeNode::GetClosestPoint |
( |
const ON_3dPoint & |
P, |
|
|
ON_MESH_POINT * |
t, |
|
|
double |
maximum_distance = 0.0 |
|
) |
| const |
◆ IntersectLine()
◆ IntersectMesh() [1/2]
◆ IntersectMesh() [2/2]
◆ IntersectPolyline() [1/2]
int ON_MeshTreeNode::IntersectPolyline |
( |
const int & |
count, |
|
|
const ON_3dPoint * |
points, |
|
|
ON_SimpleArray< ON_CMX_EVENT > & |
x, |
|
|
double |
intersection_tolerance = 0.0 , |
|
|
double |
overlap_tolerance = 0.0 |
|
) |
| const |
◆ IntersectPolyline() [2/2]
◆ IsValid()
bool ON_MeshTreeNode::IsValid |
( |
ON_TextLog * |
text_log = 0 | ) |
const |
◆ m_bbox
◆ m_down
◆ m_farray
const int* ON_MeshTreeNode::m_farray |
array of indices of faces in this node (null if m_fcount is 0)
◆ m_fcount
int ON_MeshTreeNode::m_fcount |
never free or delete this pointer.
number of faces in m_farray[] (can be 0)
◆ m_mesh
const ON_Mesh* ON_MeshTreeNode::m_mesh |
◆ m_nodemem
unsigned char ON_MeshTreeNode::m_nodemem |
0 = do not destroy 1 = destroy with delete 2 = destroy with free
◆ m_nodesn
unsigned int ON_MeshTreeNode::m_nodesn |
serial number of this node
◆ m_nodetype
unsigned char ON_MeshTreeNode::m_nodetype |
Memory management accounting information.
8 bits to flag special nodes 1 = root node 2 = meta node (no domain) 4 = reparam
◆ m_reserved_ON_MeshTreeNode
unsigned char ON_MeshTreeNode::m_reserved_ON_MeshTreeNode[6] |
4 byte pointers
pad class size to a multiple of 8 bytes so custom allocator can keeps doubles and pointers properly aligned and safely use memset()/memcpy() on compilers that reuse tail-padding.
◆ m_treesn
unsigned int ON_MeshTreeNode::m_treesn |
serial number of this tree
◆ m_up