Collaboration diagram for Ray Tracing:
![]() |
Files | |
file | bezier_2d_isect.c |
file | bigE.c |
file | bool.c |
file | cmd.c |
file | cut.c |
file | prep.c |
file | shoot.c |
file | vshoot.c |
Defines | |
#define | SGN(_x) (((_x)<0) ? -1 : 1) |
#define | MAXDEPTH 64 |
#define | V3PT_DEPARTING_RPP(_step, _lo, _hi, _pt) PT_DEPARTING_RPP(_step, _lo, _hi, (_pt)[X], (_pt)[Y], (_pt)[Z] ) |
#define | PT_DEPARTING_RPP(_step, _lo, _hi, _px, _py, _pz) |
#define | SEG_MISS(SEG) (SEG).seg_stp=(struct soltab *) 0; |
#define | SEG_MISS(SEG) (SEG).seg_stp=(struct soltab *) 0; |
Functions | |
int | CrossingCount (point2d_t *V, int degree, point2d_t ray_start, point2d_t ray_dir, point2d_t ray_perp) |
int | ControlPolygonFlatEnough (point2d_t *V, int degree, fastf_t epsilon) |
void | Bezier (point2d_t *V, int degree, double t, point2d_t *Left, point2d_t *Right, point2d_t eval_pt, point2d_t normal) |
int | FindRoots (point2d_t *w, int degree, point2d_t **intercept, point2d_t **normal, point2d_t ray_start, point2d_t ray_dir, point2d_t ray_perp, int depth, fastf_t epsilon) |
bezier_2d_list * | subdivide_bezier (struct bezier_2d_list *bezier_in, int degree, fastf_t epsilon, int depth) |
void | rt_plot_cell (const union cutter *cutp, const struct rt_shootray_status *ssp, struct bu_list *waiting_segs_hd, struct rt_i *rtip) |
void | rt_res_pieces_init (struct resource *resp, struct rt_i *rtip) |
void | rt_res_pieces_clean (struct resource *resp, struct rt_i *rtip) |
int | rt_find_nugrid (const struct nugridnode *nugnp, int axis, fastf_t val) |
const union cutter * | rt_advance_to_next_cell (register struct rt_shootray_status *ssp) |
fastf_t | rt_find_backing_dist (struct rt_shootray_status *ss, struct bu_bitv *backbits) |
int | rt_shootray (register struct application *ap) |
const union cutter * | rt_cell_n_on_ray (register struct application *ap, int n) |
int | rt_in_rpp (struct xray *rp, register const fastf_t *invdir, register const fastf_t *min, register const fastf_t *max) |
int | rt_DB_rpp (register struct xray *rp, register const fastf_t *invdir, register const fastf_t *min, register const fastf_t *max) |
void | rt_vstub (struct soltab **stp, struct xray **rp, struct seg *segp, int n, struct application *ap) |
void | rt_pr_library_version (void) |
void | rt_zero_res_stats (struct resource *resp) |
void | rt_add_res_stats (register struct rt_i *rtip, register struct resource *resp) |
void | rt_3move_raydist (FILE *fp, struct xray *rayp, double dist) |
void | rt_3cont_raydist (FILE *fp, struct xray *rayp, double dist) |
int | rt_shootray (struct application *ap) |
rt_vstub (struct soltab *stp[], struct xray *rp[], struct seg segp[], int n, struct resource *resp) | |
rt_in_rpp (struct xray *rp, fastf_t *invdir, fastf_t *min, fastf_t *max) | |
void | rt_bitv_or (bitv_t *out, bitv_t *in, int nbits) |
void | rt_get_bitv (struct rt_i *rtip, struct resource *res) |
Variables | |
resource | rt_uniresource |
default. Defined in librt/shoot.c | |
resource | rt_uniresource |
default. Defined in librt/shoot.c |
|
Definition at line 49 of file bezier_2d_isect.c. Referenced by CrossingCount(). |
|
Definition at line 50 of file bezier_2d_isect.c. Referenced by FindRoots(), and subdivide_bezier(). |
|
|
|
Value: |
|
|
|
|
|
Definition at line 58 of file bezier_2d_isect.c. References SGN, V2DOT, and V2SUB2. Referenced by FindRoots(). |
|
Definition at line 90 of file bezier_2d_isect.c. References bu_malloc(), X, and Y. Referenced by FindRoots(), and subdivide_bezier(). Here is the call graph for this function: ![]() |
|
Definition at line 201 of file bezier_2d_isect.c. References bu_calloc(), and V2MOVE. Referenced by FindRoots(), and subdivide_bezier(). Here is the call graph for this function: ![]() |
|
Definition at line 367 of file bezier_2d_isect.c. References Bezier(), bu_calloc(), bu_free(), bu_malloc(), ControlPolygonFlatEnough(), CrossingCount(), FindRoots(), MAXDEPTH, NULL, and V2MOVE. Referenced by FindRoots(). Here is the call graph for this function: ![]() |
|
Definition at line 461 of file bezier_2d_isect.c. References Bezier(), bu_calloc(), bu_free(), BU_LIST_APPEND, BU_LIST_APPEND_LIST, BU_LIST_DEQUEUE, BU_LIST_INIT, bu_malloc(), ControlPolygonFlatEnough(), bezier_2d_list::ctl, bezier_2d_list::l, MAXDEPTH, NULL, and subdivide_bezier(). Referenced by subdivide_bezier(). Here is the call graph for this function: ![]() |
|
Definition at line 2040 of file shoot.c. References application::a_resource, application::a_rt_i, rt_shootray_status::ap, cutter::bn, cutter::boxnode::bn_len, cutter::boxnode::bn_list, cutter::boxnode::bn_max, cutter::boxnode::bn_min, bu_bomb(), bu_log(), CUT_BOXNODE, cutter::cut_type, fp, NULL, pdv_3box(), pdv_3space(), perror(), pl_color(), RT_AP_CHECK, RT_CK_RTI, rt_plot_solid(), rt_i::rti_pmax, and rt_i::rti_pmin. Here is the call graph for this function: ![]() |
|
Definition at line 94 of file shoot.c. References bu_bitv_new(), bu_calloc(), rt_piecestate::cutp, CUTTER_NULL, rt_piecestate::htab, rt_piecestate::magic, resource::re_pieces, RT_CK_RESOURCE, RT_CK_RTI, RT_CK_SOLTAB, rt_htbl_init(), RT_PIECESTATE_MAGIC, RT_VISIT_ALL_SOLTABS_END, RT_VISIT_ALL_SOLTABS_START, rt_i::rti_nsolids_with_pieces, rt_piecestate::shot, soltab::st_npieces, soltab::st_piecestate_num, and rt_piecestate::stp. Referenced by rt_shootray(). Here is the call graph for this function: ![]() |
|
Definition at line 123 of file shoot.c. References bu_bitv_free(), bu_free(), bu_ptbl_free(), rt_piecestate::htab, rt_piecestate::magic, NULL, resource::re_pieces, resource::re_pieces_pending, RT_CK_PIECESTATE, RT_CK_RESOURCE, RT_CK_RTI, rt_htbl_free(), rt_i::rti_nsolids_with_pieces, and rt_piecestate::shot. Referenced by rt_clean_resource(), and rt_unprep(). Here is the call graph for this function: ![]() |
|
|
|
Definition at line 197 of file shoot.c. References application::a_ray, application::a_rt_i, bu_log(), CUT_NUGRIDNODE, cutter::cut_type, CUTTER_NULL, cutter::nugridnode::nu_axis, cutter::nugridnode::nu_cells_per_axis, cutter::nugridnode::nu_grid, cutter::nugridnode::nu_stepsize, cutter::nugn, NUGRID_T_SETUP, xray::r_dir, xray::r_pt, rt_find_nugrid(), rt_i::rti_CutHead, top(), X, Y, and Z. Referenced by rt_cell_n_on_ray(), rt_shootray(), and rt_shootray_bundle(). Here is the call graph for this function: ![]() |
|
Definition at line 681 of file shoot.c. References application::a_ray, application::a_resource, application::a_rt_i, rt_shootray_status::ap, BACKING_DIST, cutter::bn, cutter::boxnode::bn_max, cutter::boxnode::bn_min, cutter::boxnode::bn_piecelen, cutter::boxnode::bn_piecelist, BU_BITSET, BU_BITTEST, bu_bitv_clear(), cutter::cn, cutter::cutnode::cn_axis, cutter::cutnode::cn_l, cutter::cutnode::cn_point, cutter::cutnode::cn_r, CUT_CUTNODE, cutter::cut_type, get_solidbitv(), rt_shootray_status::inv_dir, rt_i::nsolids, OFFSET_DIST, xray::r_dir, xray::r_max, xray::r_pt, rt_in_rpp(), rt_i::rti_CutHead, and VJOIN1. Referenced by rt_shootray(). Here is the call graph for this function: ![]() |
|
|
|
Definition at line 1703 of file shoot.c. References INFINITY, xray::r_max, xray::r_min, xray::r_pt, and st. |
|
Definition at line 1787 of file shoot.c. References bu_log(), FAST, INFINITY, st, VPRINT, X, Y, and Z. Here is the call graph for this function: ![]() |
|
Definition at line 1918 of file shoot.c. References BU_LIST_INIT, seg::l, and SEG_MISS. |
|
Definition at line 1953 of file shoot.c. References bu_log(), and rt_version. Here is the call graph for this function: ![]() |
|
Definition at line 1959 of file shoot.c. References resource::re_ndup, resource::re_nempty_cells, resource::re_nmiss_model, resource::re_nshootray, resource::re_piece_ndup, resource::re_piece_shot_hit, resource::re_piece_shot_miss, resource::re_piece_shots, resource::re_prune_solrpp, resource::re_shot_hit, resource::re_shot_miss, resource::re_shots, and RT_CK_RESOURCE. Referenced by rt_add_res_stats(). |
|
Definition at line 1992 of file shoot.c. References RESOURCE_NULL, RT_CK_RESOURCE, RT_CK_RTI, rt_uniresource, and rt_zero_res_stats(). Here is the call graph for this function: ![]() |
|
Definition at line 2019 of file shoot.c. References pdv_3move(), xray::r_dir, xray::r_pt, and VJOIN1. Here is the call graph for this function: ![]() |
|
Definition at line 2028 of file shoot.c. References pdv_3cont(), xray::r_dir, xray::r_pt, and VJOIN1. Here is the call graph for this function: ![]() |
|
Definition at line 95 of file vshoot.c. References application::a_level, application::a_purpose, application::a_ray, application::a_resource, application::a_rt_i, application::a_x, application::a_y, bu_calloc(), bu_log(), bzero, DEBUG_ALLRAYS, DEBUG_PARTITION, DEBUG_SHOOT, ID_MAX_SOLID, INFINITY, rt_i::mdl_max, rt_i::mdl_min, NEAR_ZERO, rt_i::needprep, rt_i::nmiss_model, rt_i::nsolids, partition::pt_back, partition::pt_forw, xray::r_dir, xray::r_max, xray::r_pt, resource::re_cpu, resource::re_magic, RESOURCE_MAGIC, RESOURCE_NULL, RT_AP_CHECK, RT_CK_RESOURCE, RT_G_DEBUG, rt_in_rpp(), rt_prep(), rt_uniresource, rt_i::rti_maxsol_by_type, rt_i::rti_nrays, rt_i::rti_nsol_by_type, rt_i::rti_sol_by_type, seg::seg_stp, SOLTAB_NULL, SQRT_SMALL_FASTF, status, VPRINT, X, Y, and Z. Referenced by rt_shoot_many_rays_worker(), rt_smooth_bot(), rt_submodel_shot(), and rt_tcl_rt_shootray(). Here is the call graph for this function: ![]() |
|
Definition at line 359 of file vshoot.c. References SEG_MISS. |
|
Definition at line 412 of file vshoot.c. References FAST, INFINITY, xray::r_dir, xray::r_max, xray::r_min, xray::r_pt, st, X, Y, and Z. |
|
|
|
Definition at line 531 of file vshoot.c. References bu_log(), bu_malloc(), bu_malloc_len_roundup(), and size. Here is the call graph for this function: ![]() |
|
default. Defined in librt/shoot.c
|
|
default. Defined in librt/shoot.c
|