PAL12520: Impossible to add a Sketcher Result in a Wire.

This commit is contained in:
jfa 2006-06-14 09:42:29 +00:00
parent 1c428833a9
commit 1d900ae5ce

View File

@ -114,18 +114,26 @@ Standard_Integer GEOMImpl_ShapeDriver::Execute(TFunction_Logbook& log) const
if (aShape_i.ShapeType() == TopAbs_EDGE) {
B.Add(aWire, TopoDS::Edge(aShape_i));
MW.Add(TopoDS::Edge(aShape_i));
if (!MW.IsDone()) {
// check status after each edge/wire addition, because the final status
// can be OK even in case, when some edges/wires was not accepted.
isMWDone = false;
}
} else if (aShape_i.ShapeType() == TopAbs_WIRE) {
B.Add(aWire, TopoDS::Wire(aShape_i));
MW.Add(TopoDS::Wire(aShape_i));
TopExp_Explorer exp (aShape_i, TopAbs_EDGE);
for (; exp.More(); exp.Next()) {
B.Add(aWire, TopoDS::Edge(exp.Current()));
MW.Add(TopoDS::Edge(exp.Current()));
if (!MW.IsDone()) {
// check status after each edge/wire addition, because the final status
// can be OK even in case, when some edges/wires was not accepted.
isMWDone = false;
}
}
} else {
Standard_TypeMismatch::Raise
("Shape for wire construction is neither an edge nor a wire");
}
if (!MW.IsDone()) {
// check status after each edge/wire addition, because the final status
// can be OK even in case, when some edges/wires was not accepted.
isMWDone = false;
}
}
if (isMWDone) {