Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Lface Class Reference

#include <lface.H>

Inheritance diagram for Lface:

Inheritance graph
[legend]
Collaboration diagram for Lface:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { SUBDIV_ALLOCATED_BIT = Bface::NEXT_AVAILABLE_BIT, NEXT_AVAILABLE_BIT }

Public Member Functions

 Lface (Lvert *u, Lvert *v, Lvert *w, Ledge *e, Ledge *f, Ledge *g)
virtual ~Lface ()
LMESHlmesh () const
Lvertlv (int k) const
Ledgele (int k) const
Lfaceparent () const
void set_parent (Lface *f)
Lfaceparent (int rel_level)
Lfacecontrol_face () const
Lfaceparent_bc (CWvec &bc, mlib::Wvec &ret) const
Lfaceparent_bc (Wvec &bc) const
Lfacechild_bc (CWvec &bc, mlib::Wvec &ret) const
Lfacechild_bc (Wvec &bc) const
Lfacebc_to_level (int level, CWvec &bc, mlib::Wvec &ret) const
Lfacebc_to_level (int level, Wvec &bc) const
Lfacebc_to_edit_level (Wvec &bc) const
bool subdiv_dirty () const
void allocate_subdiv_elements ()
void set_subdiv_elements ()
void delete_subdiv_elements ()
Ledgesubdiv_edge1 () const
Ledgesubdiv_edge2 () const
Ledgesubdiv_edge3 () const
Lfacesubdiv_face_center () const
Lfacesubdiv_face1 () const
Lfacesubdiv_face2 () const
Lfacesubdiv_face3 () const
void append_subdiv_faces (int lev, ARRAY< Bface * > &faces)
virtual void color_changed ()
virtual void make_primary ()
virtual void make_secondary ()
virtual void set_layer (ushort l)
virtual int detach ()
virtual void reverse ()
Bvertv1 () const
Bvertv2 () const
Bvertv3 () const
Bvertv (int i) const
Bedgee1 () const
Bedgee2 () const
Bedgee3 () const
Bedgee (int i) const
CWvecnorm () const
CWvecvert_normal (CBvert *v, Wvec &n) const
Wvec vert_normal (CBvert *v) const
int front_facing () const
bool zx_mark () const
bool zx_query () const
Patchpatch () const
void orient_strip (Bvert *a)
Bvertorient_strip () const
int vindex (CBvert *v) const
bool contains (CBvert *v) const
bool contains (CBedge *e) const
bool contains (CBsimplex *s) const
bool contains (CWpt &pt, double threshold=0) const
Bvertother_vertex (CBvert *u, CBvert *v) const
Bvertother_vertex (CBedge *e) const
Bvertnext_vert_ccw (CBvert *u) const
Bvertleading_vert_ccw (CBedge *e) const
Bedgenext_edge_ccw (CBedge *u) const
Bedgeedge_from_vert (CBvert *u) const
Bedgeedge_before_vert (CBvert *u) const
Bfacenext_face_ccw (CBvert *u) const
Bfacenbr (int i) const
Bedgeshared_edge (CBface *f) const
Bedgeopposite_edge (CBvert *a) const
Bfaceopposite_face (CBvert *a) const
Bfacenext_strip_face () const
Bedgeother_edge (CBvert *v, CBedge *e) const
int orientation (CBedge *e) const
bool is_bad () const
bool is_primary () const
bool is_secondary () const
ushort layer () const
double area () const
double volume_el () const
double angle (CBvert *v) const
Wpt centroid () const
NDCZpt ndc_centroid () const
Wplane plane () const
double signed_area (CWpt &a, CWpt &b, CWpt &c) const
double signed_area (CNDCpt &a, CNDCpt &b, CNDCpt &c) const
double ndc_area () const
int num_weak_edges () const
bool is_quad () const
Bedgeweak_edge () const
Bfacequad_partner () const
Bfacequad_rep () const
bool is_quad_rep () const
Bvertquad_vert () const
Bvertquad_opposite_vert (CBvert *v) const
Bedgeopposite_quad_edge (CBedge *e) const
Bfaceother_quad_face (CBedge *e) const
double quad_area () const
double quad_ndc_area () const
Wpt quad_centroid () const
NDCZpt ndc_quad_centroid () const
Wvec quad_norm () const
Wvec qnorm () const
bool get_quad_verts (Bvert *&a, Bvert *&b, Bvert *&c, Bvert *&d) const
bool get_quad_verts (Bvert_list &verts) const
bool get_quad_pts (Wpt &a, Wpt &b, Wpt &c, Wpt &d) const
bool get_quad_edges (Bedge *&ab, Bedge *&bc, Bedge *&cd, Bedge *&da) const
bool get_quad_edges (Bedge_list &edges) const
Wvec quad_tan1 () const
Wvec quad_tan2 () const
double quad_dim1 () const
double quad_dim2 () const
double quad_avg_dim () const
double quad_max_dim () const
double quad_min_dim () const
UVpt quad_bc_to_uv (CWvec &bc) const
Wpt quad_uv2loc (CUVpt &uv) const
UVpttex_coord (int vert_index) const
UVpttex_coord (CBvert *v) const
void set_tex_coords (CUVpt &a, CUVpt &b, CUVpt &c)
UVpttc_array () const
virtual void project_barycentric (CWpt &p, Wvec &ret) const
void project_barycentric_ndc (CNDCpt &p, Wvec &ret) const
virtual void bc2pos (CWvec &bc, Wpt &pos) const
Wpt bc2pos (mlib::CWvec &bc) const
virtual void bc2norm_blend (CWvec &bc, Wvec &vec) const
virtual Bsimplexbc2sim (CWvec &bc) const
Bvertbc2vert (CWvec &bc) const
Bedgebc2edge (CWvec &bc) const
Wvec bc2norm (CWvec &bc) const
virtual bool view_intersect (CNDCpt &, Wpt &, double &, double &, Wvec &n) const
Wpt near_pt (CNDCpt &ndc, Wvec &hit_bc) const
Wpt near_pt (CNDCpt &ndc) const
bool ray_intersect (CWpt &, CWvec &, Wpt &ret, double &depth) const
bool ray_intersect (CWline &ray, Wpt &ret, double &depth) const
bool ray_intersect (CWline &ray, Wvec &bc) const
Wpt plane_intersect (CWline &line) const
Wpt plane_intersect (CNDCpt &ndc) const
Bsimplexfind_intersect_sim (CNDCpt &target, Wpt &hit_pt) const
bool ndc_contains (CNDCpt &p)
Bfaceplane_walk (Bedge *cur_edge, CWplane &plane, Bedge *&next_edge) const
NDCpt nearest_pt_ndc (CNDCpt &p, Wvec &bc, int &is_on_tri) const
NDCpt nearest_pt_ndc (CNDCpt &p, Wvec &bc) const
NDCpt nearest_pt_ndc (CNDCpt &p) const
virtual Wpt nearest_pt (CWpt &p, Wvec &bc, bool &is_on_tri) const
virtual Wpt nearest_pt (mlib::CWpt &p, mlib::Wvec &bc, bool &is_on_simplex) const =0
virtual Wpt nearest_pt (mlib::CWpt &p, mlib::Wvec &bc) const
virtual Wpt nearest_pt (mlib::CWpt &p) const
int redefine (Bvert *v, Bvert *u)
int redefine (Bvert *u, Bvert *nu, Bvert *v, Bvert *nv)
virtual bool redef2 (Bvert *a, Bvert *b)
virtual bool redef2 (Bedge *a, Bedge *b)
bool check () const
virtual void geometry_changed ()
virtual void normal_changed ()
virtual int dim () const
virtual int index () const
virtual Bfaceget_face () const
virtual bool on_face (CBface *f) const
virtual bool on_face (const Bface *f) const =0
virtual Bsimplex_list neighbors () const
bool local_search (Bsimplex *&end, Wvec &final_bc, CWpt &target, Wpt &reached, Bsimplex *repeater=0, int iters=30)
void set_mesh (BMESH *mesh)
BMESHmesh () const
uint key () const
uint flag () const
void clear_flag ()
void set_flag (uchar b=1)
void inc_flag (uint i)
bool is_set (uint b) const
bool is_clear (uint b) const
void clear_bit (uint b)
void set_bit (uint b, int x=1)
bool is_selected () const
SimplexDatafind_data (uint key) const
SimplexDatafind_data (Cstr_ptr &s) const
SimplexDatafind_data (void *key) const
void add_simplex_data (SimplexData *sd)
void rem_simplex_data (SimplexData *sd)
const SimplexDataListdata_list () const
virtual void notify_split (Bsimplex *new_simp)
virtual void notify_xform (CWtransf &xf)
Wptproject_to_simplex (mlib::CWpt &pos, mlib::Wpt &ret)
virtual bool near_point (CNDCpt &p, mlib::Wpt &hit) const
Bsimplexwalk_to_target (CWpt &target, CSimplexFilter &filter=SimplexFilter()) const
Bsimplexwalk_to_target (CWpt &target, Wpt &near_pt, Wvec &near_bc, CSimplexFilter &filter=SimplexFilter()) const
double dist (CWpt &p) const
double dist (CWpt &p, mlib::Wvec &bc) const

Static Public Member Functions

static Bsimplexlookup (uint k)
static void clamp_barycentric (Wvec &bc)

Protected Types

enum  { FLAG_MASK = ((1 << FLAG_BITS) - 1) }

Protected Member Functions

virtual void set_patch (Patch *p)
void set_child_patch (Lface *subface, Patch *&child)
void claim_child (Lface *child, bool center_face=false)
Lfacegen_child_face (Bvert *v1, Bvert *v2, Bvert *v3, Patch *p, LMESH *m, bool center_face=false)
void set_patch_index (int k)
int patch_index () const
Bsimplexndc_walk (CNDCpt &target, CWvec &bc=Wvec(), CNDCpt &nearest=NDCpt(), int is_on_tri=0, bool use_passed_in_params=false) const
void set_normal ()
uint generate_key ()

Static Protected Member Functions

static uint mask (uint b)

Protected Attributes

Lface_parent
Bvert_v1
Bvert_v2
Bvert_v3
Bedge_e1
Bedge_e2
Bedge_e3
Wvec _norm
double _area
Patch_patch
int _patch_index
Bvert_orient
uint _ff_stamp
uint _zx_stamp
UVpt_tc
ushort _layer
uint _key
uint _flag
BMESH_mesh
SimplexDataList_data_list

Static Protected Attributes

static IDtable _table

Friends

class Patch
ostream & operator<< (ostream &os, CBface &f)
STDdstreamoperator<< (STDdstream &d, CBface &f)

Related Functions

(Note that these are not member functions.)

Patchget_patch (CBface *f)
 Returns the Patch of a Bface.
Patchget_patch (CBsimplex *s)
 Returns the Patch of a Bsimplex.
Patchget_ctrl_patch (CBface *f)
 Similar to get_patch(CBface*), but returns the control Patch.
Patchget_ctrl_patch (CBsimplex *s)
 Similar to get_patch(CBsimplex*), but returns the control Patch.

Detailed Description

Definition at line 10 of file lface.H.


Member Enumeration Documentation

anonymous enum
 

Enumerator:
SUBDIV_ALLOCATED_BIT 
NEXT_AVAILABLE_BIT 

Reimplemented from Bface.

Definition at line 13 of file lface.H.

anonymous enum [protected, inherited]
 

Enumerator:
FLAG_MASK 

Definition at line 265 of file bsimplex.H.


Constructor & Destructor Documentation

Lface::Lface Lvert u,
Lvert v,
Lvert w,
Ledge e,
Ledge f,
Ledge g
[inline]
 

Definition at line 20 of file lface.H.

virtual Lface::~Lface  )  [inline, virtual]
 

Definition at line 23 of file lface.H.

References delete_subdiv_elements().


Member Function Documentation

void Bsimplex::add_simplex_data SimplexData sd  )  [inherited]
 

Definition at line 90 of file bsimplex.C.

References Bsimplex::_data_list, ARRAY< T >::add(), Bsimplex::find_data(), and SimplexData::id().

Referenced by SimplexData::set().

void Lface::allocate_subdiv_elements  ) 
 

Definition at line 225 of file lface.C.

References Bsimplex::_data_list, Bface::_patch, Ledge::allocate_subdiv_elements(), LMESH::allocate_subdiv_mesh(), Lvert::allocate_subdiv_vert(), gen_child_face(), Patch::get_child(), Bface::is_quad(), Bsimplex::is_set(), le(), lmesh(), Bvert::lookup_edge(), lv(), SimplexDataList::notify_subdiv_gen(), Bface::other_vertex(), Ledge::push_multi(), Bsimplex::set_bit(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), subdiv_face_center(), LMESH::subdiv_mesh(), Bface::v(), Bedge::v1(), Bedge::v2(), Bedge::WEAK_BIT, and Bface::weak_edge().

Referenced by allocate_child_faces(), get_child(), and UVdata::set_subdiv_uv().

double Bface::angle CBvert v  )  const [inline, inherited]
 

Definition at line 211 of file bface.H.

References Bface::contains(), Bvert::loc(), and Bface::next_vert_ccw().

void Lface::append_subdiv_faces int  lev,
ARRAY< Bface * > &  faces
 

Definition at line 411 of file lface.C.

References err_msg(), get_subdiv_faces(), subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by get_subdiv_faces().

double Bface::area  )  const [inline, inherited]
 

Definition at line 198 of file bface.H.

References Bface::_area, Bsimplex::is_set(), and Bface::VALID_NORMAL_BIT.

Referenced by Bedge::avg_area(), BMESHcurvature_data::compute_corner_areas(), get_area(), Bface::project_barycentric(), Bface::quad_area(), and weighted_vnorm().

Bedge* Bface::bc2edge CWvec bc  )  const [inline, inherited]
 

Definition at line 450 of file bface.H.

References min(), Bface::opposite_edge(), and Bface::v().

Wvec Bface::bc2norm CWvec bc  )  const [inline, inherited]
 

Definition at line 461 of file bface.H.

References Bface::bc2sim(), is_edge(), is_vert(), and Bface::norm().

virtual void Bface::bc2norm_blend CWvec bc,
Wvec vec
const [inline, virtual, inherited]
 

Definition at line 425 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, mlib::Vec3< V >::normalized(), Bface::v1(), Bface::v2(), Bface::v3(), and Bface::vert_normal().

Wpt Bsimplex::bc2pos mlib::CWvec bc  )  const [inline, inherited]
 

Definition at line 146 of file bsimplex.H.

References Bsimplex::bc2pos().

virtual void Bface::bc2pos CWvec bc,
Wpt pos
const [inline, virtual, inherited]
 

Implements Bsimplex.

Definition at line 421 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::loc().

Referenced by ZcrossTexture::draw(), and Bface::nearest_pt().

Bsimplex * Bface::bc2sim CWvec bc  )  const [virtual, inherited]
 

Implements Bsimplex.

Definition at line 443 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Bface::bc2norm(), Bface::local_search(), and Bface::ndc_walk().

Bvert* Bface::bc2vert CWvec bc  )  const [inline, inherited]
 

Definition at line 438 of file bface.H.

References max(), and Bface::v().

Lface* Lface::bc_to_edit_level Wvec bc  )  const [inline]
 

Definition at line 73 of file lface.H.

References Bsimplex::_mesh, bc_to_level(), and BMESH::edit_level().

Lface* Lface::bc_to_level int  level,
Wvec bc
const [inline]
 

Definition at line 68 of file lface.H.

References bc_to_level().

Lface * Lface::bc_to_level int  level,
CWvec bc,
mlib::Wvec ret
const
 

Definition at line 570 of file lface.C.

References CLface, lmesh(), and LMESH::subdiv_level().

Referenced by bc_to_edit_level(), and bc_to_level().

Wpt Bface::centroid  )  const [inline, inherited]
 

Definition at line 219 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::loc().

Referenced by map_centroid().

bool Bface::check  )  const [inherited]
 

Definition at line 713 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::lookup_edge().

Referenced by Bedge::do_swap().

Lface* Lface::child_bc Wvec bc  )  const [inline]
 

Definition at line 58 of file lface.H.

References child_bc().

Lface * Lface::child_bc CWvec bc,
mlib::Wvec ret
const
 

Definition at line 481 of file lface.C.

References err_msg(), subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by child_bc().

void Lface::claim_child Lface child,
bool  center_face = false
[protected]
 

Definition at line 190 of file lface.C.

References Bface::_layer, Bface::is_secondary(), le(), make_secondary(), parent(), set_layer(), Ledge::set_parent(), and set_parent().

Referenced by gen_child_face(), and set_subdiv_elements().

static void Bsimplex::clamp_barycentric Wvec bc  )  [inline, static, inherited]
 

Definition at line 162 of file bsimplex.H.

References max(), and mlib::Vec3< V >::set().

Referenced by Bsimplex::project_to_simplex().

void Bsimplex::clear_bit uint  b  )  [inline, inherited]
 

Definition at line 103 of file bsimplex.H.

References Bsimplex::_flag, and Bsimplex::mask().

Referenced by Ledge::crease_changed(), Bvert::crease_changed(), Bvert::degree_changed(), delete_subdiv_elements(), Ledge::delete_subdiv_elements(), Lvert::delete_subdiv_vert(), MeshGlobal::deselect(), Bedge::faces_changed(), Bface::geometry_changed(), Bface::make_primary(), LMESH::mark_all_dirty(), Lvert::mark_dirty(), Lvert::mask_changed(), Ledge::mask_changed(), Bvert::normal_changed(), Bedge::normal_changed(), LMESH::rem_dirty_vert(), Bsimplex::set_bit(), Lvert::set_corner(), Ledge::set_crease(), Bvert::star_changed(), Ledge::subdiv_color_changed(), Lvert::subdiv_loc_changed(), Ledge::subdiv_loc_changed(), Lvert::subdiv_vert_deleted(), Ledge::subdiv_vert_deleted(), and LMESH::update_subdivision().

void Bsimplex::clear_flag  )  [inline, inherited]
 

Definition at line 92 of file bsimplex.H.

References Bsimplex::_flag, and Bsimplex::FLAG_MASK.

Referenced by Bface_list::clear_edge_flags(), Bvert::clear_flag02(), Bedge::clear_flag02(), Bface_list::clear_vert_flags(), Bedge_list::clear_vert_flags(), BMESH::get_enclosed_verts(), get_parent_faces(), and Bsimplex::set_flag().

void Lface::color_changed  )  [virtual]
 

Definition at line 7 of file lface.C.

References le(), lv(), Ledge::subdiv_color_changed(), and Lvert::subdiv_color_changed().

Referenced by Ledge::color_changed().

bool Bface::contains CWpt pt,
double  threshold = 0
const [inherited]
 

Definition at line 138 of file bface.C.

References mlib::cross(), Bsimplex::dist(), Bvert::loc(), mlib::Vec4::normalized(), Bface::plane(), Bface::v1(), Bface::v2(), and Bface::v3().

bool Bface::contains CBsimplex s  )  const [inline, inherited]
 

Definition at line 96 of file bface.H.

References Bface::contains(), Bedge::dim(), and Bsimplex::dim().

bool Bface::contains CBedge e  )  const [inline, inherited]
 

Definition at line 95 of file bface.H.

References Bface::_e1, Bface::_e2, and Bface::_e3.

bool Bface::contains CBvert v  )  const [inline, inherited]
 

Definition at line 94 of file bface.H.

References Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Bedge::add_multi(), Bedge::add_primary(), Bface::angle(), Bface::contains(), Bedge::demote(), get_other_face(), UVdata::get_uv(), Bedge::is_multi(), Bedge::lookup_face(), mark_pushed_faces(), Bvert::on_face(), Bedge::operator+=(), Bface::orientation(), Bface::other_vertex(), Bedge::promote(), Bface::quad_bc_to_uv(), Bface::quad_opposite_vert(), Bface::redef2(), Bface::redefine(), rewind_cw(), UVdata::set(), UVdata::set_subdiv_uv(), vert_normal(), and weighted_vnorm().

Lface* Lface::control_face  )  const [inline]
 

Definition at line 47 of file lface.H.

References _parent, and control_face().

Referenced by control_face().

const SimplexDataList* Bsimplex::data_list  )  const [inline, inherited]
 

Definition at line 132 of file bsimplex.H.

References Bsimplex::_data_list.

Referenced by num_data().

void Lface::delete_subdiv_elements  ) 
 

Definition at line 16 of file lface.C.

References Bsimplex::clear_bit(), Bsimplex::is_set(), lmesh(), lv(), Lvert::mark_dirty(), LMESH::remove_edge(), LMESH::remove_face(), SUBDIV_ALLOCATED_BIT, subdiv_edge1(), subdiv_edge2(), subdiv_edge3(), subdiv_face1(), subdiv_face2(), subdiv_face3(), subdiv_face_center(), and LMESH::subdiv_mesh().

Referenced by LMESH::delete_subdiv_mesh(), detach(), LMESH::remove_face(), and ~Lface().

int Lface::detach  )  [virtual]
 

Reimplemented from Bface.

Definition at line 75 of file lface.C.

References delete_subdiv_elements(), and Bface::detach().

virtual int Bface::dim  )  const [inline, virtual, inherited]
 

Implements Bsimplex.

Definition at line 586 of file bface.H.

double Bsimplex::dist CWpt p,
mlib::Wvec bc
const [inline, inherited]
 

Definition at line 216 of file bsimplex.H.

References mlib::Point3< P, V >::dist(), and Bsimplex::nearest_pt().

double Bsimplex::dist CWpt p  )  const [inline, inherited]
 

Definition at line 215 of file bsimplex.H.

References mlib::Point3< P, V >::dist(), and Bsimplex::nearest_pt().

Referenced by Bface::contains().

Bedge* Bface::e int  i  )  const [inline, inherited]
 

Definition at line 56 of file bface.H.

References Bface::_e1.

Referenced by Bface_list::clear_edge_flags(), Bface_list::get_edges(), Bface_list::grow_connected(), BMESH::grow_oriented_face_lists(), le(), Bface::local_search(), Bface::nbr(), Bface::ndc_walk(), Bface::next_strip_face(), Bface::opposite_face(), Bface::plane_walk(), Bface::quad_opposite_vert(), UVMapping::recurse(), UVMapping::recurse_wrapping(), BMESH::split_tris(), ZcrossPath::start_sil(), and Bface::vert_normal().

Bedge* Bface::e1  )  const [inline, inherited]
 

Definition at line 53 of file bface.H.

References Bface::_e1.

Referenced by avg_edge_len(), avg_strong_edge_len(), demote(), Bface::get_quad_edges(), parent_bc(), promote(), UVMapping::recurse(), UVMapping::recurse_wrapping(), Bface::redefine(), and UVdata::UVdata().

Bedge* Bface::e2  )  const [inline, inherited]
 

Definition at line 54 of file bface.H.

References Bface::_e2.

Referenced by avg_edge_len(), avg_strong_edge_len(), demote(), Bface::get_quad_edges(), parent_bc(), promote(), UVMapping::recurse(), UVMapping::recurse_wrapping(), Bface::redefine(), and UVdata::UVdata().

Bedge* Bface::e3  )  const [inline, inherited]
 

Definition at line 55 of file bface.H.

References Bface::_e3.

Referenced by avg_edge_len(), avg_strong_edge_len(), demote(), Bface::get_quad_edges(), parent_bc(), promote(), UVMapping::recurse(), UVMapping::recurse_wrapping(), Bface::redefine(), and UVdata::UVdata().

Bedge* Bface::edge_before_vert CBvert u  )  const [inline, inherited]
 

Definition at line 131 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Ledge::get_sub_faces(), Bface::next_face_ccw(), UVdata::set_subdiv_uv(), vert_normal(), and Bface::vert_normal().

Bedge* Bface::edge_from_vert CBvert u  )  const [inline, inherited]
 

Definition at line 128 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by TriStrip::backup_strip(), Bedge::ccw_face(), Ledge::get_sub_faces(), rewind_cw(), UVdata::set_subdiv_uv(), and Bface::vert_normal().

SimplexData* Bsimplex::find_data void *  key  )  const [inline, inherited]
 

Definition at line 123 of file bsimplex.H.

References Bsimplex::find_data().

SimplexData* Bsimplex::find_data Cstr_ptr &  s  )  const [inline, inherited]
 

Definition at line 122 of file bsimplex.H.

References Bsimplex::find_data().

SimplexData* Bsimplex::find_data uint  key  )  const [inline, inherited]
 

Definition at line 118 of file bsimplex.H.

References Bsimplex::_data_list, and SimplexDataList::get_item().

Referenced by Bsimplex::add_simplex_data(), Bsimplex::find_data(), and UVdata::lookup().

Bsimplex * Bface::find_intersect_sim CNDCpt target,
Wpt hit_pt
const [inherited]
 

Definition at line 119 of file bface.C.

References Bsimplex::_mesh, BMESH::inv_xform(), is_edge(), is_face(), is_vert(), and Bface::ndc_walk().

Referenced by IDRefImage::intersect_sim(), and IDRefImage::is_face_visible().

uint Bsimplex::flag  )  const [inline, inherited]
 

Definition at line 91 of file bsimplex.H.

References Bsimplex::_flag, and Bsimplex::FLAG_MASK.

Referenced by UnreachedSimplexFilter::accept(), SimplexFlagFilter::accept(), add_face(), TriStrip::backup_strip(), both_set(), TriStrip::build(), check_partner(), demote(), BMESH::get_components(), Bface_list::get_edges(), BMESH::get_enclosed_verts(), get_parent_faces(), Bface_list::get_verts(), Bface_list::grow_connected(), BMESH::grow_mesh_equivalence_class(), BMESH::grow_oriented_face_lists(), has_unmarked_face(), Bsimplex::inc_flag(), is_claimed(), is_cleared(), is_marked(), mark_pushed_faces(), promote(), screen(), BMESH::split_components(), try_append(), try_get_edge(), try_get_face(), and try_get_nm_edge().

int Bface::front_facing  )  const [inherited]
 

Definition at line 100 of file bface.C.

References Bface::_ff_stamp, Bsimplex::_mesh, Bface::_v1, BMESH::eye_local(), Bface::FRONT_FACING_BIT, Config::get_var_bool(), Bsimplex::is_set(), Bvert::loc(), Bface::norm(), VIEW::peek_cam(), and VIEW::stamp().

Referenced by Bedge::frontfacing_face(), is_good(), and Bedge::is_sil().

Lface * Lface::gen_child_face Bvert v1,
Bvert v2,
Bvert v3,
Patch p,
LMESH m,
bool  center_face = false
[protected]
 

Definition at line 165 of file lface.C.

References BMESH::add_face(), and claim_child().

Referenced by allocate_subdiv_elements().

uint Bsimplex::generate_key  )  [protected, inherited]
 

Definition at line 20 of file bsimplex.C.

References Bsimplex::_key, Bsimplex::_table, err_msg(), and ARRAY< T >::num().

void Bface::geometry_changed  )  [virtual, inherited]
 

Reimplemented from Bsimplex.

Definition at line 65 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_ff_stamp, Bface::_v1, Bface::_v2, Bface::_v3, Bsimplex::clear_bit(), Bsimplex::geometry_changed(), Bedge::normal_changed(), Bvert::normal_changed(), and Bface::VALID_NORMAL_BIT.

Referenced by Bface::Bface(), Bface::make_primary(), Bface::make_secondary(), Bface::redef2(), Bface::redefine(), and Bface::reverse().

virtual Bface* Bface::get_face  )  const [inline, virtual, inherited]
 

Implements Bsimplex.

Definition at line 591 of file bface.H.

bool Bface::get_quad_edges Bedge_list edges  )  const [inherited]
 

Definition at line 1042 of file bface.C.

References ARRAY< T >::clear(), Bface::e1(), Bface::e2(), Bface::e3(), and Bface::get_quad_edges().

bool Bface::get_quad_edges Bedge *&  ab,
Bedge *&  bc,
Bedge *&  cd,
Bedge *&  da
const [inherited]
 

Definition at line 1024 of file bface.C.

References Bface::get_quad_verts(), Bvert::lookup_edge(), Bface::v1(), Bface::v2(), and Bface::v3().

Referenced by Bface::get_quad_edges().

bool Bface::get_quad_pts Wpt a,
Wpt b,
Wpt c,
Wpt d
const [inherited]
 

Definition at line 1011 of file bface.C.

References Bface::get_quad_verts(), Bvert::loc(), Bface::v1(), Bface::v2(), and Bface::v3().

Referenced by Bface::quad_dim1(), Bface::quad_dim2(), Bface::quad_tan1(), and Bface::quad_tan2().

bool Bface::get_quad_verts Bvert_list verts  )  const [inherited]
 

Definition at line 997 of file bface.C.

References ARRAY< T >::clear(), Bface::get_quad_verts(), Bface::v1(), Bface::v2(), and Bface::v3().

bool Bface::get_quad_verts Bvert *&  a,
Bvert *&  b,
Bvert *&  c,
Bvert *&  d
const [inherited]
 

Definition at line 966 of file bface.C.

References Bedge::ccw_face(), Bface::is_quad(), Bface::next_vert_ccw(), Bface::quad_vert(), Bedge::v1(), Bedge::v2(), and Bface::weak_edge().

Referenced by Bface::get_quad_edges(), Bface::get_quad_pts(), UVdata::get_quad_uvs(), Bface::get_quad_verts(), Bface::quad_bc_to_uv(), and Bface::quad_uv2loc().

void Bsimplex::inc_flag uint  i  )  [inline, inherited]
 

Definition at line 96 of file bsimplex.H.

References Bsimplex::flag(), Bsimplex::FLAG_BITS, and Bsimplex::set_flag().

int Bface::index  )  const [virtual, inherited]
 

Implements Bsimplex.

Definition at line 47 of file bface.C.

References Bsimplex::_mesh, BMESH::faces(), and SimplexArray< L, T >::get_index().

Referenced by OBJReaderImpl::add_creases(), Patch::put_faces(), and ZCrossExtractor< ScalarField, Confidence, FaceGenerator >::walk_line().

bool Bface::is_bad  )  const [inline, inherited]
 

Definition at line 180 of file bface.H.

References Bface::BAD_BIT, and Bsimplex::is_set().

bool Bsimplex::is_clear uint  b  )  const [inline, inherited]
 

Definition at line 101 of file bsimplex.H.

References Bsimplex::is_set().

Referenced by BitClearSimplexFilter::accept(), LMESH::add_dirty_vert(), Bface::is_primary(), subdiv_dirty(), Lvert::update_subdivision(), and Ledge::update_subdivision().

bool Bface::is_primary  )  const [inline, inherited]
 

Definition at line 184 of file bface.H.

References Bsimplex::is_clear(), and Bface::SECONDARY_BIT.

Referenced by face_type(), Bedge::fix_multi(), Bedge::is_primary(), Bface::is_secondary(), and make_primary().

bool Bface::is_quad  )  const [inline, inherited]
 

Definition at line 252 of file bface.H.

References Bface::num_weak_edges().

Referenced by BMESH::add_quad(), allocate_subdiv_elements(), avg_face_edge_len(), Bface_list::Bface_list(), check_partner(), MeshGlobal::deselect(), CatmullClarkCalc< Wpt >::fcentroid(), get_area(), Bvert::get_q_nbrs(), get_quad_faces(), Bface::get_quad_verts(), Bface::is_quad_rep(), Bedge::is_sil(), is_tri(), lookup_quad(), map_centroid(), Bedge::num_quads(), Bface::opposite_quad_edge(), Bface::qnorm(), Bvert::qr_centroid(), UVdata::quad_has_uv(), Bface::quad_partner(), Bface::quad_vert(), MeshGlobal::select(), SimpleUVCalc::subdiv_val(), HybridCalc< Wpt >::subdiv_val(), SimpleCalc< UVpt >::subdiv_val(), and Bedge::swap_is_legal().

bool Bface::is_quad_rep  )  const [inline, inherited]
 

Definition at line 272 of file bface.H.

References Bface::is_quad(), and Bface::quad_rep().

bool Bface::is_secondary  )  const [inline, inherited]
 

Definition at line 185 of file bface.H.

References Bface::is_primary().

Referenced by Bedge::add_primary(), Bedge::can_promote(), claim_child(), is_sec(), make_secondary(), Bedge::operator+=(), BMESH::operator=(), and BMESH::put_sec_faces().

bool Bsimplex::is_selected  )  const [inline, inherited]
 

Definition at line 114 of file bsimplex.H.

References Bsimplex::is_set(), and Bsimplex::SELECTED_BIT.

Referenced by SelectedSimplexFilter::accept(), MeshGlobal::deselect(), MeshGlobal::select(), MeshGlobal::toggle_select(), Bedge::~Bedge(), Bface::~Bface(), and Bvert::~Bvert().

bool Bsimplex::is_set uint  b  )  const [inline, inherited]
 

Definition at line 100 of file bsimplex.H.

References Bsimplex::_flag, and Bsimplex::mask().

Referenced by BitSetSimplexFilter::accept(), allocate_subdiv_elements(), Ledge::allocate_subdiv_elements(), Lvert::allocate_subdiv_vert(), Bface::area(), delete_subdiv_elements(), Ledge::delete_subdiv_elements(), Lvert::delete_subdiv_vert(), Lvert::displaced_loc(), Ledge::do_swap(), Bface::front_facing(), Bvert::has_color(), Bface::is_bad(), Bsimplex::is_clear(), Bedge::is_convex(), Bvert::is_crease(), Bedge::is_crease(), Bedge::is_patch_boundary(), Bsimplex::is_selected(), Bvert::is_stressed(), Bedge::is_weak(), make_primary(), make_secondary(), Lvert::mark_dirty(), Lvert::mask_changed(), Bvert::norm(), Bface::norm(), Bvert::order_edges_ccw(), UVMapping::recurse(), UVMapping::recurse_wrapping(), LMESH::rem_dirty_vert(), reverse(), set_layer(), set_subdiv_elements(), Ledge::set_subdiv_elements(), Lvert::set_subdiv_vert(), Lvert::subdiv_mask(), and Ledge::subdiv_mask().

uint Bsimplex::key  )  const [inline, inherited]
 

Definition at line 72 of file bsimplex.H.

References Bsimplex::_key.

Referenced by ColorIDStripCB::edgeCB(), ColorIDStripCB::faceCB(), and ColorIDStripCB::vertCB().

ushort Bface::layer  )  const [inline, inherited]
 

Definition at line 187 of file bface.H.

References Bface::_layer.

Ledge* Lface::le int  k  )  const [inline]
 

Definition at line 28 of file lface.H.

References Bface::e().

Referenced by allocate_subdiv_elements(), claim_child(), color_changed(), subdiv_edge1(), subdiv_edge2(), and subdiv_edge3().

Bvert* Bface::leading_vert_ccw CBedge e  )  const [inline, inherited]
 

Definition at line 119 of file bface.H.

References Bface::next_vert_ccw(), Bedge::v1(), and Bedge::v2().

Referenced by EdgeStrip::build_ccw_boundaries(), and Ledge::get_sub_faces().

LMESH* Lface::lmesh  )  const [inline]
 

Definition at line 26 of file lface.H.

References Bsimplex::mesh().

Referenced by allocate_subdiv_elements(), bc_to_level(), and delete_subdiv_elements().

bool Bface::local_search Bsimplex *&  end,
Wvec final_bc,
CWpt target,
Wpt reached,
Bsimplex repeater = 0,
int  iters = 30
[virtual, inherited]
 

Implements Bsimplex.

Definition at line 457 of file bface.C.

References Bface::bc2sim(), Bface::e(), Bedge::is_border(), is_edge(), is_vert(), Bface::local_search(), Bface::nearest_pt(), ARRAY< T >::num(), and Bedge::other_face().

Referenced by Bface::local_search().

static Bsimplex* Bsimplex::lookup uint  k  )  [inline, static, inherited]
 

Definition at line 73 of file bsimplex.H.

References Bsimplex::_table, and ARRAY< T >::num().

Referenced by VisRefImage::debug(), and IDRefImage::simplex().

Lvert* Lface::lv int  k  )  const [inline]
 

Definition at line 27 of file lface.H.

References Bface::v().

Referenced by allocate_subdiv_elements(), color_changed(), delete_subdiv_elements(), parent_bc(), subdiv_face1(), subdiv_face2(), and subdiv_face3().

void Lface::make_primary  )  [virtual]
 

Reimplemented from Bface.

Definition at line 144 of file lface.C.

References Bface::is_primary(), Bsimplex::is_set(), Bface::make_primary(), push_primary(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by push_primary().

void Lface::make_secondary  )  [virtual]
 

Reimplemented from Bface.

Definition at line 115 of file lface.C.

References Bface::is_secondary(), Bsimplex::is_set(), Bface::make_secondary(), push_secondary(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by claim_child(), and push_secondary().

static uint Bsimplex::mask uint  b  )  [inline, static, protected, inherited]
 

Definition at line 268 of file bsimplex.H.

Referenced by Bsimplex::clear_bit(), Bsimplex::is_set(), and Bsimplex::set_bit().

BMESH* Bsimplex::mesh  )  const [inline, inherited]
 

Definition at line 68 of file bsimplex.H.

References Bsimplex::_mesh.

Referenced by MeshSimplexFilter::accept(), BMESH::add_edge(), BMESH::add_face(), UVMapping::compute_limits(), UVMapping::compute_mapping(), UVMapping::compute_wrapping(), Ledge::delete_subdiv_elements(), Lvert::delete_subdiv_vert(), Bvert::eye_local(), ToonTexCB::faceCB(), XToonStripCB::faceCB(), get_ctrl_face(), get_cur_sub_edges(), get_cur_sub_faces(), get_cur_sub_vert(), VisRefImage::get_edit_face(), BMESH::get_enclosed_verts(), get_lmesh(), get_mesh(), get_parent_face(), get_parent_simplex(), TriStrip::get_strips(), VisRefImage::get_sub_face(), get_subdiv_chain(), BMESH::intersect(), Lvert::lmesh(), lmesh(), Ledge::lmesh(), BMESHray::mesh(), normalized_pix_area(), Bface_list::reachable_faces(), Ledge::rel_level(), LMESH::remove_edge(), LMESH::remove_face(), LMESH::remove_vertex(), MeshGlobal::select(), Lvert::set_subdiv_vert(), BMESH::split_faces(), subdiv_level(), SimpleUVCalc::subdiv_val(), and toggle_crease().

Bface* Bface::nbr int  i  )  const [inline, inherited]
 

Definition at line 139 of file bface.H.

References Bface::e(), and Bedge::other_face().

Referenced by BMESH::grow_oriented_face_lists(), ZcrossPath::start_sil(), and ZCrossExtractor< ScalarField, Confidence, FaceGenerator >::walk_line().

double Bface::ndc_area  )  const [inline, inherited]
 

Definition at line 230 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, Bvert::ndc(), and Bface::signed_area().

Referenced by Bface::quad_ndc_area().

NDCZpt Bface::ndc_centroid  )  const [inline, inherited]
 

Definition at line 220 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::ndc().

bool Bface::ndc_contains CNDCpt p  )  [inline, inherited]
 

Definition at line 519 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::ndc().

NDCZpt Bface::ndc_quad_centroid  )  const [inline, inherited]
 

Definition at line 326 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, Bvert::ndc(), and Bface::quad_vert().

Bsimplex * Bface::ndc_walk CNDCpt target,
CWvec bc = Wvec(),
CNDCpt nearest = NDCpt(),
int  is_on_tri = 0,
bool  use_passed_in_params = false
const [protected, inherited]
 

Definition at line 170 of file bface.C.

References Bface::bc2sim(), Bvert::degree(), mlib::Point2< P, V >::dist_sqrd(), Bface::e(), is_edge(), Bedge::is_sil(), is_vert(), Bface::ndc_walk(), Bface::nearest_pt_ndc(), ARRAY< T >::num(), Bedge::other_face(), and Bface::v().

Referenced by Bface::find_intersect_sim(), and Bface::ndc_walk().

virtual bool Bsimplex::near_point CNDCpt p,
mlib::Wpt hit
const [inline, virtual, inherited]
 

Definition at line 182 of file bsimplex.H.

References Bsimplex::view_intersect().

Wpt Bface::near_pt CNDCpt ndc  )  const [inline, inherited]
 

Definition at line 489 of file bface.H.

References Bface::near_pt().

Wpt Bface::near_pt CNDCpt ndc,
Wvec hit_bc
const [inherited]
 

Definition at line 660 of file bface.C.

References Bsimplex::nearest_pt(), Bface::nearest_pt_ndc(), and Bface::plane_intersect().

Referenced by VisRefImage::get_face_bc(), and Bface::near_pt().

virtual Wpt Bsimplex::nearest_pt mlib::CWpt p  )  const [inline, virtual, inherited]
 

Definition at line 232 of file bsimplex.H.

References Bsimplex::nearest_pt().

virtual Wpt Bsimplex::nearest_pt mlib::CWpt p,
mlib::Wvec bc
const [inline, virtual, inherited]
 

Definition at line 228 of file bsimplex.H.

References Bsimplex::nearest_pt().

virtual Wpt Bsimplex::nearest_pt mlib::CWpt p,
mlib::Wvec bc,
bool is_on_simplex
const [pure virtual, inherited]
 

Implemented in Bedge, and Bvert.

Referenced by Bsimplex::dist(), Bface::near_pt(), Bsimplex::nearest_pt(), and Bsimplex::walk_to_target().

Wpt Bface::nearest_pt CWpt p,
Wvec bc,
bool is_on_tri
const [virtual, inherited]
 

Definition at line 547 of file bface.C.

References Bface::_v1, Bface::_v2, Bface::_v3, Bface::bc2pos(), Bvert::loc(), Bface::project_barycentric(), pt_near_seg(), mlib::Vec3< V >::set(), and snap().

Referenced by Bface::local_search(), and QuadtreeNode::nearest_pt().

NDCpt Bface::nearest_pt_ndc CNDCpt p  )  const [inline, inherited]
 

Definition at line 537 of file bface.H.

References Bface::nearest_pt_ndc().

NDCpt Bface::nearest_pt_ndc CNDCpt p,
Wvec bc
const [inline, inherited]
 

Definition at line 534 of file bface.H.

References Bface::nearest_pt_ndc().

NDCpt Bface::nearest_pt_ndc CNDCpt p,
Wvec bc,
int &  is_on_tri
const [virtual, inherited]
 

Implements Bsimplex.

Definition at line 604 of file bface.C.

References Bface::_v1, Bface::_v2, Bface::_v3, Bvert::ndc(), pt_near_seg_ndc(), mlib::Vec3< V >::set(), signed_area_ndc(), snap(), and Bface::v().

Referenced by Bface::ndc_walk(), Bface::near_pt(), and Bface::nearest_pt_ndc().

Bsimplex_list Bface::neighbors  )  const [virtual, inherited]
 

Implements Bsimplex.

Definition at line 419 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, Bface::_v3, bfa_to_bsa(), and get_other_face().

Bedge* Bface::next_edge_ccw CBedge u  )  const [inline, inherited]
 

Definition at line 125 of file bface.H.

References Bface::_e1, Bface::_e2, and Bface::_e3.

Bface* Bface::next_face_ccw CBvert u  )  const [inline, inherited]
 

Definition at line 134 of file bface.H.

References Bface::edge_before_vert(), and Bedge::other_face().

Bface* Bface::next_strip_face  )  const [inline, inherited]
 

Definition at line 162 of file bface.H.

References Bface::e(), Bedge::is_crossable(), Bface::opposite_edge(), Bface::orient_strip(), and Bedge::other_face().

Referenced by TriStrip::build().

Bvert* Bface::next_vert_ccw CBvert u  )  const [inline, inherited]
 

Definition at line 113 of file bface.H.

References Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Bface::angle(), TriStrip::backup_strip(), TriStrip::build(), EdgeStrip::build_ccw_boundaries(), Bface::get_quad_verts(), Ledge::get_sub_faces(), Bface::leading_vert_ccw(), next_vert_ccw(), and Bface::orientation().

CWvec& Bface::norm  )  const [inline, inherited]
 

Definition at line 59 of file bface.H.

References Bface::_norm, Bsimplex::is_set(), and Bface::VALID_NORMAL_BIT.

Referenced by Bface_list::avg_normal(), Bface::bc2norm(), Bedge::dot(), StripColorCB::faceCB(), IVNormalIterator::faceCB(), StripTexCoordsCB2::faceCB(), FlatShadeStripCB::faceCB(), StripTexCoordsCB3::faceCB(), Bface::front_facing(), BMESH::intersect(), Bedge::is_sil(), Bedge::is_stressed(), Bface_list::max_norm_deviation(), norm_angle(), Bface::plane(), Bface::qnorm(), Bface::quad_norm(), Bedge::set_convex(), Bface::signed_area(), ZcrossPath::start_sil(), Bedge::swapable(), Bface::view_intersect(), Bedge::view_intersect(), and weighted_vnorm().

void Bface::normal_changed  )  [virtual, inherited]
 

Reimplemented from Bsimplex.

Definition at line 56 of file bface.C.

void Bsimplex::notify_split Bsimplex new_simp  )  [virtual, inherited]
 

Reimplemented in Bedge.

Definition at line 39 of file bsimplex.C.

References Bsimplex::_data_list, and SimplexDataList::notify_split().

Referenced by Bedge::notify_split(), BMESH::split_edge(), and BMESH::split_face().

void Bsimplex::notify_xform CWtransf xf  )  [virtual, inherited]
 

Definition at line 52 of file bsimplex.C.

References Bsimplex::_data_list, and SimplexDataList::notify_simplex_xformed().

Referenced by Bvert::transform().

int Bface::num_weak_edges  )  const [inline, inherited]
 

Definition at line 245 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, and Bedge::is_weak().

Referenced by Bface::is_quad().

virtual bool Bsimplex::on_face const Bface f  )  const [pure virtual, inherited]
 

Referenced by IDRefImage::is_face_visible().

virtual bool Bface::on_face CBface f  )  const [inline, virtual, inherited]
 

Definition at line 592 of file bface.H.

Bedge* Bface::opposite_edge CBvert a  )  const [inline, inherited]
 

Definition at line 152 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Bface::bc2edge(), Bvert::get_ccw_edges(), mark_pushed_faces(), Bface::next_strip_face(), Bface::opposite_face(), Ledge::parallel_sub_edge(), and toggle_crease().

Bface* Bface::opposite_face CBvert a  )  const [inline, inherited]
 

Definition at line 158 of file bface.H.

References Bface::e(), Bface::opposite_edge(), and Bedge::other_face().

Referenced by TriStrip::build(), and ZcrossPath::sil_walk_search().

Bedge* Bface::opposite_quad_edge CBedge e  )  const [inline, inherited]
 

Definition at line 289 of file bface.H.

References Bface::is_quad(), Bvert::lookup_edge(), Bface::other_vertex(), Bface::quad_vert(), Bedge::v1(), and Bedge::v2().

Referenced by HybridCalc< Wpt >::subdiv_val().

Bvert* Bface::orient_strip  )  const [inline, inherited]
 

Definition at line 85 of file bface.H.

References Bface::_orient.

Referenced by Bface::next_strip_face().

void Bface::orient_strip Bvert a  )  [inline, inherited]
 

Definition at line 84 of file bface.H.

References Bface::_orient.

Referenced by TriStrip::build().

int Bface::orientation CBedge e  )  const [inline, inherited]
 

Definition at line 173 of file bface.H.

References Bface::contains(), Bface::next_vert_ccw(), Bedge::v1(), and Bedge::v2().

Referenced by Bedge::consistent_orientation(), and Bedge::oriented_ccw().

Bedge* Bface::other_edge CBvert v,
CBedge e
const [inline, inherited]
 

Definition at line 166 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, and Bedge::contains().

Referenced by UVdata::set_subdiv_uv().

Bface* Bface::other_quad_face CBedge e  )  const [inline, inherited]
 

Definition at line 300 of file bface.H.

References Bedge::f1(), Bedge::f2(), and Bedge::other_face().

Bvert* Bface::other_vertex CBedge e  )  const [inline, inherited]
 

Definition at line 110 of file bface.H.

References Bface::other_vertex(), Bedge::v1(), and Bedge::v2().

Bvert* Bface::other_vertex CBvert u,
CBvert v
const [inline, inherited]
 

Definition at line 103 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bface::contains().

Referenced by allocate_subdiv_elements(), TriStrip::backup_strip(), TriStrip::build(), Bedge::do_swap(), Bface::opposite_quad_edge(), Bedge::opposite_vert(), Bface::other_vertex(), Bedge::set_convex(), ZcrossPath::sil_walk_search(), BMESH::split_edge(), HybridCalc< Wpt >::subdiv_val(), and Bedge::swapable().

Lface * Lface::parent int  rel_level  ) 
 

Definition at line 623 of file lface.C.

References parent().

Lface* Lface::parent  )  const [inline]
 

Definition at line 32 of file lface.H.

References _parent.

Referenced by claim_child(), get_parent(), and parent().

Lface* Lface::parent_bc Wvec bc  )  const [inline]
 

Definition at line 55 of file lface.H.

References parent_bc().

Lface * Lface::parent_bc CWvec bc,
mlib::Wvec ret
const
 

Definition at line 529 of file lface.C.

References _parent, c1_to_p, c2_to_p, c3_to_p, cc_to_p, Bface::e1(), Bface::e2(), Bface::e3(), err_msg(), lv(), Lvert::parent(), and Bface::v1().

Referenced by parent_bc().

Patch* Bface::patch  )  const [inline, inherited]
 

Definition at line 80 of file bface.H.

References Bface::_patch.

Referenced by Patch::add(), TriStrip::build(), BMESH::build_sil_strips(), BMESH::build_zcross_strips(), SmoothShadeStripCB::faceCB(), FlatShadeStripCB::faceCB(), UV_attrib::get_attrib(), get_cur_sub_faces(), get_patch(), BMESH::intersect(), Bedge::is_patch_boundary(), Bedge::patch(), Patch::put_faces(), Patch::remove(), BMESH::split_edge(), and BMESH::split_face().

int Bface::patch_index  )  const [inline, protected, inherited]
 

Definition at line 629 of file bface.H.

References Bface::_patch_index.

Referenced by Patch::remove().

Wplane Bface::plane  )  const [inline, inherited]
 

Definition at line 221 of file bface.H.

References Bface::_v1, Bvert::loc(), and Bface::norm().

Referenced by Bface::contains(), and Bface::plane_intersect().

Wpt Bface::plane_intersect CNDCpt ndc  )  const [inline, inherited]
 

Definition at line 514 of file bface.H.

References Bface::plane_intersect().

Wpt Bface::plane_intersect CWline line  )  const [inline, inherited]
 

Definition at line 511 of file bface.H.

References mlib::Plane< PLANE, P, V, L >::intersect(), and Bface::plane().

Referenced by Bface::near_pt(), Bface::plane_intersect(), and BMESH::split_faces().

Bface * Bface::plane_walk Bedge cur_edge,
CWplane plane,
Bedge *&  next_edge
const [inherited]
 

Definition at line 258 of file bface.C.

References Bface::e(), Bedge::other_face(), and Bedge::which_side().

virtual void Bface::project_barycentric CWpt p,
Wvec ret
const [inline, virtual, inherited]
 

Implements Bsimplex.

Definition at line 406 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, Bface::area(), Bvert::loc(), mlib::Vec3< V >::set(), Bface::signed_area(), and Bface::v().

Referenced by Bface::nearest_pt(), Bface::ray_intersect(), BMESH::split_face(), and toggle_crease().

void Bface::project_barycentric_ndc CNDCpt p,
Wvec ret
const [inline, inherited]
 

Definition at line 413 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, Bvert::ndc(), mlib::Vec3< V >::set(), Bface::signed_area(), and Bface::v().

Wpt& Bsimplex::project_to_simplex mlib::CWpt pos,
mlib::Wpt ret
[inline, inherited]
 

Definition at line 152 of file bsimplex.H.

References Bsimplex::bc2pos(), Bsimplex::clamp_barycentric(), and Bsimplex::project_barycentric().

Wvec Bface::qnorm  )  const [inline, inherited]
 

Definition at line 334 of file bface.H.

References Bface::is_quad(), Bface::norm(), and Bface::quad_norm().

Referenced by Bedge::norm().

double Bface::quad_area  )  const [inline, inherited]
 

Definition at line 316 of file bface.H.

References Bface::area(), and Bface::quad_partner().

Referenced by get_area().

double Bface::quad_avg_dim  )  const [inline, inherited]
 

Definition at line 370 of file bface.H.

References Bface::quad_dim1(), and Bface::quad_dim2().

Referenced by avg_face_edge_len().

UVpt Bface::quad_bc_to_uv CWvec bc  )  const [inherited]
 

Definition at line 1105 of file bface.C.

References Bface::contains(), err_msg(), Bface::get_quad_verts(), and Bface::vindex().

Wpt Bface::quad_centroid  )  const [inline, inherited]
 

Definition at line 322 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, Bvert::loc(), and Bface::quad_vert().

Referenced by map_centroid().

double Bface::quad_dim1  )  const [inherited]
 

Definition at line 1083 of file bface.C.

References mlib::Point3< P, V >::dist(), and Bface::get_quad_pts().

Referenced by Bface::quad_avg_dim(), Bface::quad_max_dim(), and Bface::quad_min_dim().

double Bface::quad_dim2  )  const [inherited]
 

Definition at line 1094 of file bface.C.

References mlib::Point3< P, V >::dist(), and Bface::get_quad_pts().

Referenced by Bface::quad_avg_dim(), Bface::quad_max_dim(), and Bface::quad_min_dim().

double Bface::quad_max_dim  )  const [inline, inherited]
 

Definition at line 371 of file bface.H.

References max(), Bface::quad_dim1(), and Bface::quad_dim2().

double Bface::quad_min_dim  )  const [inline, inherited]
 

Definition at line 372 of file bface.H.

References min(), Bface::quad_dim1(), and Bface::quad_dim2().

double Bface::quad_ndc_area  )  const [inline, inherited]
 

Definition at line 319 of file bface.H.

References Bface::ndc_area(), and Bface::quad_partner().

Wvec Bface::quad_norm  )  const [inline, inherited]
 

Definition at line 330 of file bface.H.

References Bface::norm(), mlib::Vec3< V >::normalized(), and Bface::quad_partner().

Referenced by Bface::qnorm(), Bface::quad_tan1(), and Bface::quad_tan2().

Bvert* Bface::quad_opposite_vert CBvert v  )  const [inline, inherited]
 

Definition at line 277 of file bface.H.

References Bface::contains(), Bedge::contains(), Bface::e(), Bedge::opposite_vert(), Bedge::other_vertex(), Bface::quad_partner(), and Bface::weak_edge().

Referenced by Bvert::get_q_nbrs(), and Bvert::qr_centroid().

Bface* Bface::quad_partner  )  const [inline, inherited]
 

Definition at line 261 of file bface.H.

References Bface::is_quad(), Bedge::other_face(), and Bface::weak_edge().

Referenced by Bface_list::Bface_list(), check_partner(), MeshGlobal::deselect(), get_other_face(), Bedge::is_sil(), Bface::quad_area(), Bface::quad_ndc_area(), Bface::quad_norm(), Bface::quad_opposite_vert(), Bface::quad_rep(), MeshGlobal::select(), SimpleUVCalc::subdiv_val(), and SimpleCalc< UVpt >::subdiv_val().

Bface* Bface::quad_rep  )  const [inline, inherited]
 

Definition at line 267 of file bface.H.

References min(), and Bface::quad_partner().

Referenced by BMESH::add_quad(), get_quad_faces(), and Bface::is_quad_rep().

Wvec Bface::quad_tan1  )  const [inherited]
 

Definition at line 1059 of file bface.C.

References Bface::get_quad_pts(), mlib::Vec3< V >::normalized(), mlib::Vec3< V >::orthogonalized(), and Bface::quad_norm().

Wvec Bface::quad_tan2  )  const [inherited]
 

Definition at line 1071 of file bface.C.

References Bface::get_quad_pts(), mlib::Vec3< V >::normalized(), mlib::Vec3< V >::orthogonalized(), and Bface::quad_norm().

Wpt Bface::quad_uv2loc CUVpt uv  )  const [inherited]
 

Definition at line 1154 of file bface.C.

References err_msg(), Bface::get_quad_verts(), Bvert::loc(), and Bface::v().

Bvert* Bface::quad_vert  )  const [inline, inherited]
 

Definition at line 274 of file bface.H.

References Bface::is_quad(), Bedge::opposite_vert(), and Bface::weak_edge().

Referenced by CatmullClarkCalc< Wpt >::fcentroid(), Bface::get_quad_verts(), lookup_quad(), Bface::ndc_quad_centroid(), Bface::opposite_quad_edge(), Bface::quad_centroid(), SimpleUVCalc::subdiv_val(), and SimpleCalc< UVpt >::subdiv_val().

bool Bface::ray_intersect CWline ray,
Wvec bc
const [inline, inherited]
 

Definition at line 501 of file bface.H.

References Bface::project_barycentric(), and Bface::ray_intersect().

bool Bface::ray_intersect CWline ray,
Wpt ret,
double &  depth
const [inline, inherited]
 

Definition at line 497 of file bface.H.

References Bface::ray_intersect().

bool Bface::ray_intersect CWpt ,
CWvec ,
Wpt ret,
double &  depth
const [inherited]
 

Definition at line 277 of file bface.C.

References mlib::cross().

Referenced by Bface::ray_intersect(), and Bface::view_intersect().

bool Bface::redef2 Bedge a,
Bedge b
[virtual, inherited]
 

Definition at line 724 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::contains(), debug, err_adv(), Bface::geometry_changed(), and Config::get_var_bool().

bool Bface::redef2 Bvert a,
Bvert b
[virtual, inherited]
 

Definition at line 760 of file bface.C.

References Bface::_orient, Bface::_patch, Bface::_v1, Bface::_v2, Bface::_v3, Bface::contains(), debug, err_adv(), Bface::geometry_changed(), Config::get_var_bool(), and Patch::triangulation_changed().

int Bface::redefine Bvert u,
Bvert nu,
Bvert v,
Bvert nv
[inherited]
 

Definition at line 862 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_orient, Bface::_patch, Bface::_v1, Bface::_v2, Bface::_v3, Bface::contains(), Bface::e1(), Bface::e2(), Bface::e3(), Bface::geometry_changed(), Bvert::lookup_edge(), lookup_face(), and Patch::triangulation_changed().

int Bface::redefine Bvert v,
Bvert u
[inherited]
 

Definition at line 801 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bface::_orient, Bface::_patch, Bface::_v1, Bface::_v2, Bface::_v3, Bface::contains(), debug, Bface::e1(), Bface::e2(), Bface::e3(), err_adv(), Bface::geometry_changed(), Config::get_var_bool(), Bvert::lookup_edge(), lookup_face(), and Patch::triangulation_changed().

Referenced by BMESH::split_edge(), BMESH::split_face(), and BMESH::try_swap_edge().

void Bsimplex::rem_simplex_data SimplexData sd  )  [inline, inherited]
 

Definition at line 126 of file bsimplex.H.

References Bsimplex::_data_list, and ARRAY< T >::rem().

Referenced by SimplexData::set().

void Lface::reverse  )  [virtual]
 

Reimplemented from Bface.

Definition at line 63 of file lface.C.

References Bsimplex::is_set(), Bface::reverse(), reverse_face(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

void Bsimplex::set_bit uint  b,
int  x = 1
[inline, inherited]
 

Definition at line 104 of file bsimplex.H.

References Bsimplex::_flag, Bsimplex::clear_bit(), and Bsimplex::mask().

Referenced by LMESH::add_dirty_vert(), OBJReaderImpl::add_face(), add_poly(), BMESH::add_quad(), allocate_subdiv_elements(), Ledge::allocate_subdiv_elements(), Lvert::allocate_subdiv_vert(), Ledge::claim_child(), Bvert::color_changed(), Lvert::displaced_loc(), Bface::make_secondary(), BMESH::operator=(), Bvert::order_edges_ccw(), UVMapping::recurse(), UVMapping::recurse_wrapping(), LMESH::remove_vertex(), MeshGlobal::select(), Bvert::set_color(), Bedge::set_convex(), Lvert::set_mask(), Ledge::set_mask(), Bvert::set_norm(), Bvert::set_normal(), Bface::set_normal(), Bedge::set_patch_boundary(), set_subdiv_elements(), Ledge::set_subdiv_elements(), Lvert::set_subdiv_vert(), BMESH::set_weak_edge(), Lvert::update_subdivision(), and Ledge::update_subdivision().

void Lface::set_child_patch Lface subface,
Patch *&  child
[protected]
 

Definition at line 378 of file lface.C.

References Bface::_patch, Patch::add(), Patch::get_child(), and set_patch().

Referenced by set_patch().

void Bsimplex::set_flag uchar  b = 1  )  [inline, inherited]
 

Definition at line 93 of file bsimplex.H.

References Bsimplex::_flag, and Bsimplex::clear_flag().

Referenced by add_face(), claim_face(), Bface_list::get_edges(), BMESH::get_enclosed_verts(), get_parent_faces(), Bface_list::get_verts(), Bface_list::grow_connected(), BMESH::grow_mesh_equivalence_class(), BMESH::grow_oriented_face_lists(), Bsimplex::inc_flag(), BMESH::kill_component(), mark_face(), mark_pushed_faces(), screen(), BMESH::split_components(), try_append(), try_get_edge(), try_get_face(), and try_get_nm_edge().

void Lface::set_layer ushort  l  )  [virtual]
 

Reimplemented from Bface.

Definition at line 90 of file lface.C.

References Bface::_layer, Bsimplex::is_set(), Bface::set_layer(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by claim_child(), and set_layer().

void Bsimplex::set_mesh BMESH mesh  )  [inline, inherited]
 

Definition at line 67 of file bsimplex.H.

References Bsimplex::_mesh.

Referenced by BMESH::add_edge(), BMESH::add_face(), and BMESH::add_vertex().

void Bface::set_normal  )  [inline, protected, inherited]
 

Definition at line 638 of file bface.H.

References Bface::_area, Bface::_norm, Bface::_v1, Bface::_v2, Bface::_v3, mlib::cross(), Bvert::loc(), mlib::Vec3< V >::normalized(), Bsimplex::set_bit(), Bface::signed_area(), and Bface::VALID_NORMAL_BIT.

void Lface::set_parent Lface f  )  [inline]
 

Definition at line 34 of file lface.H.

References _parent.

Referenced by claim_child().

void Lface::set_patch Patch p  )  [protected, virtual]
 

Reimplemented from Bface.

Definition at line 391 of file lface.C.

References set_child_patch(), Bface::set_patch(), subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

Referenced by set_child_patch().

void Bface::set_patch_index int  k  )  [inline, protected, inherited]
 

Definition at line 628 of file bface.H.

References Bface::_patch_index.

Referenced by Patch::add(), and Patch::remove().

void Lface::set_subdiv_elements  ) 
 

Definition at line 352 of file lface.C.

References Bsimplex::_data_list, claim_child(), err_msg(), Bsimplex::is_set(), SimplexDataList::notify_subdiv_gen(), Bsimplex::set_bit(), SUBDIV_ALLOCATED_BIT, subdiv_face1(), subdiv_face2(), subdiv_face3(), and subdiv_face_center().

void Bface::set_tex_coords CUVpt a,
CUVpt b,
CUVpt c
[inline, inherited]
 

Definition at line 398 of file bface.H.

References Bface::tex_coord().

Referenced by outputMesh().

Bedge* Bface::shared_edge CBface f  )  const [inline, inherited]
 

Definition at line 145 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, and Bedge::other_face().

Referenced by ZcrossPath::sil_walk_search().

double Bface::signed_area CNDCpt a,
CNDCpt b,
CNDCpt c
const [inline, inherited]
 

Definition at line 226 of file bface.H.

double Bface::signed_area CWpt a,
CWpt b,
CWpt c
const [inline, inherited]
 

Definition at line 223 of file bface.H.

References mlib::cross(), and Bface::norm().

Referenced by Bface::ndc_area(), Bface::project_barycentric(), Bface::project_barycentric_ndc(), and Bface::set_normal().

bool Lface::subdiv_dirty  )  const [inline]
 

Definition at line 78 of file lface.H.

References Bsimplex::is_clear(), and SUBDIV_ALLOCATED_BIT.

Referenced by allocate_child_faces().

Ledge* Lface::subdiv_edge1  )  const [inline]
 

Definition at line 84 of file lface.H.

References le(), and lookup_edge().

Referenced by delete_subdiv_elements(), subdiv_face2(), and subdiv_face_center().

Ledge* Lface::subdiv_edge2  )  const [inline]
 

Definition at line 88 of file lface.H.

References le(), and lookup_edge().

Referenced by delete_subdiv_elements(), subdiv_face3(), and subdiv_face_center().

Ledge* Lface::subdiv_edge3  )  const [inline]
 

Definition at line 92 of file lface.H.

References le(), and lookup_edge().

Referenced by delete_subdiv_elements(), and subdiv_face1().

Lface* Lface::subdiv_face1  )  const [inline]
 

Definition at line 101 of file lface.H.

References lookup_face(), lv(), and subdiv_edge3().

Referenced by allocate_subdiv_elements(), append_subdiv_faces(), child_bc(), delete_subdiv_elements(), make_primary(), make_secondary(), UVdata::notify_subdiv_gen(), reverse(), set_layer(), set_patch(), and set_subdiv_elements().

Lface* Lface::subdiv_face2  )  const [inline]
 

Definition at line 104 of file lface.H.

References lookup_face(), lv(), and subdiv_edge1().

Referenced by allocate_subdiv_elements(), append_subdiv_faces(), child_bc(), delete_subdiv_elements(), make_primary(), make_secondary(), UVdata::notify_subdiv_gen(), reverse(), set_layer(), set_patch(), and set_subdiv_elements().

Lface* Lface::subdiv_face3  )  const [inline]
 

Definition at line 107 of file lface.H.

References lookup_face(), lv(), and subdiv_edge2().

Referenced by allocate_subdiv_elements(), append_subdiv_faces(), child_bc(), delete_subdiv_elements(), make_primary(), make_secondary(), UVdata::notify_subdiv_gen(), reverse(), set_layer(), set_patch(), and set_subdiv_elements().

Lface* Lface::subdiv_face_center  )  const [inline]
 

Definition at line 98 of file lface.H.

References lookup_face(), subdiv_edge1(), and subdiv_edge2().

Referenced by allocate_subdiv_elements(), append_subdiv_faces(), child_bc(), delete_subdiv_elements(), get_child(), make_primary(), make_secondary(), UVdata::notify_subdiv_gen(), Ledge::parallel_sub_edge(), reverse(), set_layer(), set_patch(), and set_subdiv_elements().

UVpt* Bface::tc_array  )  const [inline, inherited]
 

Definition at line 402 of file bface.H.

References Bface::_tc.

UVpt& Bface::tex_coord CBvert v  )  const [inline, inherited]
 

Definition at line 395 of file bface.H.

References Bface::tex_coord(), and Bface::vindex().

UVpt& Bface::tex_coord int  vert_index  )  const [inline, inherited]
 

Definition at line 389 of file bface.H.

References Bface::_tc.

Referenced by Bface::reverse(), UVdata::set(), Bface::set_tex_coords(), Bface::tex_coord(), and UVdata::uv().

Bvert* Bface::v int  i  )  const [inline, inherited]
 

Definition at line 50 of file bface.H.

References Bface::_v1.

Referenced by ZCrossExtractor< ScalarField, Confidence, FaceGenerator >::add_seg(), allocate_subdiv_elements(), Bface::bc2edge(), Bface::bc2vert(), Bface_list::clear_vert_flags(), BMESHcurvature_data::compute_face_curvatures(), BMESHcurvature_data::compute_face_dcurv(), BMESHcurvature_data::compute_vertex_curvatures(), BMESHcurvature_data::compute_vertex_dcurv(), Bface_list::get_verts(), ZcrossPath::has_sil(), lv(), Bface::ndc_walk(), Bface::nearest_pt_ndc(), outputMesh(), Bface::project_barycentric(), Bface::project_barycentric_ndc(), Bface::quad_uv2loc(), ZcrossPath::start_sil(), toggle_crease(), and write_faces().

Bvert* Bface::v1  )  const [inline, inherited]
 

Definition at line 47 of file bface.H.

References Bface::_v1.

Referenced by Bface::bc2norm_blend(), bface_bbox(), TriStrip::build(), OctreeNode::build_octree(), closest_vert(), compute_edge_vectors(), compute_initial_vertex_coord_sys(), BMESHcurvature_data::compute_vertex_areas(), Bface::contains(), VertAttrib< UVpt, UVvec >::dFd(), draw_face(), CatmullClarkCalc< Wpt >::fcentroid(), BMESH::get_enclosed_verts(), Bface::get_quad_edges(), Bface::get_quad_pts(), Bface::get_quad_verts(), UVdata::get_uvs(), BMESH::operator=(), parent_bc(), BMESH::put_faces(), BMESH::put_sec_faces(), UVdata::set(), BMESH::split_face(), SimpleUVCalc::subdiv_val(), SimpleCalc< UVpt >::subdiv_val(), BarycentricCoord::to_Wpt(), GtexUtil::tri(), GLSphirTexCoordGen::uv_from_vert(), UVdata::UVdata(), and visit().

Bvert* Bface::v2  )  const [inline, inherited]
 

Definition at line 48 of file bface.H.

References Bface::_v2.

Referenced by Bface::bc2norm_blend(), bface_bbox(), OctreeNode::build_octree(), closest_vert(), compute_edge_vectors(), compute_initial_vertex_coord_sys(), BMESHcurvature_data::compute_vertex_areas(), Bface::contains(), VertAttrib< UVpt, UVvec >::dFd(), draw_face(), CatmullClarkCalc< Wpt >::fcentroid(), BMESH::get_enclosed_verts(), Bface::get_quad_edges(), Bface::get_quad_pts(), Bface::get_quad_verts(), UVdata::get_uvs(), BMESH::operator=(), BMESH::put_faces(), BMESH::put_sec_faces(), UVdata::set(), BMESH::split_face(), SimpleUVCalc::subdiv_val(), SimpleCalc< UVpt >::subdiv_val(), BarycentricCoord::to_Wpt(), GtexUtil::tri(), GLSphirTexCoordGen::uv_from_vert(), UVdata::UVdata(), and visit().

Bvert* Bface::v3  )  const [inline, inherited]
 

Definition at line 49 of file bface.H.

References Bface::_v3.

Referenced by Bface::bc2norm_blend(), bface_bbox(), OctreeNode::build_octree(), closest_vert(), compute_edge_vectors(), compute_initial_vertex_coord_sys(), BMESHcurvature_data::compute_vertex_areas(), Bface::contains(), VertAttrib< UVpt, UVvec >::dFd(), draw_face(), CatmullClarkCalc< Wpt >::fcentroid(), BMESH::get_enclosed_verts(), Bface::get_quad_edges(), Bface::get_quad_pts(), Bface::get_quad_verts(), UVdata::get_uvs(), BMESH::operator=(), BMESH::put_faces(), BMESH::put_sec_faces(), UVdata::set(), BMESH::split_face(), SimpleUVCalc::subdiv_val(), SimpleCalc< UVpt >::subdiv_val(), BarycentricCoord::to_Wpt(), GtexUtil::tri(), GLSphirTexCoordGen::uv_from_vert(), UVdata::UVdata(), and visit().

Wvec Bface::vert_normal CBvert v  )  const [inline, inherited]
 

Definition at line 69 of file bface.H.

References Bface::vert_normal().

CWvec & Bface::vert_normal CBvert v,
Wvec n
const [inherited]
 

Definition at line 918 of file bface.C.

References Bvert::degree(), Bface::e(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bedge::is_crease(), Bvert::is_crease(), Bvert::norm(), mlib::Vec3< V >::normalized(), Bedge::other_face(), and weighted_vnorm().

Referenced by Bface::bc2norm_blend(), ToonTexCB::faceCB(), VertNormStripCB::faceCB(), ToonTexCB_1D::faceCB(), SmoothShadeStripCB::faceCB(), MSLDStripCB::faceCB(), LineDrawingGLSLMode::StripCB::faceCB(), LineDrawingVprogFprogNoSSDMode::StripCB::faceCB(), XToonStripCB::faceCB(), CurvatureARBvpARBfpMultiTextureMode::StripCB::faceCB(), ZcrossPath::has_sil(), ZcrossPath::sil_walk_search(), and Bface::vert_normal().

bool Bface::view_intersect CNDCpt ,
Wpt ,
double &  ,
double &  ,
Wvec n
const [virtual, inherited]
 

Implements Bsimplex.

Definition at line 314 of file bface.C.

References Bface::_e1, Bface::_e2, Bface::_e3, Bsimplex::_mesh, mlib::Point3< P, V >::dist(), BMESH::inv_xform(), Bface::norm(), mlib::Vec3< V >::normalized(), Bface::ray_intersect(), swap(), Bedge::view_intersect(), and BMESH::xform().

int Bface::vindex CBvert v  )  const [inline, inherited]
 

Definition at line 89 of file bface.H.

References Bface::_v1, Bface::_v2, and Bface::_v3.

Referenced by Bface::quad_bc_to_uv(), ZcrossPath::sil_walk_search(), and Bface::tex_coord().

double Bface::volume_el  )  const [inline, inherited]
 

Definition at line 203 of file bface.H.

References Bface::_v1, Bface::_v2, Bface::_v3, and Bvert::loc().

Referenced by Bface_list::volume().

Bsimplex* Bsimplex::walk_to_target CWpt target,
Wpt near_pt,
Wvec near_bc,
CSimplexFilter filter = SimplexFilter()
const [inline, inherited]
 

Definition at line 199 of file bsimplex.H.

References Bsimplex::nearest_pt(), and Bsimplex::walk_to_target().

Bsimplex* Bsimplex::walk_to_target CWpt target,
CSimplexFilter filter = SimplexFilter()
const [inherited]
 

Referenced by Bsimplex::walk_to_target().

Bedge* Bface::weak_edge  )  const [inline, inherited]
 

Definition at line 253 of file bface.H.

References Bface::_e1, Bface::_e2, Bface::_e3, and Bedge::is_weak().

Referenced by allocate_subdiv_elements(), Bface::get_quad_verts(), get_quad_weak_edge(), UVdata::quad_has_uv(), Bface::quad_opposite_vert(), Bface::quad_partner(), and Bface::quad_vert().

bool Bface::zx_mark  )  const [inherited]
 

Definition at line 85 of file bface.C.

References Bface::_zx_stamp, and VIEW::stamp().

Referenced by ZcrossPath::has_sil(), and ZcrossPath::sil_walk_search().

bool Bface::zx_query  )  const [inherited]
 

Definition at line 93 of file bface.C.

References Bface::_zx_stamp, VIEW::stamp(), and true.

Referenced by ZcrossPath::has_sil().


Friends And Related Function Documentation

Patch * get_ctrl_patch CBsimplex s  )  [related, inherited]
 

Similar to get_patch(CBsimplex*), but returns the control Patch.

Definition at line 662 of file patch.H.

Patch * get_ctrl_patch CBface f  )  [related, inherited]
 

Similar to get_patch(CBface*), but returns the control Patch.

Definition at line 652 of file patch.H.

Patch * get_patch CBsimplex s  )  [related, inherited]
 

Returns the Patch of a Bsimplex.

Note:
If you know it's actually a Bface, get_patch(CBface*) is faster.

Definition at line 639 of file patch.H.

Patch * get_patch CBface f  )  [related, inherited]
 

Returns the Patch of a Bface.

Definition at line 629 of file patch.H.

STDdstream& operator<< STDdstream d,
CBface f
[friend, inherited]
 

Definition at line 579 of file bface.H.

ostream& operator<< ostream &  os,
CBface f
[friend, inherited]
 

Definition at line 574 of file bface.H.

friend class Patch [friend, inherited]
 

Definition at line 607 of file bface.H.


Member Data Documentation

double Bface::_area [protected, inherited]
 

Definition at line 616 of file bface.H.

Referenced by Bface::area(), and Bface::set_normal().

SimplexDataList* Bsimplex::_data_list [protected, inherited]
 

Definition at line 248 of file bsimplex.H.

Referenced by Bsimplex::add_simplex_data(), allocate_subdiv_elements(), Ledge::allocate_subdiv_elements(), Lvert::allocate_subdiv_vert(), Bsimplex::data_list(), Bsimplex::find_data(), Bsimplex::geometry_changed(), Bsimplex::normal_changed(), Bsimplex::notify_split(), Bsimplex::notify_xform(), Bsimplex::rem_simplex_data(), set_subdiv_elements(), Ledge::set_subdiv_elements(), Lvert::set_subdiv_vert(), Lvert::update_subdivision(), Ledge::update_subdivision(), and Bsimplex::~Bsimplex().

Bedge* Bface::_e1 [protected, inherited]
 

Definition at line 612 of file bface.H.

Referenced by Bface::bc2sim(), Bface::Bface(), Bface::check(), Bface::contains(), Bface::detach(), Bface::e(), Bface::e1(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::geometry_changed(), Bface::neighbors(), Bface::next_edge_ccw(), Bface::num_weak_edges(), Bface::opposite_edge(), Bface::other_edge(), Bface::redef2(), Bface::redefine(), Bface::reverse(), Bface::shared_edge(), Bface::view_intersect(), and Bface::weak_edge().

Bedge* Bface::_e2 [protected, inherited]
 

Definition at line 613 of file bface.H.

Referenced by Bface::bc2sim(), Bface::Bface(), Bface::check(), Bface::contains(), Bface::detach(), Bface::e2(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::geometry_changed(), Bface::neighbors(), Bface::next_edge_ccw(), Bface::num_weak_edges(), Bface::opposite_edge(), Bface::other_edge(), Bface::redef2(), Bface::redefine(), Bface::shared_edge(), Bface::view_intersect(), and Bface::weak_edge().

Bedge* Bface::_e3 [protected, inherited]
 

Definition at line 614 of file bface.H.

Referenced by Bface::bc2sim(), Bface::Bface(), Bface::check(), Bface::contains(), Bface::detach(), Bface::e3(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::geometry_changed(), Bface::neighbors(), Bface::next_edge_ccw(), Bface::num_weak_edges(), Bface::opposite_edge(), Bface::other_edge(), Bface::redef2(), Bface::redefine(), Bface::reverse(), Bface::shared_edge(), Bface::view_intersect(), and Bface::weak_edge().

uint Bface::_ff_stamp [protected, inherited]
 

Definition at line 620 of file bface.H.

Referenced by Bface::front_facing(), and Bface::geometry_changed().

uint Bsimplex::_flag [protected, inherited]
 

Definition at line 246 of file bsimplex.H.

Referenced by Bsimplex::clear_bit(), Bsimplex::clear_flag(), Bsimplex::flag(), Bsimplex::is_set(), Bsimplex::set_bit(), and Bsimplex::set_flag().

uint Bsimplex::_key [protected, inherited]
 

Definition at line 245 of file bsimplex.H.

Referenced by Bsimplex::generate_key(), and Bsimplex::key().

ushort Bface::_layer [protected, inherited]
 

Definition at line 623 of file bface.H.

Referenced by claim_child(), Bface::layer(), set_layer(), and Bface::set_layer().

BMESH* Bsimplex::_mesh [protected, inherited]
 

Definition at line 247 of file bsimplex.H.

Referenced by bc_to_edit_level(), Lvert::cur_subdiv_vert(), Bvert::curv_tensor(), Bvert::dcurv_tensor(), Bvert::diag_curv(), Bface::find_intersect_sim(), Bface::front_facing(), Bvert::index(), Bface::index(), Bedge::index(), Bvert::k1(), Bvert::k2(), Bsimplex::mesh(), Bvert::ndc(), Bvert::pdir1(), Bvert::pdir2(), Bsimplex::set_mesh(), Bvert::view_intersect(), Bface::view_intersect(), Bedge::view_intersect(), Bvert::wloc(), Bvert::wnorm(), Bedge::~Bedge(), Bvert::~Bvert(), Ledge::~Ledge(), and Lvert::~Lvert().

Wvec Bface::_norm [protected, inherited]
 

Definition at line 615 of file bface.H.

Referenced by Bface::norm(), and Bface::set_normal().

Bvert* Bface::_orient [protected, inherited]
 

Definition at line 619 of file bface.H.

Referenced by Bface::orient_strip(), Bface::redef2(), Bface::redefine(), and Bface::reverse().

Lface* Lface::_parent [protected]
 

Definition at line 132 of file lface.H.

Referenced by control_face(), parent(), parent_bc(), and set_parent().

Patch* Bface::_patch [protected, inherited]
 

Definition at line 617 of file bface.H.

Referenced by allocate_subdiv_elements(), Bface::patch(), Bface::redef2(), Bface::redefine(), Bface::reverse(), set_child_patch(), Bface::set_patch(), and Bface::~Bface().

int Bface::_patch_index [protected, inherited]
 

Definition at line 618 of file bface.H.

Referenced by Bface::patch_index(), Bface::set_patch_index(), and Bface::~Bface().

Bsimplex::IDtable Bsimplex::_table [static, protected, inherited]
 

Definition at line 263 of file bsimplex.H.

Referenced by Bsimplex::generate_key(), and Bsimplex::lookup().

UVpt* Bface::_tc [protected, inherited]
 

Definition at line 622 of file bface.H.

Referenced by Bface::reverse(), Bface::tc_array(), and Bface::tex_coord().

Bvert* Bface::_v1 [protected, inherited]
 

Definition at line 609 of file bface.H.

Referenced by Bface::bc2norm_blend(), Bface::bc2pos(), Bface::bc2sim(), Bface::centroid(), Bface::check(), Bface::contains(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::front_facing(), Bface::geometry_changed(), Bface::ndc_area(), Bface::ndc_centroid(), Bface::ndc_contains(), Bface::ndc_quad_centroid(), Bface::nearest_pt(), Bface::nearest_pt_ndc(), Bface::neighbors(), Bface::next_vert_ccw(), Bface::opposite_edge(), Bface::other_vertex(), Bface::plane(), Bface::project_barycentric(), Bface::project_barycentric_ndc(), Bface::quad_centroid(), Bface::redef2(), Bface::redefine(), Bface::set_normal(), Bface::v(), Bface::v1(), Bface::vindex(), and Bface::volume_el().

Bvert* Bface::_v2 [protected, inherited]
 

Definition at line 610 of file bface.H.

Referenced by Bface::bc2norm_blend(), Bface::bc2pos(), Bface::bc2sim(), Bface::centroid(), Bface::check(), Bface::contains(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::geometry_changed(), Bface::ndc_area(), Bface::ndc_centroid(), Bface::ndc_contains(), Bface::ndc_quad_centroid(), Bface::nearest_pt(), Bface::nearest_pt_ndc(), Bface::neighbors(), Bface::next_vert_ccw(), Bface::opposite_edge(), Bface::other_vertex(), Bface::project_barycentric(), Bface::project_barycentric_ndc(), Bface::quad_centroid(), Bface::redef2(), Bface::redefine(), Bface::reverse(), Bface::set_normal(), Bface::v2(), Bface::vindex(), and Bface::volume_el().

Bvert* Bface::_v3 [protected, inherited]
 

Definition at line 611 of file bface.H.

Referenced by Bface::bc2norm_blend(), Bface::bc2pos(), Bface::bc2sim(), Bface::centroid(), Bface::check(), Bface::contains(), Bface::edge_before_vert(), Bface::edge_from_vert(), Bface::geometry_changed(), Bface::ndc_area(), Bface::ndc_centroid(), Bface::ndc_contains(), Bface::ndc_quad_centroid(), Bface::nearest_pt(), Bface::nearest_pt_ndc(), Bface::neighbors(), Bface::next_vert_ccw(), Bface::opposite_edge(), Bface::other_vertex(), Bface::project_barycentric(), Bface::project_barycentric_ndc(), Bface::quad_centroid(), Bface::redef2(), Bface::redefine(), Bface::reverse(), Bface::set_normal(), Bface::v3(), Bface::vindex(), and Bface::volume_el().

uint Bface::_zx_stamp [protected, inherited]
 

Definition at line 621 of file bface.H.

Referenced by Bface::zx_mark(), and Bface::zx_query().


The documentation for this class was generated from the following files:
Generated on Mon Sep 18 11:46:23 2006 for jot by  doxygen 1.4.4