Nix (Dev) 3.5.10
dev - 3.5.10 - 1af9301
Loading...
Searching...
No Matches
CSurface Class Reference

#include <CSurface.hpp>

Public Types

enum class  ESurfaceType { FanTriangle , StripTriangle }
 

Public Member Functions

 CSurface (const CSurface &surface)
 
 CSurface (const CSurface *surface)
 
virtual ~CSurface ()
 
bool operator== (const CSurface &b) const
 
bool operator!= (const CSurface &b) const
 
void draw (IGraphics *graphics) const
 
void drawEdges (IGraphics *graphics) const
 
void removeObjectDraw (IGraphics *graphics)
 
void setPointsEdges (float **vertexEdges, const uint64_t &numVertexEdges)
 

Static Public Member Functions

static CSurfacecreateFanTriangles (float **points, float **normalsOpt, float **textureOpt, float **rgbaOpt, uint64_t numPoints)
 
static CSurfacecreateFanTrianglesWithIndex (float **points, float **normalsOpt, float **textureOpt, float **rgbaOpt, uint64_t numPoints, uint32_t **indVertex, uint64_t numVertex)
 
static CSurfacecreateStripTriangles (float **points, float **normalsOpt, float **textureOpt, float **rgbaOpt, uint64_t numPoints)
 
static CSurfacecreateStripTrianglesWithIndex (float **points, float **normalsOpt, float **textureOpt, float **rgbaOpt, uint64_t numPoints, uint32_t **indVertex, uint64_t numVertex)
 

Private Member Functions

 CSurface (CSurface::ESurfaceType type, float **points, float **normals, float **textureOpt, float **rgbaOpt, uint64_t numPoints, std::unique_ptr< uint32_t[]> &indVertex, uint64_t numVertex, uint32_t idBlock, bool hasEdges, float **vertexEdges, uint64_t numVertexEdges, uint32_t idBlockEdges)
 

Private Attributes

CSurface::ESurfaceType m_type
 
float * m_points
 
float * m_normals
 
float * m_textureOpt
 
float * m_rgbaOpt
 
uint64_t m_numPoints
 
uint32_t * m_indVertex
 
uint64_t m_numVertex
 
uint32_t m_idBlock
 
bool m_hasEdges
 
float * m_vertexEdges
 
uint64_t m_numVertexEdges
 
uint32_t m_idBlockEdge
 

Member Enumeration Documentation

◆ ESurfaceType

enum class CSurface::ESurfaceType
strong
Enumerator
FanTriangle 
StripTriangle 

Constructor & Destructor Documentation

◆ CSurface() [1/3]

CSurface::CSurface ( const CSurface & surface)

◆ CSurface() [2/3]

CSurface::CSurface ( const CSurface * surface)
explicit

◆ ~CSurface()

CSurface::~CSurface ( )
virtual

◆ CSurface() [3/3]

CSurface::CSurface ( CSurface::ESurfaceType type,
float ** points,
float ** normals,
float ** textureOpt,
float ** rgbaOpt,
uint64_t numPoints,
std::unique_ptr< uint32_t[]> & indVertex,
uint64_t numVertex,
uint32_t idBlock,
bool hasEdges,
float ** vertexEdges,
uint64_t numVertexEdges,
uint32_t idBlockEdges )
private

Member Function Documentation

◆ createFanTriangles()

CSurface * CSurface::createFanTriangles ( float ** points,
float ** normalsOpt,
float ** textureOpt,
float ** rgbaOpt,
uint64_t numPoints )
static

◆ createFanTrianglesWithIndex()

CSurface * CSurface::createFanTrianglesWithIndex ( float ** points,
float ** normalsOpt,
float ** textureOpt,
float ** rgbaOpt,
uint64_t numPoints,
uint32_t ** indVertex,
uint64_t numVertex )
static

◆ createStripTriangles()

CSurface * CSurface::createStripTriangles ( float ** points,
float ** normalsOpt,
float ** textureOpt,
float ** rgbaOpt,
uint64_t numPoints )
static

◆ createStripTrianglesWithIndex()

CSurface * CSurface::createStripTrianglesWithIndex ( float ** points,
float ** normalsOpt,
float ** textureOpt,
float ** rgbaOpt,
uint64_t numPoints,
uint32_t ** indVertex,
uint64_t numVertex )
static

◆ draw()

void CSurface::draw ( IGraphics * graphics) const

◆ drawEdges()

void CSurface::drawEdges ( IGraphics * graphics) const

◆ operator!=()

bool CSurface::operator!= ( const CSurface & b) const

◆ operator==()

bool CSurface::operator== ( const CSurface & b) const

◆ removeObjectDraw()

void CSurface::removeObjectDraw ( IGraphics * graphics)

◆ setPointsEdges()

void CSurface::setPointsEdges ( float ** vertexEdges,
const uint64_t & numVertexEdges )

Member Data Documentation

◆ m_hasEdges

bool CSurface::m_hasEdges
private

◆ m_idBlock

uint32_t CSurface::m_idBlock
private

◆ m_idBlockEdge

uint32_t CSurface::m_idBlockEdge
private

◆ m_indVertex

uint32_t* CSurface::m_indVertex
private

◆ m_normals

float* CSurface::m_normals
private

◆ m_numPoints

uint64_t CSurface::m_numPoints
private

◆ m_numVertex

uint64_t CSurface::m_numVertex
private

◆ m_numVertexEdges

uint64_t CSurface::m_numVertexEdges
private

◆ m_points

float* CSurface::m_points
private

◆ m_rgbaOpt

float* CSurface::m_rgbaOpt
private

◆ m_textureOpt

float* CSurface::m_textureOpt
private

◆ m_type

CSurface::ESurfaceType CSurface::m_type
private

◆ m_vertexEdges

float* CSurface::m_vertexEdges
private

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