BRL-CAD
|
#include <nmg_conv.h>
Data Fields | |
uint32_t | magic |
struct model * | rd_m |
char * | manifolds |
structure 1-3manifold table More... | |
vect_t | rd_invdir |
struct xray * | rp |
struct application * | ap |
struct seg * | seghead |
struct soltab * | stp |
const struct bn_tol * | tol |
struct hitmiss ** | hitmiss |
1 struct hitmiss ptr per elem. More... | |
struct bu_list | rd_hit |
list of hit elements More... | |
struct bu_list | rd_miss |
list of missed/sub-hit elements More... | |
point_t | plane_pt |
ray/plane(face) intercept point More... | |
fastf_t | ray_dist_to_plane |
ray parametric dist to plane More... | |
int | face_subhit |
int | classifying_ray |
Ray Data structure
A) the hitmiss table has one element for each nmg structure in the nmgmodel. The table keeps track of which elements have been processed before and which haven't. Elements in this table will either be: (NULL) item not previously processed hitmiss ptr item previously processed
the 0th item in the array is a pointer to the head of the "hit" list. The 1th item in the array is a pointer to the head of the "miss" list.
B) If plane_pt is non-null then we are currently processing a face intersection. The plane_dist and ray_dist_to_plane are valid. The ray/edge intersector should check the distance from the plane intercept to the edge and update "plane_closest" if the current edge is closer to the intercept than the previous closest object.
Definition at line 82 of file nmg_conv.h.
uint32_t magic |
Definition at line 83 of file nmg_conv.h.
struct model* rd_m |
Definition at line 84 of file nmg_conv.h.
char* manifolds |
structure 1-3manifold table
Definition at line 85 of file nmg_conv.h.
vect_t rd_invdir |
Definition at line 86 of file nmg_conv.h.
struct xray* rp |
Definition at line 87 of file nmg_conv.h.
struct application* ap |
Definition at line 88 of file nmg_conv.h.
struct seg* seghead |
Definition at line 89 of file nmg_conv.h.
struct soltab* stp |
Definition at line 90 of file nmg_conv.h.
const struct bn_tol* tol |
Definition at line 91 of file nmg_conv.h.
1 struct hitmiss ptr per elem.
Definition at line 92 of file nmg_conv.h.
struct bu_list rd_hit |
list of hit elements
Definition at line 93 of file nmg_conv.h.
struct bu_list rd_miss |
list of missed/sub-hit elements
Definition at line 94 of file nmg_conv.h.
point_t plane_pt |
ray/plane(face) intercept point
plane_pt is the intercept point of the ray with the plane of the face.
Definition at line 102 of file nmg_conv.h.
fastf_t ray_dist_to_plane |
ray parametric dist to plane
ray_dist_to_plane is the parametric distance along the ray from the ray origin (rd->rp->r_pt) to the ray/plane intercept point
Definition at line 108 of file nmg_conv.h.
int face_subhit |
the "face_subhit" element is a boolean used by isect_ray_face and [e|v]u_touch_func to record the fact that the ray/(plane/face) intercept point was within tolerance of an edge/vertex of the face. In such instances, isect_ray_face does NOT need to generate a hit point for the face, as the hit point for the edge/vertex will suffice.
Definition at line 118 of file nmg_conv.h.
int classifying_ray |
the "classifying_ray" flag indicates that this ray is being used to classify a point, so that the "eu_touch" and "vu_touch" functions should not be called.
Definition at line 125 of file nmg_conv.h.