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

#include <CGraphicsDXF.hpp>

Inheritance diagram for CGraphicsDXF:
[legend]
Collaboration diagram for CGraphicsDXF:
[legend]

Public Types

enum class  EDashedLineType { Continuous , Dashed4_2 }
 
enum class  EDetailLevel { Low , Normal , High , VeryHigh }
 
enum class  EDrawSolidType { Smooth , Solid , Wire }
 
enum class  ELight { General , Light0 }
 
enum class  ELightType { Ambient , Diffuse , Specular }
 
enum class  EMatrixModel { ModelView , Projection }
 

Public Member Functions

 CGraphicsDXF ()
 
 CGraphicsDXF (const CGraphicsDXF &)=delete
 
 CGraphicsDXF (CGraphicsDXF &&other)=delete
 
 ~CGraphicsDXF () override
 
CGraphicsDXFoperator= (const CGraphicsDXF &other)=delete
 
CGraphicsDXFoperator= (CGraphicsDXF &&other)=delete
 
CDxfgetDXF ()
 

Static Public Attributes

static constexpr uint32_t BlockNull = UINT_MAX
 

Private Member Functions

void setBackGroundColor (iv::types::color rgb) override
 
void setClearColor () override
 
void initDevice () override
 
void initLight () override
 
void clear () override
 
void defineMaterial (const iv::ui::graphics::Material *material, const bool &isChanged) override
 
bool isDefinedMaterial (const std::string &materialName) override
 
void pushMaterial () override
 
void setMaterial (const std::string &materialName) override
 
void popMaterial () override
 
void setColorRGB (iv::types::color rgb) override
 
void setColorARGB (iv::types::color argb) override
 
void setLineWidth (float width) override
 
void setAlpha (float alpha) override
 
void resetAlpha () override
 
void setOnTexture (bool enableTexture) override
 
std::shared_ptr< iv::ui::graphics::ImageloadImage (const iv::ui::resources::ImageResource &resource) override
 
void appendMatrix (const CMatrix4x4 &matrix) override
 
void setModelMatrix (IGraphics::EMatrixModel matrixModel) override
 
void popTransformation () override
 
void pushTransformation () override
 
void resetTransformation () override
 
void defineLight (IGraphics::ELight light, IGraphics::ELightType lightType, double rColor, double gColor, double bColor) override
 
void positionLight (IGraphics::ELight light, double x, double y, double z) override
 
void viewport (int32_t x, int32_t y, uint64_t sizeX, uint64_t sizeY) override
 
void definePerspective (double fovy, double ratioXForY, double zNear, double zFar) override
 
void defineOrthogonal (double xOrg, double yOrg, double zOrg, double xMin, double yMin, double zMin, double xMax, double yMax, double zMax) override
 
void positionCamera (double eyeX, double eyeY, double eyeZ, double pointReferenceX, double pointReferenceY, double pointReferenceZ, double upX, double upY, double upZ) override
 
void rotation (double angleDegrees, double Ux, double Uy, double Uz) override
 
void scale (double sx, double sy, double sz) override
 
void setNormal (double Nx, double Ny, double Nz) override
 
void translation (double tx, double ty, double tz) override
 
void drawContours (const std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point3d > > > &contours) override
 
void drawFanTriangles (const float *points, const float *normals, const float *textureOpt, const float *rgbaOpt, uint64_t numPoints, const uint32_t *indVertex, uint64_t numVertex) override
 
void drawImage (double x, double y, double width, double height, const iv::ui::resources::ImageResource &resource) override
 
void drawImageRawSize (double x, double y, const iv::ui::resources::ImageResource &resource) override
 
void drawImageWithColor (double x, double y, iv::types::color colorRGB, double width, double height, const iv::ui::resources::ImageResource &resource) override
 
void drawLine (double x1, double y1, double z1, double x2, double y2, double z2) override
 
void drawLineWithStyle (double x1, double y1, double z1, double x2, double y2, double z2, IGraphics::EDashedLineType dashedLineType) override
 
void drawArc (double radiusMark, iv::types::radian angleInitial, iv::types::radian angleFinal, float thickness, uint64_t kPrvNumPoints) override
 
void drawPolyline (const float *vertex, uint64_t numVertex) override
 
void drawPolylineFilled (const float *vertex, uint64_t numVertex) override
 
void drawPolylinesWithColors (const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > &points, const std::vector< iv::math::geometry::Point3d > &rgb) override
 
void drawQuads (double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3, double x4, double y4, double z4) override
 
void drawRect (double x1, double y1, double x2, double y2) override
 
void drawRectFilled (double x1, double y1, double x2, double y2) override
 
void drawStripTriangles (const float *points, const float *normals, const float *textureOpt, const float *rgbaOpt, uint64_t numPoints, const uint32_t *indVertex, uint64_t numVertex) override
 
void drawText (const std::string &text, double x, double y, double height, unsigned char justify) override
 
void drawTextWithDeviceHeight (const std::string &text, double x, double y, double height, unsigned char justify) override
 
void drawTriangle (double x1, double y1, double z1, double x2, double y2, double z2, double x3, double y3, double z3) override
 
void drawTriangles (const float *points, const float *normals, const float *textureOpt, const float *rgbaOpt, uint64_t numPoints, const uint32_t *indVertex, uint64_t numVertex) override
 
void drawUnitCone (IGraphics::EDetailLevel detailLevel) override
 
void drawUnitCube () override
 
void drawUnitCylinder (IGraphics::EDetailLevel detailLevel) override
 
void drawUnitDisk (IGraphics::EDetailLevel detailLevel) override
 
void drawUnitSphere (IGraphics::EDetailLevel detailLevel) override
 
bool hasDrawPolylineFilled () const override
 
void setModeDraw (IGraphics::EDrawSolidType drawSolidType) override
 
uint32_t blockTextWithModifiers (const std::string &text, const iv::ui::TextModifier &textModifier, double *widthText, double *heightTextOut) override
 
void drawBlockText (uint32_t idBlockText, double x, double y, double widthText, double heightText, unsigned char justify) override
 
void endBlockText (uint32_t *idBlockText) override
 
bool hasBlockText () const override
 
uint32_t beginBlock () override
 
void drawBlock (uint32_t idBlock) override
 
void endBlock (uint32_t idBlock) override
 
bool hasManagerBlocks () const override
 
void removeBlock (uint32_t *idBlock) override
 
void beginStencilBuffer () override
 
void endStencilBuffer () override
 
void offStencilBuffer () override
 
void onStencilBuffer () override
 
void getCoordTextCornerLeftDown (const std::string &text, double x, double y, double heightCharacter, unsigned char justify, double *xCornerLeftDown, double *yCornerLeftDown, double *widthTextOpt, double *heightTextOpt) override
 
void getSizePixelToWorld (double sizePixelX, double sizePixelY, double *sizeWorldXOpt, double *sizeWorldYOpt) override
 
void getSizeText (const std::string &text, double heightCharacter, double *widthText, double *heightText) override
 
void setBlend (bool isEnable) override
 
void setTestDepth (bool isEnable) override
 

Private Attributes

CDxfm_dxf
 
CStackTransformation m_stackTransforms
 
CFontManagerCairo m_fontManager
 

Member Enumeration Documentation

◆ EDashedLineType

enum class IGraphics::EDashedLineType
stronginherited
Enumerator
Continuous 
Dashed4_2 

◆ EDetailLevel

enum class IGraphics::EDetailLevel
stronginherited
Enumerator
Low 
Normal 
High 
VeryHigh 

◆ EDrawSolidType

enum class IGraphics::EDrawSolidType
stronginherited
Enumerator
Smooth 
Solid 
Wire 

◆ ELight

enum class IGraphics::ELight
stronginherited
Enumerator
General 
Light0 

◆ ELightType

enum class IGraphics::ELightType
stronginherited
Enumerator
Ambient 
Diffuse 
Specular 

◆ EMatrixModel

enum class IGraphics::EMatrixModel
stronginherited
Enumerator
ModelView 
Projection 

Constructor & Destructor Documentation

◆ CGraphicsDXF() [1/3]

CGraphicsDXF::CGraphicsDXF ( )

◆ CGraphicsDXF() [2/3]

CGraphicsDXF::CGraphicsDXF ( const CGraphicsDXF & )
delete

◆ CGraphicsDXF() [3/3]

CGraphicsDXF::CGraphicsDXF ( CGraphicsDXF && other)
delete

◆ ~CGraphicsDXF()

CGraphicsDXF::~CGraphicsDXF ( )
override

Member Function Documentation

◆ appendMatrix()

void CGraphicsDXF::appendMatrix ( const CMatrix4x4 & matrix)
overrideprivatevirtual

Implements IGraphics.

◆ beginBlock()

uint32_t CGraphicsDXF::beginBlock ( )
overrideprivatevirtual

Implements IGraphics.

◆ beginStencilBuffer()

void CGraphicsDXF::beginStencilBuffer ( )
overrideprivatevirtual

Implements IGraphics.

◆ blockTextWithModifiers()

uint32_t CGraphicsDXF::blockTextWithModifiers ( const std::string & text,
const iv::ui::TextModifier & textModifier,
double * widthText,
double * heightTextOut )
overrideprivatevirtual

Implements IGraphics.

◆ clear()

void CGraphicsDXF::clear ( )
overrideprivatevirtual

Implements IGraphics.

◆ defineLight()

void CGraphicsDXF::defineLight ( IGraphics::ELight light,
IGraphics::ELightType lightType,
double rColor,
double gColor,
double bColor )
overrideprivatevirtual

Implements IGraphics.

◆ defineMaterial()

void CGraphicsDXF::defineMaterial ( const iv::ui::graphics::Material * material,
const bool & isChanged )
overrideprivatevirtual

Implements IGraphics.

◆ defineOrthogonal()

void CGraphicsDXF::defineOrthogonal ( double xOrg,
double yOrg,
double zOrg,
double xMin,
double yMin,
double zMin,
double xMax,
double yMax,
double zMax )
overrideprivatevirtual

Implements IGraphics.

◆ definePerspective()

void CGraphicsDXF::definePerspective ( double fovy,
double ratioXForY,
double zNear,
double zFar )
overrideprivatevirtual

Implements IGraphics.

◆ drawArc()

void CGraphicsDXF::drawArc ( double radiusMark,
iv::types::radian angleInitial,
iv::types::radian angleFinal,
float thickness,
uint64_t kPrvNumPoints )
overrideprivatevirtual

Implements IGraphics.

◆ drawBlock()

void CGraphicsDXF::drawBlock ( uint32_t idBlock)
overrideprivatevirtual

Implements IGraphics.

◆ drawBlockText()

void CGraphicsDXF::drawBlockText ( uint32_t idBlockText,
double x,
double y,
double widthText,
double heightText,
unsigned char justify )
overrideprivatevirtual

Implements IGraphics.

◆ drawContours()

void CGraphicsDXF::drawContours ( const std::vector< std::shared_ptr< std::vector< iv::math::geometry::Point3d > > > & contours)
overrideprivatevirtual

Implements IGraphics.

◆ drawFanTriangles()

void CGraphicsDXF::drawFanTriangles ( const float * points,
const float * normals,
const float * textureOpt,
const float * rgbaOpt,
uint64_t numPoints,
const uint32_t * indVertex,
uint64_t numVertex )
overrideprivatevirtual

Implements IGraphics.

◆ drawImage()

void CGraphicsDXF::drawImage ( double x,
double y,
double width,
double height,
const iv::ui::resources::ImageResource & resource )
overrideprivatevirtual

Implements IGraphics.

◆ drawImageRawSize()

void CGraphicsDXF::drawImageRawSize ( double x,
double y,
const iv::ui::resources::ImageResource & resource )
overrideprivatevirtual

Implements IGraphics.

◆ drawImageWithColor()

void CGraphicsDXF::drawImageWithColor ( double x,
double y,
iv::types::color colorRGB,
double width,
double height,
const iv::ui::resources::ImageResource & resource )
overrideprivatevirtual

Implements IGraphics.

◆ drawLine()

void CGraphicsDXF::drawLine ( double x1,
double y1,
double z1,
double x2,
double y2,
double z2 )
overrideprivatevirtual

Implements IGraphics.

◆ drawLineWithStyle()

void CGraphicsDXF::drawLineWithStyle ( double x1,
double y1,
double z1,
double x2,
double y2,
double z2,
IGraphics::EDashedLineType dashedLineType )
overrideprivatevirtual

Implements IGraphics.

◆ drawPolyline()

void CGraphicsDXF::drawPolyline ( const float * vertex,
uint64_t numVertex )
overrideprivatevirtual

Implements IGraphics.

◆ drawPolylineFilled()

void CGraphicsDXF::drawPolylineFilled ( const float * vertex,
uint64_t numVertex )
overrideprivatevirtual

Implements IGraphics.

◆ drawPolylinesWithColors()

void CGraphicsDXF::drawPolylinesWithColors ( const std::shared_ptr< std::vector< iv::math::geometry::Point2d > > & points,
const std::vector< iv::math::geometry::Point3d > & rgb )
overrideprivatevirtual

Implements IGraphics.

◆ drawQuads()

void CGraphicsDXF::drawQuads ( double x1,
double y1,
double z1,
double x2,
double y2,
double z2,
double x3,
double y3,
double z3,
double x4,
double y4,
double z4 )
overrideprivatevirtual

Implements IGraphics.

◆ drawRect()

void CGraphicsDXF::drawRect ( double x1,
double y1,
double x2,
double y2 )
overrideprivatevirtual

Implements IGraphics.

◆ drawRectFilled()

void CGraphicsDXF::drawRectFilled ( double x1,
double y1,
double x2,
double y2 )
overrideprivatevirtual

Implements IGraphics.

◆ drawStripTriangles()

void CGraphicsDXF::drawStripTriangles ( const float * points,
const float * normals,
const float * textureOpt,
const float * rgbaOpt,
uint64_t numPoints,
const uint32_t * indVertex,
uint64_t numVertex )
overrideprivatevirtual

Implements IGraphics.

◆ drawText()

void CGraphicsDXF::drawText ( const std::string & text,
double x,
double y,
double height,
unsigned char justify )
overrideprivatevirtual

Implements IGraphics.

◆ drawTextWithDeviceHeight()

void CGraphicsDXF::drawTextWithDeviceHeight ( const std::string & text,
double x,
double y,
double height,
unsigned char justify )
overrideprivatevirtual

Implements IGraphics.

◆ drawTriangle()

void CGraphicsDXF::drawTriangle ( double x1,
double y1,
double z1,
double x2,
double y2,
double z2,
double x3,
double y3,
double z3 )
overrideprivatevirtual

Implements IGraphics.

◆ drawTriangles()

void CGraphicsDXF::drawTriangles ( const float * points,
const float * normals,
const float * textureOpt,
const float * rgbaOpt,
uint64_t numPoints,
const uint32_t * indVertex,
uint64_t numVertex )
overrideprivatevirtual

Implements IGraphics.

◆ drawUnitCone()

void CGraphicsDXF::drawUnitCone ( IGraphics::EDetailLevel detailLevel)
overrideprivatevirtual

Implements IGraphics.

◆ drawUnitCube()

void CGraphicsDXF::drawUnitCube ( )
overrideprivatevirtual

Implements IGraphics.

◆ drawUnitCylinder()

void CGraphicsDXF::drawUnitCylinder ( IGraphics::EDetailLevel detailLevel)
overrideprivatevirtual

Implements IGraphics.

◆ drawUnitDisk()

void CGraphicsDXF::drawUnitDisk ( IGraphics::EDetailLevel detailLevel)
overrideprivatevirtual

Implements IGraphics.

◆ drawUnitSphere()

void CGraphicsDXF::drawUnitSphere ( IGraphics::EDetailLevel detailLevel)
overrideprivatevirtual

Implements IGraphics.

◆ endBlock()

void CGraphicsDXF::endBlock ( uint32_t idBlock)
overrideprivatevirtual

Implements IGraphics.

◆ endBlockText()

void CGraphicsDXF::endBlockText ( uint32_t * idBlockText)
overrideprivatevirtual

Implements IGraphics.

◆ endStencilBuffer()

void CGraphicsDXF::endStencilBuffer ( )
overrideprivatevirtual

Implements IGraphics.

◆ getCoordTextCornerLeftDown()

void CGraphicsDXF::getCoordTextCornerLeftDown ( const std::string & text,
double x,
double y,
double heightCharacter,
unsigned char justify,
double * xCornerLeftDown,
double * yCornerLeftDown,
double * widthTextOpt,
double * heightTextOpt )
overrideprivatevirtual

Implements IGraphics.

◆ getDXF()

CDxf * CGraphicsDXF::getDXF ( )

◆ getSizePixelToWorld()

void CGraphicsDXF::getSizePixelToWorld ( double sizePixelX,
double sizePixelY,
double * sizeWorldXOpt,
double * sizeWorldYOpt )
overrideprivatevirtual

Implements IGraphics.

◆ getSizeText()

void CGraphicsDXF::getSizeText ( const std::string & text,
double heightCharacter,
double * widthText,
double * heightText )
overrideprivatevirtual

Implements IGraphics.

◆ hasBlockText()

bool CGraphicsDXF::hasBlockText ( ) const
nodiscardoverrideprivatevirtual

Implements IGraphics.

◆ hasDrawPolylineFilled()

bool CGraphicsDXF::hasDrawPolylineFilled ( ) const
nodiscardoverrideprivatevirtual

Implements IGraphics.

◆ hasManagerBlocks()

bool CGraphicsDXF::hasManagerBlocks ( ) const
nodiscardoverrideprivatevirtual

Implements IGraphics.

◆ initDevice()

void CGraphicsDXF::initDevice ( )
overrideprivatevirtual

Implements IGraphics.

◆ initLight()

void CGraphicsDXF::initLight ( )
overrideprivatevirtual

Implements IGraphics.

◆ isDefinedMaterial()

bool CGraphicsDXF::isDefinedMaterial ( const std::string & materialName)
overrideprivatevirtual

Implements IGraphics.

◆ loadImage()

std::shared_ptr< iv::ui::graphics::Image > CGraphicsDXF::loadImage ( const iv::ui::resources::ImageResource & resource)
overrideprivatevirtual

Implements IGraphics.

◆ offStencilBuffer()

void CGraphicsDXF::offStencilBuffer ( )
overrideprivatevirtual

Implements IGraphics.

◆ onStencilBuffer()

void CGraphicsDXF::onStencilBuffer ( )
overrideprivatevirtual

Implements IGraphics.

◆ operator=() [1/2]

CGraphicsDXF & CGraphicsDXF::operator= ( CGraphicsDXF && other)
delete

◆ operator=() [2/2]

CGraphicsDXF & CGraphicsDXF::operator= ( const CGraphicsDXF & other)
delete

◆ popMaterial()

void CGraphicsDXF::popMaterial ( )
overrideprivatevirtual

Implements IGraphics.

◆ popTransformation()

void CGraphicsDXF::popTransformation ( )
overrideprivatevirtual

Implements IGraphics.

◆ positionCamera()

void CGraphicsDXF::positionCamera ( double eyeX,
double eyeY,
double eyeZ,
double pointReferenceX,
double pointReferenceY,
double pointReferenceZ,
double upX,
double upY,
double upZ )
overrideprivatevirtual

Implements IGraphics.

◆ positionLight()

void CGraphicsDXF::positionLight ( IGraphics::ELight light,
double x,
double y,
double z )
overrideprivatevirtual

Implements IGraphics.

◆ pushMaterial()

void CGraphicsDXF::pushMaterial ( )
overrideprivatevirtual

Implements IGraphics.

◆ pushTransformation()

void CGraphicsDXF::pushTransformation ( )
overrideprivatevirtual

Implements IGraphics.

◆ removeBlock()

void CGraphicsDXF::removeBlock ( uint32_t * idBlock)
overrideprivatevirtual

Implements IGraphics.

◆ resetAlpha()

void CGraphicsDXF::resetAlpha ( )
overrideprivatevirtual

Implements IGraphics.

◆ resetTransformation()

void CGraphicsDXF::resetTransformation ( )
overrideprivatevirtual

Implements IGraphics.

◆ rotation()

void CGraphicsDXF::rotation ( double angleDegrees,
double Ux,
double Uy,
double Uz )
overrideprivatevirtual

Implements IGraphics.

◆ scale()

void CGraphicsDXF::scale ( double sx,
double sy,
double sz )
overrideprivatevirtual

Implements IGraphics.

◆ setAlpha()

void CGraphicsDXF::setAlpha ( float alpha)
overrideprivatevirtual

Implements IGraphics.

◆ setBackGroundColor()

void CGraphicsDXF::setBackGroundColor ( iv::types::color rgb)
overrideprivatevirtual

Implements IGraphics.

◆ setBlend()

void CGraphicsDXF::setBlend ( bool isEnable)
overrideprivatevirtual

Implements IGraphics.

◆ setClearColor()

void CGraphicsDXF::setClearColor ( )
overrideprivatevirtual

Implements IGraphics.

◆ setColorARGB()

void CGraphicsDXF::setColorARGB ( iv::types::color argb)
overrideprivatevirtual

Implements IGraphics.

◆ setColorRGB()

void CGraphicsDXF::setColorRGB ( iv::types::color rgb)
overrideprivatevirtual

Implements IGraphics.

◆ setLineWidth()

void CGraphicsDXF::setLineWidth ( float width)
overrideprivatevirtual

Implements IGraphics.

◆ setMaterial()

void CGraphicsDXF::setMaterial ( const std::string & materialName)
overrideprivatevirtual

Implements IGraphics.

◆ setModeDraw()

void CGraphicsDXF::setModeDraw ( IGraphics::EDrawSolidType drawSolidType)
overrideprivatevirtual

Implements IGraphics.

◆ setModelMatrix()

void CGraphicsDXF::setModelMatrix ( IGraphics::EMatrixModel matrixModel)
overrideprivatevirtual

Implements IGraphics.

◆ setNormal()

void CGraphicsDXF::setNormal ( double Nx,
double Ny,
double Nz )
overrideprivatevirtual

Implements IGraphics.

◆ setOnTexture()

void CGraphicsDXF::setOnTexture ( bool enableTexture)
overrideprivatevirtual

Implements IGraphics.

◆ setTestDepth()

void CGraphicsDXF::setTestDepth ( bool isEnable)
overrideprivatevirtual

Implements IGraphics.

◆ translation()

void CGraphicsDXF::translation ( double tx,
double ty,
double tz )
overrideprivatevirtual

Implements IGraphics.

◆ viewport()

void CGraphicsDXF::viewport ( int32_t x,
int32_t y,
uint64_t sizeX,
uint64_t sizeY )
overrideprivatevirtual

Implements IGraphics.

Member Data Documentation

◆ BlockNull

uint32_t IGraphics::BlockNull = UINT_MAX
staticconstexprinherited

◆ m_dxf

CDxf* CGraphicsDXF::m_dxf
private

◆ m_fontManager

CFontManagerCairo CGraphicsDXF::m_fontManager
private

◆ m_stackTransforms

CStackTransformation CGraphicsDXF::m_stackTransforms
private

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