Surface ExtendFace
This documentation is not finished. Please help and contribute documentation.
GuiCommand model explains how commands should be documented. Browse Category:UnfinishedDocu to see more incomplete pages like this one. See Category:Command Reference for all commands.
See WikiPages to learn about editing the wiki pages, and go to Help FreeCAD to learn about other ways in which you can contribute.
Surface ExtendFace |
Menu location |
---|
Surface → Extend face |
Workbenches |
Surface |
Default shortcut |
None |
Introduced in version |
0.17 |
See also |
None |
Description
Surface ExtendFace extrapolates an existing face or surface at its boundaries with its local U and V parameters.
File:Surface Extend example.png
Left: original surface. Right: extended surface.
Usage
Options
This command doesn't have any options. Either it works with the selection or not.
Properties
A Surface Extend object (Surface::Extend
class) 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 Filling has the following properties in the property editor.
Data
Base
- DataFace (
LinkSub
): the subelement from an object that will be extended. - DataTolerance (
FloatConstraint
): it defaults to0.1
.
- DataExtend UNeg (
FloatConstraint
): it defaults to0.05
. - DataExtend UPos (
FloatConstraint
): it defaults to0.05
. - DataExtend USymetric (
Bool
): it defaults totrue
, in which case DataExtend UNeg and DataExtend UPos will have the same value.
- DataExtend VNeg (
FloatConstraint
): it defaults to0.05
. - DataExtend VPos (
FloatConstraint
): it defaults to0.05
. - DataExtend VSymetric (
Bool
): it defaults totrue
, in which case DataExtend VNeg and DataExtend VPos will have the same value.
- DataSampleU (
IntegerConstraint
): it defaults to32
. - DataSampleV (
IntegerConstraint
): it defaults to32
.
View
Base
- ViewControl Points (
Bool
): it defaults tofalse
; if set totrue
, it will show an overlay with the control points of the surface.
Scripting
See also: FreeCAD Scripting Basics.
The Surface Extend tool can be used in macros and from the Python console by adding the Surface::Extend
object.
- The face to extend must be assigned as a LinkSub to the
Face
property of the object.
import FreeCAD as App
import Draft
doc = App.newDocument()
a = App.Vector(-20, -20, 0)
b = App.Vector(-18, 25, 0)
c = App.Vector(60, 26, 0)
d = App.Vector(33, -20, 0)
points1 = [a, App.Vector(-20, -8, 0), App.Vector(-17, 7, 0), b]
obj1 = Draft.make_bspline(points1)
points2 = [b, App.Vector(0, 25, 0), c]
obj2 = Draft.make_bspline(points2)
points3 = [c, App.Vector(37, 4, 0), d]
obj3 = Draft.make_bspline(points3)
points4 = [d, App.Vector(-2, -18, 0), a]
obj4 = Draft.make_bspline(points4)
doc.recompute()
surf = doc.addObject("Surface::Filling", "Surface")
surf.BoundaryEdges = [(obj1, "Edge1"),
(obj2, "Edge1"),
(obj3, "Edge1"),
(obj4, "Edge1")]
doc.recompute()
# ---------------------------------------------------------
points_spl = [App.Vector(-10, 0, 2),
App.Vector(4, 0, 7),
App.Vector(18, 0, -5),
App.Vector(25, 0, 0),
App.Vector(30, 0, 0)]
aux_edge = Draft.make_bspline(points_spl)
doc.recompute()
surf.UnboundEdges = [(aux_edge, "Edge1")]
doc.recompute()
# ---------------------------------------------------------
- Getting started
- Installation: Download, Windows, Linux, Mac, Additional components, Docker, AppImage, Ubuntu Snap
- Basics: About FreeCAD, Interface, Mouse navigation, Selection methods, Object name, Preferences, Workbenches, Document structure, Properties, Help FreeCAD, Donate
- Help: Tutorials, Video tutorials
- Workbenches: Std Base, Assembly, BIM, CAM, Draft, FEM, Inspection, Mesh, OpenSCAD, Part, PartDesign, Points, Reverse Engineering, Robot, Sketcher, Spreadsheet, Surface, TechDraw, Test Framework
- Hubs: User hub, Power users hub, Developer hub