TechDraw::GeometryObject Class Reference

#include <GeometryObject.h>

Public Member Functions

int addCenterLine (TechDraw::BaseGeomPtr bg, std::string tag)
int addCosmeticEdge (Base::Vector3d start, Base::Vector3d end)
int addCosmeticEdge (Base::Vector3d start, Base::Vector3d end, std::string tagString)
int addCosmeticEdge (CosmeticEdge *ce)
int addCosmeticEdge (TechDraw::BaseGeomPtr base, std::string tagString)
int addCosmeticVertex (Base::Vector3d pos)
int addCosmeticVertex (Base::Vector3d pos, std::string tagString)
int addCosmeticVertex (CosmeticVertex *cv)
void addEdge (TechDraw::BaseGeomPtr bg)
void addFaceGeom (FacePtr f)
 add a Face to Face Geometry More...
void addVertex (TechDraw::VertexPtr v)
Base::BoundBox3d calcBoundingBox () const
 Returns 2D bounding box. More...
void clear ()
void clearFaceGeom ()
 empty Face geometry More...
void extractGeometry (edgeClass category, bool visible)
 add edges meeting filter criteria for category, visibility More...
 GeometryObject (const std::string &parent, TechDraw::DrawView *parentObj)
 Constructor. More...
const BaseGeomPtrVectorgetEdgeGeometry () const
const std::vector< FacePtr > & getFaceGeometry () const
double getFocus (void)
TopoDS_Shape getHidHard (void)
TopoDS_Shape getHidIso (void)
TopoDS_Shape getHidOutline (void)
TopoDS_Shape getHidSeam (void)
TopoDS_Shape getHidSmooth (void)
const std::vector< VertexPtr > & getVertexGeometry () const
TopoDS_Shape getVisHard (void)
const BaseGeomPtrVector getVisibleFaceEdges (bool smooth, bool seam) const
TopoDS_Shape getVisIso (void)
TopoDS_Shape getVisOutline (void)
TopoDS_Shape getVisSeam (void)
TopoDS_Shape getVisSmooth (void)
void isPerspective (bool b)
bool isPerspective (void)
TopoDS_Shape projectFace (const TopoDS_Shape &face, const gp_Ax2 &CS)
void projectShape (const TopoDS_Shape &input, const gp_Ax2 &viewAxis)
 set up a hidden line remover and project a shape with it More...
void projectShapeWithPolygonAlgo (const TopoDS_Shape &input, const gp_Ax2 &viewAxis)
 set up a hidden line remover and project a shape with it More...
void pruneVertexGeom (Base::Vector3d center, double radius)
void setEdgeGeometry (BaseGeomPtrVector newGeoms)
void setFocus (double f)
void setIsoCount (int i)
void setParentName (std::string n)
void setVertexGeometry (std::vector< VertexPtr > newVerts)
void usePolygonHLR (bool b)
bool usePolygonHLR (void) const
virtual ~GeometryObject ()

Static Public Member Functions

static TopoDS_Shape invertGeometry (const TopoDS_Shape s)

Protected Member Functions

void addGeomFromCompound (TopoDS_Shape edgeCompound, edgeClass category, bool visible)
 update edgeGeom and vertexGeom from Compound of edges More...
bool findVertex (Base::Vector3d v)
 does this GeometryObject already have this vertex More...
TechDraw::DrawViewDetailisParentDetail (void)
bool isWithinArc (double theta, double first, double last, bool cw) const

Protected Attributes

BaseGeomPtrVector edgeGeom
std::vector< FacePtrfaceGeom
TopoDS_Shape hidHard
TopoDS_Shape hidIso
TopoDS_Shape hidOutline
TopoDS_Shape hidSeam
TopoDS_Shape hidSmooth
double m_focus
int m_isoCount
bool m_isPersp
std::string m_parentName
bool m_usePolygonHLR
std::vector< VertexPtrvertexGeom
TopoDS_Shape visHard
TopoDS_Shape visIso
TopoDS_Shape visOutline
TopoDS_Shape visSeam
TopoDS_Shape visSmooth

Constructor & Destructor Documentation

◆ GeometryObject()

GeometryObject::GeometryObject ( const std::string &  parent,
TechDraw::DrawView parentObj 


◆ ~GeometryObject()

GeometryObject::~GeometryObject ( )

References clear().

Member Function Documentation

◆ addCenterLine()

int GeometryObject::addCenterLine ( TechDraw::BaseGeomPtr  bg,
std::string  tag 

◆ addCosmeticEdge() [1/4]

int GeometryObject::addCosmeticEdge ( Base::Vector3d  start,
Base::Vector3d  end 

◆ addCosmeticEdge() [2/4]

int GeometryObject::addCosmeticEdge ( Base::Vector3d  start,
Base::Vector3d  end,
std::string  tagString 

◆ addCosmeticEdge() [3/4]

◆ addCosmeticEdge() [4/4]

int GeometryObject::addCosmeticEdge ( TechDraw::BaseGeomPtr  base,
std::string  tagString 

References edgeGeom.

◆ addCosmeticVertex() [1/3]

int GeometryObject::addCosmeticVertex ( Base::Vector3d  pos)

◆ addCosmeticVertex() [2/3]

int GeometryObject::addCosmeticVertex ( Base::Vector3d  pos,
std::string  tagString 

References vertexGeom.

◆ addCosmeticVertex() [3/3]

◆ addEdge()

void GeometryObject::addEdge ( TechDraw::BaseGeomPtr  bg)

◆ addFaceGeom()

void GeometryObject::addFaceGeom ( FacePtr  f)

add a Face to Face Geometry

References faceGeom.

Referenced by TechDraw::DrawViewPart::extractFaces().

◆ addGeomFromCompound()

void GeometryObject::addGeomFromCompound ( TopoDS_Shape  edgeCompound,
edgeClass  category,
bool  visible 

◆ addVertex()

void GeometryObject::addVertex ( TechDraw::VertexPtr  v)

◆ calcBoundingBox()

Base::BoundBox3d GeometryObject::calcBoundingBox ( ) const

◆ clear()

void GeometryObject::clear ( void  )

◆ clearFaceGeom()

void GeometryObject::clearFaceGeom ( )

empty Face geometry

References faceGeom.

Referenced by TechDraw::DrawViewPart::extractFaces().

◆ extractGeometry()

◆ findVertex()

bool GeometryObject::findVertex ( Base::Vector3d  v)

does this GeometryObject already have this vertex

References DraftVecUtils::dist(), and vertexGeom.

◆ getEdgeGeometry()

const BaseGeomPtrVector & TechDraw::GeometryObject::getEdgeGeometry ( ) const

◆ getFaceGeometry()

const std::vector< FacePtr > & TechDraw::GeometryObject::getFaceGeometry ( ) const

◆ getFocus()

double TechDraw::GeometryObject::getFocus ( void  )

◆ getHidHard()

TopoDS_Shape TechDraw::GeometryObject::getHidHard ( void  )

◆ getHidIso()

TopoDS_Shape TechDraw::GeometryObject::getHidIso ( void  )

◆ getHidOutline()

TopoDS_Shape TechDraw::GeometryObject::getHidOutline ( void  )

◆ getHidSeam()

TopoDS_Shape TechDraw::GeometryObject::getHidSeam ( void  )

◆ getHidSmooth()

TopoDS_Shape TechDraw::GeometryObject::getHidSmooth ( void  )

◆ getVertexGeometry()

const std::vector< VertexPtr > & TechDraw::GeometryObject::getVertexGeometry ( ) const

◆ getVisHard()

TopoDS_Shape TechDraw::GeometryObject::getVisHard ( void  )

◆ getVisibleFaceEdges()

◆ getVisIso()

TopoDS_Shape TechDraw::GeometryObject::getVisIso ( void  )

◆ getVisOutline()

TopoDS_Shape TechDraw::GeometryObject::getVisOutline ( void  )

◆ getVisSeam()

TopoDS_Shape TechDraw::GeometryObject::getVisSeam ( void  )

◆ getVisSmooth()

TopoDS_Shape TechDraw::GeometryObject::getVisSmooth ( void  )

◆ invertGeometry()

TopoDS_Shape GeometryObject::invertGeometry ( const TopoDS_Shape  s)

◆ isParentDetail()

TechDraw::DrawViewDetail * GeometryObject::isParentDetail ( void  )

References m_parent.

◆ isPerspective() [1/2]

void TechDraw::GeometryObject::isPerspective ( bool  b)

◆ isPerspective() [2/2]

bool TechDraw::GeometryObject::isPerspective ( void  )

◆ isWithinArc()

bool GeometryObject::isWithinArc ( double  theta,
double  first,
double  last,
bool  cw 
) const

Returns true iff angle theta is in [first, last], where the arc goes clockwise (cw=true) or counterclockwise (cw=false) from first to last.

◆ projectFace()

TopoDS_Shape GeometryObject::projectFace ( const TopoDS_Shape &  face,
const gp_Ax2 &  CS 

References invertGeometry().

Referenced by ArchVRM.Renderer::reorient().

◆ projectShape()

void GeometryObject::projectShape ( const TopoDS_Shape &  input,
const gp_Ax2 &  viewAxis 

◆ projectShapeWithPolygonAlgo()

void GeometryObject::projectShapeWithPolygonAlgo ( const TopoDS_Shape &  input,
const gp_Ax2 &  viewAxis 

◆ pruneVertexGeom()

void GeometryObject::pruneVertexGeom ( Base::Vector3d  center,
double  radius 

◆ setEdgeGeometry()

void TechDraw::GeometryObject::setEdgeGeometry ( BaseGeomPtrVector  newGeoms)

◆ setFocus()

◆ setIsoCount()

void TechDraw::GeometryObject::setIsoCount ( int  i)

◆ setParentName()

void TechDraw::GeometryObject::setParentName ( std::string  n)

◆ setVertexGeometry()

void TechDraw::GeometryObject::setVertexGeometry ( std::vector< VertexPtr newVerts)

◆ usePolygonHLR() [1/2]

◆ usePolygonHLR() [2/2]

bool TechDraw::GeometryObject::usePolygonHLR ( void  ) const

Member Data Documentation

◆ edgeGeom

◆ faceGeom

std::vector<FacePtr> TechDraw::GeometryObject::faceGeom

Referenced by addFaceGeom(), clear(), and clearFaceGeom().

◆ hidHard

TopoDS_Shape TechDraw::GeometryObject::hidHard

◆ hidIso

TopoDS_Shape TechDraw::GeometryObject::hidIso

Referenced by extractGeometry(), and projectShape().

◆ hidOutline

TopoDS_Shape TechDraw::GeometryObject::hidOutline

◆ hidSeam

TopoDS_Shape TechDraw::GeometryObject::hidSeam

◆ hidSmooth

TopoDS_Shape TechDraw::GeometryObject::hidSmooth

◆ m_focus

double TechDraw::GeometryObject::m_focus

◆ m_isoCount

int TechDraw::GeometryObject::m_isoCount

Referenced by projectShape().

◆ m_isPersp

bool TechDraw::GeometryObject::m_isPersp

◆ m_parent

TechDraw::DrawView* TechDraw::GeometryObject::m_parent

◆ m_parentName

std::string TechDraw::GeometryObject::m_parentName

◆ m_usePolygonHLR

bool TechDraw::GeometryObject::m_usePolygonHLR

◆ vertexGeom

std::vector<VertexPtr> TechDraw::GeometryObject::vertexGeom

◆ visHard

TopoDS_Shape TechDraw::GeometryObject::visHard

◆ visIso

TopoDS_Shape TechDraw::GeometryObject::visIso

Referenced by extractGeometry(), and projectShape().

◆ visOutline

TopoDS_Shape TechDraw::GeometryObject::visOutline

◆ visSeam

TopoDS_Shape TechDraw::GeometryObject::visSeam

◆ visSmooth

TopoDS_Shape TechDraw::GeometryObject::visSmooth

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