0022468: [CEA 1048] IMP GEOM: creating groups on materials at STEP import

Additional fix to make correct Python dump when material groups are created
This commit is contained in:
vsr 2014-04-04 10:57:53 +04:00
parent 6833ee2b3e
commit 2df46277e9
3 changed files with 23 additions and 6 deletions

View File

@ -125,6 +125,22 @@ namespace GEOM
return *this; return *this;
} }
TPythonDump& TPythonDump::operator<< (const Handle(TColStd_HSequenceOfTransient)& theObjects)
{
Standard_Integer aLength = theObjects->Length();
if ( aLength > 1 ) {
myStream << "[";
}
for ( Standard_Integer i = 1; i <= aLength; i++ ) {
*this << Handle(GEOM_Object)::DownCast(theObjects->Value(i));
if ( i < aLength ) myStream << ", ";
}
if ( aLength > 1 ) {
myStream << "]";
}
return *this;
}
TPythonDump& TPythonDump::operator<< (const GEOM_BaseObject* theObject) TPythonDump& TPythonDump::operator<< (const GEOM_BaseObject* theObject)
{ {
if ( !theObject ) { if ( !theObject ) {

View File

@ -56,6 +56,7 @@ namespace GEOM
Standard_EXPORT TPythonDump& operator<< (const TCollection_AsciiString theArg); Standard_EXPORT TPythonDump& operator<< (const TCollection_AsciiString theArg);
Standard_EXPORT TPythonDump& operator<< (const TopAbs_ShapeEnum theArg); Standard_EXPORT TPythonDump& operator<< (const TopAbs_ShapeEnum theArg);
Standard_EXPORT TPythonDump& operator<< (const Handle(GEOM_BaseObject)& theObject); Standard_EXPORT TPythonDump& operator<< (const Handle(GEOM_BaseObject)& theObject);
Standard_EXPORT TPythonDump& operator<< (const Handle(TColStd_HSequenceOfTransient)& theObjects);
Standard_EXPORT TPythonDump& operator<< (const GEOM_BaseObject* theObject); Standard_EXPORT TPythonDump& operator<< (const GEOM_BaseObject* theObject);
}; };

View File

@ -303,17 +303,17 @@ Handle(TColStd_HSequenceOfTransient) GEOMImpl_IInsertOperations::Import
if (theFormatName != "IGES_UNIT") { if (theFormatName != "IGES_UNIT") {
GEOM::TPythonDump pd (aFunction); GEOM::TPythonDump pd (aFunction);
if (theFormatName == "BREP") if (theFormatName == "BREP")
pd << anImported << " = geompy.ImportBREP(\"" << theFileName.ToCString() << "\")"; pd << aSeq << " = geompy.ImportBREP(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "IGES") else if (theFormatName == "IGES")
pd << anImported << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\")"; pd << aSeq << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "IGES_SCALE") else if (theFormatName == "IGES_SCALE")
pd << anImported << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\", True)"; pd << aSeq << " = geompy.ImportIGES(\"" << theFileName.ToCString() << "\", True)";
else if (theFormatName == "STEP") else if (theFormatName == "STEP")
pd << anImported << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\")"; pd << aSeq << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\")";
else if (theFormatName == "STEP_SCALE") else if (theFormatName == "STEP_SCALE")
pd << anImported << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\", True)"; pd << aSeq << " = geompy.ImportSTEP(\"" << theFileName.ToCString() << "\", True)";
else { else {
pd << anImported << " = geompy.ImportFile(\"" pd << aSeq << " = geompy.ImportFile(\""
<< theFileName.ToCString() << "\", \"" << theFormatName.ToCString() << "\")"; << theFileName.ToCString() << "\", \"" << theFormatName.ToCString() << "\")";
} }
} }