BRL-CAD
|
#include <rt_instance.h>
Data Fields | |
uint32_t | rti_magic |
magic # for integrity check | |
int | useair |
1="air" regions are retained while prepping | |
int | rti_save_overlaps |
1=fill in pt_overlap_reg, change boolweave behavior | |
int | rti_dont_instance |
1=Don't compress instances of solids into 1 while prepping | |
int | rti_hasty_prep |
1=hasty prep, slower ray-trace | |
size_t | rti_nlights |
number of light sources | |
int | rti_prismtrace |
add support for pixel prism trace | |
char * | rti_region_fix_file |
rt_regionfix() file or NULL | |
int | rti_space_partition |
space partitioning method | |
struct bn_tol | rti_tol |
Math tolerances for this model. | |
struct bg_tess_tol | rti_ttol |
Tessellation tolerance defaults. | |
fastf_t | rti_max_beam_radius |
Max threat radius for FASTGEN cline solid. | |
rti_clbk_t | rti_gettrees_clbk |
Optional user clbk function called during rt_gettrees_and_attrs. | |
void * | rti_udata |
ptr for user data. | |
point_t | mdl_min |
min corner of model bounding RPP | |
point_t | mdl_max |
max corner of model bounding RPP | |
point_t | rti_pmin |
for plotting, min RPP | |
point_t | rti_pmax |
for plotting, max RPP | |
double | rti_radius |
radius of model bounding sphere | |
struct db_i * | rti_dbip |
prt to Database instance struct | |
int | needprep |
needs rt_prep | |
struct region ** | Regions |
ptrs to regions [reg_bit] | |
struct bu_list | HeadRegion |
ptr of list of regions in model | |
struct bu_ptbl | delete_regs |
list of region pointers to delete after light_init() | |
size_t | nregions |
total # of regions participating | |
size_t | nsolids |
total # of solids participating | |
size_t | rti_nrays |
# calls to rt_shootray() | |
size_t | nmiss_model |
rays missed model RPP | |
size_t | nshots |
# of calls to ft_shot() | |
size_t | nmiss |
solid ft_shot() returned a miss | |
size_t | nhits |
solid ft_shot() returned a hit | |
size_t | nmiss_tree |
shots missed sub-tree RPP | |
size_t | nmiss_solid |
shots missed solid RPP | |
size_t | ndup |
duplicate shots at a given solid | |
size_t | nempty_cells |
number of empty spatial partition cells passed through | |
union cutter | rti_CutHead |
Head of cut tree. | |
union cutter | rti_inf_box |
List of infinite solids. | |
union cutter * | rti_CutFree |
cut Freelist | |
struct bu_ptbl | rti_busy_cutter_nodes |
List of "cutter" mallocs. | |
struct bu_ptbl | rti_cuts_waiting |
size_t | rti_cut_maxlen |
max len RPP list in 1 cut bin | |
size_t | rti_ncut_by_type [CUT_MAXIMUM+1] |
number of cuts by type | |
size_t | rti_cut_totobj |
# objs in all bins, total | |
size_t | rti_cut_maxdepth |
max depth of cut tree | |
struct soltab ** | rti_sol_by_type [ID_MAX_SOLID+1] |
size_t | rti_nsol_by_type [ID_MAX_SOLID+1] |
size_t | rti_maxsol_by_type |
size_t | rti_air_discards |
# of air regions discarded | |
struct bu_hist | rti_hist_cellsize |
occupancy of cut cells | |
struct bu_hist | rti_hist_cell_pieces |
solid pieces per cell | |
struct bu_hist | rti_hist_cutdepth |
depth of cut tree | |
struct soltab ** | rti_Solids |
ptrs to soltab [st_bit] | |
struct bu_list | rti_solidheads [RT_DBNHASH] |
active solid lists | |
struct bu_ptbl | rti_resources |
list of 'struct resource's encountered | |
size_t | rti_cutlen |
goal for # solids per boxnode | |
size_t | rti_cutdepth |
goal for depth of NUBSPT cut tree | |
char * | rti_treetop |
bu_strduped, for rt_submodel rti's only | |
size_t | rti_uses |
for rt_submodel | |
size_t | rti_nsolids_with_pieces |
# solids using pieces | |
int | rti_add_to_new_solids_list |
struct bu_ptbl | rti_new_solids |
This structure keeps track of almost everything for ray-tracing support: Regions, primitives, model bounding box, statistics.
Definitions for librt which are specific to the particular model being processed, one copy for each model. Initially, a pointer to this is returned from rt_dirbuild().
During gettree processing, the most time consuming step is searching the list of existing solids to see if a new solid is actually an identical instance of a previous solid. Therefore, the list has been divided into several lists. The same macros & hash value that accesses the dbi_Head[] array are used here. The hash value is computed by db_dirhash().
Definition at line 65 of file rt_instance.h.
uint32_t rti_magic |
magic # for integrity check
Definition at line 66 of file rt_instance.h.
int useair |
1="air" regions are retained while prepping
Definition at line 68 of file rt_instance.h.
int rti_save_overlaps |
1=fill in pt_overlap_reg, change boolweave behavior
Definition at line 69 of file rt_instance.h.
int rti_dont_instance |
1=Don't compress instances of solids into 1 while prepping
Definition at line 70 of file rt_instance.h.
int rti_hasty_prep |
1=hasty prep, slower ray-trace
Definition at line 71 of file rt_instance.h.
size_t rti_nlights |
number of light sources
Definition at line 72 of file rt_instance.h.
int rti_prismtrace |
add support for pixel prism trace
Definition at line 73 of file rt_instance.h.
char* rti_region_fix_file |
rt_regionfix() file or NULL
Definition at line 74 of file rt_instance.h.
int rti_space_partition |
space partitioning method
Definition at line 75 of file rt_instance.h.
struct bn_tol rti_tol |
Math tolerances for this model.
Definition at line 76 of file rt_instance.h.
struct bg_tess_tol rti_ttol |
Tessellation tolerance defaults.
Definition at line 77 of file rt_instance.h.
fastf_t rti_max_beam_radius |
Max threat radius for FASTGEN cline solid.
Definition at line 78 of file rt_instance.h.
rti_clbk_t rti_gettrees_clbk |
Optional user clbk function called during rt_gettrees_and_attrs.
Definition at line 79 of file rt_instance.h.
void* rti_udata |
ptr for user data.
Definition at line 80 of file rt_instance.h.
point_t mdl_min |
min corner of model bounding RPP
Definition at line 82 of file rt_instance.h.
point_t mdl_max |
max corner of model bounding RPP
Definition at line 83 of file rt_instance.h.
point_t rti_pmin |
for plotting, min RPP
Definition at line 84 of file rt_instance.h.
point_t rti_pmax |
for plotting, max RPP
Definition at line 85 of file rt_instance.h.
double rti_radius |
radius of model bounding sphere
Definition at line 86 of file rt_instance.h.
struct db_i* rti_dbip |
prt to Database instance struct
Definition at line 87 of file rt_instance.h.
int needprep |
needs rt_prep
Definition at line 89 of file rt_instance.h.
struct region** Regions |
ptrs to regions [reg_bit]
Definition at line 90 of file rt_instance.h.
struct bu_list HeadRegion |
ptr of list of regions in model
Definition at line 91 of file rt_instance.h.
struct bu_ptbl delete_regs |
list of region pointers to delete after light_init()
Definition at line 92 of file rt_instance.h.
size_t nregions |
total # of regions participating
Definition at line 94 of file rt_instance.h.
size_t nsolids |
total # of solids participating
Definition at line 95 of file rt_instance.h.
size_t rti_nrays |
# calls to rt_shootray()
Definition at line 96 of file rt_instance.h.
size_t nmiss_model |
rays missed model RPP
Definition at line 97 of file rt_instance.h.
size_t nshots |
# of calls to ft_shot()
Definition at line 98 of file rt_instance.h.
size_t nmiss |
solid ft_shot() returned a miss
Definition at line 99 of file rt_instance.h.
size_t nhits |
solid ft_shot() returned a hit
Definition at line 100 of file rt_instance.h.
size_t nmiss_tree |
shots missed sub-tree RPP
Definition at line 101 of file rt_instance.h.
size_t nmiss_solid |
shots missed solid RPP
Definition at line 102 of file rt_instance.h.
size_t ndup |
duplicate shots at a given solid
Definition at line 103 of file rt_instance.h.
size_t nempty_cells |
number of empty spatial partition cells passed through
Definition at line 104 of file rt_instance.h.
Head of cut tree.
Definition at line 105 of file rt_instance.h.
List of infinite solids.
Definition at line 106 of file rt_instance.h.
cut Freelist
Definition at line 107 of file rt_instance.h.
struct bu_ptbl rti_busy_cutter_nodes |
List of "cutter" mallocs.
Definition at line 108 of file rt_instance.h.
struct bu_ptbl rti_cuts_waiting |
Definition at line 109 of file rt_instance.h.
size_t rti_cut_maxlen |
max len RPP list in 1 cut bin
Definition at line 110 of file rt_instance.h.
size_t rti_ncut_by_type[CUT_MAXIMUM+1] |
number of cuts by type
Definition at line 111 of file rt_instance.h.
size_t rti_cut_totobj |
# objs in all bins, total
Definition at line 112 of file rt_instance.h.
size_t rti_cut_maxdepth |
max depth of cut tree
Definition at line 113 of file rt_instance.h.
struct soltab** rti_sol_by_type[ID_MAX_SOLID+1] |
Definition at line 114 of file rt_instance.h.
size_t rti_nsol_by_type[ID_MAX_SOLID+1] |
Definition at line 115 of file rt_instance.h.
size_t rti_maxsol_by_type |
Definition at line 116 of file rt_instance.h.
size_t rti_air_discards |
# of air regions discarded
Definition at line 117 of file rt_instance.h.
struct bu_hist rti_hist_cellsize |
occupancy of cut cells
Definition at line 118 of file rt_instance.h.
struct bu_hist rti_hist_cell_pieces |
solid pieces per cell
Definition at line 119 of file rt_instance.h.
struct bu_hist rti_hist_cutdepth |
depth of cut tree
Definition at line 120 of file rt_instance.h.
struct soltab** rti_Solids |
ptrs to soltab [st_bit]
Definition at line 121 of file rt_instance.h.
struct bu_list rti_solidheads[RT_DBNHASH] |
active solid lists
Definition at line 122 of file rt_instance.h.
struct bu_ptbl rti_resources |
list of 'struct resource's encountered
Definition at line 123 of file rt_instance.h.
size_t rti_cutlen |
goal for # solids per boxnode
Definition at line 124 of file rt_instance.h.
size_t rti_cutdepth |
goal for depth of NUBSPT cut tree
Definition at line 125 of file rt_instance.h.
char* rti_treetop |
bu_strduped, for rt_submodel rti's only
Definition at line 127 of file rt_instance.h.
size_t rti_uses |
for rt_submodel
Definition at line 128 of file rt_instance.h.
size_t rti_nsolids_with_pieces |
# solids using pieces
Definition at line 130 of file rt_instance.h.
int rti_add_to_new_solids_list |
Definition at line 132 of file rt_instance.h.
struct bu_ptbl rti_new_solids |
Definition at line 133 of file rt_instance.h.