TechDraw: Implement smart dimension tool.
This commit is contained in:
@@ -86,6 +86,12 @@ ReferenceEntry& ReferenceEntry::operator=(const ReferenceEntry& otherRef)
|
||||
}
|
||||
|
||||
|
||||
bool ReferenceEntry::operator==(const ReferenceEntry& otherRef) const
|
||||
{
|
||||
return getObjectName() == otherRef.getObjectName() && getSubName() == otherRef.getSubName();
|
||||
}
|
||||
|
||||
|
||||
TopoDS_Shape ReferenceEntry::getGeometry() const
|
||||
{
|
||||
// Base::Console().Message("RE::getGeometry() - objectName: %s sub: **%s**\n",
|
||||
@@ -259,6 +265,19 @@ std::string ReferenceEntry::geomType() const
|
||||
return DrawUtil::getGeomTypeFromName(getSubName());
|
||||
}
|
||||
|
||||
GeomType ReferenceEntry::geomEdgeType() const
|
||||
{
|
||||
int geoId = TechDraw::DrawUtil::getIndexFromName(getSubName());
|
||||
auto dvp = static_cast<TechDraw::DrawViewPart*>(getObject());
|
||||
BaseGeomPtr geom = dvp->getGeomByIndex(geoId);
|
||||
|
||||
if (geomType() == "Edge" && geom) {
|
||||
return geom->getGeomType();
|
||||
}
|
||||
|
||||
return GeomType::NOTDEF;
|
||||
}
|
||||
|
||||
bool ReferenceEntry::isWholeObject() const
|
||||
{
|
||||
return getSubName().empty();
|
||||
|
||||
Reference in New Issue
Block a user