|
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.