BRL-CAD

Routines for working with NMG Regions. More...

Collaboration diagram for Region:

Files

file  region.h
 

Macros

#define NMG_CK_REGION(_p)   NMG_CKMAG(_p, NMG_REGION_MAGIC, "region")
 
#define NMG_CK_REGION_A(_p)   NMG_CKMAG(_p, NMG_REGION_A_MAGIC, "region_a")
 
#define GET_REGION(p, m)   {NMG_GETSTRUCT(p, nmgregion); NMG_INCR_INDEX(p, m);}
 
#define GET_REGION_A(p, m)   {NMG_GETSTRUCT(p, nmgregion_a); NMG_INCR_INDEX(p, m);}
 
#define FREE_REGION(p)   NMG_FREESTRUCT(p, nmgregion)
 
#define FREE_REGION_A(p)   NMG_FREESTRUCT(p, nmgregion_a)
 

Functions

void nmg_region_a (struct nmgregion *r, const struct bn_tol *tol)
 
void nmg_merge_regions (struct nmgregion *r1, struct nmgregion *r2, const struct bn_tol *tol)
 
struct nmgregionnmg_mrsv (struct model *m)
 
struct shellnmg_msv (struct nmgregion *r_p)
 
int nmg_kr (struct nmgregion *r)
 
fastf_t nmg_region_area (const struct nmgregion *r)
 
int nmg_unbreak_region_edges (uint32_t *magic_p, struct bu_list *vlfree)
 
void nmg_region_v_unique (struct nmgregion *r1, struct bu_list *vlfree, const struct bn_tol *tol)
 
int nmg_region_both_vfuse (struct bu_ptbl *t1, struct bu_ptbl *t2, const struct bn_tol *tol)
 
struct nmgregionnmg_do_bool (struct nmgregion *s1, struct nmgregion *s2, const int oper, struct bu_list *vlfree, const struct bn_tol *tol)
 
int nmg_two_region_vertex_fuse (struct nmgregion *r1, struct nmgregion *r2, const struct bn_tol *tol)
 

Detailed Description

Routines for working with NMG Regions.

Macro Definition Documentation

◆ NMG_CK_REGION

#define NMG_CK_REGION (   _p)    NMG_CKMAG(_p, NMG_REGION_MAGIC, "region")

Definition at line 38 of file region.h.

◆ NMG_CK_REGION_A

#define NMG_CK_REGION_A (   _p)    NMG_CKMAG(_p, NMG_REGION_A_MAGIC, "region_a")

Definition at line 39 of file region.h.

◆ GET_REGION

#define GET_REGION (   p,
 
)    {NMG_GETSTRUCT(p, nmgregion); NMG_INCR_INDEX(p, m);}

Definition at line 41 of file region.h.

◆ GET_REGION_A

#define GET_REGION_A (   p,
 
)    {NMG_GETSTRUCT(p, nmgregion_a); NMG_INCR_INDEX(p, m);}

Definition at line 42 of file region.h.

◆ FREE_REGION

#define FREE_REGION (   p)    NMG_FREESTRUCT(p, nmgregion)

Definition at line 44 of file region.h.

◆ FREE_REGION_A

#define FREE_REGION_A (   p)    NMG_FREESTRUCT(p, nmgregion_a)

Definition at line 45 of file region.h.

Function Documentation

◆ nmg_region_a()

void nmg_region_a ( struct nmgregion r,
const struct bn_tol tol 
)

◆ nmg_merge_regions()

void nmg_merge_regions ( struct nmgregion r1,
struct nmgregion r2,
const struct bn_tol tol 
)

◆ nmg_mrsv()

struct nmgregion * nmg_mrsv ( struct model m)

◆ nmg_msv()

struct shell * nmg_msv ( struct nmgregion r_p)

◆ nmg_kr()

int nmg_kr ( struct nmgregion r)

◆ nmg_region_area()

fastf_t nmg_region_area ( const struct nmgregion r)

◆ nmg_unbreak_region_edges()

int nmg_unbreak_region_edges ( uint32_t *  magic_p,
struct bu_list vlfree 
)

◆ nmg_region_v_unique()

void nmg_region_v_unique ( struct nmgregion r1,
struct bu_list vlfree,
const struct bn_tol tol 
)

◆ nmg_region_both_vfuse()

int nmg_region_both_vfuse ( struct bu_ptbl t1,
struct bu_ptbl t2,
const struct bn_tol tol 
)

◆ nmg_do_bool()

struct nmgregion * nmg_do_bool ( struct nmgregion s1,
struct nmgregion s2,
const int  oper,
struct bu_list vlfree,
const struct bn_tol tol 
)

◆ nmg_two_region_vertex_fuse()

int nmg_two_region_vertex_fuse ( struct nmgregion r1,
struct nmgregion r2,
const struct bn_tol tol 
)