1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-14 13:30:48 +03:00

0025843: Wire containing degenerated edge is not written to IGES / STEP

add check for edges with null 2D and 3D curves for STEP,
for IGES problem exists only with wires, where non-invalid edge is only one, and it is not the last in wire(fixed).

Test case for issue CR25843
This commit is contained in:
ika
2015-03-19 15:43:17 +03:00
committed by bugmaster
parent 4dcc5ecb4f
commit 7f0b39bec9
4 changed files with 61 additions and 5 deletions

View File

@@ -525,8 +525,8 @@ Handle(IGESData_IGESEntity) BRepToIGES_BRWire ::TransferWire
AddWarning(mywire, "an Edge is a null entity");
}
else {
ent = TransferEdge(E, Standard_False);
if (!ent.IsNull()) Seq->Append(ent);
ent = TransferEdge(E, Standard_False);
if (!ent.IsNull()) Seq->Append(ent);
}
}
}
@@ -537,7 +537,7 @@ Handle(IGESData_IGESEntity) BRepToIGES_BRWire ::TransferWire
Standard_Integer nbedges = Seq->Length();
Handle(IGESData_HArray1OfIGESEntity) Tab;
if ( nbedges == 1 ) {
res = ent;
res = GetCasted(IGESData_IGESEntity, Seq->Value(1));
}
else if ( nbedges >= 2) {
Tab = new IGESData_HArray1OfIGESEntity(1,nbedges);