BRL-CAD
#include "common.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <ctype.h>
#include "bnetwork.h"
#include "tcl.h"
#include "bu/cv.h"
#include "vmath.h"
#include "db.h"
#include "nmg.h"
#include "rtgeom.h"
#include "raytrace.h"
#include "bot.h"
#include "../../librt_private.h"
Include dependency graph for ars.c:

Go to the source code of this file.

Macros

#define TRI_NULL   ((struct tri_specific *)0)
 
#define IJ(ii, jj)   (((i+(ii))*(arip->pts_per_curve+1))+(j+(jj)))
 
#define ARS_PT(ii, jj)   (&arip->curves[i+(ii)][(j+(jj))*ELEMENTS_PER_VECT])
 
#define FIND_IJ(a, b)
 
#define ASSOC_GEOM(corn, a, b)
 
#define RT_ARS_MAXHITS   128 /* # surfaces hit, must be even */
 

Functions

int rt_bot_prep (struct soltab *stp, struct rt_db_internal *ip, struct rt_i *rtip)
 
void rt_bot_ifree (struct rt_db_internal *ip)
 
void rt_ars_free (register struct soltab *stp)
 
int rt_ars_class (const struct soltab *stp, const vect_t min, const vect_t max, const struct bn_tol *tol)
 
HIDDEN fastf_tars_rd_curve (union record *rp, int npts, int flip)
 
int rt_ars_import4 (struct rt_db_internal *ip, const struct bu_external *ep, const fastf_t *mat, const struct db_i *dbip)
 
int rt_ars_export4 (struct bu_external *ep, const struct rt_db_internal *ip, double local2mm, const struct db_i *dbip)
 
int rt_ars_import5 (struct rt_db_internal *ip, const struct bu_external *ep, const fastf_t *mat, const struct db_i *dbip)
 
int rt_ars_export5 (struct bu_external *ep, const struct rt_db_internal *ip, double local2mm, const struct db_i *dbip)
 
int rt_ars_describe (struct bu_vls *str, const struct rt_db_internal *ip, int verbose, double mm2local)
 
void rt_ars_ifree (struct rt_db_internal *ip)
 
int rt_ars_tess (struct nmgregion **r, struct model *m, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol)
 
int rt_ars_bbox (struct rt_db_internal *ip, point_t *min, point_t *max, const struct bn_tol *tol)
 
int rt_ars_prep (struct soltab *stp, struct rt_db_internal *ip, struct rt_i *rtip)
 
void rt_ars_print (register const struct soltab *stp)
 
int rt_ars_shot (struct soltab *stp, register struct xray *rp, struct application *ap, struct seg *seghead)
 
void rt_hitsort (register struct hit *h, register int nh)
 
void rt_ars_norm (register struct hit *hitp, struct soltab *stp, register struct xray *rp)
 
void rt_ars_curve (register struct curvature *cvp, register struct hit *hitp, struct soltab *stp)
 
void rt_ars_uv (struct application *ap, struct soltab *stp, register struct hit *hitp, register struct uvcoord *uvp)
 
int rt_ars_plot (struct bu_list *vhead, struct rt_db_internal *ip, const struct rt_tess_tol *ttol, const struct bn_tol *tol, const struct rt_view_info *info)
 
int rt_ars_get (struct bu_vls *logstr, const struct rt_db_internal *intern, const char *attr)
 
int rt_ars_adjust (struct bu_vls *logstr, struct rt_db_internal *intern, int argc, const char **argv)
 
int rt_ars_params (struct pc_pc_set *ps, const struct rt_db_internal *ip)
 

Detailed Description

Intersect a ray with an ARS (Arbitrary faceted solid).

Definition in file ars.c.

Macro Definition Documentation

#define RT_ARS_MAXHITS   128 /* # surfaces hit, must be even */

Referenced by rt_ars_shot().