nmg_mesh.c File Reference

#include "common.h"
#include <stdio.h>
#include <math.h>
#include "machine.h"
#include "vmath.h"
#include "nmg.h"
#include "raytrace.h"

Include dependency graph for nmg_mesh.c:

Go to the source code of this file.

Functions

int nmg_is_angle_in_wedge (double a, double b, double t)
edge_g_lsegnmg_pick_best_edge_g (struct edgeuse *eu1, struct edgeuse *eu2, const struct bn_tol *tol)
void nmg_radial_join_eu (struct edgeuse *eu1, struct edgeuse *eu2, const struct bn_tol *tol)
int nmg_mesh_two_faces (register struct faceuse *fu1, register struct faceuse *fu2, const struct bn_tol *tol)
void nmg_mesh_faces (struct faceuse *fu1, struct faceuse *fu2, const struct bn_tol *tol)
int nmg_mesh_face_shell (struct faceuse *fu1, struct shell *s, const struct bn_tol *tol)
int nmg_mesh_shell_shell (struct shell *s1, struct shell *s2, const struct bn_tol *tol)


Detailed Description

Meshing routines for n-Manifold Geometry. This stuff is destined to be absorbed into nmg_fuse.c. "meshing" here refers to the sorting of faceuses around an edge as two edges sharing the same end points (vertex structs) are fused.

Authors - Lee A. Butler Michael John Muuss

Source - SECAD/VLD Computing Consortium, Bldg 394 The U. S. Army Ballistic Research Laboratory Aberdeen Proving Ground, Maryland 21005-5066

Definition in file nmg_mesh.c.


Function Documentation

int nmg_is_angle_in_wedge double  a,
double  b,
double  t
 

N M G _ I S _ A N G L E _ I N _ W E D G E

Determine if T lies within angle AB, such that A < T < B. The angle B is expected to be "more ccw" than A. Because of the wrap from 2pi to 0, B may have a smaller numeric value.

Returns - -2 t is equal to a -1 t is equal to b 0 t is outside angle ab 1 t is inside angle ab

Definition at line 70 of file nmg_mesh.c.

References bn_twopi, and NEAR_ZERO.

Referenced by nmg_radial_join_eu().

int nmg_mesh_two_faces register struct faceuse fu1,
register struct faceuse fu2,
const struct bn_tol tol
 

N M G _ M E S H _ T W O _ F A C E S

Actuall do the work of meshing two faces. The two fu arguments may be the same, which causes the face to be meshed against itself.

The return is the number of edges meshed.

Definition at line 503 of file nmg_mesh.c.

References BN_CK_TOL, BU_LIST_FIRST_MAGIC, BU_LIST_FOR, bu_log(), vertex_g::coord, DEBUG_MESH, loopuse::down_hd, edgeuse::e_p, edgeuse::eumate_p, NMG_CK_EDGE, NMG_CK_EDGEUSE, NMG_CK_FACEUSE, NMG_CK_LOOPUSE, NMG_CK_VERTEX, NMG_EDGEUSE_MAGIC, nmg_radial_join_eu(), V3ARGS, vertexuse::v_p, vertex::vg_p, and edgeuse::vu_p.

Here is the call graph for this function:


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