#include <DrawProjectSplit.h>
|
static TechDraw::GeometryObject * | buildGeometryObject (TopoDS_Shape shape, const gp_Ax2 &viewAxis) |
|
static std::vector< TopoDS_Edge > | getEdgesForWalker (TopoDS_Shape shape, double scale, Base::Vector3d direction) |
|
static bool | isOnEdge (TopoDS_Edge e, TopoDS_Vertex v, double ¶m, bool allowEnds=false) |
|
static std::vector< TopoDS_Edge > | removeDuplicateEdges (std::vector< TopoDS_Edge > &inEdges) |
|
static std::vector< edgeSortItem > | sortEdges (std::vector< edgeSortItem > &e, bool ascend) |
|
static std::vector< splitPoint > | sortSplits (std::vector< splitPoint > &s, bool ascend) |
|
static std::vector< TopoDS_Edge > | split1Edge (TopoDS_Edge e, std::vector< splitPoint > splitPoints) |
|
static bool | splitCompare (const splitPoint &p1, const splitPoint &p2) |
|
static std::vector< TopoDS_Edge > | splitEdges (std::vector< TopoDS_Edge > orig, std::vector< splitPoint > splits) |
|
static bool | splitEqual (const splitPoint &p1, const splitPoint &p2) |
|
◆ DrawProjectSplit()
DrawProjectSplit::DrawProjectSplit |
( |
| ) |
|
◆ ~DrawProjectSplit()
DrawProjectSplit::~DrawProjectSplit |
( |
| ) |
|
◆ buildGeometryObject()
◆ getEdges()
get the projected edges with all their new intersections.
References Base::Console(), TechDraw::GeometryObject::getVisibleFaceEdges(), TechDraw::splitPoint::i, isOnEdge(), TechDraw::DrawUtil::isZeroEdge(), Base::ConsoleSingleton::Log(), Base::ConsoleSingleton::Message(), draftguitools.gui_annotationstyleeditor::param, TechDraw::splitPoint::param, removeDuplicateEdges(), sortSplits(), splitEdges(), splitEqual(), and TechDraw::splitPoint::v.
Referenced by getEdgesForWalker().
◆ getEdgesForWalker()
std::vector< TopoDS_Edge > DrawProjectSplit::getEdgesForWalker |
( |
TopoDS_Shape |
shape, |
|
|
double |
scale, |
|
|
Base::Vector3d |
direction |
|
) |
| |
|
static |
◆ isOnEdge()
bool DrawProjectSplit::isOnEdge |
( |
TopoDS_Edge |
e, |
|
|
TopoDS_Vertex |
v, |
|
|
double & |
param, |
|
|
bool |
allowEnds = false |
|
) |
| |
|
static |
◆ removeDuplicateEdges()
std::vector< TopoDS_Edge > DrawProjectSplit::removeDuplicateEdges |
( |
std::vector< TopoDS_Edge > & |
inEdges | ) |
|
|
static |
References TechDraw::DrawUtil::angleWithX(), Base::Console(), TechDraw::edgeSortItem::edgeEqual(), TechDraw::edgeSortItem::end, TechDraw::edgeSortItem::endAngle, TechDraw::edgeSortItem::idx, Base::ConsoleSingleton::Message(), sortEdges(), TechDraw::edgeSortItem::start, TechDraw::edgeSortItem::startAngle, TechDraw::DrawUtil::vectorLess(), and TechDraw::DrawUtil::vertex2Vector().
Referenced by TechDraw::DrawViewPart::extractFaces(), and getEdges().
◆ sortEdges()
◆ sortSplits()
◆ split1Edge()
std::vector< TopoDS_Edge > DrawProjectSplit::split1Edge |
( |
TopoDS_Edge |
e, |
|
|
std::vector< splitPoint > |
splitPoints |
|
) |
| |
|
static |
◆ splitCompare()
◆ splitEdges()
std::vector< TopoDS_Edge > DrawProjectSplit::splitEdges |
( |
std::vector< TopoDS_Edge > |
orig, |
|
|
std::vector< splitPoint > |
splits |
|
) |
| |
|
static |
◆ splitEqual()
The documentation for this class was generated from the following files:
- FreeCAD/src/Mod/TechDraw/App/DrawProjectSplit.h
- FreeCAD/src/Mod/TechDraw/App/DrawProjectSplit.cpp