BRL-CAD
rt_i Struct Reference

#include <raytrace.h>

Collaboration diagram for rt_i:
[legend]

Data Fields

uint32_t rti_magic
 magic # for integrity check More...
 
int useair
 1="air" regions are retained while prepping More...
 
int rti_save_overlaps
 1=fill in pt_overlap_reg, change boolweave behavior More...
 
int rti_dont_instance
 1=Don't compress instances of solids into 1 while prepping More...
 
int rti_hasty_prep
 1=hasty prep, slower ray-trace More...
 
int rti_nlights
 number of light sources More...
 
int rti_prismtrace
 add support for pixel prism trace More...
 
char * rti_region_fix_file
 rt_regionfix() file or NULL More...
 
int rti_space_partition
 space partitioning method More...
 
int rti_nugrid_dimlimit
 limit on nugrid dimensions More...
 
struct bn_tol rti_tol
 Math tolerances for this model. More...
 
struct rt_tess_tol rti_ttol
 Tessellation tolerance defaults. More...
 
fastf_t rti_max_beam_radius
 Max threat radius for FASTGEN cline solid. More...
 
point_t mdl_min
 min corner of model bounding RPP More...
 
point_t mdl_max
 max corner of model bounding RPP More...
 
point_t rti_pmin
 for plotting, min RPP More...
 
point_t rti_pmax
 for plotting, max RPP More...
 
double rti_radius
 radius of model bounding sphere More...
 
struct db_irti_dbip
 prt to Database instance struct More...
 
int needprep
 needs rt_prep More...
 
struct region ** Regions
 ptrs to regions [reg_bit] More...
 
struct bu_list HeadRegion
 ptr of list of regions in model More...
 
void * Orca_hash_tbl
 Hash table in matrices for ORCA. More...
 
struct bu_ptbl delete_regs
 list of region pointers to delete after light_init() More...
 
size_t nregions
 total # of regions participating More...
 
size_t nsolids
 total # of solids participating More...
 
size_t rti_nrays
 

calls to rt_shootray()

More...
 
size_t nmiss_model
 rays missed model RPP More...
 
size_t nshots
 

of calls to ft_shot()

More...
 
size_t nmiss
 solid ft_shot() returned a miss More...
 
size_t nhits
 solid ft_shot() returned a hit More...
 
size_t nmiss_tree
 shots missed sub-tree RPP More...
 
size_t nmiss_solid
 shots missed solid RPP More...
 
size_t ndup
 duplicate shots at a given solid More...
 
size_t nempty_cells
 number of empty NUgrid cells More...
 
union cutter rti_CutHead
 Head of cut tree. More...
 
union cutter rti_inf_box
 List of infinite solids. More...
 
union cutterrti_CutFree
 cut Freelist More...
 
struct bu_ptbl rti_busy_cutter_nodes
 List of "cutter" mallocs. More...
 
struct bu_ptbl rti_cuts_waiting
 
int rti_cut_maxlen
 max len RPP list in 1 cut bin More...
 
int rti_ncut_by_type [CUT_MAXIMUM+1]
 number of cuts by type More...
 
int rti_cut_totobj
 

objs in all bins, total

More...
 
int rti_cut_maxdepth
 max depth of cut tree More...
 
struct 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

More...
 
struct bu_hist rti_hist_cellsize
 occupancy of cut cells More...
 
struct bu_hist rti_hist_cell_pieces
 solid pieces per cell More...
 
struct bu_hist rti_hist_cutdepth
 depth of cut tree More...
 
struct soltab ** rti_Solids
 ptrs to soltab [st_bit] More...
 
struct bu_list rti_solidheads [RT_DBNHASH]
 active solid lists More...
 
struct bu_ptbl rti_resources
 list of 'struct resource's encountered More...
 
double rti_nu_gfactor
 constant in numcells computation More...
 
size_t rti_cutlen
 goal for # solids per boxnode More...
 
size_t rti_cutdepth
 goal for depth of NUBSPT cut tree More...
 
char * rti_treetop
 bu_strduped, for rt_submodel rti's only More...
 
size_t rti_uses
 for rt_submodel More...
 
size_t rti_nsolids_with_pieces
 

solids using pieces

More...
 
int rti_add_to_new_solids_list
 
struct bu_ptbl rti_new_solids
 

Detailed Description

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

Field Documentation

uint32_t rti_magic

magic # for integrity check

Definition at line 1754 of file raytrace.h.

Referenced by rt_clean(), and rt_new_rti().

int rti_save_overlaps

1=fill in pt_overlap_reg, change boolweave behavior

Definition at line 1757 of file raytrace.h.

Referenced by rt_boolfinal(), and rt_default_multioverlap().

int rti_dont_instance

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

Definition at line 1758 of file raytrace.h.

Referenced by _rt_find_identical_solid(), _rt_gettree_leaf(), rt_submodel_prep(), and to_rt_gettrees_application().

int rti_hasty_prep

1=hasty prep, slower ray-trace

Definition at line 1759 of file raytrace.h.

Referenced by rt_cut_it(), rt_submodel_prep(), and to_rt_gettrees_application().

int rti_nlights

number of light sources

Definition at line 1760 of file raytrace.h.

Referenced by brdf_render(), cook_render(), phong_render(), scloud_render(), toon_render(), and toyota_render().

int rti_prismtrace

add support for pixel prism trace

Definition at line 1761 of file raytrace.h.

Referenced by prj_setup().

char* rti_region_fix_file

rt_regionfix() file or NULL

Definition at line 1762 of file raytrace.h.

Referenced by rt_regionfix().

int rti_space_partition

space partitioning method

Definition at line 1763 of file raytrace.h.

Referenced by rt_cut_it(), rt_new_rti(), rt_pr_cut_info(), and rt_submodel_prep().

int rti_nugrid_dimlimit

limit on nugrid dimensions

Definition at line 1764 of file raytrace.h.

Referenced by rt_new_rti(), and rt_nugrid_cut().

struct rt_tess_tol rti_ttol

Tessellation tolerance defaults.

Definition at line 1766 of file raytrace.h.

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

fastf_t rti_max_beam_radius

Max threat radius for FASTGEN cline solid.

Definition at line 1767 of file raytrace.h.

point_t rti_pmin

for plotting, min RPP

Definition at line 1771 of file raytrace.h.

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

point_t rti_pmax

for plotting, max RPP

Definition at line 1772 of file raytrace.h.

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

double rti_radius

radius of model bounding sphere

Definition at line 1773 of file raytrace.h.

Referenced by nmg_mc_evaluate(), rr_render(), rt_prep_parallel(), and shade_inputs().

struct region** Regions

ptrs to regions [reg_bit]

Definition at line 1777 of file raytrace.h.

Referenced by rt_clean(), rt_prep_parallel(), rt_reprep(), and rt_unprep().

void* Orca_hash_tbl

Hash table in matrices for ORCA.

Definition at line 1779 of file raytrace.h.

Referenced by rt_clean(), and rt_gettrees_muves().

struct bu_ptbl delete_regs

list of region pointers to delete after light_init()

Definition at line 1780 of file raytrace.h.

Referenced by rt_clean(), rt_free_rti(), and rt_new_rti().

size_t nregions

total # of regions participating

Definition at line 1782 of file raytrace.h.

Referenced by _rt_gettree_region_end(), allocate_per_region_data(), rt_clean(), rt_prep_parallel(), rt_reprep(), and rt_unprep().

size_t rti_nrays

calls to rt_shootray()

Definition at line 1784 of file raytrace.h.

Referenced by rt_add_res_stats(), and rt_vshootray().

size_t nmiss_model

rays missed model RPP

Definition at line 1785 of file raytrace.h.

Referenced by rt_add_res_stats(), and rt_vshootray().

size_t nshots

of calls to ft_shot()

Definition at line 1786 of file raytrace.h.

Referenced by rt_add_res_stats(), and rt_vshootray().

size_t nmiss

solid ft_shot() returned a miss

Definition at line 1787 of file raytrace.h.

Referenced by rt_add_res_stats(), and rt_vshootray().

size_t nhits

solid ft_shot() returned a hit

Definition at line 1788 of file raytrace.h.

Referenced by rt_add_res_stats(), and rt_vshootray().

size_t nmiss_tree

shots missed sub-tree RPP

Definition at line 1789 of file raytrace.h.

size_t nmiss_solid

shots missed solid RPP

Definition at line 1790 of file raytrace.h.

Referenced by rt_add_res_stats().

size_t ndup

duplicate shots at a given solid

Definition at line 1791 of file raytrace.h.

Referenced by rt_add_res_stats().

size_t nempty_cells

number of empty NUgrid cells

Definition at line 1792 of file raytrace.h.

Referenced by rt_add_res_stats(), rt_ct_measure(), and rt_pr_cut_info().

union cutter rti_inf_box

List of infinite solids.

Definition at line 1794 of file raytrace.h.

Referenced by rt_advance_to_next_cell(), rt_cell_n_on_ray(), rt_clean(), rt_cut_it(), rt_new_rti(), rt_reprep(), rt_shootray(), and unprep_leaf().

union cutter* rti_CutFree

cut Freelist

Definition at line 1795 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 1796 of file raytrace.h.

Referenced by rt_ct_get(), and rt_cut_clean().

struct bu_ptbl rti_cuts_waiting

Definition at line 1797 of file raytrace.h.

Referenced by rt_cut_clean(), rt_cut_it(), and rt_cut_optimize_parallel().

int rti_cut_maxlen

max len RPP list in 1 cut bin

Definition at line 1798 of file raytrace.h.

Referenced by rt_ct_measure(), and rt_pr_cut_info().

int rti_ncut_by_type[CUT_MAXIMUM+1]

number of cuts by type

Definition at line 1799 of file raytrace.h.

Referenced by rt_ct_measure(), rt_cut_it(), rt_pr_cut_info(), and rt_prep_parallel().

int rti_cut_totobj

objs in all bins, total

Definition at line 1800 of file raytrace.h.

Referenced by rt_ct_measure(), and rt_pr_cut_info().

int rti_cut_maxdepth

max depth of cut tree

Definition at line 1801 of file raytrace.h.

Referenced by rt_ct_measure(), and rt_pr_cut_info().

struct soltab** rti_sol_by_type[ID_MAX_SOLID+1]

Definition at line 1802 of file raytrace.h.

Referenced by rt_clean(), rt_prep_parallel(), and rt_vshootray().

int rti_nsol_by_type[ID_MAX_SOLID+1]

Definition at line 1803 of file raytrace.h.

Referenced by rt_clean(), rt_prep_parallel(), and rt_vshootray().

int rti_maxsol_by_type

Definition at line 1804 of file raytrace.h.

Referenced by rt_prep_parallel(), and rt_vshootray().

int rti_air_discards

of air regions discarded

Definition at line 1805 of file raytrace.h.

Referenced by _rt_gettree_region_start(), rt_prep_parallel(), and unprep_reg_start().

struct bu_hist rti_hist_cellsize

occupancy of cut cells

Definition at line 1806 of file raytrace.h.

Referenced by rt_clean(), rt_ct_measure(), rt_cut_it(), and rt_pr_cut_info().

struct bu_hist rti_hist_cell_pieces

solid pieces per cell

Definition at line 1807 of file raytrace.h.

Referenced by rt_clean(), rt_ct_measure(), rt_cut_it(), and rt_pr_cut_info().

struct bu_hist rti_hist_cutdepth

depth of cut tree

Definition at line 1808 of file raytrace.h.

Referenced by rt_clean(), rt_ct_measure(), rt_cut_it(), and rt_pr_cut_info().

struct soltab** rti_Solids

ptrs to soltab [st_bit]

Definition at line 1809 of file raytrace.h.

Referenced by make_hole_in_prepped_regions(), rt_clean(), rt_prep_parallel(), rt_reprep(), rt_unprep(), and unprep_leaf().

struct bu_list rti_solidheads[RT_DBNHASH]

active solid lists

Definition at line 1810 of file raytrace.h.

Referenced by _rt_find_identical_solid(), rt_clean(), and rt_new_rti().

double rti_nu_gfactor

constant in numcells computation

Definition at line 1812 of file raytrace.h.

Referenced by rt_new_rti(), and rt_nugrid_cut().

size_t rti_cutlen

goal for # solids per boxnode

Definition at line 1813 of file raytrace.h.

Referenced by rt_cut_extend(), and rt_cut_it().

size_t rti_cutdepth

goal for depth of NUBSPT cut tree

Definition at line 1814 of file raytrace.h.

Referenced by rt_ct_optim(), and rt_cut_it().

char* rti_treetop

bu_strduped, for rt_submodel rti's only

Definition at line 1816 of file raytrace.h.

Referenced by rt_init_resource(), and rt_submodel_prep().

size_t rti_uses

for rt_submodel

Definition at line 1817 of file raytrace.h.

Referenced by rt_submodel_prep().

size_t rti_nsolids_with_pieces

solids using pieces

Definition at line 1819 of file raytrace.h.

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

int rti_add_to_new_solids_list

Definition at line 1821 of file raytrace.h.

Referenced by _rt_gettree_leaf(), and rt_reprep().

struct bu_ptbl rti_new_solids

Definition at line 1822 of file raytrace.h.

Referenced by _rt_gettree_leaf(), and rt_reprep().


The documentation for this struct was generated from the following file: