UNIVERS  15.3
UNIVERS base processing software API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
U3dTriangledAbstractSurface Class Referenceabstract

#include <u3d_triangled_abstract_surface.hpp>

Inheritance diagram for U3dTriangledAbstractSurface:
U3dCurvatureTriangledSurface U3dCurvatureTriangledSurface U3dPlaneTriangledSurface U3dPlaneTriangledSurface U3dSimpleTriangledSurface U3dSimpleTriangledSurface

Classes

class  Delone2DTriangulator
 

Public Member Functions

 U3dTriangledAbstractSurface (U3dMathAbstractSurface *ms, U3dPoint zeroPoint)
 
 U3dTriangledAbstractSurface (const U3dTriangledAbstractSurface &other)
 
virtual void addPoint (U3dPoint *)=0
 
virtual bool removePoint (int pointId)=0
 
virtual void movePoint (int pointId, double x, double y, double z)=0
 
virtual class U3dBox getBox () const =0
 
const U3dTrianglegetTriangle (int id) const throw (std::out_of_range)
 
int getTrianglesNum () const
 
void severance (U3dTriangledAbstractSurface *other, const U3D_COLOR &)
 
void severance_old (const U3dTriangledAbstractSurface *other, const U3D_COLOR &)
 
void setWhitePoint (const U3dPoint &p)
 
U3dPoint getWhitePoint () const
 
const U3dPointgetPoint (int id) const throw (std::out_of_range)
 
U3dPointgetPoint (int id) throw (std::out_of_range)
 
bool getPoint (int id, double &x, double &y, double &z)
 
int getPointsNum ()
 
void getPoints (U3dPointsAr &ps)
 
void getInitialPoints (U3dPointsAr &ps)
 
const U3dPointsAr & getInitialPoints () const
 
virtual bool getSideColor (const U3dPoint &p, U3D_COLOR &u3dcolor) const
 
virtual void getIntersections (U3dPoint p0, U3dPoint p1, std::vector< int > &int_trIds, U3dPointsAr &int_points)
 
bool isTriangulated ()
 
const std::set< int > & getActTrNums ()
 
U3dMathAbstractSurfacegetMathSurf ()
 
 U3dTriangledAbstractSurface (U3dMathAbstractSurface *ms, U3dPoint zeroPoint)
 
 U3dTriangledAbstractSurface (const U3dTriangledAbstractSurface &other)
 
virtual void addPoint (U3dPoint *)=0
 
virtual bool removePoint (int pointId)=0
 
virtual void movePoint (int pointId, double x, double y, double z)=0
 
virtual class U3dBox getBox () const =0
 
const U3dTrianglegetTriangle (int id) const throw (std::out_of_range)
 
int getTrianglesNum () const
 
void severance (U3dTriangledAbstractSurface *other, const U3D_COLOR &)
 
void severance_old (const U3dTriangledAbstractSurface *other, const U3D_COLOR &)
 
void setWhitePoint (const U3dPoint &p)
 
U3dPoint getWhitePoint () const
 
const U3dPointgetPoint (int id) const throw (std::out_of_range)
 
U3dPointgetPoint (int id) throw (std::out_of_range)
 
bool getPoint (int id, double &x, double &y, double &z)
 
int getPointsNum ()
 
void getPoints (U3dPointsAr &ps)
 
void getInitialPoints (U3dPointsAr &ps)
 
virtual bool getSideColor (const U3dPoint &p, U3D_COLOR &u3dcolor) const
 
virtual void getIntersections (U3dPoint p0, U3dPoint p1, std::vector< int > &int_trIds, U3dPointsAr &int_points)
 
bool isTriangulated ()
 
const int_set & getActTrNums ()
 
U3dMathAbstractSurfacegetMathSurf ()
 

Protected Member Functions

virtual void calculateTrPlanes ()
 
virtual void calculateTrPlanes ()
 

Protected Attributes

U3dMathAbstractSurfacem_math_surf
 
U3dPointsAr m_tps
 
U3dTrianglesAr m_triangles
 
U3dPointsAr m_initPoints
 
std::set< int > m_actTrNums
 
bool m_is_triangulated
 
U3dPoint m_white_point
 
int_set m_actTrNums
 

Friends

class Intersect
 

Detailed Description

Class for trianguled surfaces

Template for trianguled surfaces

Member Function Documentation

const int_set& U3dTriangledAbstractSurface::getActTrNums ( )
inline

Get set of numbers of active triangles

const std::set<int>& U3dTriangledAbstractSurface::getActTrNums ( )
inline

Get set of numbers of active triangles

void U3dTriangledAbstractSurface::getInitialPoints ( U3dPointsAr &  ps)
inline

Return initial points

void U3dTriangledAbstractSurface::getInitialPoints ( U3dPointsAr &  ps)
inline

Return initial points

const U3dPointsAr& U3dTriangledAbstractSurface::getInitialPoints ( ) const
inline

Return initial points (const)

virtual void U3dTriangledAbstractSurface::getIntersections ( U3dPoint  p0,
U3dPoint  p1,
std::vector< int > &  int_trIds,
U3dPointsAr &  int_points 
)
virtual

Get all triangles, which took part in intersection with segment p0-p1

virtual void U3dTriangledAbstractSurface::getIntersections ( U3dPoint  p0,
U3dPoint  p1,
std::vector< int > &  int_trIds,
U3dPointsAr &  int_points 
)
virtual

Get all triangles, which took part in intersection with segment p0-p1

const U3dPoint* U3dTriangledAbstractSurface::getPoint ( int  id) const
throw (std::out_of_range
)
inline

Return triangle point from provided index. Return false if out of range

bool U3dTriangledAbstractSurface::getPoint ( int  id,
double &  x,
double &  y,
double &  z 
)
inline

Return triangle point coordinates from provided index Return false if out of range

const U3dPoint* U3dTriangledAbstractSurface::getPoint ( int  id) const
throw (std::out_of_range
)
inline

Return triangle point from provided index. Return false if out of range

bool U3dTriangledAbstractSurface::getPoint ( int  id,
double &  x,
double &  y,
double &  z 
)
inline

Return triangle point coordinates from provided index Return false if out of range

void U3dTriangledAbstractSurface::getPoints ( U3dPointsAr &  ps)
inline

Return triangles points

void U3dTriangledAbstractSurface::getPoints ( U3dPointsAr &  ps)
inline

Return triangles points

int U3dTriangledAbstractSurface::getPointsNum ( )
inline

Return number of triangles points

int U3dTriangledAbstractSurface::getPointsNum ( )
inline

Return number of triangles points

virtual bool U3dTriangledAbstractSurface::getSideColor ( const U3dPoint p,
U3D_COLOR &  u3dcolor 
) const
virtual

Second parameter becomes true, if specified point lies to the white side of surface. Return value is true, if method succeed, and false otherwise.Determine from side of which color spicified point is placed.

Reimplemented in U3dPlaneTriangledSurface, and U3dPlaneTriangledSurface.

virtual bool U3dTriangledAbstractSurface::getSideColor ( const U3dPoint p,
U3D_COLOR &  u3dcolor 
) const
virtual

Second parameter becomes true, if specified point lies to the white side of surface. Return value is true, if method succeed, and false otherwise.Determine from side of which color spicified point is placed.

Reimplemented in U3dPlaneTriangledSurface, and U3dPlaneTriangledSurface.

const U3dTriangle* U3dTriangledAbstractSurface::getTriangle ( int  id) const
throw (std::out_of_range
)
inline

Return triangle with provided index or NULL if out of range

const U3dTriangle* U3dTriangledAbstractSurface::getTriangle ( int  id) const
throw (std::out_of_range
)
inline

Return triangle with provided index or NULL if out of range

int U3dTriangledAbstractSurface::getTrianglesNum ( ) const
inline

Return number of triangles

int U3dTriangledAbstractSurface::getTrianglesNum ( ) const
inline

Return number of triangles

U3dPoint U3dTriangledAbstractSurface::getWhitePoint ( ) const
inline

Get white point of this surface

U3dPoint U3dTriangledAbstractSurface::getWhitePoint ( ) const
inline

Get white point of this surface

bool U3dTriangledAbstractSurface::isTriangulated ( )
inline

Return true if interpolation was made

bool U3dTriangledAbstractSurface::isTriangulated ( )
inline

Return true if interpolation was made

void U3dTriangledAbstractSurface::setWhitePoint ( const U3dPoint p)
inline

Set white point for this surface

void U3dTriangledAbstractSurface::setWhitePoint ( const U3dPoint p)
inline

Set white point for this surface

void U3dTriangledAbstractSurface::severance ( U3dTriangledAbstractSurface other,
const U3D_COLOR &   
)

Make serverance with other surface form specidied by U3D_COLOR side

void U3dTriangledAbstractSurface::severance ( U3dTriangledAbstractSurface other,
const U3D_COLOR &   
)

Make serverance with other surface form specidied by U3D_COLOR side

Member Data Documentation

bool U3dTriangledAbstractSurface::m_is_triangulated
protected

If triangulation was made


The documentation for this class was generated from the following files: