rt_i Struct Reference
[librt geometry, raytracing]

#include <raytrace.h>

Collaboration diagram for rt_i:

Collaboration graph
[legend]

Data Fields

long 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
int 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
int rti_nugrid_dimlimit
 limit on nugrid dimensions
bn_tol rti_tol
 Math tolerances for this model.
rt_tess_tol rti_ttol
 Tessellation tolerance defaults.
fastf_t rti_max_beam_radius
 Max threat radius for FASTGEN cline solid.
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
db_irti_dbip
 prt to Database instance struct
int needprep
 needs rt_prep
region ** Regions
 ptrs to regions [reg_bit]
bu_list HeadRegion
 ptr of list of regions in model
genptr_t Orca_hash_tbl
 Hash table in matrices for ORCA.
bu_ptbl delete_regs
 list of region pointers to delete after light_init()
long nregions
 total # of regions participating
long nsolids
 total # of solids participating
long rti_nrays
 # calls to rt_shootray()
long nmiss_model
 rays missed model RPP
long nshots
 # of calls to ft_shot()
long nmiss
 solid ft_shot() returned a miss
long nhits
 solid ft_shot() returned a hit
long nmiss_tree
 shots missed sub-tree RPP
long nmiss_solid
 shots missed solid RPP
long ndup
 duplicate shots at a given solid
long nempty_cells
 number of empty NUgrid cells
cutter rti_CutHead
 Head of cut tree.
cutter rti_inf_box
 List of infinite solids.
cutterrti_CutFree
 cut Freelist
bu_ptbl rti_busy_cutter_nodes
 List of "cutter" mallocs.
bu_ptbl rti_cuts_waiting
int rti_cut_maxlen
 max len RPP list in 1 cut bin
int rti_ncut_by_type [CUT_MAXIMUM+1]
 number of cuts by type
int rti_cut_totobj
 # objs in all bins, total
int rti_cut_maxdepth
 max depth of cut tree
soltab ** rti_sol_by_type [ID_MAX_SOLID+1]
int rti_nsol_by_type [ID_MAX_SOLID+1]
int rti_maxsol_by_type
int rti_air_discards
 # of air regions discarded
bu_hist rti_hist_cellsize
 occupancy of cut cells
bu_hist rti_hist_cell_pieces
 solid pieces per cell
bu_hist rti_hist_cutdepth
 depth of cut tree
soltab ** rti_Solids
 ptrs to soltab [st_bit]
bu_list rti_solidheads [RT_DBNHASH]
 active solid lists
bu_ptbl rti_resources
 list of 'struct resource'es encountered
double rti_nu_gfactor
 constant in numcells computation
int rti_cutlen
 goal for # solids per boxnode
int rti_cutdepth
 goal for depth of NUBSPT cut tree
char * rti_treetop
 bu_strduped, for rt_submodel rti's only
int rti_uses
 for rt_submodel
int rti_nsolids_with_pieces
 # solids using pieces
int rti_add_to_new_solids_list
bu_ptbl rti_new_solids

Detailed Description

R T _ I

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 1763 of file raytrace.h.


Field Documentation

long rti_magic
 

magic # for integrity check

Definition at line 1764 of file raytrace.h.

Referenced by rt_new_rti().

int useair
 

1="air" regions are retained while prepping

Definition at line 1766 of file raytrace.h.

Referenced by db_shader_mat(), dgo_E_cmd(), rt_gettree_region_start(), rt_submodel_prep(), rt_tcl_rt_prep(), wdb_get_obj_bounds(), and wdb_rt_gettrees_cmd().

int rti_save_overlaps
 

1=fill in pt_overlap_reg, change boolweave behavior

Definition at line 1767 of file raytrace.h.

int rti_dont_instance
 

1=Don't compress instances of solids into 1 while prepping

Definition at line 1768 of file raytrace.h.

Referenced by rt_find_identical_solid(), rt_submodel_prep(), rt_tcl_rt_prep(), and wdb_rt_gettrees_cmd().

int rti_hasty_prep
 

1=hasty prep, slower ray-trace

Definition at line 1769 of file raytrace.h.

Referenced by rt_submodel_prep(), rt_tcl_rt_prep(), and wdb_rt_gettrees_cmd().

int rti_nlights
 

number of light sources

Definition at line 1770 of file raytrace.h.

int rti_prismtrace
 

add support for pixel prism trace

Definition at line 1771 of file raytrace.h.

char* rti_region_fix_file
 

rt_regionfix() file or NULL

Definition at line 1772 of file raytrace.h.

Referenced by rt_regionfix().

int rti_space_partition
 

space partitioning method

Definition at line 1773 of file raytrace.h.

Referenced by rt_pr_cut_info(), rt_submodel_prep(), and rt_tcl_rt_prep().

int rti_nugrid_dimlimit
 

limit on nugrid dimensions

Definition at line 1774 of file raytrace.h.

Referenced by rt_nugrid_cut().

struct bn_tol rti_tol
 

Math tolerances for this model.

Definition at line 1775 of file raytrace.h.

Referenced by dgo_E_cmd(), rt_arb_setup(), rt_arbn_prep(), rt_ars_prep(), rt_ars_shot(), rt_boolweave(), rt_ct_populate_box(), rt_dsp_shot(), rt_ehy_prep(), rt_ell_prep(), rt_epa_prep(), rt_find_identical_solid(), rt_gettree_leaf(), rt_hf_prep(), rt_nmg_prep(), rt_nmg_shot(), rt_nurb_shot(), rt_pg_prep(), rt_pg_shot(), rt_rec_shot(), rt_rpc_prep(), rt_sph_prep(), rt_submodel_prep(), rt_superell_prep(), rt_tor_prep(), rt_tor_shot(), rt_vlist_solid(), rt_weave0seg(), rt_xxx_prep(), rt_xxx_shot(), and XGLUE().

struct rt_tess_tol rti_ttol
 

Tessellation tolerance defaults.

Definition at line 1776 of file raytrace.h.

Referenced by rt_ars_prep(), rt_submodel_prep(), and rt_vlist_solid().

fastf_t rti_max_beam_radius
 

Max threat radius for FASTGEN cline solid.

Definition at line 1777 of file raytrace.h.

point_t mdl_min
 

min corner of model bounding RPP

Definition at line 1779 of file raytrace.h.

Referenced by fill_out_bsp(), rt_cell_n_on_ray(), rt_cut_one_axis(), rt_gettrees_muves(), rt_reprep(), rt_shootray(), and rt_shootray_bundle().

point_t mdl_max
 

max corner of model bounding RPP

Definition at line 1780 of file raytrace.h.

Referenced by fill_out_bsp(), rt_cell_n_on_ray(), rt_cut_one_axis(), rt_gettrees_muves(), rt_reprep(), rt_shootray(), and rt_shootray_bundle().

point_t rti_pmin
 

for plotting, min RPP

Definition at line 1781 of file raytrace.h.

Referenced by rt_plot_all_bboxes(), rt_plot_all_solids(), and rt_plot_cell().

point_t rti_pmax
 

for plotting, max RPP

Definition at line 1782 of file raytrace.h.

Referenced by rt_plot_all_bboxes(), rt_plot_all_solids(), and rt_plot_cell().

double rti_radius
 

radius of model bounding sphere

Definition at line 1783 of file raytrace.h.

struct db_i* rti_dbip
 

prt to Database instance struct

Definition at line 1784 of file raytrace.h.

Referenced by db_shader_mat(), rt_arb_uv(), rt_find_solid(), rt_free_rti(), rt_gettrees_muves(), rt_load_attrs(), rt_regionfix(), rt_submodel_prep(), rt_unprep(), rt_vlist_solid(), and wdb_get_obj_bounds().

int needprep
 

needs rt_prep

Definition at line 1786 of file raytrace.h.

Referenced by rt_cell_n_on_ray(), rt_gettrees_muves(), rt_reprep(), rt_shootray(), rt_shootray_bundle(), and rt_tcl_rt_prep().

struct region** Regions
 

ptrs to regions [reg_bit]

Definition at line 1787 of file raytrace.h.

struct bu_list HeadRegion
 

ptr of list of regions in model

Definition at line 1788 of file raytrace.h.

Referenced by dgo_E_cmd(), rt_getregion(), rt_gettrees_muves(), rt_load_attrs(), rt_regionfix(), and wdb_get_obj_bounds().

genptr_t Orca_hash_tbl
 

Hash table in matrices for ORCA.

Definition at line 1789 of file raytrace.h.

Referenced by rt_gettrees_muves().

struct bu_ptbl delete_regs
 

list of region pointers to delete after light_init()

Definition at line 1790 of file raytrace.h.

long nregions
 

total # of regions participating

Definition at line 1792 of file raytrace.h.

long nsolids
 

total # of solids participating

Definition at line 1793 of file raytrace.h.

Referenced by rt_boolweave(), rt_cut_extend(), rt_cut_one_axis(), rt_find_backing_dist(), rt_find_identical_solid(), rt_gettrees_muves(), rt_shootray(), rt_shootray_bundle(), and rt_submodel_prep().

long rti_nrays
 

# calls to rt_shootray()

Definition at line 1794 of file raytrace.h.

Referenced by rt_shootray().

long nmiss_model
 

rays missed model RPP

Definition at line 1795 of file raytrace.h.

Referenced by rt_shootray().

long nshots
 

# of calls to ft_shot()

Definition at line 1796 of file raytrace.h.

long nmiss
 

solid ft_shot() returned a miss

Definition at line 1797 of file raytrace.h.

long nhits
 

solid ft_shot() returned a hit

Definition at line 1798 of file raytrace.h.

long nmiss_tree
 

shots missed sub-tree RPP

Definition at line 1799 of file raytrace.h.

long nmiss_solid
 

shots missed solid RPP

Definition at line 1800 of file raytrace.h.

long ndup
 

duplicate shots at a given solid

Definition at line 1801 of file raytrace.h.

long nempty_cells
 

number of empty NUgrid cells

Definition at line 1802 of file raytrace.h.

Referenced by rt_pr_cut_info(), and rt_tcl_rt_prep().

union cutter rti_CutHead
 

Head of cut tree.

Definition at line 1803 of file raytrace.h.

Referenced by rt_advance_to_next_cell(), rt_find_backing_dist(), and rt_pr_cut_info().

union cutter rti_inf_box
 

List of infinite solids.

Definition at line 1804 of file raytrace.h.

union cutter* rti_CutFree
 

cut Freelist

Definition at line 1805 of file raytrace.h.

Referenced by rt_ct_free(), rt_ct_get(), and rt_cut_clean().

struct bu_ptbl rti_busy_cutter_nodes
 

List of "cutter" mallocs.

Definition at line 1806 of file raytrace.h.

Referenced by rt_ct_get(), and rt_cut_clean().

struct bu_ptbl rti_cuts_waiting
 

Definition at line 1807 of file raytrace.h.

Referenced by rt_cut_clean(), and rt_cut_optimize_parallel().

int rti_cut_maxlen
 

max len RPP list in 1 cut bin

Definition at line 1808 of file raytrace.h.

Referenced by rt_pr_cut_info(), and rt_tcl_rt_prep().

int rti_ncut_by_type[CUT_MAXIMUM+1]
 

number of cuts by type

Definition at line 1809 of file raytrace.h.

Referenced by rt_pr_cut_info(), and rt_tcl_rt_prep().

int rti_cut_totobj
 

# objs in all bins, total

Definition at line 1810 of file raytrace.h.

Referenced by rt_pr_cut_info(), and rt_tcl_rt_prep().

int rti_cut_maxdepth
 

max depth of cut tree

Definition at line 1811 of file raytrace.h.

Referenced by rt_pr_cut_info(), and rt_tcl_rt_prep().

struct soltab** rti_sol_by_type[ID_MAX_SOLID+1]
 

Definition at line 1812 of file raytrace.h.

Referenced by rt_shootray().

int rti_nsol_by_type[ID_MAX_SOLID+1]
 

Definition at line 1813 of file raytrace.h.

Referenced by rt_shootray().

int rti_maxsol_by_type
 

Definition at line 1814 of file raytrace.h.

Referenced by rt_shootray().

int rti_air_discards
 

# of air regions discarded

Definition at line 1815 of file raytrace.h.

Referenced by rt_gettree_region_start().

struct bu_hist rti_hist_cellsize
 

occupancy of cut cells

Definition at line 1816 of file raytrace.h.

Referenced by rt_pr_cut_info().

struct bu_hist rti_hist_cell_pieces
 

solid pieces per cell

Definition at line 1817 of file raytrace.h.

Referenced by rt_pr_cut_info().

struct bu_hist rti_hist_cutdepth
 

depth of cut tree

Definition at line 1818 of file raytrace.h.

Referenced by rt_pr_cut_info().

struct soltab** rti_Solids
 

ptrs to soltab [st_bit]

Definition at line 1819 of file raytrace.h.

struct bu_list rti_solidheads[RT_DBNHASH]
 

active solid lists

Definition at line 1820 of file raytrace.h.

Referenced by rt_find_identical_solid(), and rt_new_rti().

struct bu_ptbl rti_resources
 

list of 'struct resource'es encountered

Definition at line 1821 of file raytrace.h.

Referenced by db_walk_dispatcher(), db_walk_tree(), rt_cell_n_on_ray(), rt_init_resource(), rt_shootray(), rt_shootray_bundle(), rt_submodel_free(), rt_submodel_prep(), rt_submodel_shot(), and wdb_rt_gettrees_cmd().

double rti_nu_gfactor
 

constant in numcells computation

Definition at line 1822 of file raytrace.h.

Referenced by rt_nugrid_cut().

int rti_cutlen
 

goal for # solids per boxnode

Definition at line 1823 of file raytrace.h.

Referenced by rt_cut_extend().

int rti_cutdepth
 

goal for depth of NUBSPT cut tree

Definition at line 1824 of file raytrace.h.

Referenced by rt_ct_optim().

char* rti_treetop
 

bu_strduped, for rt_submodel rti's only

Definition at line 1826 of file raytrace.h.

Referenced by rt_init_resource(), and rt_submodel_prep().

int rti_uses
 

for rt_submodel

Definition at line 1827 of file raytrace.h.

Referenced by rt_submodel_prep().

int rti_nsolids_with_pieces
 

# solids using pieces

Definition at line 1829 of file raytrace.h.

Referenced by rt_gettrees_muves(), rt_res_pieces_clean(), rt_res_pieces_init(), and rt_shootray().

int rti_add_to_new_solids_list
 

Definition at line 1831 of file raytrace.h.

Referenced by rt_gettree_leaf().

struct bu_ptbl rti_new_solids
 

Definition at line 1832 of file raytrace.h.

Referenced by rt_gettree_leaf().


The documentation for this struct was generated from the following file:
Generated on Mon Sep 18 01:25:15 2006 for BRL-CAD by  doxygen 1.4.6