SurfaceMesh Class Reference

#include <SurfaceMesh.h>

Inheritance diagram for SurfaceMesh:

Mesh List of all members.

Public Types

enum  EdgeType {
  ZAKRYTA = 1, OBRYSOVA = 2, VNITRNI = 4, ODPADOVA = 8,
  NULOVA = 0x10, TELESOVA = 0x20
}

Public Member Functions

 SurfaceMesh (Surface *pS)
virtual ~SurfaceMesh ()
virtual void rotate (const Matrix3 &)
virtual void translate (const Vector3 &)
virtual void transform (const Matrix4 &)
virtual void scale (float, float, float)
virtual void resetActSolid ()
virtual int goToNextSolid ()
virtual void resetActPlane ()
virtual Plane * getActPlane ()
virtual int goToNextPlane ()
virtual void resetActEdge ()
virtual int goToNextEdge ()
virtual Vertex3 getActVert1 (bool)
virtual Vertex3 getActVert2 (bool)
virtual Vertex3 getActVert ()
virtual Vertex3 getActVertNormal1 (bool)
virtual Vertex3 getActVertNormal2 (bool)
virtual Vertex3 getActVertNormal ()
virtual int getActVertID1 (bool)
virtual int getActVertID2 (bool)
virtual int getActVertID ()
virtual int getActPlaneID ()
virtual Vertex3 getActPlaneNormal () const
virtual Vector3 getActPlaneCentroid ()
virtual void resetEdgeWalkInSolid ()
virtual int stepInEdgeWalkInSolid ()
virtual void resetVertWalkInSolid ()
virtual bool stepInVertWalkInSolid ()
virtual int numberOfVertices (void) const
virtual int numberOfEdges (void) const
virtual bool hasOutwardNormals (void) const
virtual void turnInsideOut (void)
virtual double getActPlaneArea ()

Protected Member Functions

void AppendVertex (Solid *S, Vert *V)
void AppendEdge (Solid *S, Edge *E)
void AppendFace (Solid *S, Plane *NP)
void DeleteVertex (Solid *S, Vert *V)
void DeleteEdge (Solid *S, Edge *E)
void DeleteFace (Solid *S, Plane *NP)
void MoveVertex (Solid *S, Solid *SM, Vert *V)
void MoveEdge (Solid *S, Solid *SM, Edge *E)
void MoveFace (Solid *S, Solid *SM, Plane *NP)
Vert * NewVertex (Solid *S, float xp, float yp, float zp)
Edge * NewEdge (Solid *S, Vert *V1p, Vert *V2p, Plane *P1p, Plane *P2p)
Plane * NewPlane (Solid *S, float a1, float b1, float c1, float d1)
void Copy_solid (Solid *Sorigin, Solid *Scopy)
void Delete_solid (Solid **S)
int Paralel_planes (float a, float b, float c, float ar, float br, float cr, int &same_orientation)
void Vertex_Plane_position (struct Solid &S, float ar, float br, float cr, float dr, int &Pozitiv, int &Negativ)
void Orient_Edge (Edge *E, Plane *F, Vert **Vin, Vert **Vout)
Edge * Next_Edge_in_loop (Edge *CE, Vert **Vin, Vert **Vout)
Edge * Previous_Edge_in_loop (Edge *CE, Vert **Vin, Vert **Vout)
void ClasifyEdges (Solid *S)
Vert * MV (float xp, float yp, float zp)
Plane * MF (float a1, float b1, float c1, float d1)
Solid * MVSF (Plane *F, Vert *V)
void MEV (Solid *S, Vert *V1p, Vert *V2p, Edge **E, Plane *F)
void ReplaceEdge (Edge *E1, Edge *E, Edge *E2)
void SEMV (Solid *S, Edge *E1, Vert *V, Edge **E2)
void MEF (Solid *S, Vert *V1p, Vert *V2p, Plane *F1, Plane *F2, Edge **E)
void MEnotF (Solid *S, Vert *V1p, Vert *V2p, Plane *F1, Plane *F2, Edge **E)
Vert * Vertex_of_cut (Vert *V1, Vert *V2)
Plane * This_loop (Edge *E, Vert *V)
void ConnectEdge (Edge *E1, Edge *E, Edge *E2, Plane *P)
void KE (Edge *E, Vert *Vin, Plane *P1, Plane *P2)
void SeparateSolids (Solid **NS, Solid **Odpad)

Protected Attributes

Surface_pSurface
const _Surface_pSurf
unsigned _actVertIndex
int pocet_vrcholu
int pocet_hran
int pocet_rovin
Solid * pSolid
bool outwardNormals
Vert * pActVert
Edge * pActEdge
Plane * pActPlane
Solid * pActSolid

Detailed Description

Definition at line 26 of file SurfaceMesh.h.


Member Enumeration Documentation

enum EdgeType [inherited]
 

Enumerator:
ZAKRYTA 
OBRYSOVA 
VNITRNI 
ODPADOVA 
NULOVA 
TELESOVA 

Definition at line 55 of file Mesh.h.


Constructor & Destructor Documentation

SurfaceMesh Surface pS  )  [inline]
 

Definition at line 33 of file SurfaceMesh.h.

References Mesh::pActPlane.

virtual ~SurfaceMesh  )  [inline, virtual]
 

Definition at line 36 of file SurfaceMesh.h.

References Mesh::pActPlane.


Member Function Documentation

void AppendEdge Solid S,
Edge E
[protected, inherited]
 

Definition at line 34 of file Mesh.cc.

References Mesh::Solid::first_edge, Mesh::Edge::next_edge, and Mesh::Edge::previous_edge.

Referenced by PolygonalMesh::_append_new_edge(), Mesh::Copy_solid(), Mesh::MEF(), Mesh::MEnotF(), Mesh::MEV(), Mesh::MoveEdge(), Mesh::NewEdge(), and Mesh::SEMV().

void AppendFace Solid S,
Plane NP
[protected, inherited]
 

Definition at line 50 of file Mesh.cc.

References Mesh::Solid::first_plane, Mesh::Plane::next_plane, and Mesh::Plane::previous_plane.

Referenced by BoxMesh::BoxMesh(), Mesh::Copy_solid(), BoxMesh::cut(), Mesh::MEF(), Mesh::MoveFace(), Mesh::MVSF(), and Mesh::NewPlane().

void AppendVertex Solid S,
Vert V
[protected, inherited]
 

Definition at line 8 of file Mesh.cc.

References Mesh::Solid::cover, Mesh::Solid::first_vertex, Mesh::Vert::next_vertex, Mesh::Vert::previous_vertex, Mesh::Vert::x, Mesh::MiniMax::xmax, Mesh::MiniMax::xmin, Mesh::Vert::y, Mesh::MiniMax::ymax, Mesh::MiniMax::ymin, Mesh::Vert::z, Mesh::MiniMax::zmax, and Mesh::MiniMax::zmin.

Referenced by BoxMesh::BoxMesh(), Mesh::Copy_solid(), Mesh::MEV(), Mesh::MoveVertex(), Mesh::MVSF(), Mesh::NewVertex(), and Mesh::SEMV().

void ClasifyEdges Solid S  )  [protected, inherited]
 

Definition at line 347 of file Mesh.cc.

References Mesh::Edge::druh_hrany, Mesh::Solid::first_edge, Mesh::Edge::LeftLoop, Mesh::Edge::next_edge, Mesh::OBRYSOVA, Mesh::Edge::RightLoop, Mesh::Plane::skalar, Mesh::VNITRNI, and Mesh::ZAKRYTA.

Referenced by BoxMesh::BoxMesh(), and BoxMesh::cut().

void ConnectEdge Edge E1,
Edge E,
Edge E2,
Plane P
[protected, inherited]
 

Definition at line 635 of file Mesh.cc.

References Mesh::Edge::LeftIn, Mesh::Edge::LeftLoop, Mesh::Edge::LeftOut, Mesh::Edge::RightIn, Mesh::Edge::RightLoop, and Mesh::Edge::RightOut.

Referenced by Mesh::KE().

void Copy_solid Solid Sorigin,
Solid Scopy
[protected, inherited]
 

Definition at line 192 of file Mesh.cc.

References Mesh::Plane::a, Mesh::AppendEdge(), Mesh::AppendFace(), Mesh::AppendVertex(), Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Solid::first_edge, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Edge::LeftIn, Mesh::Edge::LeftLoop, Mesh::Edge::LeftOut, Mesh::NewEdge(), Mesh::NewPlane(), Mesh::NewVertex(), Mesh::Edge::next_edge, Mesh::Plane::next_plane, Mesh::Vert::next_vertex, Mesh::Edge::previous_edge, Mesh::Plane::previous_plane, Mesh::Vert::previous_vertex, Mesh::Edge::RightIn, Mesh::Edge::RightLoop, Mesh::Edge::RightOut, Mesh::Edge::V1, Mesh::Edge::V2, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by PolygonMesh::cut().

void Delete_solid Solid **  S  )  [protected, inherited]
 

Definition at line 237 of file Mesh.cc.

References Mesh::Edge::next_edge, Mesh::Plane::next_plane, and Mesh::Vert::next_vertex.

Referenced by FDH14Mesh::FDH14Mesh().

void DeleteEdge Solid S,
Edge E
[protected, inherited]
 

Definition at line 80 of file Mesh.cc.

References Mesh::Solid::first_edge, Mesh::Edge::next_edge, and Mesh::Edge::previous_edge.

Referenced by PolygonMesh::cut().

void DeleteFace Solid S,
Plane NP
[protected, inherited]
 

Definition at line 95 of file Mesh.cc.

References Mesh::Solid::first_plane, Mesh::Plane::next_plane, and Mesh::Plane::previous_plane.

void DeleteVertex Solid S,
Vert V
[protected, inherited]
 

Definition at line 66 of file Mesh.cc.

References Mesh::Solid::first_vertex, Mesh::Vert::next_vertex, and Mesh::Vert::previous_vertex.

Mesh::Plane * getActPlane  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 32 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurf, Polygon::getFacetNormal(), Polygon::getFXYZ(), and Mesh::pActPlane.

double getActPlaneArea  )  [virtual, inherited]
 

Definition at line 1050 of file Mesh.cc.

References Mesh::getActVert1(), Mesh::getActVert2(), Mesh::goToNextEdge(), MINDOUBLE, Mesh::pActEdge, Mesh::pActPlane, and Mesh::resetActEdge().

Vertex3 getActPlaneCentroid  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 112 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurf, and Polygon::centroid().

virtual int getActPlaneID  )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 65 of file SurfaceMesh.h.

Vertex3 getActPlaneNormal  )  const [virtual]
 

Reimplemented from Mesh.

Definition at line 107 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurf, and Polygon::getFacetNormal().

Vertex3 getActVert  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 85 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurface, and Surface::actVertex().

Vertex3 getActVert1 bool   )  [virtual]
 

Reimplemented from Mesh.

Definition at line 73 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, and _Surface::getVertex().

Vertex3 getActVert2 bool   )  [virtual]
 

Reimplemented from Mesh.

Definition at line 78 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, _Surface::getVertex(), and Polygon::numVertices().

virtual int getActVertID  )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 63 of file SurfaceMesh.h.

virtual int getActVertID1 bool   )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 61 of file SurfaceMesh.h.

virtual int getActVertID2 bool   )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 62 of file SurfaceMesh.h.

Vertex3 getActVertNormal  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 102 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, and _Surface::getVertNormal().

Vertex3 getActVertNormal1 bool   )  [virtual]
 

Reimplemented from Mesh.

Definition at line 90 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, and _Surface::getVertNormal().

Vertex3 getActVertNormal2 bool   )  [virtual]
 

Reimplemented from Mesh.

Definition at line 95 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, _Surface::getVertNormal(), and Polygon::numVertices().

int goToNextEdge  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 63 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, and Polygon::numVertices().

Referenced by SurfaceMesh::stepInEdgeWalkInSolid().

int goToNextPlane  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 52 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurf, SurfaceMesh::_pSurface, and Surface::nextPlane().

Referenced by SurfaceMesh::stepInEdgeWalkInSolid().

virtual int goToNextSolid  )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 44 of file SurfaceMesh.h.

virtual bool hasOutwardNormals void   )  const [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 79 of file SurfaceMesh.h.

void KE Edge E,
Vert Vin,
Plane P1,
Plane P2
[protected, inherited]
 

Definition at line 646 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::ConnectEdge(), Mesh::Edge::LeftIn, Mesh::Edge::LeftOut, Mesh::Edge::RightIn, Mesh::Edge::RightOut, and Mesh::Edge::V1.

Referenced by BoxMesh::cut().

void MEF Solid S,
Vert V1p,
Vert V2p,
Plane F1,
Plane F2,
Edge **  E
[protected, inherited]
 

Definition at line 475 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::AppendEdge(), Mesh::AppendFace(), Mesh::Edge::LeftIn, Mesh::Edge::LeftLoop, Mesh::Edge::LeftOut, Mesh::MEnotF(), Mesh::Next_Edge_in_loop(), Mesh::Orient_Edge(), Mesh::pocet_hran, Mesh::Edge::RightIn, Mesh::Edge::RightLoop, Mesh::Edge::RightOut, Mesh::Edge::V1, and Mesh::Edge::V2.

Referenced by BoxMesh::cut(), and PointMesh::PointMesh().

void MEnotF Solid S,
Vert V1p,
Vert V2p,
Plane F1,
Plane F2,
Edge **  E
[protected, inherited]
 

Definition at line 547 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::AppendEdge(), Mesh::Edge::LeftIn, Mesh::Edge::LeftLoop, Mesh::Edge::LeftOut, Mesh::Next_Edge_in_loop(), Mesh::Orient_Edge(), Mesh::pocet_hran, Mesh::Edge::RightIn, Mesh::Edge::RightLoop, Mesh::Edge::RightOut, Mesh::Edge::V1, and Mesh::Edge::V2.

Referenced by BoxMesh::cut(), and Mesh::MEF().

void MEV Solid S,
Vert V1p,
Vert V2p,
Edge **  E,
Plane F
[protected, inherited]
 

Definition at line 403 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::AppendEdge(), Mesh::AppendVertex(), Mesh::Edge::LeftIn, Mesh::Edge::LeftOut, Mesh::Next_Edge_in_loop(), Mesh::Orient_Edge(), Mesh::pocet_hran, Mesh::Edge::RightIn, Mesh::Edge::RightOut, and Mesh::Edge::V1.

Referenced by PointMesh::PointMesh(), and PolygonMesh::PolygonMesh().

Mesh::Plane * MF float  a1,
float  b1,
float  c1,
float  d1
[protected, inherited]
 

Definition at line 375 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::any_edge, Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Plane::jmeno_roviny, Mesh::pocet_rovin, and Mesh::Plane::skalar.

Referenced by BoxMesh::BoxMesh(), BoxMesh::cut(), PointMesh::PointMesh(), and PolygonMesh::PolygonMesh().

void MoveEdge Solid S,
Solid SM,
Edge E
[protected, inherited]
 

Definition at line 123 of file Mesh.cc.

References Mesh::AppendEdge(), Mesh::Solid::first_edge, Mesh::Edge::next_edge, and Mesh::Edge::previous_edge.

Referenced by Mesh::SeparateSolids().

void MoveFace Solid S,
Solid SM,
Plane NP
[protected, inherited]
 

Definition at line 137 of file Mesh.cc.

References Mesh::AppendFace(), Mesh::Solid::first_plane, Mesh::Plane::next_plane, and Mesh::Plane::previous_plane.

Referenced by Mesh::SeparateSolids().

void MoveVertex Solid S,
Solid SM,
Vert V
[protected, inherited]
 

Definition at line 109 of file Mesh.cc.

References Mesh::AppendVertex(), Mesh::Solid::first_vertex, Mesh::Vert::next_vertex, and Mesh::Vert::previous_vertex.

Referenced by Mesh::SeparateSolids().

Mesh::Vert * MV float  xp,
float  yp,
float  zp
[protected, inherited]
 

Definition at line 365 of file Mesh.cc.

References Mesh::Vert::fxyz, Mesh::Vert::jmeno_vrcholu, Mesh::pocet_vrcholu, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by BoxMesh::BoxMesh(), Mesh::NewVertex(), PointMesh::PointMesh(), PolygonMesh::PolygonMesh(), and Mesh::Vertex_of_cut().

Mesh::Solid * MVSF Plane F,
Vert V
[protected, inherited]
 

Definition at line 387 of file Mesh.cc.

References Mesh::AppendFace(), Mesh::AppendVertex(), Mesh::Solid::first_edge, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Solid::next_solid, Mesh::Solid::previous_solid, and Mesh::Solid::solid_name.

Referenced by BoxMesh::BoxMesh(), PointMesh::PointMesh(), and PolygonMesh::PolygonMesh().

Mesh::Edge * NewEdge Solid S,
Vert V1p,
Vert V2p,
Plane P1p,
Plane P2p
[protected, inherited]
 

Definition at line 158 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::AppendEdge(), Mesh::Edge::druh_hrany, Mesh::Edge::jmeno_hrany, Mesh::Edge::LeftLoop, Mesh::OBRYSOVA, Mesh::pocet_hran, Mesh::Edge::RightLoop, Mesh::Plane::skalar, Mesh::Edge::V1, Mesh::Edge::V2, Mesh::VNITRNI, and Mesh::ZAKRYTA.

Referenced by BoxMesh::BoxMesh(), and Mesh::Copy_solid().

Mesh::Plane * NewPlane Solid S,
float  a1,
float  b1,
float  c1,
float  d1
[protected, inherited]
 

Definition at line 181 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::any_edge, Mesh::AppendFace(), Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Plane::jmeno_roviny, Mesh::pocet_rovin, and Mesh::Plane::skalar.

Referenced by Mesh::Copy_solid().

Mesh::Vert * NewVertex Solid S,
float  xp,
float  yp,
float  zp
[protected, inherited]
 

Definition at line 151 of file Mesh.cc.

References Mesh::AppendVertex(), and Mesh::MV().

Referenced by SphereMesh::_mesh(), Mesh::Copy_solid(), and PolygonalMesh::PolygonalMesh().

Mesh::Edge * Next_Edge_in_loop Edge CE,
Vert **  Vin,
Vert **  Vout
[protected, inherited]
 

Definition at line 304 of file Mesh.cc.

References Mesh::Edge::LeftOut, Mesh::Edge::RightOut, Mesh::Edge::V1, and Mesh::Edge::V2.

Referenced by PolygonalMesh::_connect_edge(), SphereMesh::_mesh(), BoxMesh::cut(), Mesh::goToNextEdge(), Mesh::MEF(), Mesh::MEnotF(), and Mesh::MEV().

int numberOfEdges void   )  const [virtual]
 

Reimplemented from Mesh.

Definition at line 150 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurface, and Surface::numEdges().

int numberOfVertices void   )  const [virtual]
 

Reimplemented from Mesh.

Definition at line 145 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurface, and Surface::numVertices().

void Orient_Edge Edge E,
Plane F,
Vert **  Vin,
Vert **  Vout
[protected, inherited]
 

Definition at line 298 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::Edge::V1, and Mesh::Edge::V2.

Referenced by PolygonalMesh::_connect_edge(), SphereMesh::_mesh(), Mesh::goToNextEdge(), Mesh::MEF(), Mesh::MEnotF(), and Mesh::MEV().

int Paralel_planes float  a,
float  b,
float  c,
float  ar,
float  br,
float  cr,
int &  same_orientation
[protected, inherited]
 

Definition at line 267 of file Mesh.cc.

References eps.

Mesh::Edge * Previous_Edge_in_loop Edge CE,
Vert **  Vin,
Vert **  Vout
[protected, inherited]
 

Definition at line 326 of file Mesh.cc.

References Mesh::Edge::LeftIn, Mesh::Edge::RightIn, Mesh::Edge::V1, and Mesh::Edge::V2.

void ReplaceEdge Edge E1,
Edge E,
Edge E2
[protected, inherited]
 

Definition at line 448 of file Mesh.cc.

References Mesh::Edge::LeftIn, Mesh::Edge::LeftOut, Mesh::Edge::RightIn, and Mesh::Edge::RightOut.

Referenced by Mesh::SEMV().

void resetActEdge  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 58 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex.

void resetActPlane  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 25 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurf, SurfaceMesh::_pSurface, and Surface::firstPlane().

virtual void resetActSolid  )  [inline, virtual]
 

Reimplemented from Mesh.

Definition at line 43 of file SurfaceMesh.h.

void resetEdgeWalkInSolid  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 117 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::_pSurf, SurfaceMesh::_pSurface, and Surface::firstPlane().

void resetVertWalkInSolid  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 135 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurface, and Surface::firstVertex().

void rotate const Matrix3  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 5 of file SurfaceMesh.cc.

void scale float  ,
float  ,
float 
[virtual]
 

Reimplemented from Mesh.

Definition at line 20 of file SurfaceMesh.cc.

void SEMV Solid S,
Edge E1,
Vert V,
Edge **  E2
[protected, inherited]
 

Definition at line 459 of file Mesh.cc.

References Mesh::AppendEdge(), Mesh::AppendVertex(), Mesh::Edge::LeftIn, Mesh::Edge::LeftLoop, Mesh::Edge::LeftOut, Mesh::pocet_hran, Mesh::ReplaceEdge(), Mesh::Edge::RightIn, Mesh::Edge::RightLoop, Mesh::Edge::RightOut, and Mesh::Edge::V2.

Referenced by PolygonMesh::cut(), and BoxMesh::cut().

void SeparateSolids Solid **  NS,
Solid **  Odpad
[protected, inherited]
 

Definition at line 666 of file Mesh.cc.

References Mesh::Edge::druh_hrany, Mesh::Plane::jmeno_roviny, Mesh::Edge::LeftLoop, Mesh::MoveEdge(), Mesh::MoveFace(), Mesh::MoveVertex(), Mesh::Edge::next_edge, Mesh::Plane::next_plane, Mesh::Vert::next_vertex, Mesh::Edge::previous_edge, Mesh::Plane::previous_plane, Mesh::Vert::previous_vertex, Mesh::Edge::RightLoop, Mesh::Solid::solid_name, Mesh::TELESOVA, Mesh::Edge::V1, Mesh::Edge::V2, and Mesh::Vert::valid.

Referenced by BoxMesh::cut().

int stepInEdgeWalkInSolid  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 127 of file SurfaceMesh.cc.

References SurfaceMesh::_actVertIndex, SurfaceMesh::goToNextEdge(), and SurfaceMesh::goToNextPlane().

bool stepInVertWalkInSolid  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 140 of file SurfaceMesh.cc.

References SurfaceMesh::_pSurface, and Surface::nextVertex().

Mesh::Plane * This_loop Edge E,
Vert V
[protected, inherited]
 

Definition at line 630 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::Edge::RightLoop, and Mesh::Edge::V1.

Referenced by BoxMesh::cut().

void transform const Matrix4  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 15 of file SurfaceMesh.cc.

void translate const Vector3  )  [virtual]
 

Reimplemented from Mesh.

Definition at line 10 of file SurfaceMesh.cc.

void turnInsideOut void   )  [virtual]
 

Reimplemented from Mesh.

Definition at line 155 of file SurfaceMesh.cc.

Mesh::Vert * Vertex_of_cut Vert V1,
Vert V2
[protected, inherited]
 

Definition at line 614 of file Mesh.cc.

References Mesh::Vert::fxyz, Mesh::MV(), Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by PolygonMesh::cut(), and BoxMesh::cut().

void Vertex_Plane_position struct Solid S,
float  ar,
float  br,
float  cr,
float  dr,
int &  Pozitiv,
int &  Negativ
[protected, inherited]
 

Definition at line 281 of file Mesh.cc.

References Mesh::Solid::first_vertex, Mesh::Vert::fxyz, Mesh::Vert::next_vertex, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by PolygonMesh::cut(), and BoxMesh::cut().


Member Data Documentation

unsigned _actVertIndex [protected]
 

Definition at line 30 of file SurfaceMesh.h.

Referenced by SurfaceMesh::getActVert1(), SurfaceMesh::getActVert2(), SurfaceMesh::getActVertNormal(), SurfaceMesh::getActVertNormal1(), SurfaceMesh::getActVertNormal2(), SurfaceMesh::goToNextEdge(), SurfaceMesh::resetActEdge(), SurfaceMesh::resetEdgeWalkInSolid(), and SurfaceMesh::stepInEdgeWalkInSolid().

const _Surface* _pSurf [protected]
 

Definition at line 29 of file SurfaceMesh.h.

Referenced by SurfaceMesh::getActPlane(), SurfaceMesh::getActPlaneCentroid(), SurfaceMesh::getActPlaneNormal(), SurfaceMesh::getActVert1(), SurfaceMesh::getActVert2(), SurfaceMesh::getActVertNormal(), SurfaceMesh::getActVertNormal1(), SurfaceMesh::getActVertNormal2(), SurfaceMesh::goToNextEdge(), SurfaceMesh::goToNextPlane(), SurfaceMesh::resetActPlane(), and SurfaceMesh::resetEdgeWalkInSolid().

Surface* _pSurface [protected]
 

Definition at line 28 of file SurfaceMesh.h.

Referenced by SurfaceMesh::getActVert(), SurfaceMesh::goToNextPlane(), SurfaceMesh::numberOfEdges(), SurfaceMesh::numberOfVertices(), SurfaceMesh::resetActPlane(), SurfaceMesh::resetEdgeWalkInSolid(), SurfaceMesh::resetVertWalkInSolid(), and SurfaceMesh::stepInVertWalkInSolid().

bool outwardNormals [protected, inherited]
 

Definition at line 112 of file Mesh.h.

Edge* pActEdge [protected, inherited]
 

Definition at line 116 of file Mesh.h.

Referenced by Mesh::getActPlaneArea(), Mesh::getActPlaneCentroid(), Mesh::getActVert1(), Mesh::getActVert2(), Mesh::getActVertID1(), Mesh::getActVertID2(), Mesh::getActVertNormal1(), Mesh::getActVertNormal2(), Mesh::goToNextEdge(), Mesh::resetActEdge(), Mesh::resetEdgeWalkInSolid(), and Mesh::stepInEdgeWalkInSolid().

Plane* pActPlane [protected, inherited]
 

Definition at line 117 of file Mesh.h.

Referenced by SurfaceMesh::getActPlane(), Mesh::getActPlane(), Mesh::getActPlaneArea(), Mesh::getActPlaneCentroid(), Mesh::getActPlaneID(), Mesh::getActPlaneNormal(), Mesh::getActVert1(), Mesh::getActVert2(), Mesh::getActVertID1(), Mesh::getActVertID2(), Mesh::getActVertNormal1(), Mesh::getActVertNormal2(), Mesh::goToNextEdge(), Mesh::goToNextPlane(), Mesh::resetActEdge(), Mesh::resetActPlane(), SurfaceMesh::SurfaceMesh(), Mesh::turnInsideOut(), and SurfaceMesh::~SurfaceMesh().

Solid* pActSolid [protected, inherited]
 

Definition at line 118 of file Mesh.h.

Referenced by Mesh::goToNextSolid(), Mesh::resetActPlane(), Mesh::resetActSolid(), Mesh::resetEdgeWalkInSolid(), Mesh::resetVertWalkInSolid(), Mesh::stepInEdgeWalkInSolid(), Mesh::stepInVertWalkInSolid(), and Mesh::turnInsideOut().

Vert* pActVert [protected, inherited]
 

Definition at line 115 of file Mesh.h.

Referenced by Mesh::getActVert(), Mesh::getActVertID(), Mesh::getActVertNormal(), Mesh::resetVertWalkInSolid(), Mesh::stepInVertWalkInSolid(), and Mesh::turnInsideOut().

int pocet_hran [protected, inherited]
 

Definition at line 109 of file Mesh.h.

Referenced by PolygonalMesh::_append_new_edge(), Mesh::MEF(), Mesh::MEnotF(), Mesh::MEV(), Mesh::NewEdge(), and Mesh::SEMV().

int pocet_rovin [protected, inherited]
 

Definition at line 110 of file Mesh.h.

Referenced by Mesh::MF(), and Mesh::NewPlane().

int pocet_vrcholu [protected, inherited]
 

Definition at line 108 of file Mesh.h.

Referenced by Mesh::MV().

struct Solid* pSolid [protected, inherited]
 

Definition at line 111 of file Mesh.h.

Referenced by PolygonalMesh::_append_new_edge(), SphereMesh::_mesh(), BoxMesh::BoxMesh(), PolygonMesh::cut(), BoxMesh::cut(), Mesh::goToNextPlane(), Mesh::goToNextSolid(), PointMesh::PointMesh(), PolygonalMesh::PolygonalMesh(), PolygonMesh::PolygonMesh(), Mesh::resetActSolid(), Mesh::rotate(), Mesh::scale(), SphereMesh::SphereMesh(), Mesh::transform(), Mesh::translate(), and Mesh::turnInsideOut().


The documentation for this class was generated from the following files:
Generated on Wed Jun 28 12:24:35 2006 for esg by  doxygen 1.4.6