0000768: Part Sweep and Loft limitations and bugs
This commit is contained in:
parent
bac709b276
commit
5a96582a48
|
@ -241,11 +241,12 @@ App::DocumentObjectExecReturn *Loft::execute(void)
|
||||||
if (shape.IsNull())
|
if (shape.IsNull())
|
||||||
return new App::DocumentObjectExecReturn("Linked shape is invalid.");
|
return new App::DocumentObjectExecReturn("Linked shape is invalid.");
|
||||||
if (shape.ShapeType() == TopAbs_FACE) {
|
if (shape.ShapeType() == TopAbs_FACE) {
|
||||||
TopoDS_Wire faceouterWire = ShapeAnalysis::OuterWire(TopoDS::Face(shape));
|
TopoDS_Wire faceouterWire = ShapeAnalysis::OuterWire(TopoDS::Face(shape));
|
||||||
profiles.Append(faceouterWire);
|
profiles.Append(faceouterWire);
|
||||||
}
|
}
|
||||||
else if (shape.ShapeType() == TopAbs_WIRE) {
|
else if (shape.ShapeType() == TopAbs_WIRE) {
|
||||||
profiles.Append(shape);
|
BRepBuilderAPI_MakeWire mkWire(TopoDS::Wire(shape));
|
||||||
|
profiles.Append(mkWire.Wire());
|
||||||
}
|
}
|
||||||
else if (shape.ShapeType() == TopAbs_EDGE) {
|
else if (shape.ShapeType() == TopAbs_EDGE) {
|
||||||
BRepBuilderAPI_MakeWire mkWire(TopoDS::Edge(shape));
|
BRepBuilderAPI_MakeWire mkWire(TopoDS::Edge(shape));
|
||||||
|
@ -357,7 +358,7 @@ App::DocumentObjectExecReturn *Sweep::execute(void)
|
||||||
// If we re-create the wire then everything works fine.
|
// If we re-create the wire then everything works fine.
|
||||||
// https://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=10&t=2673&sid=fbcd2ff4589f0b2f79ed899b0b990648#p20268
|
// https://sourceforge.net/apps/phpbb/free-cad/viewtopic.php?f=10&t=2673&sid=fbcd2ff4589f0b2f79ed899b0b990648#p20268
|
||||||
if (shape.ShapeType() == TopAbs_FACE) {
|
if (shape.ShapeType() == TopAbs_FACE) {
|
||||||
TopoDS_Wire faceouterWire = ShapeAnalysis::OuterWire(TopoDS::Face(shape));
|
TopoDS_Wire faceouterWire = ShapeAnalysis::OuterWire(TopoDS::Face(shape));
|
||||||
profiles.Append(faceouterWire);
|
profiles.Append(faceouterWire);
|
||||||
}
|
}
|
||||||
else if (shape.ShapeType() == TopAbs_WIRE) {
|
else if (shape.ShapeType() == TopAbs_WIRE) {
|
||||||
|
|
Loading…
Reference in New Issue
Block a user