Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

MesherStrip< PrimType > Class Template Reference

#include <mesherStrip.h>

List of all members.

Public Types

typedef PrimType Prim
typedef TYPENAME PrimType::Vertex Vertex
typedef TYPENAME PrimType::DAttrib SAttrib
typedef MesherEdge< PrimType > Edge
typedef plist< SAttribPrims
typedef plist< Edge * > Edges
typedef plist< const Vertex * > Verts

Public Member Functions

 MesherStrip ()
 MesherStrip (const PrimType &prim, int index, const BuilderBucket &bucket)
INLINE MesherStrip (const MesherStrip &copy)
Prim make_prim (const BuilderBucket &bucket)
void measure_sheet (const Edge *edge, int new_row, int &num_prims, int &num_rows, int first_row_id, int this_row_id, int this_row_distance)
void cut_sheet (int first_row_id, int do_mate, const BuilderBucket &bucket)
bool mate (const BuilderBucket &bucket)
bool find_ideal_mate (MesherStrip *&mate, Edge *&common_edge, const BuilderBucket &bucket)
int count_neighbors () const
ostream & show_neighbors (ostream &out) const
INLINE bool is_coplanar_with (const MesherStrip &other, float threshold) const
INLINE float coplanarity (const MesherStrip &other) const
INLINE int type_category () const
const Vertexfind_uncommon_vertex (const Edge *edge) const
const Edgefind_opposite_edge (const Vertex *vertex) const
const Edgefind_opposite_edge (const Edge *edge) const
const Edgefind_adjacent_edge (const Edge *edge) const
INLINE void rotate_forward ()
INLINE void rotate_back ()
void rotate_to_front (const Edge *edge)
void rotate_to_back (const Edge *edge)
bool can_invert () const
bool invert ()
INLINE Edge get_head_edge () const
INLINE Edge get_tail_edge () const
bool is_odd () const
bool would_reverse_tail (BuilderPrimType wantType) const
void convert_to_type (BuilderPrimType wantType)
void combine_edges (MesherStrip< PrimType > &other, int removeSides)
void remove_all_edges ()
INLINE bool operator== (const MesherStrip &other) const
INLINE bool operator!= (const MesherStrip &other) const
bool pick_mate (const MesherStrip &a_strip, const MesherStrip &b_strip, const Edge &a_edge, const Edge &b_edge, const BuilderBucket &bucket) const
bool pick_sheet_mate (const MesherStrip &a_strip, const MesherStrip &b_strip) const
ostream & output (ostream &out) const

Static Public Member Functions

bool mate_pieces (Edge *common_edge, MesherStrip &front, MesherStrip &back, const BuilderBucket &bucket)
bool mate_strips (Edge *common_edge, MesherStrip &front, MesherStrip &back, BuilderPrimType type)
bool must_invert (const MesherStrip &front, const MesherStrip &back, bool will_reverse_back, BuilderPrimType type)
bool convex_quad (Edge *common_edge, MesherStrip &front, MesherStrip &back, const BuilderBucket &bucket)

Public Attributes

Prims _prims
Edges _edges
Verts _verts
BuilderPrimType _type
int _index
MesherStripStatus _status
int _planar
LVector3f _plane_normal
float _plane_offset
int _row_id
int _row_distance
int _origin

template<class PrimType>
class MesherStrip< PrimType >


Member Typedef Documentation

template<class PrimType>
typedef MesherEdge<PrimType> MesherStrip< PrimType >::Edge
 

Definition at line 52 of file mesherStrip.h.

template<class PrimType>
typedef plist<Edge *> MesherStrip< PrimType >::Edges
 

Definition at line 122 of file mesherStrip.h.

template<class PrimType>
typedef PrimType MesherStrip< PrimType >::Prim
 

Definition at line 49 of file mesherStrip.h.

template<class PrimType>
typedef plist<SAttrib> MesherStrip< PrimType >::Prims
 

Definition at line 121 of file mesherStrip.h.

template<class PrimType>
typedef TYPENAME PrimType::DAttrib MesherStrip< PrimType >::SAttrib
 

Definition at line 51 of file mesherStrip.h.

template<class PrimType>
typedef TYPENAME PrimType::Vertex MesherStrip< PrimType >::Vertex
 

Definition at line 50 of file mesherStrip.h.

template<class PrimType>
typedef plist<const Vertex *> MesherStrip< PrimType >::Verts
 

Definition at line 123 of file mesherStrip.h.


Constructor & Destructor Documentation

template<class PrimType>
MesherStrip< PrimType >::MesherStrip  )  [inline]
 

Definition at line 54 of file mesherStrip.h.

template<class PrimType>
MesherStrip< PrimType >::MesherStrip const PrimType &  prim,
int  index,
const BuilderBucket bucket
 

template<class PrimType>
INLINE MesherStrip< PrimType >::MesherStrip const MesherStrip< PrimType > &  copy  ) 
 


Member Function Documentation

template<class PrimType>
bool MesherStrip< PrimType >::can_invert  )  const
 

template<class PrimType>
void MesherStrip< PrimType >::combine_edges MesherStrip< PrimType > &  other,
int  removeSides
 

template<class PrimType>
void MesherStrip< PrimType >::convert_to_type BuilderPrimType  wantType  ) 
 

template<class PrimType>
bool MesherStrip< PrimType >::convex_quad Edge common_edge,
MesherStrip< PrimType > &  front,
MesherStrip< PrimType > &  back,
const BuilderBucket bucket
[static]
 

template<class PrimType>
INLINE float MesherStrip< PrimType >::coplanarity const MesherStrip< PrimType > &  other  )  const
 

template<class PrimType>
int MesherStrip< PrimType >::count_neighbors  )  const
 

template<class PrimType>
void MesherStrip< PrimType >::cut_sheet int  first_row_id,
int  do_mate,
const BuilderBucket bucket
 

template<class PrimType>
const Edge* MesherStrip< PrimType >::find_adjacent_edge const Edge edge  )  const
 

template<class PrimType>
bool MesherStrip< PrimType >::find_ideal_mate MesherStrip< PrimType > *&  mate,
Edge *&  common_edge,
const BuilderBucket bucket
 

template<class PrimType>
const Edge* MesherStrip< PrimType >::find_opposite_edge const Edge edge  )  const
 

template<class PrimType>
const Edge* MesherStrip< PrimType >::find_opposite_edge const Vertex vertex  )  const
 

template<class PrimType>
const Vertex* MesherStrip< PrimType >::find_uncommon_vertex const Edge edge  )  const
 

template<class PrimType>
INLINE Edge MesherStrip< PrimType >::get_head_edge  )  const
 

template<class PrimType>
INLINE Edge MesherStrip< PrimType >::get_tail_edge  )  const
 

template<class PrimType>
bool MesherStrip< PrimType >::invert  ) 
 

template<class PrimType>
INLINE bool MesherStrip< PrimType >::is_coplanar_with const MesherStrip< PrimType > &  other,
float  threshold
const
 

template<class PrimType>
bool MesherStrip< PrimType >::is_odd  )  const
 

template<class PrimType>
Prim MesherStrip< PrimType >::make_prim const BuilderBucket bucket  ) 
 

template<class PrimType>
bool MesherStrip< PrimType >::mate const BuilderBucket bucket  ) 
 

template<class PrimType>
bool MesherStrip< PrimType >::mate_pieces Edge common_edge,
MesherStrip< PrimType > &  front,
MesherStrip< PrimType > &  back,
const BuilderBucket bucket
[static]
 

template<class PrimType>
bool MesherStrip< PrimType >::mate_strips Edge common_edge,
MesherStrip< PrimType > &  front,
MesherStrip< PrimType > &  back,
BuilderPrimType  type
[static]
 

template<class PrimType>
void MesherStrip< PrimType >::measure_sheet const Edge edge,
int  new_row,
int &  num_prims,
int &  num_rows,
int  first_row_id,
int  this_row_id,
int  this_row_distance
 

template<class PrimType>
bool MesherStrip< PrimType >::must_invert const MesherStrip< PrimType > &  front,
const MesherStrip< PrimType > &  back,
bool  will_reverse_back,
BuilderPrimType  type
[static]
 

template<class PrimType>
INLINE bool MesherStrip< PrimType >::operator!= const MesherStrip< PrimType > &  other  )  const
 

template<class PrimType>
INLINE bool MesherStrip< PrimType >::operator== const MesherStrip< PrimType > &  other  )  const
 

template<class PrimType>
ostream& MesherStrip< PrimType >::output ostream &  out  )  const
 

Referenced by operator<<().

template<class PrimType>
bool MesherStrip< PrimType >::pick_mate const MesherStrip< PrimType > &  a_strip,
const MesherStrip< PrimType > &  b_strip,
const Edge a_edge,
const Edge b_edge,
const BuilderBucket bucket
const
 

template<class PrimType>
bool MesherStrip< PrimType >::pick_sheet_mate const MesherStrip< PrimType > &  a_strip,
const MesherStrip< PrimType > &  b_strip
const
 

template<class PrimType>
void MesherStrip< PrimType >::remove_all_edges  ) 
 

template<class PrimType>
INLINE void MesherStrip< PrimType >::rotate_back  ) 
 

template<class PrimType>
INLINE void MesherStrip< PrimType >::rotate_forward  ) 
 

template<class PrimType>
void MesherStrip< PrimType >::rotate_to_back const Edge edge  ) 
 

template<class PrimType>
void MesherStrip< PrimType >::rotate_to_front const Edge edge  ) 
 

template<class PrimType>
ostream& MesherStrip< PrimType >::show_neighbors ostream &  out  )  const
 

template<class PrimType>
INLINE int MesherStrip< PrimType >::type_category  )  const
 

template<class PrimType>
bool MesherStrip< PrimType >::would_reverse_tail BuilderPrimType  wantType  )  const
 


Member Data Documentation

template<class PrimType>
Edges MesherStrip< PrimType >::_edges
 

Definition at line 126 of file mesherStrip.h.

template<class PrimType>
int MesherStrip< PrimType >::_index
 

Definition at line 130 of file mesherStrip.h.

template<class PrimType>
int MesherStrip< PrimType >::_origin
 

Definition at line 137 of file mesherStrip.h.

template<class PrimType>
int MesherStrip< PrimType >::_planar
 

Definition at line 133 of file mesherStrip.h.

template<class PrimType>
LVector3f MesherStrip< PrimType >::_plane_normal
 

Definition at line 134 of file mesherStrip.h.

template<class PrimType>
float MesherStrip< PrimType >::_plane_offset
 

Definition at line 135 of file mesherStrip.h.

template<class PrimType>
Prims MesherStrip< PrimType >::_prims
 

Definition at line 125 of file mesherStrip.h.

template<class PrimType>
int MesherStrip< PrimType >::_row_distance
 

Definition at line 136 of file mesherStrip.h.

template<class PrimType>
int MesherStrip< PrimType >::_row_id
 

Definition at line 136 of file mesherStrip.h.

template<class PrimType>
MesherStripStatus MesherStrip< PrimType >::_status
 

Definition at line 131 of file mesherStrip.h.

template<class PrimType>
BuilderPrimType MesherStrip< PrimType >::_type
 

Definition at line 129 of file mesherStrip.h.

template<class PrimType>
Verts MesherStrip< PrimType >::_verts
 

Definition at line 127 of file mesherStrip.h.


The documentation for this class was generated from the following file:
Generated on Fri Apr 18 00:12:44 2003 for Panda by doxygen1.3