mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-04-10 18:51:21 +03:00
0025092: COMPSOLIDs are not exported to STEP
Now COMPSOLID is translated like a set of SOLIDs. Test cases for issue CR25092
This commit is contained in:
parent
9cc773b5ad
commit
846c92e0f5
@ -827,14 +827,23 @@ Handle(Transfer_Binder) STEPControl_ActorWrite::TransferShape (const Handle(Tran
|
|||||||
else if (theShape.ShapeType() == TopAbs_FACE) {
|
else if (theShape.ShapeType() == TopAbs_FACE) {
|
||||||
RepItemSeq->Append(TopoDS::Face(theShape));
|
RepItemSeq->Append(TopoDS::Face(theShape));
|
||||||
}
|
}
|
||||||
|
else if (theShape.ShapeType() == TopAbs_COMPSOLID) {
|
||||||
|
FP->AddWarning(start,"NonManifold COMPSOLID was translated like a set of SOLIDs");
|
||||||
|
if ( GroupMode() > 0)
|
||||||
|
return TransferCompound(start, SDR0, FP);
|
||||||
|
else {
|
||||||
|
TopExp_Explorer SolidExp;
|
||||||
|
for (SolidExp.Init(theShape, TopAbs_SOLID);
|
||||||
|
SolidExp.More();SolidExp.Next()) {
|
||||||
|
RepItemSeq->Append(TopoDS::Solid(SolidExp.Current()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
else if (mymode != STEPControl_GeometricCurveSet && mymode != STEPControl_AsIs) {
|
else if (mymode != STEPControl_GeometricCurveSet && mymode != STEPControl_AsIs) {
|
||||||
FP->AddFail(start,"The Shape is not a SOLID, nor a SHELL, nor a FACE");
|
FP->AddFail(start,"The Shape is not a SOLID, nor a SHELL, nor a FACE");
|
||||||
return binder;
|
return binder;
|
||||||
}
|
}
|
||||||
else if (theShape.ShapeType() == TopAbs_COMPSOLID) {
|
|
||||||
FP->AddWarning(start, "COMPSOLID is not exported yet");
|
|
||||||
return binder;
|
|
||||||
}
|
|
||||||
else RepItemSeq->Append (theShape);
|
else RepItemSeq->Append (theShape);
|
||||||
|
|
||||||
// COMPUTING 3D TOLERANCE
|
// COMPUTING 3D TOLERANCE
|
||||||
|
14
tests/bugs/step/bug25092
Executable file
14
tests/bugs/step/bug25092
Executable file
@ -0,0 +1,14 @@
|
|||||||
|
puts "============"
|
||||||
|
puts "OCC25092"
|
||||||
|
puts "============"
|
||||||
|
puts ""
|
||||||
|
#######################################################################
|
||||||
|
# COMPSOLIDs are not exported to STEP
|
||||||
|
#######################################################################
|
||||||
|
|
||||||
|
restore [locate_data_file bug25092_compsolid.brep] b
|
||||||
|
|
||||||
|
set aFile ${imagedir}/bug25092.stp
|
||||||
|
catch { file delete ${aFile} }
|
||||||
|
|
||||||
|
stepwrite 0 b ${aFile}
|
Loading…
x
Reference in New Issue
Block a user