sch::Polyhedron_algorithms Struct Reference

#include <sch/S_Polyhedron/Polyhedron_algorithms.h>

Collaboration diagram for sch::Polyhedron_algorithms:

Public Member Functions

SCH_API Polyhedron_algorithms (void)
 
SCH_API Polyhedron_algorithms (const Polyhedron_algorithms &)
 
SCH_API ~Polyhedron_algorithms (void)
 
const SCH_API Polyhedron_algorithmsoperator= (const Polyhedron_algorithms &)
 
SCH_API void updateFastArrays ()
 updates the fast access arrays, must be called after each polyhedron modification More...
 
SCH_API Point3 naiveSupport (const Vector3 &v) const
 
SCH_API void updateVertexNeighbors ()
 updates the Neighborhood of the vertexes, must be called on polyhedron \which vertexes have no neighbors, or after calling clearNeighbors. More...
 
SCH_API void clearNeighbors ()
 clears the neighbors tables; More...
 
SCH_API void clear ()
 clears all the polyhedron; More...
 
SCH_API void deleteVertexesWithoutNeighbors ()
 deletes aal the vertexes that dont have neighbors; More...
 
SCH_API Point3 support (const Vector3 &v, int &lastFeature) const
 Computes the support point of the polyhedron. More...
 
SCH_API void openFromFile (const std::string &filename)
 loads the polyhedron from a file. the file must be in the format of Qhull conconvex.exe output, called with these options : \ "qconvex.exe TI <input_filename> TO <output_filename> Qt o f" More...
 
SCH_API void fillEdges ()
 Fill the edges_ variable using the data from the polyhedron. More...
 
SCH_API size_t getEdgeKey (PolyhedronEdge e)
 get the key of an edge computed automatically from its vertices More...
 
template<class Archive >
void serialize (Archive &ar, const unsigned int)
 

Public Attributes

std::vector< S_PolyhedronVertex * > vertexes_
 
std::vector< PolyhedronTriangletriangles_
 
std::vector< PolyhedronEdgeedges_
 
S_PolyhedronVertex ** fastVertexes_
 
S_PolyhedronVertex ** lastVertexes_
 
unsigned numberOfVertices_
 

Constructor & Destructor Documentation

◆ Polyhedron_algorithms() [1/2]

SCH_API sch::Polyhedron_algorithms::Polyhedron_algorithms ( void  )

◆ Polyhedron_algorithms() [2/2]

SCH_API sch::Polyhedron_algorithms::Polyhedron_algorithms ( const Polyhedron_algorithms )

◆ ~Polyhedron_algorithms()

SCH_API sch::Polyhedron_algorithms::~Polyhedron_algorithms ( void  )

Member Function Documentation

◆ clear()

SCH_API void sch::Polyhedron_algorithms::clear ( )

clears all the polyhedron;

◆ clearNeighbors()

SCH_API void sch::Polyhedron_algorithms::clearNeighbors ( )

clears the neighbors tables;

◆ deleteVertexesWithoutNeighbors()

SCH_API void sch::Polyhedron_algorithms::deleteVertexesWithoutNeighbors ( )

deletes aal the vertexes that dont have neighbors;

◆ fillEdges()

SCH_API void sch::Polyhedron_algorithms::fillEdges ( )

Fill the edges_ variable using the data from the polyhedron.

◆ getEdgeKey()

SCH_API size_t sch::Polyhedron_algorithms::getEdgeKey ( PolyhedronEdge  e)

get the key of an edge computed automatically from its vertices

◆ naiveSupport()

SCH_API Point3 sch::Polyhedron_algorithms::naiveSupport ( const Vector3 v) const

◆ openFromFile()

SCH_API void sch::Polyhedron_algorithms::openFromFile ( const std::string &  filename)

loads the polyhedron from a file. the file must be in the format of Qhull conconvex.exe output, called with these options : \ "qconvex.exe TI <input_filename> TO <output_filename> Qt o f"

◆ operator=()

const SCH_API Polyhedron_algorithms& sch::Polyhedron_algorithms::operator= ( const Polyhedron_algorithms )

◆ serialize()

template<class Archive >
void sch::Polyhedron_algorithms::serialize ( Archive &  ar,
const unsigned int   
)
inline

◆ support()

SCH_API Point3 sch::Polyhedron_algorithms::support ( const Vector3 v,
int &  lastFeature 
) const

Computes the support point of the polyhedron.

◆ updateFastArrays()

SCH_API void sch::Polyhedron_algorithms::updateFastArrays ( )

updates the fast access arrays, must be called after each polyhedron modification

◆ updateVertexNeighbors()

SCH_API void sch::Polyhedron_algorithms::updateVertexNeighbors ( )

updates the Neighborhood of the vertexes, must be called on polyhedron \which vertexes have no neighbors, or after calling clearNeighbors.

Member Data Documentation

◆ edges_

std::vector<PolyhedronEdge> sch::Polyhedron_algorithms::edges_

◆ fastVertexes_

S_PolyhedronVertex** sch::Polyhedron_algorithms::fastVertexes_

◆ lastVertexes_

S_PolyhedronVertex** sch::Polyhedron_algorithms::lastVertexes_

◆ numberOfVertices_

unsigned sch::Polyhedron_algorithms::numberOfVertices_

◆ triangles_

std::vector<PolyhedronTriangle> sch::Polyhedron_algorithms::triangles_

◆ vertexes_

std::vector<S_PolyhedronVertex *> sch::Polyhedron_algorithms::vertexes_

The documentation for this struct was generated from the following file: