raytrace.h File Reference

#include "bu.h"
#include "compat4.h"
#include "bn.h"
#include "db5.h"
#include "tcl.h"
#include "nmg.h"

Include dependency graph for raytrace.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  rt_tess_tol
struct  rt_db_internal
struct  db_full_path
struct  xray
struct  hit
struct  curvature
struct  uvcoord
struct  seg
struct  bound_rpp
struct  soltab
struct  mater_info
struct  region
struct  partition
union  cutter
struct  cutter::cutnode
struct  cutter::boxnode
struct  cutter::nugridnode
struct  cutter::nugridnode::nu_axis
struct  mem_map
struct  db_i
struct  directory
struct  rt_comb_internal
struct  rt_binunif_internal
struct  db_tree_state
struct  db_traverse
struct  combined_tree_state
union  tree
struct  tree::tree_node
struct  tree::tree_leaf
struct  tree::tree_cts
struct  tree::tree_nmgregion
struct  tree::tree_db_leaf
struct  rt_tree_array
struct  rt_wdb
struct  vd_curve
struct  run_rt
struct  dg_qray_color
struct  dg_qray_fmt
struct  dg_obj
struct  view_obj
struct  anim_mat
struct  rt_anim_property
struct  rt_anim_color
struct  animate
union  animate::animate_specific
struct  rt_htbl
struct  rt_piecestate
struct  rt_piecelist
struct  resource
struct  rt_reprep_obj_list
struct  pixel_ext
struct  application
 This structure is the only parameter to rt_shootray(). The entire structure should be zeroed (e.g. by memset(,0,) ) before it is used the first time. More...
struct  rt_g
struct  rt_i
struct  command_tab
struct  rt_point_labels
struct  rt_pt_node
struct  line_seg
 line segment More...
struct  carc_seg
 circular arc segment More...
struct  nurb_seg
 NURB curve segment. More...
struct  bezier_seg
 Bezier curve segment. More...
struct  rt_functab
struct  rt_shootray_status
struct  hitmiss
struct  ray_data
struct  nmg_radial
struct  nmg_inter_struct

Defines

#define RAYTRACE_H   seen
#define RT_EXPORT
#define RAYTRACE_H_VERSION   "@(#)$Header: /cvsroot/brlcad/brlcad/include/raytrace.h,v 14.45 2006/09/18 05:24:07 lbutler Exp $ (BRL)"
#define DEBUG_OFF   0
 No debugging.
#define DEBUG_ALLRAYS   0x00000001
 1 Print calls to rt_shootray()
#define DEBUG_ALLHITS   0x00000002
 2 Print partitions passed to a_hit()
#define DEBUG_SHOOT   0x00000004
 3 Info about rt_shootray() processing
#define DEBUG_INSTANCE   0x00000008
 4 regionid instance revectoring
#define DEBUG_DB   0x00000010
 5 Database debugging
#define DEBUG_SOLIDS   0x00000020
 6 Print prep'ed solids
#define DEBUG_REGIONS   0x00000040
 7 Print regions & boolean trees
#define DEBUG_ARB8   0x00000080
 8 Print voluminus ARB8 details
#define DEBUG_SPLINE   0x00000100
 9 Splines
#define DEBUG_ANIM   0x00000200
 10 Animation
#define DEBUG_ANIM_FULL   0x00000400
 11 Animation matrices
#define DEBUG_VOL   0x00000800
 12 Volume & opaque Binary solid
#define DEBUG_ROOTS   0x00001000
 13 Print rootfinder details
#define DEBUG_PARTITION   0x00002000
 14 Info about bool_weave()
#define DEBUG_CUT   0x00004000
 15 Print space cutting statistics
#define DEBUG_BOXING   0x00008000
 16 Object/box checking details
#define DEBUG_MEM   0x00010000
 17 -->> BU_DEBUG_MEM_LOG
#define DEBUG_MEM_FULL   0x00020000
 18 -->> BU_DEBUG_MEM_CHECK
#define DEBUG_FDIFF   0x00040000
 19 bool/fdiff debugging
#define DEBUG_PARALLEL   0x00080000
 20 -->> BU_DEBUG_PARALLEL
#define DEBUG_CUTDETAIL   0x00100000
 21 Print space cutting details
#define DEBUG_TREEWALK   0x00200000
 22 Database tree traversal
#define DEBUG_TESTING   0x00400000
 23 One-shot debugging flag
#define DEBUG_ADVANCE   0x00800000
 24 Cell-to-cell space partitioning
#define DEBUG_MATH   0x01000000
 25 nmg math routines
#define DEBUG_EBM   0x02000000
 26 Extruded bit-map solids
#define DEBUG_HF   0x04000000
 27 Height Field solids
#define DEBUG_PLOTSOLIDS   0x40000000
 31 plot all solids
#define DEBUG_PLOTBOX   0x80000000
 32 Plot(3) bounding boxes and cuts
#define DEBUG_FORMAT   "\020\040PLOTBOX\\037PLOTSOLIDS\\033HF\032EBM\031MATH\030ADVANCE\\027TESTING\026TREEWALK\025CUTDETAIL\024PARALLEL\023FDIFF\022MEM_FULL\\021MEM\020BOXING\017CUTTING\016PARTITION\015ROOTS\014VOL\\013ANIM_FULL\012ANIM\011SPLINE\010ARB8\7REGIONS\6SOLIDS\5DB\\4INSTANCE\3SHOOT\2ALLHITS\1ALLRAYS"
#define INFINITY   (1.0e40)
#define RT_BADNUM(n)   (!((n) >= -INFINITY && (n) <= INFINITY))
#define RT_BADVEC(v)   (RT_BADNUM((v)[X]) || RT_BADNUM((v)[Y]) || RT_BADNUM((v)[Z]))
#define RT_LEN_TOL   (1.0e-8)
#define RT_DOT_TOL   (0.001)
#define RT_PCOEF_TOL   (1.0e-10)
#define RT_TESS_TOL_MAGIC   0xb9090dab
#define RT_CK_TESS_TOL(_p)   BU_CKMAG(_p, RT_TESS_TOL_MAGIC, "rt_tess_tol")
#define idb_type   idb_minor_type
#define RT_DB_INTERNAL_MAGIC   0x0dbbd867
#define RT_INIT_DB_INTERNAL(_p)
#define RT_CK_DB_INTERNAL(_p)   BU_CKMAG(_p, RT_DB_INTERNAL_MAGIC, "rt_db_internal")
#define DB_FULL_PATH_POP(_pp)   {(_pp)->fp_len--;}
#define DB_FULL_PATH_CUR_DIR(_pp)   ((_pp)->fp_names[(_pp)->fp_len-1])
#define DB_FULL_PATH_GET(_pp, _i)   ((_pp)->fp_names[(_i)])
#define DB_FULL_PATH_MAGIC   0x64626670
#define RT_CK_FULL_PATH(_p)   BU_CKMAG(_p, DB_FULL_PATH_MAGIC, "db_full_path")
#define RAY_NULL   ((struct xray *)0)
#define RT_RAY_MAGIC   0x78726179
 "xray"
#define RT_CK_RAY(_p)   BU_CKMAG(_p,RT_RAY_MAGIC,"struct xray");
#define HIT_NULL   ((struct hit *)0)
#define RT_HIT_MAGIC   0x20686974
 " hit"
#define RT_CK_HIT(_p)   BU_CKMAG(_p,RT_HIT_MAGIC,"struct hit")
#define RT_HIT_NORM(_hitp, _stp, _unused)
#define RT_HIT_NORMAL(_normal, _hitp, _stp, _unused, _flipflag)
#define CURVE_NULL   ((struct curvature *)0)
#define RT_CURVATURE(_curvp, _hitp, _flipflag, _stp)
#define RT_HIT_UVCOORD(ap, _stp, _hitp, uvp)
#define RT_SEG_NULL   ((struct seg *)0)
#define RT_SEG_MAGIC   0x98bcdef1
#define RT_CHECK_SEG(_p)   BU_CKMAG(_p, RT_SEG_MAGIC, "struct seg")
#define RT_CK_SEG(_p)   BU_CKMAG(_p, RT_SEG_MAGIC, "struct seg")
#define RT_GET_SEG(p, res)
#define RT_FREE_SEG(p, res)
#define RT_FREE_SEG_LIST(_segheadp, _res)
#define st_name   st_dp->d_namep
#define RT_SOLTAB_NULL   ((struct soltab *)0)
#define SOLTAB_NULL   RT_SOLTAB_NULL
 backwards compat
#define RT_SOLTAB_MAGIC   0x92bfcde0
 l.magic
#define RT_SOLTAB2_MAGIC   0x92bfcde2
 l2.magic
#define RT_CHECK_SOLTAB(_p)   BU_CKMAG( _p, RT_SOLTAB_MAGIC, "struct soltab")
#define RT_CK_SOLTAB(_p)   BU_CKMAG( _p, RT_SOLTAB_MAGIC, "struct soltab")
#define ID_NULL   0
 Unused.
#define ID_TOR   1
 Toroid.
#define ID_TGC   2
 Generalized Truncated General Cone.
#define ID_ELL   3
 Ellipsoid.
#define ID_ARB8   4
 Generalized ARB. V + 7 vectors.
#define ID_ARS   5
 ARS.
#define ID_HALF   6
 Half-space.
#define ID_REC   7
 Right Elliptical Cylinder [TGC special].
#define ID_POLY   8
 Polygonal facted object.
#define ID_BSPLINE   9
 B-spline object.
#define ID_SPH   10
 Sphere.
#define ID_NMG   11
 n-Manifold Geometry solid
#define ID_EBM   12
 Extruded bitmap solid.
#define ID_VOL   13
 3-D Volume
#define ID_ARBN   14
 ARB with N faces.
#define ID_PIPE   15
 Pipe (wire) solid.
#define ID_PARTICLE   16
 Particle system solid.
#define ID_RPC   17
 Right Parabolic Cylinder.
#define ID_RHC   18
 Right Hyperbolic Cylinder.
#define ID_EPA   19
 Elliptical Paraboloid.
#define ID_EHY   20
 Elliptical Hyperboloid.
#define ID_ETO   21
 Elliptical Torus.
#define ID_GRIP   22
 Pseudo Solid Grip.
#define ID_JOINT   23
 Pseudo Solid/Region Joint.
#define ID_HF   24
 Height Field.
#define ID_DSP   25
 Displacement map.
#define ID_SKETCH   26
 2D sketch
#define ID_EXTRUDE   27
 Solid of extrusion.
#define ID_SUBMODEL   28
 Instanced submodel.
#define ID_CLINE   29
 FASTGEN4 CLINE solid.
#define ID_BOT   30
 Bag o' triangles.
#define ID_MAX_SOLID   37
 Maximum defined ID_xxx for solids.
#define ID_COMBINATION   31
 Combination Record.
#define ID_BINEXPM   32
 Experimental binary.
#define ID_BINUNIF   33
 Uniform-array binary.
#define ID_BINMIME   34
 MIME-typed binary.
#define ID_SUPERELL   35
 Superquadratic ellipsoid.
#define ID_METABALL   36
 Metaball.
#define ID_MAXIMUM   37
 Maximum defined ID_xxx value.
#define REGION_NON_FASTGEN   0
#define REGION_FASTGEN_PLATE   1
#define REGION_FASTGEN_VOLUME   2
#define REGION_NULL   ((struct region *)0)
#define RT_REGION_MAGIC   0xdffb8001
#define RT_CK_REGION(_p)   BU_CKMAG(_p,RT_REGION_MAGIC,"struct region")
#define PT_NULL   ((struct partition *)0)
#define PT_MAGIC   0x87687681
#define PT_HD_MAGIC   0x87687680
#define RT_CHECK_PT(_p)   RT_CK_PT(_p)
 compat
#define RT_CK_PT(_p)   BU_CKMAG(_p,PT_MAGIC, "struct partition")
#define RT_CK_PARTITION(_p)   BU_CKMAG(_p,PT_MAGIC, "struct partition")
#define RT_CK_PT_HD(_p)   BU_CKMAG(_p,PT_HD_MAGIC, "struct partition list head")
#define RT_PT_MIDDLE_START   pt_inseg
 1st elem to copy
#define RT_PT_MIDDLE_END   pt_seglist.l.magic
 copy up to this elem (non-inclusive)
#define RT_PT_MIDDLE_LEN(p)   (((char *)&(p)->RT_PT_MIDDLE_END) - ((char *)&(p)->RT_PT_MIDDLE_START))
#define RT_DUP_PT(ip, new, old, res)
#define GET_PT_INIT(ip, p, res)
#define GET_PT(ip, p, res)
#define FREE_PT(p, res)
#define RT_FREE_PT_LIST(_headp, _res)
#define INSERT_PT(_new, _old)   BU_LIST_INSERT((struct bu_list *)_old,(struct bu_list *)_new)
#define APPEND_PT(_new, _old)   BU_LIST_APPEND((struct bu_list *)_old,(struct bu_list *)_new)
#define DEQUEUE_PT(_cur)   BU_LIST_DEQUEUE((struct bu_list *)_cur)
#define CUT_CUTNODE   1
#define CUT_BOXNODE   2
#define CUT_NUGRIDNODE   3
#define CUT_MAXIMUM   3
#define CUTTER_NULL   ((union cutter *)0)
#define MAP_NULL   ((struct mem_map *) 0)
#define RT_DBNHASH   1024
 size of hash table
#define RT_DBHASH(sum)   ((unsigned)(sum) & ((RT_DBNHASH)-1))
#define DBI_NULL   ((struct db_i *)0)
#define DBI_MAGIC   0x57204381
#define RT_CHECK_DBI(_p)   BU_CKMAG(_p,DBI_MAGIC,"struct db_i")
#define RT_CHECK_DBI_TCL(_interp, _p)   BU_CKMAG_TCL(_interp,_p,DBI_MAGIC,"struct db_i")
#define RT_CK_DBI(_p)   RT_CHECK_DBI(_p)
#define RT_CK_DBI_TCL(_interp, _p)   RT_CHECK_DBI_TCL(_interp,_p)
#define DIR_NULL   ((struct directory *)0)
#define RT_DIR_MAGIC   0x05551212
 Directory assistance.
#define RT_CK_DIR(_dp)   BU_CKMAG(_dp, RT_DIR_MAGIC, "(librt)directory")
#define d_addr   d_un.file_offset
#define RT_DIR_PHONY_ADDR   (-1L)
 Special marker for d_addr field.
#define DIR_SOLID   0x1
 this name is a solid
#define DIR_COMB   0x2
 combination
#define DIR_REGION   0x4
 region
#define DIR_HIDDEN   0x8
 object name is hidden
#define DIR_NON_GEOM   0x10
 object is not geometry (e.g. binary object)
#define DIR_USED   0x80
 One bit, used similar to d_nref.
#define RT_DIR_INMEM   0x100
 object is in memory (only) Args to db_lookup()
#define LOOKUP_NOISY   1
#define LOOKUP_QUIET   0
#define FOR_ALL_DIRECTORY_START(_dp, _dbip)
#define FOR_ALL_DIRECTORY_END   }}}
#define RT_DIR_SET_NAMEP(_dp, _name)
#define RT_DIR_FREE_NAMEP(_dp)
#define RT_GET_DIRECTORY(_p, _res)
#define RT_COMB_MAGIC   0x436f6d49
 "ComI"
#define RT_CHECK_COMB(_p)   BU_CKMAG( _p , RT_COMB_MAGIC , "rt_comb_internal" )
#define RT_CK_COMB(_p)   RT_CHECK_COMB(_p)
#define RT_CHECK_COMB_TCL(_interp, _p)   BU_CKMAG_TCL(interp,_p,RT_COMB_MAGIC, "rt_comb_internal" )
#define RT_CK_COMB_TCL(_interp, _p)   RT_CHECK_COMB_TCL(_interp,_p)
#define RT_BINUNIF_INTERNAL_MAGIC   0x42696e55
#define RT_CHECK_BINUNIF(_p)   BU_CKMAG( _p , RT_BINUNIF_INTERNAL_MAGIC , "rt_binunif_internal" )
#define RT_CK_BINUNIF(_p)   RT_CHECK_BINUNIF(_p)
#define RT_CHECK_BINUNIF_TCL(_interp, _p)   BU_CKMAG_TCL(interp,_p,RT_BINUNIF_MAGIC, "rt_binunif_internal" )
#define RT_CK_BINUNIF_TCL(_interp, _p)   RT_CHECK_BINUNIF_TCL(_interp,_p)
#define TS_SOFAR_MINUS   1
 Subtraction encountered above.
#define TS_SOFAR_INTER   2
 Intersection encountered above.
#define TS_SOFAR_REGION   4
 Region encountered above.
#define RT_DBTS_MAGIC   0x64627473
 "dbts"
#define RT_CK_DBTS(_p)   BU_CKMAG(_p, RT_DBTS_MAGIC, "db_tree_state")
#define RT_DBTR_MAGIC   0x64627472
 "dbtr"
#define RT_INIT_DBTR(_p)
#define RT_CK_DBTR(_p)   BU_CKMAG(_p, RT_DBTR_MAGIC, "db_traverse")
#define RT_CTS_MAGIC   0x98989123
#define RT_CK_CTS(_p)   BU_CKMAG(_p, RT_CTS_MAGIC, "combined_tree_state")
#define MKOP(x)   (x)
#define OP_SOLID   MKOP(1)
 Leaf: tr_stp -> solid.
#define OP_UNION   MKOP(2)
 Binary: L union R.
#define OP_INTERSECT   MKOP(3)
 Binary: L intersect R.
#define OP_SUBTRACT   MKOP(4)
 Binary: L subtract R.
#define OP_XOR   MKOP(5)
 Binary: L xor R, not both.
#define OP_REGION   MKOP(6)
 Leaf: tr_stp -> combined_tree_state.
#define OP_NOP   MKOP(7)
 Leaf with no effect.
#define OP_NOT   MKOP(8)
 Unary: not L.
#define OP_GUARD   MKOP(9)
 Unary: not L, or else!
#define OP_XNOP   MKOP(10)
 Unary: L, mark region.
#define OP_NMG_TESS   MKOP(11)
 Leaf: tr_stp -> nmgregion.
#define OP_DB_LEAF   MKOP(12)
 Leaf of combination, db fmt.
#define OP_FREE   MKOP(13)
 Unary: L has free chain.
#define tr_op   tr_a.tu_op
#define tr_regionp   tr_a.tu_regionp
#define TREE_NULL   ((union tree *)0)
#define RT_TREE_MAGIC   0x91191191
#define RT_CK_TREE(_p)   BU_CKMAG(_p, RT_TREE_MAGIC, "union tree")
#define TREE_LIST_NULL   ((struct tree_list *)0)
#define RT_MAXARGS   9000
#define RT_MAXLINE   10240
#define RT_WDB_MAGIC   0x5f576462
#define RT_CHECK_WDB(_p)   BU_CKMAG(_p,RT_WDB_MAGIC,"rt_wdb")
#define RT_CHECK_WDB_TCL(_interp, _p)   BU_CKMAG_TCL(_interp,_p,RT_WDB_MAGIC,"rt_wdb")
#define RT_CK_WDB(_p)   RT_CHECK_WDB(_p)
#define RT_CK_WDB_TCL(_interp, _p)   RT_CHECK_WDB_TCL(_interp,_p)
#define RT_WDB_NULL   ((struct rt_wdb *)NULL)
#define RT_WDB_TYPE_DB_DISK   2
#define RT_WDB_TYPE_DB_DISK_APPEND_ONLY   3
#define RT_WDB_TYPE_DB_INMEM   4
#define RT_WDB_TYPE_DB_INMEM_APPEND_ONLY   5
#define RT_VDRW_PREFIX   "_VDRW"
#define RT_VDRW_PREFIX_LEN   6
#define RT_VDRW_MAXNAME   31
#define RT_VDRW_DEF_COLOR   0xffff00
#define VD_CURVE_NULL   ((struct vd_curve *)NULL)
#define RT_DGO_NULL   ((struct dg_obj *)NULL)
#define RT_VIEW_OBJ_NULL   ((struct view_obj *)NULL)
#define RT_MINVIEWSIZE   0.0001
#define RT_MINVIEWSCALE   0.00005
#define ANM_RSTACK   1
 Replace stacked matrix.
#define ANM_RARC   2
 Replace arc matrix.
#define ANM_LMUL   3
 Left (root side) mul.
#define ANM_RMUL   4
 Right (leaf side) mul.
#define ANM_RBOTH   5
 Replace stack, arc=Idn.
#define RT_ANP_REPLACE   1
 Replace shader string.
#define RT_ANP_APPEND   2
 Append to shader string.
#define RT_ANP_MAGIC   0x41507270
 'APrp'
#define RT_CK_ANP(_p)   BU_CKMAG((_p), RT_ANP_MAGIC, "rt_anim_property")
#define RT_AN_MATRIX   1
 Matrix animation.
#define RT_AN_MATERIAL   2
 Material property anim.
#define RT_AN_COLOR   3
 Material color anim.
#define RT_AN_SOLID   4
 Solid parameter anim.
#define RT_AN_TEMPERATURE   5
 Region temperature.
#define ANIM_NULL   ((struct animate *)0)
#define ANIMATE_MAGIC   0x414e4963
#define RT_CK_ANIMATE(_p)   BU_CKMAG((_p), ANIMATE_MAGIC, "animate")
#define RT_HTBL_MAGIC   0x6874626c
 "htbl"
#define RT_CK_HTBL(_p)   BU_CKMAG(_p, RT_HTBL_MAGIC, "rt_htbl")
#define RT_PIECESTATE_MAGIC   0x70637374
 pcst
#define RT_CK_PIECESTATE(_p)   BU_CKMAG(_p, RT_PIECESTATE_MAGIC, "struct rt_piecestate")
#define RT_PIECELIST_MAGIC   0x70636c73
 pcls
#define RT_CK_PIECELIST(_p)   BU_CKMAG(_p, RT_PIECELIST_MAGIC, "struct rt_piecelist")
#define RT_DEFAULT_MINPIECES   32
#define RT_DEFAULT_TRIS_PER_PIECE   4
#define RESOURCE_NULL   ((struct resource *)0)
#define RESOURCE_MAGIC   0x83651835
#define RT_CK_RESOURCE(_p)   BU_CKMAG(_p, RESOURCE_MAGIC, "struct resource")
#define RT_GET_TREE(_tp, _res)
#define RT_FREE_TREE(_tp, _res)
#define CORNER_PTS   4
#define PIXEL_EXT_MAGIC   0x50787400
#define BU_CK_PIXEL_EXT(_p)   BU_CKMAG(_p, PIXEL_EXT_MAGIC, "struct pixel_ext")
#define RT_AFN_NULL   ((int (*)())0)
#define RT_AP_MAGIC   0x4170706c
 "Appl"
#define RT_CK_AP(_p)   BU_CKMAG(_p,RT_AP_MAGIC,"struct application")
#define RT_CK_APPLICATION(_p)   BU_CKMAG(_p,RT_AP_MAGIC,"struct application")
#define RT_CK_AP_TCL(_interp, _p)   BU_CKMAG_TCL(_interp,_p,RT_AP_MAGIC,"struct application")
#define RT_APPLICATION_INIT(_p)
#define RT_AP_CHECK(_ap)
#define RT_G_DEBUG   rt_g.debug
#define RT_SEM_TREE0   (BU_SEM_LAST)
#define RT_SEM_TREE1   (RT_SEM_TREE0+1)
#define RT_SEM_TREE2   (RT_SEM_TREE1+1)
#define RT_SEM_TREE3   (RT_SEM_TREE2+1)
#define RT_SEM_WORKER   (RT_SEM_TREE3+1)
#define RT_SEM_STATS   (RT_SEM_WORKER+1)
#define RT_SEM_RESULTS   (RT_SEM_STATS+1)
#define RT_SEM_MODEL   (RT_SEM_RESULTS+1)
#define RT_SEM_LAST   (RT_SEM_MODEL+1)
 Call bu_semaphore_init( RT_SEM_LAST );.
#define RT_NU_GFACTOR_DEFAULT   1.5
 see rt_cut_it() for a description of this
#define RTI_NULL   ((struct rt_i *)0)
#define RTI_MAGIC   0x99101658
 magic # for integrity check
#define RT_CHECK_RTI(_p)   BU_CKMAG(_p,RTI_MAGIC,"struct rt_i")
#define RT_CHECK_RTI_TCL(_interp, _p)   BU_CKMAG_TCL(_interp,_p,RTI_MAGIC,"struct rt_i")
#define RT_CK_RTI(_p)   RT_CHECK_RTI(_p)
#define RT_CK_RTI_TCL(_interp, _p)   RT_CHECK_RTI_TCL(_interp,_p)
#define RT_PART_NUBSPT   0
#define RT_PART_NUGRID   1
#define RT_VISIT_ALL_SOLTABS_START(_s, _rti)
#define RT_VISIT_ALL_SOLTABS_END   } }
#define RT_GET_VLIST(p)   BN_GET_VLIST(&rt_g.rtg_vlfree, p)
#define RT_FREE_VLIST(hd)   BN_FREE_VLIST(&rt_g.rtg_vlfree, hd)
#define RT_ADD_VLIST(hd, pnt, draw)   BN_ADD_VLIST(&rt_g.rtg_vlfree,hd,pnt,draw)
#define V2PRINT(a, b)   bu_log("%s (%g, %g)\n", a, (b)[0], (b)[1] );
#define VPRINT(a, b)   bu_log("%s (%g, %g, %g)\n", a, (b)[0], (b)[1], (b)[2])
#define HPRINT(a, b)   bu_log("%s (%g, %g, %g, %g)\n", a, (b)[0], (b)[1], (b)[2], (b)[3])
#define CURVE_LSEG_MAGIC   0x6c736567
 lseg
#define CURVE_CARC_MAGIC   0x63617263
 carc
#define CURVE_NURB_MAGIC   0x6e757262
 nurb
#define CURVE_BEZIER_MAGIC   0x62657a69
 bezi
#define RT_FUNCTAB_MAGIC   0x46754e63
#define RT_CK_FUNCTAB(_p)   BU_CKMAG(_p, RT_FUNCTAB_MAGIC, "functab" );
#define RT_CLASSIFY_UNIMPLEMENTED   BN_CLASSIFY_UNIMPLEMENTED
#define RT_CLASSIFY_INSIDE   BN_CLASSIFY_INSIDE
#define RT_CLASSIFY_OVERLAPPING   BN_CLASSIFY_OVERLAPPING
#define RT_CLASSIFY_OUTSIDE   BN_CLASSIFY_OUTSIDE
#define NUGRID_T_SETUP(_ax, _cval, _cno)
#define NUGRID_T_ADV(_ax, _cno)
#define BACKING_DIST   (-2.0)
 mm to look behind start point
#define OFFSET_DIST   0.01
 mm to advance point into box
#define FAST_NMG   1
#define NMG_HIT_LIST   0
#define NMG_MISS_LIST   1
#define NMG_RT_HIT_MAGIC   0x48697400
 "Hit"
#define NMG_RT_HIT_SUB_MAGIC   0x48696d00
 "Him"
#define NMG_RT_MISS_MAGIC   0x4d697300
 "Mis"
#define HMG_INBOUND_STATE(_hm)   (((_hm)->in_out & 0x0f0) >> 4)
#define HMG_OUTBOUND_STATE(_hm)   ((_hm)->in_out & 0x0f)
#define NMG_RAY_STATE_INSIDE   1
#define NMG_RAY_STATE_ON   2
#define NMG_RAY_STATE_OUTSIDE   4
#define NMG_RAY_STATE_ANY   8
#define HMG_HIT_IN_IN   0x11
 hit internal structure
#define HMG_HIT_IN_OUT   0x14
 breaking out
#define HMG_HIT_OUT_IN   0x41
 breaking in
#define HMG_HIT_OUT_OUT   0x44
 edge/vertex graze
#define HMG_HIT_IN_ON   0x12
#define HMG_HIT_ON_IN   0x21
#define HMG_HIT_ON_ON   0x22
#define HMG_HIT_OUT_ON   0x42
#define HMG_HIT_ON_OUT   0x24
#define HMG_HIT_ANY_ANY   0x88
 hit on non-3-mainifold
#define NMG_VERT_ENTER   1
#define NMG_VERT_ENTER_LEAVE   0
#define NMG_VERT_LEAVE   -1
#define NMG_VERT_UNKNOWN   -2
#define NMG_HITMISS_SEG_IN   0x696e00
 "in"
#define NMG_HITMISS_SEG_OUT   0x6f757400
 "out"
#define NMG_CK_HITMISS(hm)
#define NMG_CK_HITMISS_LISTS(a_hit, rd)
#define NMG_PCA_EDGE   1
#define NMG_PCA_EDGE_VERTEX   2
#define NMG_PCA_VERTEX   3
#define NMG_RAY_DATA_MAGIC   0x1651771
#define NMG_CK_RD(_rd)   NMG_CKMAG(_rd, NMG_RAY_DATA_MAGIC, "ray data");
#define GET_HITMISS(_p, _ap)
#define NMG_FREE_HITLIST(_p, _ap)
#define HIT   1
 a hit on a face
#define MISS   0
 a miss on the face
#define nmg_rt_bomb(rd, str)
#define NMG_RADIAL_MAGIC   0x52614421
 RaD!
#define NMG_CK_RADIAL(_p)   NMG_CKMAG(_p, NMG_RADIAL_MAGIC, "nmg_radial")
#define NMG_INTER_STRUCT_MAGIC   0x99912120
#define NMG_CK_INTER_STRUCT(_p)   NMG_CKMAG(_p, NMG_INTER_STRUCT_MAGIC, "nmg_inter_struct")
#define rt_fwrite_internal5   +++__deprecated_rt_fwrite_internal5__+++
#define db_ident(a, b, c)   +++error+++
#define nmg_moveeu(a, b)   nmg_je(a,b)
#define nmg_mev(_v, _u)   nmg_me((_v), (struct vertex *)NULL, (_u))

Functions

RT_EXPORT struct rt_irt_dirbuild (const char *filename, char *buf, int len)
RT_EXPORT struct rt_irt_new_rti (struct db_i *dbip)
RT_EXPORT void rt_free_rti (struct rt_i *rtip)
RT_EXPORT void rt_prep (struct rt_i *rtip)
RT_EXPORT void rt_prep_parallel (struct rt_i *rtip, int ncpu)
RT_EXPORT int rt_overlap_quietly (struct application *ap, struct partition *pp, struct region *reg1, struct region *reg2, struct partition *pheadp)
RT_EXPORT void rt_default_multioverlap (struct application *ap, struct partition *pp, struct bu_ptbl *regiontable, struct partition *InputHdp)
RT_EXPORT void rt_silent_logoverlap (struct application *ap, const struct partition *pp, const struct bu_ptbl *regiontable, const struct partition *InputHdp)
RT_EXPORT void rt_default_logoverlap (struct application *ap, const struct partition *pp, const struct bu_ptbl *regiontable, const struct partition *InputHdp)
RT_EXPORT int rt_shootray (struct application *ap)
RT_EXPORT const char * rt_basename (const char *str)
RT_EXPORT void rt_free_soltab (struct soltab *stp)
RT_EXPORT int rt_gettree (struct rt_i *rtip, const char *node)
RT_EXPORT int rt_gettrees (struct rt_i *rtip, int argc, const char **argv, int ncpus)
RT_EXPORT int rt_gettrees_and_attrs (struct rt_i *rtip, const char **attrs, int argc, const char **argv, int ncpus)
RT_EXPORT int rt_gettrees_muves (struct rt_i *rtip, const char **attrs, int argc, const char **argv, int ncpus)
RT_EXPORT int rt_load_attrs (struct rt_i *rtip, char **attrs)
RT_EXPORT void rt_pr_seg (const struct seg *segp)
RT_EXPORT void rt_pr_partitions (const struct rt_i *rtip, const struct partition *phead, const char *title)
RT_EXPORT struct soltabrt_find_solid (const struct rt_i *rtip, const char *name)
RT_EXPORT void rt_prep_timer (void)
RT_EXPORT double rt_get_timer (struct bu_vls *vp, double *elapsed)
RT_EXPORT double rt_read_timer (char *str, int len)
int rt_plot_solid (FILE *fp, struct rt_i *rtip, const struct soltab *stp, struct resource *resp)
RT_EXPORT void rt_clean (struct rt_i *rtip)
RT_EXPORT int rt_del_regtree (struct rt_i *rtip, struct region *delregp, struct resource *resp)
RT_EXPORT void rt_ck (struct rt_i *rtip)
RT_EXPORT void rt_pr_library_version ()
RT_EXPORT int rt_matrix_transform (struct rt_db_internal *output, const mat_t matrix, struct rt_db_internal *input, int free, struct db_i *dbip, struct resource *resource)
RT_EXPORT void rt_boolweave (struct seg *out_hd, struct seg *in_hd, struct partition *PartHeadp, struct application *ap)
RT_EXPORT int rt_boolfinal (struct partition *InputHdp, struct partition *FinalHdp, fastf_t startdist, fastf_t enddist, struct bu_ptbl *regionbits, struct application *ap, const struct bu_bitv *solidbits)
RT_EXPORT void rt_grow_boolstack (struct resource *res)
RT_EXPORT int rt_fdiff (double a, double b)
RT_EXPORT double rt_reldiff (double a, double b)
RT_EXPORT void rt_pr_soltab (const struct soltab *stp)
RT_EXPORT void rt_pr_region (const struct region *rp)
RT_EXPORT void rt_pr_tree (const union tree *tp, int lvl)
RT_EXPORT void rt_pr_tree_val (const union tree *tp, const struct partition *partp, int pr_name, int lvl)
RT_EXPORT void rt_pr_pt (const struct rt_i *rtip, const struct partition *pp)
RT_EXPORT void rt_pr_hit (const char *str, const struct hit *hitp)
RT_EXPORT void rt_get_seg (struct resource *res)
RT_EXPORT void rt_cut_it (struct rt_i *rtip, int ncpu)
RT_EXPORT void rt_pr_cut (const union cutter *cutp, int lvl)
RT_EXPORT void rt_fr_cut (struct rt_i *rtip, union cutter *cutp)
RT_EXPORT void rt_rebuild_overlaps (struct partition *PartHdp, struct application *ap, int rebuild_fastgen_plates_only)
RT_EXPORT int rt_partition_len (const struct partition *partheadp)
RT_EXPORT int rt_defoverlap (struct application *ap, struct partition *pp, struct region *reg1, struct region *reg2, struct partition *pheadp)
RT_EXPORT void rt_region_color_map (struct region *regp)
RT_EXPORT void rt_color_addrec (int low, int hi, int r, int g, int b, long addr)
RT_EXPORT void rt_color_free ()
RT_EXPORT void rt_pr_cut_info (const struct rt_i *rtip, const char *str)
RT_EXPORT void remove_from_bsp (struct soltab *stp, union cutter *cutp, struct bn_tol *tol)
RT_EXPORT void insert_in_bsp (struct soltab *stp, union cutter *cutp)
RT_EXPORT void fill_out_bsp (struct rt_i *rtip, union cutter *cutp, struct resource *resp, fastf_t bb[6])
RT_EXPORT void rt_cut_extend (union cutter *cutp, struct soltab *stp, const struct rt_i *rtip)
RT_EXPORT int rt_rpp_region (struct rt_i *rtip, const char *reg_name, fastf_t *min_rpp, fastf_t *max_rpp)
RT_EXPORT void rt_bomb (const char *s)
RT_EXPORT int rt_in_rpp (struct xray *rp, const fastf_t *invdir, const fastf_t *min, const fastf_t *max)
RT_EXPORT const union cutterrt_cell_n_on_ray (struct application *ap, int n)
RT_EXPORT void rt_cut_clean (struct rt_i *rtip)
RT_EXPORT char * rt_read_cmd (FILE *fp)
RT_EXPORT int rt_split_cmd (char **argv, int lim, char *lp)
RT_EXPORT int rt_do_cmd (struct rt_i *rtip, const char *ilp, const struct command_tab *tp)
RT_EXPORT struct rt_wdbwdb_fopen (const char *filename)
RT_EXPORT struct rt_wdbwdb_fopen_v (const char *filename, int version)
RT_EXPORT struct rt_wdbwdb_dbopen (struct db_i *dbip, int mode)
RT_EXPORT int wdb_import (struct rt_wdb *wdbp, struct rt_db_internal *internp, const char *name, const mat_t mat)
RT_EXPORT int wdb_export_external (struct rt_wdb *wdbp, struct bu_external *ep, const char *name, int flags, unsigned char minor_type)
RT_EXPORT int wdb_put_internal (struct rt_wdb *wdbp, const char *name, struct rt_db_internal *ip, double local2mm)
RT_EXPORT int wdb_export (struct rt_wdb *wdbp, const char *name, genptr_t gp, int id, double local2mm)
RT_EXPORT void wdb_close (struct rt_wdb *wdbp)
RT_EXPORT struct animatedb_parse_1anim (struct db_i *dbip, int argc, const char **argv)
RT_EXPORT int db_parse_anim (struct db_i *dbip, int argc, const char **argv)
RT_EXPORT int db_add_anim (struct db_i *dbip, struct animate *anp, int root)
RT_EXPORT int db_do_anim (struct animate *anp, mat_t stack, mat_t arc, struct mater_info *materp)
RT_EXPORT void db_free_anim (struct db_i *dbip)
RT_EXPORT void db_write_anim (FILE *fop, struct animate *anp)
RT_EXPORT void db_free_1anim (struct animate *anp)
RT_EXPORT void db_full_path_init (struct db_full_path *pathp)
RT_EXPORT void db_add_node_to_full_path (struct db_full_path *pp, struct directory *dp)
RT_EXPORT void db_dup_full_path (struct db_full_path *newp, const struct db_full_path *oldp)
RT_EXPORT void db_extend_full_path (struct db_full_path *pathp, int incr)
RT_EXPORT void db_append_full_path (struct db_full_path *dest, const struct db_full_path *src)
RT_EXPORT void db_dup_path_tail (struct db_full_path *newp, const struct db_full_path *oldp, int start)
RT_EXPORT char * db_path_to_string (const struct db_full_path *pp)
RT_EXPORT void db_path_to_vls (struct bu_vls *str, const struct db_full_path *pp)
RT_EXPORT void db_pr_full_path (const char *msg, const struct db_full_path *pathp)
RT_EXPORT int db_string_to_path (struct db_full_path *pp, const struct db_i *dbip, const char *str)
RT_EXPORT int db_argv_to_path (register struct db_full_path *pp, struct db_i *dbip, int argc, const char *const *argv)
RT_EXPORT void db_free_full_path (struct db_full_path *pp)
RT_EXPORT int db_identical_full_paths (const struct db_full_path *a, const struct db_full_path *b)
RT_EXPORT int db_full_path_subset (const struct db_full_path *a, const struct db_full_path *b)
RT_EXPORT int db_full_path_search (const struct db_full_path *a, const struct directory *dp)
RT_EXPORT void db_sync (struct db_i *dbip)
RT_EXPORT struct db_idb_open (const char *name, const char *mode)
RT_EXPORT struct db_idb_create (const char *name, int version)
RT_EXPORT void db_close_client (struct db_i *dbip, long *client)
RT_EXPORT void db_close (struct db_i *dbip)
RT_EXPORT int db_dump (struct rt_wdb *wdbp, struct db_i *dbip)
RT_EXPORT struct db_idb_clone_dbi (struct db_i *dbip, long *client)
RT_EXPORT int db5_write_free (struct db_i *dbip, struct directory *dp, long length)
RT_EXPORT int db5_realloc (struct db_i *dbip, struct directory *dp, struct bu_external *ep)
RT_EXPORT void db5_export_object3 (struct bu_external *out, int dli, const char *name, const unsigned char hidden, const struct bu_external *attrib, const struct bu_external *body, int major, int minor, int a_zzz, int b_zzz)
RT_EXPORT int rt_db_cvt_to_external5 (struct bu_external *ext, const char *name, const struct rt_db_internal *ip, double conv2mm, struct db_i *dbip, struct resource *resp, const int major)
RT_EXPORT int db_wrap_v5_external (struct bu_external *ep, const char *name)
RT_EXPORT int rt_db_get_internal5 (struct rt_db_internal *ip, const struct directory *dp, const struct db_i *dbip, const mat_t mat, struct resource *resp)
RT_EXPORT int rt_db_put_internal5 (struct directory *dp, struct db_i *dbip, struct rt_db_internal *ip, struct resource *resp, const int major)
RT_EXPORT void db5_make_free_object_hdr (struct bu_external *ep, long length)
RT_EXPORT void db5_make_free_object (struct bu_external *ep, long length)
RT_EXPORT int db5_decode_signed (long *lenp, const unsigned char *cp, int format)
RT_EXPORT int db5_decode_length (long *lenp, const unsigned char *cp, int format)
RT_EXPORT int db5_select_length_encoding (long len)
RT_EXPORT void db5_import_color_table (char *cp)
RT_EXPORT int db5_import_attributes (struct bu_attribute_value_set *avs, const struct bu_external *ap)
RT_EXPORT void db5_export_attributes (struct bu_external *ap, const struct bu_attribute_value_set *avs)
RT_EXPORT int db5_get_raw_internal_fp (struct db5_raw_internal *rip, FILE *fp)
RT_EXPORT int db5_header_is_valid (const unsigned char *hp)
RT_EXPORT int db5_fwrite_ident (FILE *, const char *, double)
RT_EXPORT int db5_put_color_table (struct db_i *dbip)
RT_EXPORT int db5_update_ident (struct db_i *dbip, const char *title, double local2mm)
RT_EXPORT int db_put_external5 (struct bu_external *ep, struct directory *dp, struct db_i *dbip)
RT_EXPORT int db5_update_attributes (struct directory *dp, struct bu_attribute_value_set *avsp, struct db_i *dbip)
RT_EXPORT int db5_update_attribute (const char *obj_name, const char *aname, const char *value, struct db_i *dbip)
RT_EXPORT int db5_replace_attributes (struct directory *dp, struct bu_attribute_value_set *avsp, struct db_i *dbip)
RT_EXPORT int db5_get_attributes (const struct db_i *dbip, struct bu_attribute_value_set *avs, const struct directory *dp)
RT_EXPORT int db_tree_nleaves (const union tree *tp)
RT_EXPORT struct rt_tree_arraydb_flatten_tree (struct rt_tree_array *rt_tree_array, union tree *tp, int op, int avail, struct resource *resp)
RT_EXPORT int rt_comb_import4 (struct rt_db_internal *ip, const struct bu_external *ep, const mat_t matrix, const struct db_i *dbip, struct resource *resp)
RT_EXPORT int rt_comb_export4 (struct bu_external *ep, const struct rt_db_internal *ip, double local2mm, const struct db_i *dbip, struct resource *resp)
RT_EXPORT void db_tree_flatten_describe (struct bu_vls *vls, const union tree *tp, int indented, int lvl, double mm2local, struct resource *resp)
RT_EXPORT void db_tree_describe (struct bu_vls *vls, const union tree *tp, int indented, int lvl, double mm2local)
RT_EXPORT void db_comb_describe (struct bu_vls *str, const struct rt_comb_internal *comb, int verbose, double mm2local, struct resource *resp)
RT_EXPORT void rt_comb_ifree (struct rt_db_internal *ip, struct resource *resp)
RT_EXPORT int rt_comb_describe (struct bu_vls *str, const struct rt_db_internal *ip, int verbose, double mm2local, struct resource *resp, struct db_i *db_i)
RT_EXPORT void db_wrap_v4_external (struct bu_external *op, const char *name)
RT_EXPORT int db_ck_left_heavy_tree (const union tree *tp, int no_unions)
RT_EXPORT int db_ck_v4gift_tree (const union tree *tp)
RT_EXPORT union treedb_mkbool_tree (struct rt_tree_array *rt_tree_array, int howfar, struct resource *resp)
RT_EXPORT union treedb_mkgift_tree (struct rt_tree_array *trees, int subtreecount, struct resource *resp)
RT_EXPORT void rt_pt_sort (register fastf_t t[], int npts)
RT_EXPORT void rt_ell_16pts (register fastf_t *ov, register fastf_t *V, fastf_t *A, fastf_t *B)
RT_EXPORT int rt_poly_roots (bn_poly_t *eqn, bn_complex_t roots[], const char *name)
RT_EXPORT int db_write (struct db_i *dbip, const genptr_t addr, long count, long offset)
RT_EXPORT int db_fwrite_external (FILE *fp, const char *name, struct bu_external *ep)
RT_EXPORT genptr_t db_getmrec (const struct db_i *, const struct directory *dp)
RT_EXPORT int db_get (const struct db_i *, const struct directory *dp, genptr_t where, int offset, int len)
RT_EXPORT int db_put (const struct db_i *, const struct directory *dp, genptr_t where, int offset, int len)
RT_EXPORT int db_get_external (struct bu_external *ep, const struct directory *dp, const struct db_i *dbip)
RT_EXPORT int db_put_external (struct bu_external *ep, struct directory *dp, struct db_i *dbip)
RT_EXPORT void db_free_external (struct bu_external *ep)
RT_EXPORT int db_scan (struct db_i *, int(*handler)(), int do_old_matter, genptr_t client_data)
RT_EXPORT int db_update_ident (struct db_i *dbip, const char *title, double local2mm)
RT_EXPORT int db_fwrite_ident (FILE *fp, const char *title, double local2mm)
RT_EXPORT void db_conversions (struct db_i *, int units)
RT_EXPORT int db_v4_get_units_code (const char *str)
RT_EXPORT int db_dirbuild (struct db_i *dbip)
RT_EXPORT struct directorydb5_diradd (struct db_i *dbip, const struct db5_raw_internal *rip, long laddr, genptr_t client_data)
RT_EXPORT int db_get_version (struct db_i *dbip)
RT_EXPORT int db5_scan (struct db_i *dbip, void(*handler)(struct db_i *, const struct db5_raw_internal *, long addr, genptr_t client_data), genptr_t client_data)
RT_EXPORT int rt_comb_import5 (struct rt_db_internal *ip, const struct bu_external *ep, const mat_t mat, const struct db_i *dbip, struct resource *resp, const int minor_type)
RT_EXPORT int rt_extrude_import5 (struct rt_db_internal *ip, const struct bu_external *ep, register const mat_t mat, const struct db_i *dbip, struct resource *resp, const int minor_type)
RT_EXPORT struct db_idb_open_inmem (void)
RT_EXPORT struct db_idb_create_inmem (void)
RT_EXPORT void db_inmem (struct directory *dp, struct bu_external *ext, int flags, struct db_i *dbip)
RT_EXPORT int db_get_directory_size (const struct db_i *dbip)
RT_EXPORT void db_ck_directory (const struct db_i *dbip)
RT_EXPORT int db_is_directory_non_empty (const struct db_i *dbip)
RT_EXPORT int db_dirhash (const char *str)
RT_EXPORT int db_dircheck (struct db_i *dbip, struct bu_vls *ret_name, int noisy, struct directory ***headp)
RT_EXPORT struct directorydb_lookup (const struct db_i *, const char *name, int noisy)
RT_EXPORT struct bu_ptbldb_lookup_by_attr (struct db_i *dbip, int dir_flags, struct bu_attribute_value_set *avs, int op)
RT_EXPORT struct directorydb_diradd (struct db_i *, const char *name, long laddr, int len, int flags, genptr_t ptr)
RT_EXPORT struct directorydb_diradd5 (struct db_i *dbip, const char *name, long laddr, unsigned char major_type, unsigned char minor_type, unsigned char name_hidden, long object_length, struct bu_attribute_value_set *avs)
RT_EXPORT int db_dirdelete (struct db_i *, struct directory *dp)
RT_EXPORT void db_pr_dir (const struct db_i *dbip)
RT_EXPORT int db_rename (struct db_i *, struct directory *, const char *newname)
RT_EXPORT void db_update_nref (struct db_i *dbip, struct resource *resp)
RT_EXPORT int db_regexp_match (const char *pattern, const char *string)
RT_EXPORT int db_regexp_match_all (struct bu_vls *dest, struct db_i *dbip, const char *pattern)
RT_EXPORT int db_flags_internal (const struct rt_db_internal *intern)
RT_EXPORT int db_flags_raw_internal (const struct db5_raw_internal *intern)
RT_EXPORT int db_alloc (struct db_i *, struct directory *dp, int count)
RT_EXPORT int db_delrec (struct db_i *, struct directory *dp, int recnum)
RT_EXPORT int db_delete (struct db_i *, struct directory *dp)
RT_EXPORT int db_zapper (struct db_i *, struct directory *dp, int start)
RT_EXPORT void db_dup_db_tree_state (struct db_tree_state *otsp, const struct db_tree_state *itsp)
RT_EXPORT void db_free_db_tree_state (struct db_tree_state *tsp)
RT_EXPORT void db_init_db_tree_state (struct db_tree_state *tsp, struct db_i *dbip, struct resource *resp)
RT_EXPORT struct combined_tree_statedb_new_combined_tree_state (const struct db_tree_state *tsp, const struct db_full_path *pathp)
RT_EXPORT struct combined_tree_statedb_dup_combined_tree_state (const struct combined_tree_state *old)
RT_EXPORT void db_free_combined_tree_state (struct combined_tree_state *ctsp)
RT_EXPORT void db_pr_tree_state (const struct db_tree_state *tsp)
RT_EXPORT void db_pr_combined_tree_state (const struct combined_tree_state *ctsp)
RT_EXPORT int db_apply_state_from_comb (struct db_tree_state *tsp, const struct db_full_path *pathp, const struct rt_comb_internal *comb)
RT_EXPORT int db_apply_state_from_memb (struct db_tree_state *tsp, struct db_full_path *pathp, const union tree *tp)
RT_EXPORT int db_apply_state_from_one_member (struct db_tree_state *tsp, struct db_full_path *pathp, const char *cp, int sofar, const union tree *tp)
RT_EXPORT union treedb_find_named_leaf (union tree *tp, const char *cp)
RT_EXPORT union treedb_find_named_leafs_parent (int *side, union tree *tp, const char *cp)
RT_EXPORT void db_tree_del_lhs (union tree *tp, struct resource *resp)
RT_EXPORT void db_tree_del_rhs (union tree *tp, struct resource *resp)
RT_EXPORT int db_tree_del_dbleaf (union tree **tp, const char *cp, struct resource *resp)
RT_EXPORT void db_tree_mul_dbleaf (union tree *tp, const mat_t mat)
RT_EXPORT void db_tree_funcleaf (struct db_i *dbip, struct rt_comb_internal *comb, union tree *comb_tree, void(*leaf_func)(), genptr_t user_ptr1, genptr_t user_ptr2, genptr_t user_ptr3)
RT_EXPORT int db_follow_path (struct db_tree_state *tsp, struct db_full_path *total_path, const struct db_full_path *new_path, int noisy, int depth)
RT_EXPORT int db_follow_path_for_state (struct db_tree_state *tsp, struct db_full_path *pathp, const char *orig_str, int noisy)
RT_EXPORT union treedb_recurse (struct db_tree_state *tsp, struct db_full_path *pathp, struct combined_tree_state **region_start_statepp, genptr_t client_data)
RT_EXPORT union treedb_dup_subtree (const union tree *tp, struct resource *resp)
RT_EXPORT void db_ck_tree (const union tree *tp)
RT_EXPORT void db_free_tree (union tree *tp, struct resource *resp)
RT_EXPORT void db_left_hvy_node (union tree *tp)
RT_EXPORT void db_non_union_push (union tree *tp, struct resource *resp)
RT_EXPORT int db_count_tree_nodes (const union tree *tp, int count)
RT_EXPORT int db_is_tree_all_unions (const union tree *tp)
RT_EXPORT int db_count_subtree_regions (const union tree *tp)
RT_EXPORT int db_tally_subtree_regions (union tree *tp, union tree **reg_trees, int cur, int lim, struct resource *resp)
RT_EXPORT int db_walk_tree (struct db_i *dbip, int argc, const char **argv, int ncpu, const struct db_tree_state *init_state, int(*reg_start_func)(struct db_tree_state *, struct db_full_path *, const struct rt_comb_internal *, genptr_t client_data), union tree *(*reg_end_func)(struct db_tree_state *, struct db_full_path *, union tree *, genptr_t client_data), union tree *(*leaf_func)(struct db_tree_state *, struct db_full_path *, struct rt_db_internal *, genptr_t client_data), genptr_t client_data)
RT_EXPORT int db_path_to_mat (struct db_i *dbip, struct db_full_path *pathp, mat_t mat, int depth, struct resource *resp)
RT_EXPORT void db_apply_anims (struct db_full_path *pathp, struct directory *dp, mat_t stck, mat_t arc, struct mater_info *materp)
RT_EXPORT int db_region_mat (mat_t m, struct db_i *dbip, const char *name, struct resource *resp)
RT_EXPORT int db_shader_mat (mat_t model_to_shader, const struct rt_i *rtip, const struct region *rp, point_t p_min, point_t p_max, struct resource *resp)
RT_EXPORT int rt_db_get_internal (struct rt_db_internal *ip, const struct directory *dp, const struct db_i *dbip, const mat_t mat, struct resource *resp)
RT_EXPORT int rt_db_put_internal (struct directory *dp, struct db_i *dbip, struct rt_db_internal *ip, struct resource *resp)
RT_EXPORT int rt_fwrite_internal (FILE *fp, const char *name, const struct rt_db_internal *ip, double conv2mm)
RT_EXPORT void rt_db_free_internal (struct rt_db_internal *ip, struct resource *resp)
RT_EXPORT int rt_db_lookup_internal (struct db_i *dbip, const char *obj_name, struct directory **dpp, struct rt_db_internal *ip, int noisy, struct resource *resp)
RT_EXPORT void rt_optim_tree (register union tree *tp, struct resource *resp)
RT_EXPORT void db_get_directory (register struct resource *resp)
RT_EXPORT void db_functree (struct db_i *dbip, struct directory *dp, void(*comb_func)(struct db_i *, struct directory *, genptr_t), void(*leaf_func)(struct db_i *, struct directory *, genptr_t), struct resource *resp, genptr_t client_data)
RT_EXPORT int rt_arb_get_cgtype ()
RT_EXPORT int rt_arb_std_type (const struct rt_db_internal *ip, const struct bn_tol *tol)
RT_EXPORT void rt_arb_centroid ()
RT_EXPORT int rt_arb_calc_points ()
RT_EXPORT int rt_arb_3face_intersect (point_t point, const plane_t planes[6], int type, int loc)
RT_EXPORT void rt_ell (fastf_t *ov, const fastf_t *V, const fastf_t *A, const fastf_t *B, int sides)
RT_EXPORT void rt_vls_pipept (struct bu_vls *vp, int seg_no, const struct rt_db_internal *ip, double mm2local)
RT_EXPORT void rt_pipept_print ()
RT_EXPORT int rt_pipe_ck (const struct bu_list *headp)
RT_EXPORT int rt_mk_parabola (struct rt_pt_node *pts, fastf_t r, fastf_t b, fastf_t dtol, fastf_t ntol)
RT_EXPORT struct rt_pt_nodert_ptalloc ()
RT_EXPORT unsigned long rt_memalloc (struct mem_map **pp, unsigned size)
RT_EXPORT struct mem_maprt_memalloc_nosplit (struct mem_map **pp, unsigned size)
RT_EXPORT unsigned long rt_memget (struct mem_map **pp, unsigned int size, unsigned int place)
RT_EXPORT void rt_memfree (struct mem_map **pp, unsigned size, unsigned long addr)
RT_EXPORT void rt_mempurge (struct mem_map **pp)
RT_EXPORT void rt_memprint (struct mem_map **pp)
RT_EXPORT void rt_memclose ()
RT_EXPORT struct bn_vlblockrt_vlblock_init ()
RT_EXPORT void rt_vlblock_free (struct bn_vlblock *vbp)
RT_EXPORT struct bu_listrt_vlblock_find (struct bn_vlblock *vbp, int r, int g, int b)
RT_EXPORT void rt_hitsort (struct hit h[], int nh)
RT_EXPORT int rt_pg_to_bot (struct rt_db_internal *ip, const struct bn_tol *tol, struct resource *resp0)
RT_EXPORT int rt_pg_plot (struct bu_list *vhead, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol)
RT_EXPORT int rt_pg_plot_poly (struct bu_list *vhead, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol)
RT_EXPORT int rt_hf_to_dsp (struct rt_db_internal *db_intern, struct resource *resp)
RT_EXPORT int dsp_pos (point_t out, struct soltab *stp, point_t p)
RT_EXPORT void rt_pr_pt_vls (struct bu_vls *v, const struct rt_i *rtip, const struct partition *pp)
RT_EXPORT void rt_pr_seg_vls (struct bu_vls *, const struct seg *)
RT_EXPORT void rt_pr_hit_vls (struct bu_vls *v, const char *str, const struct hit *hitp)
RT_EXPORT void rt_pr_hitarray_vls (struct bu_vls *v, const char *str, const struct hit *hitp, int count)
RT_EXPORT void rt_pr_tree_vls (struct bu_vls *vls, const union tree *tp)
RT_EXPORT char * rt_pr_tree_str (const union tree *tree)
RT_EXPORT void rt_pr_fallback_angle (struct bu_vls *str, const char *prefix, const double angles[5])
RT_EXPORT void rt_find_fallback_angle (double angles[5], const vect_t vec)
RT_EXPORT void rt_pr_tol (const struct bn_tol *tol)
RT_EXPORT void rt_regionfix (struct rt_i *rtip)
RT_EXPORT int rt_id_solid (struct bu_external *ep)
RT_EXPORT const struct rt_functabrt_get_functab_by_label (const char *label)
RT_EXPORT int rt_generic_xform (struct rt_db_internal *op, const mat_t mat, struct rt_db_internal *ip, int avail, struct db_i *dbip, struct resource *resp)
RT_EXPORT void rt_nul_make (const struct rt_functab *ftp, struct rt_db_internal *intern, double diameter)
RT_EXPORT void rt_plot_all_bboxes (FILE *fp, struct rt_i *rtip)
RT_EXPORT void rt_plot_all_solids (FILE *fp, struct rt_i *rtip, struct resource *resp)
RT_EXPORT void rt_init_resource (struct resource *resp, int cpu_num, struct rt_i *rtip)
RT_EXPORT void rt_clean_resource (struct rt_i *rtip, struct resource *resp)
RT_EXPORT int rt_unprep (struct rt_i *rtip, struct rt_reprep_obj_list *objs, struct resource *resp)
RT_EXPORT int rt_reprep (struct rt_i *rtip, struct rt_reprep_obj_list *objs, struct resource *resp)
RT_EXPORT int re_prep_solids (struct rt_i *rtip, int num_solids, char **solid_names, struct resource *resp)
RT_EXPORT int rt_find_paths (struct db_i *dbip, struct directory *start, struct directory *end, struct bu_ptbl *paths, struct resource *resp)
RT_EXPORT struct bu_bitvget_solidbitv (long nbits, struct resource *resp)
RT_EXPORT void rt_add_res_stats (struct rt_i *rtip, struct resource *resp)
RT_EXPORT void rt_zero_res_stats (struct resource *resp)
RT_EXPORT void rt_res_pieces_clean (struct resource *resp, struct rt_i *rtip)
RT_EXPORT void rt_res_pieces_init (struct resource *resp, struct rt_i *rtip)
RT_EXPORT void rt_vstub (struct soltab *stp[], struct xray *rp[], struct seg segp[], int n, struct application *ap)
RT_EXPORT int rt_bound_tree (const union tree *tp, vect_t tree_min, vect_t tree_max)
RT_EXPORT int rt_tree_elim_nops (union tree *, struct resource *resp)
RT_EXPORT struct bn_vlblockbn_vlblock_init (struct bu_list *free_vlist_hd, int max_ent)
RT_EXPORT int rt_ck_vlist (const struct bu_list *vhead)
RT_EXPORT void rt_vlist_copy (struct bu_list *dest, const struct bu_list *src)
RT_EXPORT void bn_vlist_cleanup (struct bu_list *hd)
RT_EXPORT void rt_vlist_cleanup ()
RT_EXPORT void bn_vlist_rpp (struct bu_list *hd, const point_t minn, const point_t maxx)
RT_EXPORT void rt_vlist_export (struct bu_vls *vls, struct bu_list *hp, const char *name)
RT_EXPORT void rt_vlist_import (struct bu_list *hp, struct bu_vls *namevls, const unsigned char *buf)
RT_EXPORT void rt_plot_vlblock (FILE *fp, const struct bn_vlblock *vbp)
RT_EXPORT void rt_vlist_to_uplot (FILE *fp, const struct bu_list *vhead)
RT_EXPORT int rt_process_uplot_value (struct bu_list **vhead, struct bn_vlblock *vbp, FILE *fp, int c, double char_size, int mode)
RT_EXPORT int rt_uplot_to_vlist (struct bn_vlblock *vbp, FILE *fp, double char_size, int mode)
RT_EXPORT void rt_label_vlist_verts (struct bn_vlblock *vbp, struct bu_list *src, mat_t mat, double sz, double mm2local)
RT_EXPORT void rt_htbl_init (struct rt_htbl *b, int len, const char *str)
RT_EXPORT void rt_htbl_reset (struct rt_htbl *b)
RT_EXPORT void rt_htbl_free (struct rt_htbl *b)
RT_EXPORT struct hitrt_htbl_get (struct rt_htbl *b)
RT_EXPORT struct modelnmg_mm ()
RT_EXPORT struct modelnmg_mmr ()
RT_EXPORT struct nmgregionnmg_mrsv (struct model *m)
RT_EXPORT struct shellnmg_msv (struct nmgregion *r_p)
RT_EXPORT struct faceusenmg_mf (struct loopuse *lu1)
RT_EXPORT struct loopusenmg_mlv (long *magic, struct vertex *v, int orientation)
RT_EXPORT struct edgeusenmg_me (struct vertex *v1, struct vertex *v2, struct shell *s)
RT_EXPORT struct edgeusenmg_meonvu (struct vertexuse *vu)
RT_EXPORT struct loopusenmg_ml (struct shell *s)
RT_EXPORT int nmg_keg (struct edgeuse *eu)
RT_EXPORT int nmg_kvu (struct vertexuse *vu)
RT_EXPORT int nmg_kfu (struct faceuse *fu1)
RT_EXPORT int nmg_klu (struct loopuse *lu1)
RT_EXPORT int nmg_keu (struct edgeuse *eu)
RT_EXPORT int nmg_ks (struct shell *s)
RT_EXPORT int nmg_kr (struct nmgregion *r)
RT_EXPORT void nmg_km (struct model *m)
RT_EXPORT void nmg_vertex_gv (struct vertex *v, const point_t pt)
RT_EXPORT void nmg_vertex_g (struct vertex *v, fastf_t x, fastf_t y, fastf_t z)
RT_EXPORT void nmg_vertexuse_nv (struct vertexuse *vu, const vect_t norm)
RT_EXPORT void nmg_vertexuse_a_cnurb (struct vertexuse *vu, const fastf_t *uvw)
RT_EXPORT void nmg_edge_g (struct edgeuse *eu)
RT_EXPORT void nmg_edge_g_cnurb (struct edgeuse *eu, int order, int n_knots, fastf_t *kv, int n_pts, int pt_type, fastf_t *points)
RT_EXPORT void nmg_edge_g_cnurb_plinear (struct edgeuse *eu)
RT_EXPORT int nmg_use_edge_g (struct edgeuse *eu, long *eg)
RT_EXPORT void nmg_loop_g (struct loop *l, const struct bn_tol *tol)
RT_EXPORT void nmg_face_g (struct faceuse *fu, const plane_t p)
RT_EXPORT void nmg_face_new_g (struct faceuse *fu, const plane_t pl)
RT_EXPORT void nmg_face_g_snurb (struct faceuse *fu, int u_order, int v_order, int n_u_knots, int n_v_knots, fastf_t *ukv, fastf_t *vkv, int n_rows, int n_cols, int pt_type, fastf_t *mesh)
RT_EXPORT void nmg_face_bb (struct face *f, const struct bn_tol *tol)
RT_EXPORT void nmg_shell_a (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_region_a (struct nmgregion *r, const struct bn_tol *tol)
RT_EXPORT int nmg_demote_lu (struct loopuse *lu)
RT_EXPORT int nmg_demote_eu (struct edgeuse *eu)
RT_EXPORT void nmg_movevu (struct vertexuse *vu, struct vertex *v)
RT_EXPORT void nmg_je (struct edgeuse *eudst, struct edgeuse *eusrc)
RT_EXPORT void nmg_unglueedge (struct edgeuse *eu)
RT_EXPORT void nmg_jv (struct vertex *v1, struct vertex *v2)
RT_EXPORT void nmg_jfg (struct face *f1, struct face *f2)
RT_EXPORT void nmg_jeg (struct edge_g_lseg *dest_eg, struct edge_g_lseg *src_eg)
RT_EXPORT void nmg_merge_regions (struct nmgregion *r1, struct nmgregion *r2, const struct bn_tol *tol)
RT_EXPORT void nmg_shell_coplanar_face_merge (struct shell *s, const struct bn_tol *tol, const int simplify)
RT_EXPORT int nmg_simplify_shell (struct shell *s)
RT_EXPORT void nmg_rm_redundancies (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_sanitize_s_lv (struct shell *s, int orient)
RT_EXPORT void nmg_s_split_touchingloops (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_s_join_touchingloops (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_js (struct shell *s1, struct shell *s2, const struct bn_tol *tol)
RT_EXPORT void nmg_invert_shell (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct faceusenmg_cmface (struct shell *s, struct vertex **vt[], int n)
RT_EXPORT struct faceusenmg_cface (struct shell *s, struct vertex **vt, int n)
RT_EXPORT struct faceusenmg_add_loop_to_face (struct shell *s, struct faceuse *fu, struct vertex **verts, int n, int dir)
RT_EXPORT int nmg_fu_planeeqn (struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT void nmg_gluefaces (struct faceuse *fulist[], int n, const struct bn_tol *tol)
RT_EXPORT int nmg_simplify_face (struct faceuse *fu)
RT_EXPORT void nmg_reverse_face (struct faceuse *fu)
RT_EXPORT void nmg_mv_fu_between_shells (struct shell *dest, struct shell *src, struct faceuse *fu)
RT_EXPORT void nmg_jf (struct faceuse *dest_fu, struct faceuse *src_fu)
RT_EXPORT struct faceusenmg_dup_face (struct faceuse *fu, struct shell *s)
RT_EXPORT void nmg_jl (struct loopuse *lu, struct edgeuse *eu)
RT_EXPORT struct vertexusenmg_join_2loops (struct vertexuse *vu1, struct vertexuse *vu2)
RT_EXPORT struct vertexusenmg_join_singvu_loop (struct vertexuse *vu1, struct vertexuse *vu2)
RT_EXPORT struct vertexusenmg_join_2singvu_loops (struct vertexuse *vu1, struct vertexuse *vu2)
RT_EXPORT struct loopusenmg_cut_loop (struct vertexuse *vu1, struct vertexuse *vu2)
RT_EXPORT struct loopusenmg_split_lu_at_vu (struct loopuse *lu, struct vertexuse *vu)
RT_EXPORT struct vertexusenmg_find_repeated_v_in_lu (struct vertexuse *vu)
RT_EXPORT void nmg_split_touchingloops (struct loopuse *lu, const struct bn_tol *tol)
RT_EXPORT int nmg_join_touchingloops (struct loopuse *lu)
RT_EXPORT int nmg_get_touching_jaunts (const struct loopuse *lu, struct bu_ptbl *tbl, int *need_init)
RT_EXPORT void nmg_kill_accordions (struct loopuse *lu)
RT_EXPORT int nmg_loop_split_at_touching_jaunt (struct loopuse *lu, const struct bn_tol *tol)
RT_EXPORT void nmg_simplify_loop (struct loopuse *lu)
RT_EXPORT int nmg_kill_snakes (struct loopuse *lu)
RT_EXPORT void nmg_mv_lu_between_shells (struct shell *dest, struct shell *src, struct loopuse *lu)
RT_EXPORT void nmg_moveltof (struct faceuse *fu, struct shell *s)
RT_EXPORT struct loopusenmg_dup_loop (struct loopuse *lu, long *parent, long **trans_tbl)
RT_EXPORT void nmg_set_lu_orientation (struct loopuse *lu, int is_opposite)
RT_EXPORT void nmg_lu_reorient (struct loopuse *lu)
RT_EXPORT struct edgeusenmg_eusplit (struct vertex *v, struct edgeuse *oldeu, int share_geom)
RT_EXPORT struct edgeusenmg_esplit (struct vertex *v, struct edgeuse *eu, int share_geom)
RT_EXPORT struct edgeusenmg_ebreak (struct vertex *v, struct edgeuse *eu)
RT_EXPORT struct edgeusenmg_ebreaker (struct vertex *v, struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT struct vertexnmg_e2break (struct edgeuse *eu1, struct edgeuse *eu2)
RT_EXPORT int nmg_unbreak_edge (struct edgeuse *eu1_first)
RT_EXPORT int nmg_unbreak_shell_edge_unsafe (struct edgeuse *eu1_first)
RT_EXPORT struct edgeusenmg_eins (struct edgeuse *eu)
RT_EXPORT void nmg_mv_eu_between_shells (struct shell *dest, struct shell *src, struct edgeuse *eu)
RT_EXPORT void nmg_mv_vu_between_shells (struct shell *dest, struct shell *src, struct vertexuse *vu)
RT_EXPORT struct modelnmg_find_model (const long *magic_p)
RT_EXPORT void nmg_model_bb (point_t min_pt, point_t max_pt, const struct model *m)
RT_EXPORT int nmg_shell_is_empty (const struct shell *s)
RT_EXPORT struct shellnmg_find_s_of_lu (const struct loopuse *lu)
RT_EXPORT struct shellnmg_find_s_of_eu (const struct edgeuse *eu)
RT_EXPORT struct shellnmg_find_s_of_vu (const struct vertexuse *vu)
RT_EXPORT struct faceusenmg_find_fu_of_eu (const struct edgeuse *eu)
RT_EXPORT struct faceusenmg_find_fu_of_lu (const struct loopuse *lu)
RT_EXPORT struct faceusenmg_find_fu_of_vu (const struct vertexuse *vu)
RT_EXPORT struct faceusenmg_find_fu_with_fg_in_s (const struct shell *s1, const struct faceuse *fu2)
RT_EXPORT double nmg_measure_fu_angle (const struct edgeuse *eu, const vect_t xvec, const vect_t yvec, const vect_t zvec)
RT_EXPORT struct loopusenmg_find_lu_of_vu (const struct vertexuse *vu)
RT_EXPORT int nmg_loop_is_a_crack (const struct loopuse *lu)
RT_EXPORT int nmg_loop_is_ccw (const struct loopuse *lu, const plane_t norm, const struct bn_tol *tol)
RT_EXPORT const struct vertexusenmg_loop_touches_self (const struct loopuse *lu)
RT_EXPORT int nmg_2lu_identical (const struct edgeuse *eu1, const struct edgeuse *eu2)
RT_EXPORT struct edgeusenmg_find_matching_eu_in_s (const struct edgeuse *eu1, const struct shell *s2)
RT_EXPORT struct edgeusenmg_findeu (const struct vertex *v1, const struct vertex *v2, const struct shell *s, const struct edgeuse *eup, int dangling_only)
RT_EXPORT struct edgeusenmg_find_eu_in_face (const struct vertex *v1, const struct vertex *v2, const struct faceuse *fu, const struct edgeuse *eup, int dangling_only)
RT_EXPORT struct edgeusenmg_find_e (const struct vertex *v1, const struct vertex *v2, const struct shell *s, const struct edge *ep)
RT_EXPORT struct edgeusenmg_find_eu_of_vu (const struct vertexuse *vu)
RT_EXPORT struct edgeusenmg_find_eu_with_vu_in_lu (const struct loopuse *lu, const struct vertexuse *vu)
RT_EXPORT const struct edgeusenmg_faceradial (const struct edgeuse *eu)
RT_EXPORT const struct edgeusenmg_radial_face_edge_in_shell (const struct edgeuse *eu)
RT_EXPORT const struct edgeusenmg_find_edge_between_2fu (const struct faceuse *fu1, const struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT struct edgenmg_find_e_nearest_pt2 (long *magic_p, const point_t pt2, const mat_t mat, const struct bn_tol *tol)
RT_EXPORT void nmg_eu_2vecs_perp (vect_t xvec, vect_t yvec, vect_t zvec, const struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT int nmg_find_eu_leftvec (vect_t left, const struct edgeuse *eu)
RT_EXPORT int nmg_find_eu_left_non_unit (vect_t left, const struct edgeuse *eu)
RT_EXPORT struct edgeusenmg_find_ot_same_eu_of_e (const struct edge *e)
RT_EXPORT struct vertexusenmg_find_v_in_face (const struct vertex *, const struct faceuse *)
RT_EXPORT struct vertexusenmg_find_v_in_shell (const struct vertex *v, const struct shell *s, int edges_only)
RT_EXPORT struct vertexusenmg_find_pt_in_lu (const struct loopuse *lu, const point_t pt, const struct bn_tol *tol)
RT_EXPORT struct vertexusenmg_find_pt_in_face (const struct faceuse *fu, const point_t pt, const struct bn_tol *tol)
RT_EXPORT struct vertexnmg_find_pt_in_shell (const struct shell *s, const point_t pt, const struct bn_tol *tol)
RT_EXPORT struct vertexnmg_find_pt_in_model (const struct model *m, const point_t pt, const struct bn_tol *tol)
RT_EXPORT int nmg_is_vertex_in_edgelist (const struct vertex *v, const struct bu_list *hd)
RT_EXPORT int nmg_is_vertex_in_looplist (const struct vertex *v, const struct bu_list *hd, int singletons)
RT_EXPORT struct vertexusenmg_is_vertex_in_face (const struct vertex *v, const struct face *f)
RT_EXPORT int nmg_is_vertex_a_selfloop_in_shell (const struct vertex *v, const struct shell *s)
RT_EXPORT int nmg_is_vertex_in_facelist (const struct vertex *v, const struct bu_list *hd)
RT_EXPORT int nmg_is_edge_in_edgelist (const struct edge *e, const struct bu_list *hd)
RT_EXPORT int nmg_is_edge_in_looplist (const struct edge *e, const struct bu_list *hd)
RT_EXPORT int nmg_is_edge_in_facelist (const struct edge *e, const struct bu_list *hd)
RT_EXPORT int nmg_is_loop_in_facelist (const struct loop *l, const struct bu_list *fu_hd)
RT_EXPORT void nmg_vertex_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_vertexuse_normal_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_edgeuse_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_edge_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_edge_g_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_face_tabulate (struct bu_ptbl *tab, const long *magic_p)
RT_EXPORT void nmg_edgeuse_with_eg_tabulate (struct bu_ptbl *tab, const struct edge_g_lseg *eg)
RT_EXPORT void nmg_edgeuse_on_line_tabulate (struct bu_ptbl *tab, const long *magic_p, const point_t pt, const vect_t dir, const struct bn_tol *tol)
RT_EXPORT void nmg_e_and_v_tabulate (struct bu_ptbl *eutab, struct bu_ptbl *vtab, const long *magic_p)
RT_EXPORT int nmg_2edgeuse_g_coincident (const struct edgeuse *eu1, const struct edgeuse *eu2, const struct bn_tol *tol)
RT_EXPORT void nmg_translate_face (struct faceuse *fu, const vect_t Vec, const struct bn_tol *tol)
RT_EXPORT int nmg_extrude_face (struct faceuse *fu, const vect_t Vec, const struct bn_tol *tol)
RT_EXPORT struct vertexusenmg_find_vertex_in_lu (const struct vertex *v, const struct loopuse *lu)
RT_EXPORT void nmg_fix_overlapping_loops (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_break_crossed_loops (struct shell *is, const struct bn_tol *tol)
RT_EXPORT struct shellnmg_extrude_cleanup (struct shell *is, const int is_void, const struct bn_tol *tol)
RT_EXPORT void nmg_hollow_shell (struct shell *s, const fastf_t thick, const int approximate, const struct bn_tol *tol)
RT_EXPORT struct shellnmg_extrude_shell (struct shell *s, const fastf_t dist, const int normal_ward, const int approximate, const struct bn_tol *tol)
RT_EXPORT char * nmg_orientation (int orientation)
RT_EXPORT void nmg_pr_orient (int orientation, const char *h)
RT_EXPORT void nmg_pr_m (const struct model *m)
RT_EXPORT void nmg_pr_r (const struct nmgregion *r, char *h)
RT_EXPORT void nmg_pr_sa (const struct shell_a *sa, char *h)
RT_EXPORT void nmg_pr_lg (const struct loop_g *lg, char *h)
RT_EXPORT void nmg_pr_fg (const long *magic, char *h)
RT_EXPORT void nmg_pr_s (const struct shell *s, char *h)
RT_EXPORT void nmg_pr_s_briefly (const struct shell *s, char *h)
RT_EXPORT void nmg_pr_f (const struct face *f, char *h)
RT_EXPORT void nmg_pr_fu (const struct faceuse *fu, char *h)
RT_EXPORT void nmg_pr_fu_briefly (const struct faceuse *fu, char *h)
RT_EXPORT void nmg_pr_l (const struct loop *l, char *h)
RT_EXPORT void nmg_pr_lu (const struct loopuse *lu, char *h)
RT_EXPORT void nmg_pr_lu_briefly (const struct loopuse *lu, char *h)
RT_EXPORT void nmg_pr_eg (const long *eg, char *h)
RT_EXPORT void nmg_pr_e (const struct edge *e, char *h)
RT_EXPORT void nmg_pr_eu (const struct edgeuse *eu, char *h)
RT_EXPORT void nmg_pr_eu_briefly (const struct edgeuse *eu, char *h)
RT_EXPORT void nmg_pr_eu_endpoints (const struct edgeuse *eu, char *h)
RT_EXPORT void nmg_pr_vg (const struct vertex_g *vg, char *h)
RT_EXPORT void nmg_pr_v (const struct vertex *v, char *h)
RT_EXPORT void nmg_pr_vu (const struct vertexuse *vu, char *h)
RT_EXPORT void nmg_pr_vu_briefly (const struct vertexuse *vu, char *h)
RT_EXPORT void nmg_pr_vua (const long *magic_p, char *h)
RT_EXPORT void nmg_euprint (const char *str, const struct edgeuse *eu)
RT_EXPORT void nmg_pr_ptbl (const char *title, const struct bu_ptbl *tbl, int verbose)
RT_EXPORT void nmg_pr_ptbl_vert_list (const char *str, const struct bu_ptbl *tbl, const fastf_t *mag)
RT_EXPORT void nmg_pr_one_eu_vecs (const struct edgeuse *eu, const vect_t xvec, const vect_t yvec, const vect_t zvec, const struct bn_tol *tol)
RT_EXPORT void nmg_pr_fu_around_eu_vecs (const struct edgeuse *eu, const vect_t xvec, const vect_t yvec, const vect_t zvec, const struct bn_tol *tol)
RT_EXPORT void nmg_pr_fu_around_eu (const struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT void nmg_pl_lu_around_eu (const struct edgeuse *eu)
RT_EXPORT void nmg_pr_fus_in_fg (const long *fg_magic)
RT_EXPORT struct rt_bot_internalnmg_bot (struct shell *s, const struct bn_tol *tol)
RT_EXPORT int rt_dist_pt3_line3 (fastf_t *dist, point_t pca, const point_t a, const point_t p, const vect_t dir, const struct bn_tol *tol)
RT_EXPORT int rt_dist_line3_line3 (fastf_t dist[2], const point_t p1, const point_t p2, const vect_t d1, const vect_t d2, const struct bn_tol *tol)
RT_EXPORT int nmg_snurb_calc_lu_uv_orient (const struct loopuse *lu)
RT_EXPORT void nmg_snurb_fu_eval (const struct faceuse *fu, const fastf_t u, const fastf_t v, point_t pt_on_srf)
RT_EXPORT void nmg_snurb_fu_get_norm (const struct faceuse *fu, const fastf_t u, const fastf_t v, vect_t norm)
RT_EXPORT void nmg_snurb_fu_get_norm_at_vu (const struct faceuse *fu, const struct vertexuse *vu, vect_t norm)
RT_EXPORT void nmg_find_zero_length_edges (const struct model *m)
RT_EXPORT struct facenmg_find_top_face_in_dir (const struct shell *s, int dir, long *flags)
RT_EXPORT struct facenmg_find_top_face (const struct shell *s, int *dir, long *flags)
RT_EXPORT int nmg_find_outer_and_void_shells (struct nmgregion *r, struct bu_ptbl ***shells, const struct bn_tol *tol)
RT_EXPORT int nmg_mark_edges_real (const long *magic_p)
RT_EXPORT void nmg_tabulate_face_g_verts (struct bu_ptbl *tab, const struct face_g_plane *fg)
RT_EXPORT void nmg_isect_shell_self (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct edgeusenmg_next_radial_eu (const struct edgeuse *eu, const struct shell *s, const int wires)
RT_EXPORT struct edgeusenmg_prev_radial_eu (const struct edgeuse *eu, const struct shell *s, const int wires)
RT_EXPORT int nmg_radial_face_count (const struct edgeuse *eu, const struct shell *s)
RT_EXPORT int nmg_check_closed_shell (const struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_move_lu_between_fus (struct faceuse *dest, struct faceuse *src, struct loopuse *lu)
RT_EXPORT void nmg_loop_plane_newell (const struct loopuse *lu, plane_t pl)
RT_EXPORT fastf_t nmg_loop_plane_area (const struct loopuse *lu, plane_t pl)
RT_EXPORT int nmg_calc_face_plane (struct faceuse *fu_in, plane_t pl)
RT_EXPORT int nmg_calc_face_g (struct faceuse *fu)
RT_EXPORT fastf_t nmg_faceuse_area (const struct faceuse *fu)
RT_EXPORT fastf_t nmg_shell_area (const struct shell *s)
RT_EXPORT fastf_t nmg_region_area (const struct nmgregion *r)
RT_EXPORT fastf_t nmg_model_area (const struct model *m)
RT_EXPORT void nmg_purge_unwanted_intersection_points (struct bu_ptbl *vert_list, fastf_t *mag, const struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT int nmg_in_or_ref (struct vertexuse *vu, struct bu_ptbl *b)
RT_EXPORT void nmg_rebound (struct model *m, const struct bn_tol *tol)
RT_EXPORT void nmg_count_shell_kids (const struct model *m, unsigned long *total_wires, unsigned long *total_faces, unsigned long *total_points)
RT_EXPORT void nmg_close_shell (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct shellnmg_dup_shell (struct shell *s, long ***copy_tbl, const struct bn_tol *tol)
RT_EXPORT struct edgeusenmg_pop_eu (struct bu_ptbl *stack)
RT_EXPORT void nmg_reverse_radials (struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT void nmg_reverse_face_and_radials (struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT int nmg_shell_is_void (const struct shell *s)
RT_EXPORT void nmg_propagate_normals (struct faceuse *fu_in, long *flags, const struct bn_tol *tol)
RT_EXPORT void nmg_connect_same_fu_orients (struct shell *s)
RT_EXPORT void nmg_fix_decomposed_shell_normals (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct modelnmg_mk_model_from_region (struct nmgregion *r, int reindex)
RT_EXPORT void nmg_fix_normals (struct shell *s_orig, const struct bn_tol *tol)
RT_EXPORT int nmg_break_long_edges (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct faceusenmg_mk_new_face_from_loop (struct loopuse *lu)
RT_EXPORT int nmg_split_loops_into_faces (long *magic_p, const struct bn_tol *tol)
RT_EXPORT int nmg_decompose_shell (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_stash_model_to_file (const char *filename, const struct model *m, const char *title)
RT_EXPORT int nmg_unbreak_region_edges (long *magic_p)
RT_EXPORT int nmg_mv_shell_to_region (struct shell *s, struct nmgregion *r)
RT_EXPORT int nmg_find_isect_faces (const struct vertex *new_v, struct bu_ptbl *faces, int *free_edges, const struct bn_tol *tol)
RT_EXPORT int nmg_simple_vertex_solve (struct vertex *new_v, const struct bu_ptbl *faces, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_vert_on_fus (const struct vertex *v, const struct bn_tol *tol)
RT_EXPORT void nmg_make_faces_at_vert (struct vertex *new_v, struct bu_ptbl *int_faces, const struct bn_tol *tol)
RT_EXPORT void nmg_kill_cracks_at_vertex (const struct vertex *vp)
RT_EXPORT int nmg_complex_vertex_solve (struct vertex *new_v, const struct bu_ptbl *faces, const int free_edges, const int approximate, const struct bn_tol *tol)
RT_EXPORT int nmg_bad_face_normals (const struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_faces_are_radial (const struct faceuse *fu1, const struct faceuse *fu2)
RT_EXPORT int nmg_move_edge_thru_pt (struct edgeuse *mv_eu, const point_t pt, const struct bn_tol *tol)
RT_EXPORT void nmg_vlist_to_wire_edges (struct shell *s, const struct bu_list *vhead)
RT_EXPORT void nmg_follow_free_edges_to_vertex (const struct vertex *vpa, const struct vertex *vpb, struct bu_ptbl *bad_verts, const struct shell *s, const struct edgeuse *eu, struct bu_ptbl *verts, int *found)
RT_EXPORT void nmg_glue_face_in_shell (const struct faceuse *fu, struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_open_shells_connect (struct shell *dst, struct shell *src, const long **copy_tbl, const struct bn_tol *tol)
RT_EXPORT int nmg_in_vert (struct vertex *new_v, const int approximate, const struct bn_tol *tol)
RT_EXPORT void nmg_mirror_model (struct model *m)
RT_EXPORT int nmg_kill_cracks (struct shell *s)
RT_EXPORT int nmg_kill_zero_length_edgeuses (struct model *m)
RT_EXPORT void nmg_make_faces_within_tol (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_intersect_loops_self (struct shell *s, const struct bn_tol *tol)
RT_EXPORT struct edge_g_cnurbrt_join_cnurbs (struct bu_list *crv_head)
RT_EXPORT struct edge_g_cnurbrt_arc2d_to_cnurb (point_t i_center, point_t i_start, point_t i_end, int point_type, const struct bn_tol *tol)
RT_EXPORT int nmg_break_edge_at_verts (struct edge *e, struct bu_ptbl *verts, const struct bn_tol *tol)
RT_EXPORT int nmg_break_edges (long *magic_p, const struct bn_tol *tol)
RT_EXPORT int nmg_lu_is_convex (struct loopuse *lu, const struct bn_tol *tol)
RT_EXPORT int nmg_simplify_shell_edges (struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_edge_collapse (struct model *m, const struct bn_tol *tol, const fastf_t tol_coll, const fastf_t min_angle)
RT_EXPORT int rt_bot_edge_in_list (const int v1, const int v2, const int edge_list[], const int edge_count0)
RT_EXPORT int rt_bot_plot (struct bu_list *vhead, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol)
RT_EXPORT int rt_bot_plot_poly (struct bu_list *vhead, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol)
RT_EXPORT int rt_bot_same_orientation (const int *a, const int *b)
RT_EXPORT void nmg_triangulate_shell (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_triangulate_model (struct model *m, const struct bn_tol *tol)
RT_EXPORT void nmg_triangulate_fu (struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT int nmg_dangling_face (const struct faceuse *fu, const char *manifolds)
RT_EXPORT char * nmg_shell_manifolds (struct shell *sp, char *tbl)
RT_EXPORT char * nmg_manifolds (struct model *m)
RT_EXPORT int nmg_ray_segs (struct ray_data *rd)
RT_EXPORT int rt_num_circular_segments (double maxerr, double radius)
RT_EXPORT int rt_tcl_parse_ray (Tcl_Interp *interp, struct xray *rp, const char *const *argv)
RT_EXPORT void rt_tcl_pr_cutter (Tcl_Interp *interp, const union cutter *cutp)
RT_EXPORT int rt_tcl_cutter (ClientData clientData, Tcl_Interp *interp, int argc, const char *const *argv)
RT_EXPORT void rt_tcl_pr_hit (Tcl_Interp *interp, struct hit *hitp, const struct seg *segp, const struct xray *rayp, int flipflag)
RT_EXPORT void rt_tcl_setup (Tcl_Interp *interp)
RT_EXPORT int Sysv_Init (Tcl_Interp *interp)
RT_EXPORT int Rt_Init (Tcl_Interp *interp)
RT_EXPORT void db_full_path_appendresult (Tcl_Interp *interp, const struct db_full_path *pp)
RT_EXPORT int tcl_obj_to_int_array (Tcl_Interp *interp, Tcl_Obj *list, int **array, int *array_len)
RT_EXPORT int tcl_obj_to_fastf_array (Tcl_Interp *interp, Tcl_Obj *list, fastf_t **array, int *array_len)
RT_EXPORT int tcl_list_to_int_array (Tcl_Interp *interp, char *char_list, int **array, int *array_len)
RT_EXPORT int tcl_list_to_fastf_array (Tcl_Interp *interp, char *char_list, fastf_t **array, int *array_len)
RT_EXPORT int rt_mk_hyperbola (struct rt_pt_node *pts, fastf_t r, fastf_t b, fastf_t c, fastf_t dtol, fastf_t ntol)
RT_EXPORT int nmg_classify_pt_loop (const point_t pt, const struct loopuse *lu, const struct bn_tol *tol)
RT_EXPORT int nmg_classify_s_vs_s (struct shell *s, struct shell *s2, const struct bn_tol *tol)
RT_EXPORT int nmg_classify_lu_lu (const struct loopuse *lu1, const struct loopuse *lu2, const struct bn_tol *tol)
RT_EXPORT int nmg_class_pt_f (const point_t pt, const struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT int nmg_class_pt_s (const point_t pt, const struct shell *s, const int in_or_out_only, const struct bn_tol *tol)
RT_EXPORT int nmg_eu_is_part_of_crack (const struct edgeuse *eu)
RT_EXPORT int nmg_class_pt_lu_except (point_t pt, const struct loopuse *lu, const struct edge *e_p, const struct bn_tol *tol)
RT_EXPORT int nmg_class_pt_fu_except (const point_t pt, const struct faceuse *fu, const struct loopuse *ignore_lu, void(*eu_func)(), void(*vu_func)(), const char *priv, const int call_on_hits, const int in_or_out_only, const struct bn_tol *tol)
RT_EXPORT void nmg_pl_shell (FILE *fp, const struct shell *s, int fancy)
RT_EXPORT void nmg_vu_to_vlist (struct bu_list *vhead, const struct vertexuse *vu)
RT_EXPORT void nmg_eu_to_vlist (struct bu_list *vhead, const struct bu_list *eu_hd)
RT_EXPORT void nmg_lu_to_vlist (struct bu_list *vhead, const struct loopuse *lu, int poly_markers, const vectp_t normal)
RT_EXPORT void nmg_snurb_fu_to_vlist (struct bu_list *vhead, const struct faceuse *fu, int poly_markers)
RT_EXPORT void nmg_s_to_vlist (struct bu_list *vhead, const struct shell *s, int poly_markers)
RT_EXPORT void nmg_r_to_vlist (struct bu_list *vhead, const struct nmgregion *r, int poly_markers)
RT_EXPORT void nmg_m_to_vlist (struct bu_list *vhead, struct model *m, int poly_markers)
RT_EXPORT void nmg_offset_eu_vert (point_t base, const struct edgeuse *eu, const vect_t face_normal, int tip)
RT_EXPORT void nmg_pl_v (FILE *fp, const struct vertex *v, long *b)
RT_EXPORT void nmg_pl_e (FILE *fp, const struct edge *e, long *b, int red, int green, int blue)
RT_EXPORT void nmg_pl_eu (FILE *fp, const struct edgeuse *eu, long *b, int red, int green, int blue)
RT_EXPORT void nmg_pl_lu (FILE *fp, const struct loopuse *fu, long *b, int red, int green, int blue)
RT_EXPORT void nmg_pl_fu (FILE *fp, const struct faceuse *fu, long *b, int red, int green, int blue)
RT_EXPORT void nmg_pl_s (FILE *fp, const struct shell *s)
RT_EXPORT void nmg_pl_r (FILE *fp, const struct nmgregion *r)
RT_EXPORT void nmg_pl_m (FILE *fp, const struct model *m)
RT_EXPORT void nmg_vlblock_v (struct bn_vlblock *vbp, const struct vertex *v, long *tab)
RT_EXPORT void nmg_vlblock_e (struct bn_vlblock *vbp, const struct edge *e, long *tab, int red, int green, int blue, int fancy)
RT_EXPORT void nmg_vlblock_eu (struct bn_vlblock *vbp, const struct edgeuse *eu, long *tab, int red, int green, int blue, int fancy, int loopnum)
RT_EXPORT void nmg_vlblock_euleft (struct bu_list *vh, const struct edgeuse *eu, const point_t center, const mat_t mat, const vect_t xvec, const vect_t yvec, double len, const struct bn_tol *tol)
RT_EXPORT void nmg_vlblock_around_eu (struct bn_vlblock *vbp, const struct edgeuse *arg_eu, long *tab, int fancy, const struct bn_tol *tol)
RT_EXPORT void nmg_vlblock_lu (struct bn_vlblock *vbp, const struct loopuse *lu, long *tab, int red, int green, int blue, int fancy, int loopnum)
RT_EXPORT void nmg_vlblock_fu (struct bn_vlblock *vbp, const struct faceuse *fu, long *tab, int fancy)
RT_EXPORT void nmg_vlblock_s (struct bn_vlblock *vbp, const struct shell *s, int fancy)
RT_EXPORT void nmg_vlblock_r (struct bn_vlblock *vbp, const struct nmgregion *r, int fancy)
RT_EXPORT void nmg_vlblock_m (struct bn_vlblock *vbp, const struct model *m, int fancy)
RT_EXPORT void nmg_pl_edges_in_2_shells (struct bn_vlblock *vbp, long *b, const struct edgeuse *eu, int fancy, const struct bn_tol *tol)
RT_EXPORT void nmg_pl_isect (const char *filename, const struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_pl_comb_fu (int num1, int num2, const struct faceuse *fu1)
RT_EXPORT void nmg_pl_2fu (const char *str, int num, const struct faceuse *fu1, const struct faceuse *fu2, int show_mates)
RT_EXPORT void nmg_show_broken_classifier_stuff (long *p, long *classlist[4], int all_new, int fancy, const char *a_string)
RT_EXPORT void nmg_face_plot (const struct faceuse *fu)
RT_EXPORT void nmg_2face_plot (const struct faceuse *fu1, const struct faceuse *fu2)
RT_EXPORT void nmg_face_lu_plot (const struct loopuse *lu, const struct vertexuse *vu1, const struct vertexuse *vu2)
RT_EXPORT void nmg_plot_lu_ray (const struct loopuse *lu, const struct vertexuse *vu1, const struct vertexuse *vu2, const vect_t left)
RT_EXPORT void nmg_plot_ray_face (const char *fname, point_t pt, const vect_t dir, const struct faceuse *fu)
RT_EXPORT void nmg_plot_lu_around_eu (const char *prefix, const struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT int nmg_snurb_to_vlist (struct bu_list *vhead, const struct face_g_snurb *fg, int n_interior)
RT_EXPORT void nmg_cnurb_to_vlist (struct bu_list *vhead, const struct edgeuse *eu, int n_interior, int cmd)
RT_EXPORT void rt_nurb_clean_cnurb (struct edge_g_cnurb *crv)
RT_EXPORT int rt_nurb_knot_index (const struct knot_vector *kv, fastf_t k_value, int order)
RT_EXPORT int nmg_uv_in_lu (const fastf_t u, const fastf_t v, const struct loopuse *lu)
RT_EXPORT int nmg_mesh_two_faces (struct faceuse *fu1, struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_join_eu (struct edgeuse *eu1, struct edgeuse *eu2, const struct bn_tol *tol)
RT_EXPORT void nmg_mesh_faces (struct faceuse *fu1, struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT int nmg_mesh_face_shell (struct faceuse *fu1, struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_mesh_shell_shell (struct shell *s1, struct shell *s2, const struct bn_tol *tol)
RT_EXPORT struct nmgregionnmg_do_bool (struct nmgregion *s1, struct nmgregion *s2, const int oper, const struct bn_tol *tol)
RT_EXPORT int nmg_two_region_vertex_fuse (struct nmgregion *r1, struct nmgregion *r2, const struct bn_tol *tol)
RT_EXPORT union treenmg_booltree_leaf_tess (struct db_tree_state *tsp, struct db_full_path *pathp, struct rt_db_internal *ip, genptr_t client_data)
RT_EXPORT union treenmg_booltree_leaf_tnurb (struct db_tree_state *tsp, struct db_full_path *pathp, struct rt_db_internal *ip, genptr_t client_data)
RT_EXPORT union treenmg_booltree_evaluate (union tree *tp, const struct bn_tol *tol, struct resource *resp)
RT_EXPORT int nmg_boolean (union tree *tp, struct model *m, const struct bn_tol *tol, struct resource *resp)
RT_EXPORT void nmg_class_shells (struct shell *sA, struct shell *sB, long *classlist[4], const struct bn_tol *tol)
RT_EXPORT int nmg_ck_vu_ptbl (struct bu_ptbl *p, struct faceuse *fu)
RT_EXPORT double nmg_vu_angle_measure (struct vertexuse *vu, vect_t x_dir, vect_t y_dir, int assessment, int in)
RT_EXPORT int nmg_wedge_class (int ass, double a, double b)
RT_EXPORT void nmg_sanitize_fu (struct faceuse *fu)
RT_EXPORT void nmg_unlist_v (struct bu_ptbl *b, fastf_t *mag, struct vertex *v)
RT_EXPORT struct edge_g_lsegnmg_face_cutjoin (struct bu_ptbl *b1, struct bu_ptbl *b2, fastf_t *mag1, fastf_t *mag2, struct faceuse *fu1, struct faceuse *fu2, point_t pt, vect_t dir, struct edge_g_lseg *eg, const struct bn_tol *tol)
RT_EXPORT void nmg_fcut_face_2d (struct bu_ptbl *vu_list, fastf_t *mag, struct faceuse *fu1, struct faceuse *fu2, struct bn_tol *tol)
RT_EXPORT int nmg_insert_vu_if_on_edge (struct vertexuse *vu1, struct vertexuse *vu2, struct edgeuse *new_eu, struct bn_tol *tol)
RT_EXPORT void nmg_ck_lu_orientation (struct loopuse *lu, const struct bn_tol *tolp)
RT_EXPORT const char * nmg_class_name (int class_no)
RT_EXPORT void nmg_evaluate_boolean (struct shell *sA, struct shell *sB, int op, long *classlist[8], const struct bn_tol *tol)
RT_EXPORT void nmg_rt_print_hitlist (struct hitmiss *hl)
RT_EXPORT void nmg_rt_print_hitmiss (struct hitmiss *a_hit)
RT_EXPORT int nmg_class_ray_vs_shell (struct xray *rp, const struct shell *s, const int in_or_out_only, const struct bn_tol *tol)
RT_EXPORT void nmg_isect_ray_model (struct ray_data *rd)
RT_EXPORT void nmg_vvg (const struct vertex_g *vg)
RT_EXPORT void nmg_vvertex (const struct vertex *v, const struct vertexuse *vup)
RT_EXPORT void nmg_vvua (const long *vua)
RT_EXPORT void nmg_vvu (const struct vertexuse *vu, const long *up_magic_p)
RT_EXPORT void nmg_veg (const long *eg)
RT_EXPORT void nmg_vedge (const struct edge *e, const struct edgeuse *eup)
RT_EXPORT void nmg_veu (const struct bu_list *hp, const long *up_magic_p)
RT_EXPORT void nmg_vlg (const struct loop_g *lg)
RT_EXPORT void nmg_vloop (const struct loop *l, const struct loopuse *lup)
RT_EXPORT void nmg_vlu (const struct bu_list *hp, const long *up)
RT_EXPORT void nmg_vfg (const struct face_g_plane *fg)
RT_EXPORT void nmg_vface (const struct face *f, const struct faceuse *fup)
RT_EXPORT void nmg_vfu (const struct bu_list *hp, const struct shell *s)
RT_EXPORT void nmg_vshell (const struct bu_list *hp, const struct nmgregion *r)
RT_EXPORT void nmg_vregion (const struct bu_list *hp, const struct model *m)
RT_EXPORT void nmg_vmodel (const struct model *m)
RT_EXPORT void nmg_ck_e (const struct edgeuse *eu, const struct edge *e, const char *str)
RT_EXPORT void nmg_ck_vu (const long *parent, const struct vertexuse *vu, const char *str)
RT_EXPORT void nmg_ck_eu (const long *parent, const struct edgeuse *eu, const char *str)
RT_EXPORT void nmg_ck_lg (const struct loop *l, const struct loop_g *lg, const char *str)
RT_EXPORT void nmg_ck_l (const struct loopuse *lu, const struct loop *l, const char *str)
RT_EXPORT void nmg_ck_lu (const long *parent, const struct loopuse *lu, const char *str)
RT_EXPORT void nmg_ck_fg (const struct face *f, const struct face_g_plane *fg, const char *str)
RT_EXPORT void nmg_ck_f (const struct faceuse *fu, const struct face *f, const char *str)
RT_EXPORT void nmg_ck_fu (const struct shell *s, const struct faceuse *fu, const char *str)
RT_EXPORT int nmg_ck_eg_verts (const struct edge_g_lseg *eg, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_geometry (const struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_face_worthless_edges (const struct faceuse *fu)
RT_EXPORT void nmg_ck_lueu (const struct loopuse *lu, const char *s)
RT_EXPORT int nmg_check_radial (const struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT int nmg_eu_2s_orient_bad (const struct edgeuse *eu, const struct shell *s1, const struct shell *s2, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_closed_surf (const struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_closed_region (const struct nmgregion *r, const struct bn_tol *tol)
RT_EXPORT void nmg_ck_v_in_2fus (const struct vertex *vp, const struct faceuse *fu1, const struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT void nmg_ck_vs_in_region (const struct nmgregion *r, const struct bn_tol *tol)
RT_EXPORT struct vertexusenmg_make_dualvu (struct vertex *v, struct faceuse *fu, const struct bn_tol *tol)
RT_EXPORT struct vertexusenmg_enlist_vu (struct nmg_inter_struct *is, const struct vertexuse *vu, struct vertexuse *dualvu, fastf_t dist)
RT_EXPORT void nmg_isect2d_prep (struct nmg_inter_struct *is, const long *assoc_use)
RT_EXPORT void nmg_isect2d_cleanup (struct nmg_inter_struct *is)
RT_EXPORT void nmg_isect2d_final_cleanup ()
RT_EXPORT void nmg_isect_vert2p_face2p (struct nmg_inter_struct *is, struct vertexuse *vu1, struct faceuse *fu2)
RT_EXPORT struct edgeusenmg_break_eu_on_v (struct edgeuse *eu1, struct vertex *v2, struct faceuse *fu, struct nmg_inter_struct *is)
RT_EXPORT void nmg_break_eg_on_v (const struct edge_g_lseg *eg, struct vertex *v, const struct bn_tol *tol)
RT_EXPORT int nmg_isect_2colinear_edge2p (struct edgeuse *eu1, struct edgeuse *eu2, struct faceuse *fu, struct nmg_inter_struct *is, struct bu_ptbl *l1, struct bu_ptbl *l2)
RT_EXPORT int nmg_isect_edge2p_edge2p (struct nmg_inter_struct *is, struct edgeuse *eu1, struct edgeuse *eu2, struct faceuse *fu1, struct faceuse *fu2)
RT_EXPORT int nmg_isect_construct_nice_ray (struct nmg_inter_struct *is, struct faceuse *fu2)
RT_EXPORT void nmg_enlist_one_vu (struct nmg_inter_struct *is, const struct vertexuse *vu, fastf_t dist)
RT_EXPORT int nmg_isect_line2_edge2p (struct nmg_inter_struct *is, struct bu_ptbl *list, struct edgeuse *eu1, struct faceuse *fu1, struct faceuse *fu2)
RT_EXPORT void nmg_isect_line2_vertex2 (struct nmg_inter_struct *is, struct vertexuse *vu1, struct faceuse *fu1)
RT_EXPORT int nmg_isect_two_ptbls (struct nmg_inter_struct *is, const struct bu_ptbl *t1, const struct bu_ptbl *t2)
RT_EXPORT struct edge_g_lsegnmg_find_eg_on_line (const long *magic_p, const point_t pt, const vect_t dir, const struct bn_tol *tol)
RT_EXPORT int nmg_k0eu (struct vertex *v)
RT_EXPORT struct vertexnmg_repair_v_near_v (struct vertex *hit_v, struct vertex *v, const struct edge_g_lseg *eg1, const struct edge_g_lseg *eg2, int bomb, const struct bn_tol *tol)
RT_EXPORT struct vertexnmg_search_v_eg (const struct edgeuse *eu, int second, const struct edge_g_lseg *eg1, const struct edge_g_lseg *eg2, struct vertex *hit_v, const struct bn_tol *tol)
RT_EXPORT struct vertexnmg_common_v_2eg (struct edge_g_lseg *eg1, struct edge_g_lseg *eg2, const struct bn_tol *tol)
RT_EXPORT int nmg_is_vertex_on_inter (struct vertex *v, struct faceuse *fu1, struct faceuse *fu2, struct nmg_inter_struct *is)
RT_EXPORT void nmg_isect_eu_verts (struct edgeuse *eu, struct vertex_g *vg1, struct vertex_g *vg2, struct bu_ptbl *verts, struct bu_ptbl *inters, const struct bn_tol *tol)
RT_EXPORT void nmg_isect_eu_eu (struct edgeuse *eu1, struct vertex_g *vg1a, struct vertex_g *vg1b, vect_t dir1, struct edgeuse *eu2, struct bu_ptbl *verts, struct bu_ptbl *inters, const struct bn_tol *tol)
RT_EXPORT void nmg_isect_eu_fu (struct nmg_inter_struct *is, struct bu_ptbl *verts, struct edgeuse *eu, struct faceuse *fu)
RT_EXPORT void nmg_isect_fu_jra (struct nmg_inter_struct *is, struct faceuse *fu1, struct faceuse *fu2, struct bu_ptbl *eu1_list, struct bu_ptbl *eu2_list)
RT_EXPORT void nmg_isect_line2_face2pNEW (struct nmg_inter_struct *is, struct faceuse *fu1, struct faceuse *fu2, struct bu_ptbl *eu1_list, struct bu_ptbl *eu2_list)
RT_EXPORT int nmg_is_eu_on_line3 (const struct edgeuse *eu, const point_t pt, const vect_t dir, const struct bn_tol *tol)
RT_EXPORT struct edge_g_lsegnmg_find_eg_between_2fg (const struct faceuse *ofu1, const struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT struct edgeusenmg_does_fu_use_eg (const struct faceuse *fu1, const long *eg)
RT_EXPORT int rt_line_on_plane (const point_t pt, const vect_t dir, const plane_t plane, const struct bn_tol *tol)
RT_EXPORT void nmg_cut_lu_into_coplanar_and_non (struct loopuse *lu, plane_t pl, struct nmg_inter_struct *is)
RT_EXPORT void nmg_check_radial_angles (char *str, struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_faces_can_be_intersected (struct nmg_inter_struct *bs, const struct faceuse *fu1, const struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT void nmg_isect_two_generic_faces (struct faceuse *fu1, struct faceuse *fu2, const struct bn_tol *tol)
RT_EXPORT void nmg_crackshells (struct shell *s1, struct shell *s2, const struct bn_tol *tol)
RT_EXPORT int nmg_fu_touchingloops (const struct faceuse *fu)
RT_EXPORT int nmg_index_of_struct (const long *p)
RT_EXPORT void nmg_m_set_high_bit (struct model *m)
RT_EXPORT void nmg_m_reindex (struct model *m, long newindex)
RT_EXPORT void nmg_vls_struct_counts (struct bu_vls *str, const struct nmg_struct_counts *ctr)
RT_EXPORT void nmg_pr_struct_counts (const struct nmg_struct_counts *ctr, const char *str)
RT_EXPORT long ** nmg_m_struct_count (struct nmg_struct_counts *ctr, const struct model *m)
RT_EXPORT void nmg_struct_counts (const struct model *m, const char *str)
RT_EXPORT void nmg_merge_models (struct model *m1, struct model *m2)
RT_EXPORT long nmg_find_max_index (const struct model *m)
RT_EXPORT void rt_dspline_matrix (mat_t m, const char *type, const double tension, const double bias)
RT_EXPORT double rt_dspline4 (mat_t m, double a, double b, double c, double d, double alpha)
RT_EXPORT void rt_dspline4v (double *pt, const mat_t m, const double *a, const double *b, const double *c, const double *d, const int depth, const double alpha)
RT_EXPORT void rt_dspline_n (double *r, const mat_t m, const double *knots, const int n, const int depth, const double alpha)
RT_EXPORT int rt_nurb_bezier (struct bu_list *bezier_hd, const struct face_g_snurb *orig_surf, struct resource *res)
RT_EXPORT int rt_bez_check (const struct face_g_snurb *srf)
RT_EXPORT int nurb_crv_is_bezier (const struct edge_g_cnurb *crv)
RT_EXPORT void nurb_c_to_bezier (struct bu_list *clist, struct edge_g_cnurb *crv)
RT_EXPORT struct face_g_snurbrt_nurb_scopy (const struct face_g_snurb *srf, struct resource *res)
RT_EXPORT struct edge_g_cnurbrt_nurb_crv_copy (const struct edge_g_cnurb *crv)
RT_EXPORT int nmg_is_common_bigloop (const struct face *f1, const struct face *f2)
RT_EXPORT void nmg_region_v_unique (struct nmgregion *r1, const struct bn_tol *tol)
RT_EXPORT int nmg_ptbl_vfuse (struct bu_ptbl *t, const struct bn_tol *tol)
RT_EXPORT int nmg_region_both_vfuse (struct bu_ptbl *t1, struct bu_ptbl *t2, const struct bn_tol *tol)
RT_EXPORT int nmg_model_vertex_fuse (struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_cnurb_is_linear (const struct edge_g_cnurb *cnrb)
RT_EXPORT int nmg_snurb_is_planar (const struct face_g_snurb *srf, const struct bn_tol *tol)
RT_EXPORT void nmg_eval_linear_trim_curve (const struct face_g_snurb *snrb, const fastf_t uvw[3], point_t xyz)
RT_EXPORT void nmg_eval_trim_curve (const struct edge_g_cnurb *cnrb, const struct face_g_snurb *snrb, const fastf_t t, point_t xyz)
RT_EXPORT void nmg_eval_trim_to_tol (const struct edge_g_cnurb *cnrb, const struct face_g_snurb *snrb, const fastf_t t0, const fastf_t t1, struct bu_list *head, const struct bn_tol *tol)
RT_EXPORT void nmg_eval_linear_trim_to_tol (const struct edge_g_cnurb *cnrb, const struct face_g_snurb *snrb, const fastf_t uvw1[3], const fastf_t uvw2[3], struct bu_list *head, const struct bn_tol *tol)
RT_EXPORT int nmg_cnurb_lseg_coincident (const struct edgeuse *eu1, const struct edge_g_cnurb *cnrb, const struct face_g_snurb *snrb, const point_t pt1, const point_t pt2, const struct bn_tol *tol)
RT_EXPORT int nmg_cnurb_is_on_crv (const struct edgeuse *eu, const struct edge_g_cnurb *cnrb, const struct face_g_snurb *snrb, const struct bu_list *head, const struct bn_tol *tol)
RT_EXPORT int nmg_model_edge_fuse (struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_model_edge_g_fuse (struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_fu_verts (struct faceuse *fu1, struct face *f2, const struct bn_tol *tol)
RT_EXPORT int nmg_ck_fg_verts (struct faceuse *fu1, struct face *f2, const struct bn_tol *tol)
RT_EXPORT int nmg_two_face_fuse (struct face *f1, struct face *f2, const struct bn_tol *tol)
RT_EXPORT int nmg_model_face_fuse (struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_break_all_es_on_v (long *magic_p, struct vertex *v, const struct bn_tol *tol)
RT_EXPORT int nmg_model_break_e_on_v (struct model *m, const struct bn_tol *tol)
RT_EXPORT int nmg_model_fuse (struct model *m, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_sorted_list_insert (struct bu_list *hd, struct nmg_radial *rad)
RT_EXPORT void nmg_radial_verify_pointers (const struct bu_list *hd, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_verify_monotone (const struct bu_list *hd, const struct bn_tol *tol)
RT_EXPORT void nmg_insure_radial_list_is_increasing (struct bu_list *hd, fastf_t amin, fastf_t amax)
RT_EXPORT void nmg_radial_build_list (struct bu_list *hd, struct bu_ptbl *shell_tbl, int existing, struct edgeuse *eu, const vect_t xvec, const vect_t yvec, const vect_t zvec, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_merge_lists (struct bu_list *dest, struct bu_list *src, const struct bn_tol *tol)
RT_EXPORT int nmg_is_crack_outie (const struct edgeuse *eu, const struct bn_tol *tol)
RT_EXPORT struct nmg_radialnmg_find_radial_eu (const struct bu_list *hd, const struct edgeuse *eu)
RT_EXPORT const struct edgeusenmg_find_next_use_of_2e_in_lu (const struct edgeuse *eu, const struct edge *e1, const struct edge *e2)
RT_EXPORT void nmg_radial_mark_cracks (struct bu_list *hd, const struct edge *e1, const struct edge *e2, const struct bn_tol *tol)
RT_EXPORT struct nmg_radialnmg_radial_find_an_original (const struct bu_list *hd, const struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_radial_mark_flips (struct bu_list *hd, const struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_radial_check_parity (const struct bu_list *hd, const struct bu_ptbl *shells, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_implement_decisions (struct bu_list *hd, const struct bn_tol *tol, struct edgeuse *eu1, vect_t xvec, vect_t yvec, vect_t zvec)
RT_EXPORT void nmg_pr_radial (const char *title, const struct nmg_radial *rad)
RT_EXPORT void nmg_pr_radial_list (const struct bu_list *hd, const struct bn_tol *tol)
RT_EXPORT void nmg_do_radial_flips (struct bu_list *hd)
RT_EXPORT void nmg_do_radial_join (struct bu_list *hd, struct edgeuse *eu1ref, vect_t xvec, vect_t yvec, vect_t zvec, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_join_eu_NEW (struct edgeuse *eu1, struct edgeuse *eu2, const struct bn_tol *tol)
RT_EXPORT void nmg_radial_exchange_marked (struct bu_list *hd, const struct bn_tol *tol)
RT_EXPORT void nmg_s_radial_harmonize (struct shell *s, const struct bn_tol *tol)
RT_EXPORT int nmg_eu_radial_check (const struct edgeuse *eu, const struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_s_radial_check (struct shell *s, const struct bn_tol *tol)
RT_EXPORT void nmg_r_radial_check (const struct nmgregion *r, const struct bn_tol *tol)
RT_EXPORT struct edge_g_lsegnmg_pick_best_edge_g (struct edgeuse *eu1, struct edgeuse *eu2, const struct bn_tol *tol)
RT_EXPORT void nmg_visit_vertex (struct vertex *v, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_vertexuse (struct vertexuse *vu, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_edge (struct edge *e, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_edgeuse (struct edgeuse *eu, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_loop (struct loop *l, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_loopuse (struct loopuse *lu, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_face (struct face *f, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_faceuse (struct faceuse *fu, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_shell (struct shell *s, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_region (struct nmgregion *r, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit_model (struct model *model, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT void nmg_visit (const long *magicp, const struct nmg_visit_handlers *htab, genptr_t state)
RT_EXPORT int db5_type_tag_from_major (char **tag, const int major)
RT_EXPORT int db5_type_descrip_from_major (char **descrip, const int major)
RT_EXPORT int db5_type_tag_from_codes (char **tag, const int major, const int minor)
RT_EXPORT int db5_type_descrip_from_codes (char **descrip, const int major, const int minor)
RT_EXPORT int db5_type_codes_from_tag (int *major, int *minor, const char *tag)
RT_EXPORT int db5_type_codes_from_descrip (int *major, int *minor, const char *descrip)
RT_EXPORT size_t db5_type_sizeof_h_binu (const int minor)
RT_EXPORT size_t db5_type_sizeof_n_binu (const int minor)
RT_EXPORT int wdb_create_cmd (Tcl_Interp *interp, struct rt_wdb *wdbp, const char *oname)
RT_EXPORT void wdb_deleteProc (ClientData clientData)
RT_EXPORT int wdb_get_tcl (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_cmd (ClientData clientData, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_init_obj (Tcl_Interp *interp, struct rt_wdb *wdbp, const char *oname)
RT_EXPORT struct db_iwdb_prep_dbip (Tcl_Interp *interp, const char *filename)
RT_EXPORT int wdb_bot_face_sort_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_bot_decimate_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_close_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_reopen_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_match_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_get_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_put_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_adjust_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_form_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_tops_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_rt_gettrees_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_dump_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_dbip_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_ls_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_list_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_lt_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_pathlist_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_pathsum_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_expand_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_kill_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_killall_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_killtree_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_copy_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_move_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_move_all_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_concat_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_dup_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_group_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_remove_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_region_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_comb_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_find_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_which_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_title_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_tree_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_color_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_prcolor_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_tol_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_push_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_whatid_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_keep_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_cat_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_instance_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_observer_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_make_bb_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_make_name_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_units_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_hide_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_unhide_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_attr_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_summary_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_comb_std_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_nmg_collapse_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_nmg_simplify_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_shells_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_xpush_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_showmats_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_copyeval_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_version_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_binary_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_track_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_smooth_bot_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int wdb_importFg4Section_cmd (struct rt_wdb *wdbp, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_set_outputHandler_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_set_transparency_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_observer_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void dgo_deleteProc (ClientData clientData)
RT_EXPORT void dgo_autoview (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp)
RT_EXPORT int dgo_autoview_cmd (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_blast_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_draw_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv, int kind)
RT_EXPORT int dgo_E_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_erase_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_erase_all_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_get_autoview_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_how_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_illum_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_label_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT struct dg_objdgo_open_cmd (char *oname, struct rt_wdb *wdbp)
RT_EXPORT int dgo_overlay_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_report_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_rt_cmd (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_rtabort_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_rtcheck_cmd (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_vdraw_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_who_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void dgo_zap_cmd (struct dg_obj *dgop, Tcl_Interp *interp)
RT_EXPORT int dgo_shaded_mode_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void dgo_color_soltab ()
RT_EXPORT void dgo_drawH_part2 ()
RT_EXPORT void dgo_eraseobjall_callback (struct db_i *dbip, Tcl_Interp *interp, struct directory *dp, int notify)
RT_EXPORT void dgo_eraseobjpath ()
RT_EXPORT void dgo_impending_wdb_close ()
RT_EXPORT int dgo_invent_solid ()
RT_EXPORT void dgo_notify (struct dg_obj *dgop, Tcl_Interp *interp)
RT_EXPORT void dgo_notifyWdb (struct rt_wdb *wdbp, Tcl_Interp *interp)
RT_EXPORT void dgo_zapall ()
RT_EXPORT int dgo_nirt_cmd (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dgo_vnirt_cmd (struct dg_obj *dgop, struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int dg_E_cmd (struct dg_obj *dgop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT struct view_objvo_open_cmd (const char *oname)
RT_EXPORT void vo_center (struct view_obj *vop, Tcl_Interp *interp, point_t center)
RT_EXPORT int vo_center_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void vo_size (struct view_obj *vop, Tcl_Interp *interp, fastf_t size)
RT_EXPORT int vo_size_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_invSize_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void vo_mat_aet (struct view_obj *vop)
RT_EXPORT int vo_zoom (struct view_obj *vop, Tcl_Interp *interp, fastf_t sf)
RT_EXPORT int vo_zoom_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_orientation_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_lookat_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void vo_setview (struct view_obj *vop, Tcl_Interp *interp, vect_t rvec)
RT_EXPORT int vo_setview_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_eye_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_eye_pos_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_pmat_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_perspective_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT void vo_update (struct view_obj *vop, Tcl_Interp *interp, int oflag)
RT_EXPORT int vo_aet_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_rmat_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_model2view_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_pmodel2view_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_view2model_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_pov_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_units_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_base2local_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_local2base_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_rot (struct view_obj *vop, Tcl_Interp *interp, char coord, char origin, mat_t rmat, int(*func)())
RT_EXPORT int vo_rot_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv, int(*func)())
RT_EXPORT int vo_arot_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv, int(*func)())
RT_EXPORT int vo_mrot_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv, int(*func)())
RT_EXPORT int vo_tra (struct view_obj *vop, Tcl_Interp *interp, char coord, vect_t tvec, int(*func)())
RT_EXPORT int vo_tra_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv, int(*func)())
RT_EXPORT int vo_slew (struct view_obj *vop, Tcl_Interp *interp, vect_t svec)
RT_EXPORT int vo_slew_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_observer_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_coord_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_rotate_about_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_keypoint_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_vrot_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv)
RT_EXPORT int vo_sca (struct view_obj *vop, Tcl_Interp *interp, fastf_t sf, int(*func)())
RT_EXPORT int vo_sca_cmd (struct view_obj *vop, Tcl_Interp *interp, int argc, char **argv, int(*func)())
RT_EXPORT int rt_mk_binunif (struct rt_wdb *wdbp, const char *obj_name, const char *file_name, unsigned int minor_type, long max_count)
RT_EXPORT void rt_binunif_free (struct rt_binunif_internal *bip)
RT_EXPORT void rt_binunif_dump (struct rt_binunif_internal *bip)

Variables

RT_EXPORT struct rt_wdb HeadWDB
 head of BRL-CAD database object list
RT_EXPORT struct dg_obj HeadDGObj
 head of drawable geometry object list
RT_EXPORT struct view_obj HeadViewObj
 head of view object list
RT_EXPORT struct resource rt_uniresource
 default. Defined in librt/shoot.c
RT_EXPORT struct rt_g rt_g
RT_EXPORT const struct rt_functab rt_functab []
RT_EXPORT const int rt_nfunctab
RT_EXPORT const int rt_arb_faces [5][24]
RT_EXPORT short earb8 [12][18]
RT_EXPORT short earb7 [12][18]
RT_EXPORT short earb6 [10][18]
RT_EXPORT short earb5 [9][18]
RT_EXPORT short earb4 [5][18]
RT_EXPORT void(* nmg_plot_anim_upcall )()
RT_EXPORT void(* nmg_vlblock_anim_upcall )()
RT_EXPORT void(* nmg_mged_debug_display_hack )()
RT_EXPORT double nmg_eue_dist
RT_EXPORT fastf_t rt_cline_radius
RT_EXPORT int rt_bot_minpieces
RT_EXPORT int rt_bot_tri_per_piece
RT_EXPORT const struct db_tree_state rt_initial_tree_state
RT_EXPORT const char * rt_vlist_cmd_descriptions []
RT_EXPORT const char rt_version []


Detailed Description

All the data structures and manifest constants necessary for interacting with the BRL-CAD LIBRT ray-tracing library.

Note that this header file defines many internal data structures, as well as the library's external (interface) data structures. These are provided for the convenience of applications builders. However, the internal data structures are subject to change in each release.

Author:
Michael John Muuss
Source
The U. S. Army Research Laboratory
Aberdeen Proving Ground, Maryland 21005 USA
Include Sequencing -
        # include "common.h"    /_* Must come before system <> includes *_/
        #ifdef HAVE_STRING_H    /_* OPTIONAL, for strcmp() etc. *_/
        #  include <string.h>
        #else
        #  include <strings.h>
        #endif
        # include <stdio.h>
        # include <math.h>
        # include "machine.h"   /_* For fastf_t definition on this machine *_/
        # include "bu.h"
        # include "vmath.h"     /_* For vect_t definition *_/
        # include "bn.h"
        # include "db.h"                /_* OPTIONAL, precedes raytrace.h when used *_/
        # include "nmg.h"       /_* OPTIONAL, precedes raytrace.h when used *_/
        # include "raytrace.h"
        # include "nurb.h"      /_* OPTIONAL, follows raytrace.h when used *_/

Libraries Used - LIBRT LIBRT_LIBES -lm -lc

Header
/cvsroot/brlcad/brlcad/include/raytrace.h,v 14.45 2006/09/18 05:24:07 lbutler Exp

Definition in file raytrace.h.


Define Documentation

#define REGION_NON_FASTGEN   0
 

Definition at line 594 of file raytrace.h.

Referenced by rt_comb_export4(), rt_comb_export5(), rt_default_multioverlap(), and rt_pr_region().

#define REGION_FASTGEN_PLATE   1
 

Definition at line 595 of file raytrace.h.

Referenced by db_comb_describe(), rt_comb_export4(), rt_comb_export5(), rt_pr_region(), and rt_rebuild_overlaps().

#define REGION_FASTGEN_VOLUME   2
 

Definition at line 596 of file raytrace.h.

Referenced by db_comb_describe(), rt_comb_export4(), and rt_comb_export5().

#define CUT_CUTNODE   1
 

Definition at line 709 of file raytrace.h.

Referenced by rt_cell_n_on_ray(), rt_ct_box(), rt_ct_optim(), rt_ct_release_storage(), rt_cut_one_axis(), rt_find_backing_dist(), rt_shootray(), rt_shootray_bundle(), rt_split_mostly_empty_cells(), rt_tcl_pr_cutter(), and rt_tcl_rt_prep().

#define CUT_BOXNODE   2
 

Definition at line 710 of file raytrace.h.

Referenced by fill_out_bsp(), insert_in_bsp(), remove_from_bsp(), rt_cell_n_on_ray(), rt_ct_box(), rt_ct_measure(), rt_ct_optim(), rt_ct_piececount(), rt_ct_release_storage(), rt_cut_extend(), rt_cut_it(), rt_cut_one_axis(), rt_fr_cut(), rt_plot_cell(), rt_plot_cut(), rt_pr_cut_info(), rt_shootray(), rt_shootray_bundle(), rt_split_mostly_empty_cells(), rt_tcl_pr_cutter(), and rt_tcl_rt_prep().

#define CUT_NUGRIDNODE   3
 

Definition at line 711 of file raytrace.h.

Referenced by rt_advance_to_next_cell(), rt_cell_n_on_ray(), rt_ct_measure(), rt_cut_it(), rt_fr_cut(), rt_nugrid_cut(), rt_plot_cut(), rt_pr_cut_info(), rt_shootray(), rt_shootray_bundle(), and rt_tcl_rt_prep().

#define CUT_MAXIMUM   3
 

Definition at line 712 of file raytrace.h.


Generated on Mon Sep 18 01:25:00 2006 for BRL-CAD by  doxygen 1.4.6