FDH14Mesh Class Reference

#include <FDH14Mesh.h>

Inheritance diagram for FDH14Mesh:

BoxMesh Mesh List of all members.

Public Types

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

Public Member Functions

 FDH14Mesh (const float[14][3], const float[], float ar, float br, float cr)
virtual Solid * cut (float ar, float br, float cr, float dr)
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 double getActPlaneArea ()
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)

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

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 12 of file FDH14Mesh.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

FDH14Mesh const   float[14][3],
const   float[],
float  ar,
float  br,
float  cr
 

Definition at line 5 of file FDH14Mesh.cc.

References BoxMesh::cut(), Mesh::Delete_solid(), and Mesh::translate().


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().

Mesh::Solid * cut float  ar,
float  br,
float  cr,
float  dr
[virtual, inherited]
 

Definition at line 78 of file BoxMesh.cc.

References Mesh::AppendFace(), Mesh::ClasifyEdges(), Mesh::KE(), Mesh::MEF(), Mesh::MEnotF(), Mesh::MF(), Mesh::Next_Edge_in_loop(), Mesh::NULOVA, Mesh::ODPADOVA, Mesh::pSolid, Mesh::SEMV(), Mesh::SeparateSolids(), Mesh::TELESOVA, Mesh::This_loop(), Mesh::Vertex_of_cut(), and Mesh::Vertex_Plane_position().

Referenced by FDH14Mesh::FDH14Mesh().

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, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 867 of file Mesh.cc.

References 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().

Vector3 getActPlaneCentroid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1031 of file Mesh.cc.

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

int getActPlaneID  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1013 of file Mesh.cc.

References Mesh::Plane::jmeno_roviny, and Mesh::pActPlane.

Vertex3 getActPlaneNormal  )  const [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1022 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::b, Mesh::Plane::c, and Mesh::pActPlane.

Vertex3 getActVert  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 926 of file Mesh.cc.

References Mesh::pActVert, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Vertex3 getActVert1 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 895 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, Mesh::Edge::V2, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by BVH::__get_edges(), POVRayExporter::_write_mesh(), Mesh::getActPlaneArea(), and Mesh::getActPlaneCentroid().

Vertex3 getActVert2 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 911 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, Mesh::Edge::V2, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by BVH::__get_edges(), and Mesh::getActPlaneArea().

int getActVertID  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1004 of file Mesh.cc.

References Mesh::Vert::jmeno_vrcholu, and Mesh::pActVert.

int getActVertID1 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 974 of file Mesh.cc.

References Mesh::Vert::jmeno_vrcholu, Mesh::Edge::LeftLoop, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, and Mesh::Edge::V2.

int getActVertID2 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 989 of file Mesh.cc.

References Mesh::Vert::jmeno_vrcholu, Mesh::Edge::LeftLoop, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, and Mesh::Edge::V2.

Vertex3 getActVertNormal  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 965 of file Mesh.cc.

References Mesh::Vert::normal, and Mesh::pActVert.

Vertex3 getActVertNormal1 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 935 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::Vert::normal, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, and Mesh::Edge::V2.

Referenced by POVRayExporter::_write_mesh().

Vertex3 getActVertNormal2 bool   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 950 of file Mesh.cc.

References Mesh::Edge::LeftLoop, Mesh::Vert::normal, Mesh::pActEdge, Mesh::pActPlane, Mesh::Edge::RightLoop, Mesh::Edge::V1, and Mesh::Edge::V2.

int goToNextEdge  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 884 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::Next_Edge_in_loop(), Mesh::Orient_Edge(), Mesh::pActEdge, and Mesh::pActPlane.

Referenced by POVRayExporter::_write_mesh(), Mesh::getActPlaneArea(), and Mesh::getActPlaneCentroid().

int goToNextPlane  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 872 of file Mesh.cc.

References Mesh::Solid::first_plane, Mesh::Plane::next_plane, Mesh::pActPlane, and Mesh::pSolid.

Referenced by POVRayExporter::_write_mesh().

int goToNextSolid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 854 of file Mesh.cc.

References Mesh::Solid::next_solid, Mesh::pActSolid, and Mesh::pSolid.

Referenced by BVH::__get_edges(), and POVRayExporter::_write_mesh().

virtual bool hasOutwardNormals void   )  const [inline, virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 234 of file Mesh.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().

virtual int numberOfEdges void   )  const [inline, virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 232 of file Mesh.h.

virtual int numberOfVertices void   )  const [inline, virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 231 of file Mesh.h.

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, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 879 of file Mesh.cc.

References Mesh::Plane::any_edge, Mesh::pActEdge, and Mesh::pActPlane.

Referenced by POVRayExporter::_write_mesh(), Mesh::getActPlaneArea(), and Mesh::getActPlaneCentroid().

void resetActPlane  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 862 of file Mesh.cc.

References Mesh::Solid::first_plane, Mesh::pActPlane, and Mesh::pActSolid.

Referenced by POVRayExporter::_write_mesh().

void resetActSolid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 849 of file Mesh.cc.

References Mesh::pActSolid, and Mesh::pSolid.

Referenced by BVH::__get_edges(), and POVRayExporter::_write_mesh().

void resetEdgeWalkInSolid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1082 of file Mesh.cc.

References Mesh::Solid::first_edge, Mesh::pActEdge, and Mesh::pActSolid.

Referenced by BVH::__get_edges().

void resetVertWalkInSolid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1094 of file Mesh.cc.

References Mesh::Solid::first_vertex, Mesh::pActSolid, and Mesh::pActVert.

void rotate const Matrix3  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 735 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::any_edge, Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Plane::next_plane, Mesh::Vert::next_vertex, Mesh::Vert::normal, Mesh::pSolid, Mesh::Edge::V1, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

void scale float  ,
float  ,
float 
[virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 835 of file Mesh.cc.

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

Referenced by Sphere::_mesh().

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, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1087 of file Mesh.cc.

References Mesh::Solid::first_edge, Mesh::Edge::next_edge, Mesh::pActEdge, and Mesh::pActSolid.

Referenced by BVH::__get_edges().

bool stepInVertWalkInSolid  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1099 of file Mesh.cc.

References Mesh::Solid::first_vertex, Mesh::Vert::next_vertex, Mesh::pActSolid, and Mesh::pActVert.

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, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 796 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::any_edge, Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Vert::fxyz, Mesh::Plane::next_plane, Mesh::Vert::next_vertex, Mesh::Vert::normal, Mesh::pSolid, Mesh::Edge::V1, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

void translate const Vector3  )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 769 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::any_edge, Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Vert::fxyz, Mesh::Plane::next_plane, Mesh::Vert::next_vertex, Mesh::pSolid, Mesh::Edge::V1, Mesh::Vert::x, Mesh::Vert::y, and Mesh::Vert::z.

Referenced by Sphere::_mesh(), FDH6::_mesh(), and FDH14Mesh::FDH14Mesh().

void turnInsideOut void   )  [virtual, inherited]
 

Reimplemented in SurfaceMesh.

Definition at line 1106 of file Mesh.cc.

References Mesh::Plane::a, Mesh::Plane::b, Mesh::Plane::c, Mesh::Plane::d, Mesh::Solid::first_plane, Mesh::Solid::first_vertex, Mesh::Plane::next_plane, Mesh::Solid::next_solid, Mesh::Vert::next_vertex, Mesh::Vert::normal, Mesh::pActPlane, Mesh::pActSolid, Mesh::pActVert, Mesh::pSolid, and Mesh::Plane::skalar.

Referenced by Geometry::mesh().

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

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