#include <GeometryObject.h>
Public Member Functions | |
| int | addCenterLine (TechDraw::BaseGeom *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::BaseGeom *base, std::string tagString) |
| int | addCosmeticVertex (Base::Vector3d pos) |
| int | addCosmeticVertex (Base::Vector3d pos, std::string tagString) |
| int | addCosmeticVertex (CosmeticVertex *cv) |
| void | addEdge (TechDraw::BaseGeom *bg) |
| void | addFaceGeom (Face *f) |
| add a Face to Face Geometry More... | |
| void | addVertex (TechDraw::Vertex *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 std::vector< BaseGeom * > & | getEdgeGeometry () const |
| const std::vector< Face * > & | 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< Vertex * > & | getVertexGeometry () const |
| TopoDS_Shape | getVisHard (void) |
| const std::vector< BaseGeom * > | 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 (std::vector< BaseGeom * > newGeoms) |
| void | setFocus (double f) |
| void | setIsoCount (int i) |
| void | setParentName (std::string n) |
| void | setVertexGeometry (std::vector< Vertex * > 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::DrawViewDetail * | isParentDetail (void) |
| bool | isWithinArc (double theta, double first, double last, bool cw) const |
Protected Attributes | |
| std::vector< BaseGeom * > | edgeGeom |
| std::vector< Face * > | faceGeom |
| TopoDS_Shape | hidHard |
| TopoDS_Shape | hidIso |
| TopoDS_Shape | hidOutline |
| TopoDS_Shape | hidSeam |
| TopoDS_Shape | hidSmooth |
| double | m_focus |
| int | m_isoCount |
| bool | m_isPersp |
| TechDraw::DrawView * | m_parent |
| std::string | m_parentName |
| bool | m_usePolygonHLR |
| std::vector< Vertex * > | vertexGeom |
| 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 | ||
| ) |
Constructor.
◆ ~GeometryObject()
|
virtual |
References clear().
Member Function Documentation
◆ addCenterLine()
| int GeometryObject::addCenterLine | ( | TechDraw::BaseGeom * | bg, |
| std::string | tag | ||
| ) |
References edgeGeom.
Referenced by TechDraw::DrawViewPart::add1CLToGE(), and TechDraw::DrawViewPart::addCenterLinesToGeom().
◆ addCosmeticEdge() [1/4]
| int GeometryObject::addCosmeticEdge | ( | Base::Vector3d | start, |
| Base::Vector3d | end | ||
| ) |
References TechDraw::BaseGeom::baseFactory(), and edgeGeom.
◆ addCosmeticEdge() [2/4]
| int GeometryObject::addCosmeticEdge | ( | Base::Vector3d | start, |
| Base::Vector3d | end, | ||
| std::string | tagString | ||
| ) |
References TechDraw::BaseGeom::baseFactory(), and edgeGeom.
◆ addCosmeticEdge() [3/4]
| int GeometryObject::addCosmeticEdge | ( | CosmeticEdge * | ce | ) |
◆ addCosmeticEdge() [4/4]
| int GeometryObject::addCosmeticEdge | ( | TechDraw::BaseGeom * | base, |
| std::string | tagString | ||
| ) |
References edgeGeom.
◆ addCosmeticVertex() [1/3]
| int GeometryObject::addCosmeticVertex | ( | Base::Vector3d | pos | ) |
References Base::Console(), Base::ConsoleSingleton::Message(), and vertexGeom.
◆ addCosmeticVertex() [2/3]
| int GeometryObject::addCosmeticVertex | ( | Base::Vector3d | pos, |
| std::string | tagString | ||
| ) |
References vertexGeom.
◆ addCosmeticVertex() [3/3]
| int GeometryObject::addCosmeticVertex | ( | CosmeticVertex * | cv | ) |
◆ addEdge()
| void GeometryObject::addEdge | ( | TechDraw::BaseGeom * | bg | ) |
References edgeGeom.
◆ addFaceGeom()
| void GeometryObject::addFaceGeom | ( | Face * | f | ) |
References faceGeom.
Referenced by TechDraw::DrawViewPart::extractFaces().
◆ addGeomFromCompound()
|
protected |
update edgeGeom and vertexGeom from Compound of edges
References TechDraw::BaseGeom::baseFactory(), Base::Console(), edgeGeom, TechDraw::BaseGeom::getEndPoint(), TechDraw::BaseGeom::getStartPoint(), TechDraw::DrawUtil::isCrazy(), TechDraw::DrawUtil::isZeroEdge(), Base::ConsoleSingleton::Log(), and vertexGeom.
Referenced by extractGeometry().
◆ addVertex()
| void GeometryObject::addVertex | ( | TechDraw::Vertex * | v | ) |
References vertexGeom.
Referenced by TechDraw::DrawViewPart::addShapes2d().
◆ calcBoundingBox()
| Base::BoundBox3d GeometryObject::calcBoundingBox | ( | ) | const |
Returns 2D bounding box.
References Base::Console(), edgeGeom, and Base::ConsoleSingleton::Log().
Referenced by TechDraw::DrawViewPart::buildGeometryObject().
◆ clear()
| void GeometryObject::clear | ( | ) |
References edgeGeom, faceGeom, and vertexGeom.
Referenced by TechDraw::DrawViewDetail::detailExec(), projectShape(), projectShapeWithPolygonAlgo(), and ~GeometryObject().
◆ clearFaceGeom()
| void GeometryObject::clearFaceGeom | ( | ) |
◆ extractGeometry()
add edges meeting filter criteria for category, visibility
References addGeomFromCompound(), Base::Console(), TechDraw::ecHARD, TechDraw::ecOUTLINE, TechDraw::ecSEAM, TechDraw::ecSMOOTH, TechDraw::ecUVISO, hidHard, hidIso, hidOutline, hidSeam, hidSmooth, visHard, visIso, visOutline, visSeam, visSmooth, and Base::ConsoleSingleton::Warning().
Referenced by TechDraw::DrawProjectSplit::buildGeometryObject(), and TechDraw::DrawViewPart::buildGeometryObject().
◆ findVertex()
|
protected |
does this GeometryObject already have this vertex
References DraftVecUtils::dist(), and vertexGeom.
◆ getEdgeGeometry()
| const std::vector<BaseGeom *>& TechDraw::GeometryObject::getEdgeGeometry | ( | ) | const |
◆ getFaceGeometry()
| const std::vector<Face *>& TechDraw::GeometryObject::getFaceGeometry | ( | ) | const |
Referenced by TechDraw::DrawViewPart::getFaceGeometry().
◆ 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<Vertex *>& TechDraw::GeometryObject::getVertexGeometry | ( | ) | const |
Referenced by TechDraw::DrawViewPart::getVertexGeometry(), and pruneVertexGeom().
◆ 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()
|
static |
◆ isParentDetail()
|
protected |
References m_parent.
◆ isPerspective() [1/2]
| void TechDraw::GeometryObject::isPerspective | ( | bool | b | ) |
Referenced by TechDraw::DrawViewPart::buildGeometryObject().
◆ isPerspective() [2/2]
| bool TechDraw::GeometryObject::isPerspective | ( | void | ) |
◆ isWithinArc()
|
protected |
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().
◆ projectShape()
| void GeometryObject::projectShape | ( | const TopoDS_Shape & | input, |
| const gp_Ax2 | viewAxis | ||
| ) |
set up a hidden line remover and project a shape with it
References clear(), Base::Console(), Base::ConsoleSingleton::Error(), hidHard, hidIso, hidOutline, hidSeam, hidSmooth, invertGeometry(), Base::ConsoleSingleton::Log(), m_focus, m_isoCount, m_isPersp, m_parentName, visHard, visIso, visOutline, visSeam, and visSmooth.
Referenced by TechDraw::DrawProjectSplit::buildGeometryObject(), and TechDraw::DrawViewPart::buildGeometryObject().
◆ projectShapeWithPolygonAlgo()
| void GeometryObject::projectShapeWithPolygonAlgo | ( | const TopoDS_Shape & | input, |
| const gp_Ax2 | viewAxis | ||
| ) |
set up a hidden line remover and project a shape with it
References clear(), Base::Console(), Base::ConsoleSingleton::Error(), TechDraw::findCentroid(), hidHard, hidOutline, hidSeam, hidSmooth, invertGeometry(), Base::ConsoleSingleton::Log(), m_focus, m_isPersp, m_parentName, TechDraw::moveShape(), visHard, visOutline, visSeam, and visSmooth.
Referenced by TechDraw::DrawProjectSplit::buildGeometryObject(), and TechDraw::DrawViewPart::buildGeometryObject().
◆ pruneVertexGeom()
| void GeometryObject::pruneVertexGeom | ( | Base::Vector3d | center, |
| double | radius | ||
| ) |
References getVertexGeometry(), and vertexGeom.
◆ setEdgeGeometry()
| void TechDraw::GeometryObject::setEdgeGeometry | ( | std::vector< BaseGeom * > | newGeoms | ) |
Referenced by TechDraw::DrawViewPart::refreshCEGeoms(), and TechDraw::DrawViewPart::refreshCLGeoms().
◆ setFocus()
| void TechDraw::GeometryObject::setFocus | ( | double | f | ) |
Referenced by TechDraw::DrawViewPart::buildGeometryObject().
◆ setIsoCount()
| void TechDraw::GeometryObject::setIsoCount | ( | int | i | ) |
Referenced by TechDraw::DrawViewPart::buildGeometryObject().
◆ setParentName()
| void TechDraw::GeometryObject::setParentName | ( | std::string | n | ) |
◆ setVertexGeometry()
| void TechDraw::GeometryObject::setVertexGeometry | ( | std::vector< Vertex * > | newVerts | ) |
◆ usePolygonHLR() [1/2]
| void TechDraw::GeometryObject::usePolygonHLR | ( | bool | b | ) |
◆ usePolygonHLR() [2/2]
| bool TechDraw::GeometryObject::usePolygonHLR | ( | void | ) | const |
Member Data Documentation
◆ edgeGeom
|
protected |
Referenced by addCenterLine(), addCosmeticEdge(), addEdge(), addGeomFromCompound(), calcBoundingBox(), clear(), and getVisibleFaceEdges().
◆ faceGeom
|
protected |
Referenced by addFaceGeom(), clear(), and clearFaceGeom().
◆ hidHard
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ hidIso
|
protected |
Referenced by extractGeometry(), and projectShape().
◆ hidOutline
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ hidSeam
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ hidSmooth
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ m_focus
|
protected |
Referenced by projectShape(), and projectShapeWithPolygonAlgo().
◆ m_isoCount
|
protected |
Referenced by projectShape().
◆ m_isPersp
|
protected |
Referenced by projectShape(), and projectShapeWithPolygonAlgo().
◆ m_parent
|
protected |
Referenced by addCosmeticEdge(), addCosmeticVertex(), and isParentDetail().
◆ m_parentName
|
protected |
Referenced by projectShape(), and projectShapeWithPolygonAlgo().
◆ m_usePolygonHLR
|
protected |
◆ vertexGeom
|
protected |
Referenced by addCosmeticVertex(), addGeomFromCompound(), addVertex(), clear(), findVertex(), and pruneVertexGeom().
◆ visHard
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ visIso
|
protected |
Referenced by extractGeometry(), and projectShape().
◆ visOutline
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ visSeam
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
◆ visSmooth
|
protected |
Referenced by extractGeometry(), projectShape(), and projectShapeWithPolygonAlgo().
The documentation for this class was generated from the following files:
- src/Mod/TechDraw/App/GeometryObject.h
- src/Mod/TechDraw/App/GeometryObject.cpp
1.8.17