#include <GeomAPI_Pnt.h>
#include <GeomAPI_Dir.h>
#include <GeomAPI_ShapeExplorer.h>
+#include <GeomAPI_ShapeIterator.h>
#include <GeomAlgoAPI_NExplode.h>
#include <GeomDataAPI_Dir.h>
isDumpByGeom = aSelectedFeature && aSelectedFeature->isInHistory();
}
+ if (theAttrSelect->isGeometricalSelection() && aShape->shapeType() == GeomAPI_Shape::COMPOUND) {
+ GeomAPI_ShapeIterator anIt(aShape);
+ aShape = anIt.current();
+ }
+
myDumpBuffer << "\"" << aShape->shapeTypeStr();
bool aStandardDump = true;
if (isDumpByGeom) {
anIndex = anOutput.str();
}
- myDumpBuffer << anIndex << "\", ";
- *this << aMiddlePoint;
+ myDumpBuffer << anIndex << "\", ("
+ << aMiddlePoint->x() << ", "
+ << aMiddlePoint->y() << ", "
+ << aMiddlePoint->z() << ")";
aStandardDump = false;
- } if (theAttrSelect->isWeakNaming() ||
- (myWeakNamingSelection && aShape.get() && theAttrSelect->context().get() &&
- aShape != theAttrSelect->context()->shape())) { // weak naming for local selection only
+ } else if (myWeakNamingSelection && aShape.get() && theAttrSelect->context().get() &&
+ aShape != theAttrSelect->context()->shape()) { // weak naming for local selection only
GeomAlgoAPI_NExplode aNExplode(theAttrSelect->context()->shape(), aShape->shapeType());
int anIndex = aNExplode.index(aShape);
if (anIndex != 0) { // found a week-naming index, so, export it
- myDumpBuffer<<"\", \""<<theAttrSelect->context()->data()->name()<<"\", "<<anIndex;
+ myDumpBuffer<<"\", \""<<
+ theAttrSelect->contextName(theAttrSelect->context())<<"\", "<<anIndex;
aStandardDump = false;
}
}