Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayLib::cPolygon3f Class Reference

#include <cPolygon3.h>

Inheritance diagram for GrayLib::cPolygon3f:
GrayLib::cPolygonFT< TYPE, TYPE_RECT > GrayLib::cPolygonT< float, cRectFT< float > >

Public Types

typedef cPolygon3f THIS_t
 
typedef cPoint3f POINT_t
 
typedef cPolygonf SUPER_t
 
- Public Types inherited from GrayLib::cPolygonFT< TYPE, TYPE_RECT >
typedef cPolygonT< TYPE, TYPE_RECT > SUPER_t
 
typedef SUPER_t::DVALUE_t DVALUE_t
 
typedef SUPER_t::POINT_t POINT_t
 
typedef SUPER_t::RECT_t RECT_t
 
- Public Types inherited from GrayLib::cPolygonT< float, cRectFT< float > >
typedef float DVALUE_t
 Dimension value type. More...
 
typedef cVecT2< float > POINT_t
 
typedef cRectFT< float > RECT_t
 cRectNT<TYPE> More...
 

Public Member Functions

 cPolygon3f ()
 
 ~cPolygon3f ()
 
void TransformPoly (const cMatrix4x4f &matrix)
 
void SetZero ()
 
void SetCube (DVALUE_t fRadius=10)
 
void SetMax ()
 
bool PtInPoly3D (DVALUE_t x, DVALUE_t y, DVALUE_t z) const
 
void SetCopy (const THIS_t &poly)
 
bool IsEmptyZ () const
 
bool get_PolyBBoxY (cBounds3f &rBBox) const
 
bool get_PolyBBoxZ (cBounds3f &rBBox) const
 
void put_PolyBBoxZ (const cBounds3f &rBBox)
 
void OffsetPoly (DVALUE_t dx, DVALUE_t dy, DVALUE_t dz)
 
HRESULT v_Set3D (const cVariant &vVal, int iStart=0)
 
void v_Get3D (cVariant &vVal) const
 
DVALUE_t get_HeightMid () const
 
DVALUE_t get_PolyRadius () const
 
void get_PolyCenter (OUT POINT_t &ptCenter) const
 
 UNITTEST_FRIEND (cPolygon3)
 
- Public Member Functions inherited from GrayLib::cPolygonFT< TYPE, TYPE_RECT >
 cPolygonFT ()
 
 ~cPolygonFT ()
 
ITERATE_t _cdecl CreatePolygonValuesF (ITERATE_t nCount,...)
 
bool FixPolygon ()
 
bool PtInPoly (DVALUE_t x, DVALUE_t y) const
 
bool PtInPoly (const POINT_t &pt) const
 
HRESULT v_SetPoly (const cVariant &vVal, ITERATE_t iStart=0)
 
void v_GetPoly (cVariant &vVal) const
 
bool IsRectIntersect (const RECT_t &rect) const
 
cString toString (void) const
 
ITERATE_t FindClosestVert (const POINT_t &pt) const
 
- Public Member Functions inherited from GrayLib::cPolygonT< float, cRectFT< float > >
 cPolygonT ()
 
const cRectFT< float > & get_BoundingRect (void) const
 
ITERATE_t get_NumVerts () const
 
bool isPolyEmpty () const
 
const POINT_tGetVert (ITERATE_t i) const
 
POINT_tRefVert (ITERATE_t i)
 
bool IsEqual (const THIS_t &p) const
 
ITERATE_t CreatePolygonPoints (const POINT_t *pPoints, ITERATE_t nCount)
 
void SetEmpty ()
 
void DeleteVert (ITERATE_t i)
 
void InsertVert (ITERATE_t i, const POINT_t &pt)
 
ITERATE_t AddVert (const POINT_t &pt)
 
ITERATE_t AddVert (float x, float y)
 
void UnionPolyRect (cRectFT< float > &rect) const
 
void SetCopy (const THIS_t &poly)
 
void put_PolyRect (const cRectFT< float > &rect)
 
void put_PolyRect (float fSizeX, float fSizeY)
 
void OffsetPoly (float dx, float dy)
 

Public Attributes

cValueRange< DVALUE_tm_z
 z bottom/top of the region. More...
 

Additional Inherited Members

- Static Public Attributes inherited from GrayLib::cPolygonT< float, cRectFT< float > >
static const ITERATE_t k_MAX_VERTS
 arbitrary max. More...
 
- Protected Attributes inherited from GrayLib::cPolygonT< float, cRectFT< float > >
cRectFT< float > m_rectUnion
 The union rectangle m_aPoints. inclusive if float, non-inclusive if int. More...
 
cArrayStruct< POINT_tm_aPoints
 k_MAX_VERTS More...
 

Detailed Description

This is a 2d polygon region but with a top and bottom in z coords to make it 3d. A cylinder type polygonal region (integer) axis aligned. arbitrary number of sides to the polygon.

Member Typedef Documentation

◆ POINT_t

◆ SUPER_t

◆ THIS_t

Constructor & Destructor Documentation

◆ cPolygon3f()

GrayLib::cPolygon3f::cPolygon3f ( )

◆ ~cPolygon3f()

GrayLib::cPolygon3f::~cPolygon3f ( )

Member Function Documentation

◆ get_HeightMid()

DVALUE_t GrayLib::cPolygon3f::get_HeightMid ( ) const
inline

◆ get_PolyBBoxY()

bool GrayLib::cPolygon3f::get_PolyBBoxY ( cBounds3f &  rBBox) const

◆ get_PolyBBoxZ()

bool GrayLib::cPolygon3f::get_PolyBBoxZ ( cBounds3f &  rBBox) const

◆ get_PolyCenter()

void GrayLib::cPolygon3f::get_PolyCenter ( OUT POINT_t ptCenter) const

◆ get_PolyRadius()

float GrayLib::cPolygon3f::get_PolyRadius ( ) const

◆ IsEmptyZ()

bool GrayLib::cPolygon3f::IsEmptyZ ( ) const
inline

◆ OffsetPoly()

void GrayLib::cPolygon3f::OffsetPoly ( DVALUE_t  dx,
DVALUE_t  dy,
DVALUE_t  dz 
)

◆ PtInPoly3D()

bool GrayLib::cPolygon3f::PtInPoly3D ( DVALUE_t  x,
DVALUE_t  y,
DVALUE_t  z 
) const
inline

◆ put_PolyBBoxZ()

void GrayLib::cPolygon3f::put_PolyBBoxZ ( const cBounds3f &  rBBox)

◆ SetCopy()

void GrayLib::cPolygon3f::SetCopy ( const THIS_t poly)

◆ SetCube()

void GrayLib::cPolygon3f::SetCube ( DVALUE_t  fRadius = 10)

◆ SetMax()

void GrayLib::cPolygon3f::SetMax ( )
inline

◆ SetZero()

void GrayLib::cPolygon3f::SetZero ( )
inline

◆ TransformPoly()

void GrayLib::cPolygon3f::TransformPoly ( const cMatrix4x4f matrix)

◆ UNITTEST_FRIEND()

GrayLib::cPolygon3f::UNITTEST_FRIEND ( cPolygon3  )

◆ v_Get3D()

void GrayLib::cPolygon3f::v_Get3D ( cVariant vVal) const

Append to the array.

◆ v_Set3D()

HRESULT GrayLib::cPolygon3f::v_Set3D ( const cVariant vVal,
int  iStart = 0 
)

Member Data Documentation

◆ m_z

cValueRange<DVALUE_t> GrayLib::cPolygon3f::m_z

z bottom/top of the region.


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