GuiCommand: Name: Surface BlendCurve MenuLocation: Surface , Blend Curve Workbenches: Surface_Workbench Version: 0.21
Surface BlendCurve
Description
creates a Bezier curve between two edges, with desired continuity.
The base geometry can belong to curves created with the Draft Workbench or the Sketcher Workbench, but can also belong to solid objects such as those created with the Part Workbench.
*Surface Blend Curve joining 2 edges with G3 continuity. Orange polygon represent the control points. Curvature comb (from [Curves addon](wiki-test2.php?gitpage=Curves_Workbench)) is smooth at contact points.*Usage
- Select two edges in the 3D view
- There are several ways to invoke the command:
- Press the Surface Blend Curve button.
- Select the Surface → Blend Curve option from the menu.
- Adjust the curve shape in the object Data properties
Properties
A Surface Blend Curve is derived from the basic Part Feature (Part::Feature
class, through the Part::Spline
subclass), therefore it shares all the latter\'s properties.
In addition to the properties described in Part Feature, the Surface Blend Curve has the following properties in the property editor.
Data
{{TitleProperty|Blend Curve}}
-
Start Edge|LinkSub: First input edge.
-
Start Continuity|Integer: Geometric continuity value
-
Start Parameter|Float: Normalized parameter along edge; from {{Value|0.0}}(edge start) to {{Value|1.0}}(edge end).
-
Start Size|Float: Size of the tangent.
-
End Edge|LinkSub: Second input edge.
-
End Continuity|Integer: Geometric continuity value
-
End Parameter|Float: Normalized parameter along edge; from {{Value|0.0}}(edge start) to {{Value|1.0}}(edge end).
-
End Size|Float: Size of the tangent.
View
{{TitleProperty|Base}}
- Control Points|Bool: it defaults to
False
; if set toTrue
, it will show an overlay with the control points of the curve.
Scripting
See also:
The Blend Curve tool can be used in macros and from the Python console by adding the Surface::FeatureBlendCurve
object.
- The edges to be used to define the curve must be assigned as LinkSub to the
StartEdge
andEndEdge
properties of the object. - All objects with edges need to be computed before they can be used as input for the properties of the Blend Curve object.
import FreeCAD as App
import Draft
doc = App.newDocument()
points1 = [App.Vector(-20, -20, 0), App.Vector(-20, -8, 0), App.Vector(-17, 7, 0), App.Vector(-18, 25, 0)]
obj1 = Draft.make_bspline(points1)
points2 = [App.Vector(60, 26, 0), App.Vector(37, 4, 0), App.Vector(33, -20, 0)]
obj2 = Draft.make_bspline(points2)
doc.recompute()
bcurve = doc.addObject("Surface::FeatureBlendCurve","BlendCurve")
bcurve.StartEdge = (obj1, 'Edge1')
bcurve.EndEdge = (obj2, 'Edge1')
bcurve.EndParameter = 1.00
bcurve.StartSize = -5.00
bcurve.EndSize = -5.00
doc.recompute()
{{Surface Tools navi}}
⏵ documentation index > Surface > Surface BlendCurve
This page is retrieved from https://github.com/FreeCAD/FreeCAD-documentation/blob/main/wiki/Surface_BlendCurve.md