PartDesign: New features AdditiveHelix and SubtractiveHelix
These features, based on the code for the Pipe class, allow the user to simply create a helical sweep within PartDesign workbench. Sample application is threads, springs, coils, augers, etc. Also, remove needless requirement for positive cone angle on helixes. Thanks to @bitacovir for helping with the icons Thanks to @chennes for review Thanks to @vosk for review Thanks to @wwmayer for review Enforce that links stay within scope for ProfileBased features This also ensures that the Body itself is not used for creating features within the body, causing a "Graph not a DAG" error.
This commit is contained in:
@@ -2437,7 +2437,7 @@ TopoDS_Shape TopoShape::makeLongHelix(Standard_Real pitch, Standard_Real height,
|
||||
Handle(Geom_Surface) surf;
|
||||
Standard_Boolean isCylinder;
|
||||
|
||||
if (angle < Precision::Confusion()) { // Cylindrical helix
|
||||
if (std::fabs(angle) < Precision::Confusion()) { // Cylindrical helix
|
||||
if (radius < Precision::Confusion())
|
||||
Standard_Failure::Raise("Radius of helix too small");
|
||||
surf= new Geom_CylindricalSurface(cylAx2, radius);
|
||||
@@ -2445,8 +2445,6 @@ TopoDS_Shape TopoShape::makeLongHelix(Standard_Real pitch, Standard_Real height,
|
||||
}
|
||||
else { // Conical helix
|
||||
angle = Base::toRadians(angle);
|
||||
if (angle < Precision::Confusion())
|
||||
Standard_Failure::Raise("Angle of helix too small");
|
||||
surf = new Geom_ConicalSurface(gp_Ax3(cylAx2), angle, radius);
|
||||
isCylinder = false;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user