Draft WireToBSpline/cs: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>


Line 21: Line 20:
</div>
</div>


[[Image:Draft Wire2BSpline example.jpg|400px]]
[[Image:Draft_Wire2BSpline_example.jpg|400px]]
{{Caption|Convert a wire to a B-Spline, and a closed B-Spline to a closed wire}}
{{Caption|Converting a Draft Wire to a Draft BSpline, and a closed Draft BSpline to a closed Draft Wire}}


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 33: Line 32:
</div>
</div>


==Notes==
A new object will be created; the original object will not be modified.


{{Emphasis|Note:}} if a closed wire with sharp edges is used to create a spline, the new object may have self intersecting curve segments, and may not be visible in the [[3D view]]. If this is the case, manually set {{PropertyData|Make Face}} to {{FALSE}} to see the new shape, or set {{PropertyData|Closed}} to {{FALSE}} to create an open shape.
* The command may result in a closed, self-intersecting [[Draft_Wire|Draft Wire]] or [[Draft_BSpline|Draft BSpline]] with a face. Such an object will not display properly in the [[3D_view|3D view]]. Its {{PropertyData|Make Face}} property, or its {{PropertyData|Closed}} property, must be set to {{FALSE}}.

==Volby==

<div class="mw-translate-fuzzy">
* Původní objekt nebude po operaci smazán, pokud budete chtít musíte ho smazat ručně.
</div>


==Scripting==
==Scripting==
Line 52: Line 45:
Není dostupné, ale vytvoření nového objektu z bodů jiného objektu je snadné, například:
Není dostupné, ale vytvoření nového objektu z bodů jiného objektu je snadné, například:
</div>
</div>

The {{incode|Points}} attribute of an object is a list with the points that comprise that object; this list can be passed to functions that build geometry. Each point is defined by its {{incode|FreeCAD.Vector}}, with units in millimeters.


<div class="mw-translate-fuzzy">
<div class="mw-translate-fuzzy">
Line 60: Line 51:


{{Code|code=
{{Code|code=
import FreeCAD, Draft
import FreeCAD as App
import Draft


doc = App.newDocument()
# Make a spline from the points of a wire
p1 = FreeCAD.Vector(1000, 1000, 0)
p2 = FreeCAD.Vector(2000, 1000, 0)
p3 = FreeCAD.Vector(2500, -1000, 0)
p4 = FreeCAD.Vector(3500, -500, 0)


base_wire = Draft.makeWire([p1, p2, p3, p4])
p1 = App.Vector(1000, 1000, 0)
p2 = App.Vector(2000, 1000, 0)
p3 = App.Vector(2500, -1000, 0)
p4 = App.Vector(3500, -500, 0)

base_wire = Draft.make_wire([p1, p2, p3, p4])
base_spline = Draft.make_bspline([-p1, -1.3*p2, -1.2*p3, -2.1*p4])


points1 = base_wire.Points
points1 = base_wire.Points
spline = Draft.makeBSpline(points1)
spline_from_wire = Draft.make_bspline(points1)

# Make a wire from the points of a spline
base_spline = Draft.makeBSpline([-p1, -1.3*p2, -1.2*p3, -2.1*p4])


points2 = base_spline.Points
points2 = base_spline.Points
Wire = Draft.makeWire(points2)
wire_from_spline = Draft.make_wire(points2)

doc.recompute()
}}
}}



Revision as of 09:28, 16 June 2021

Kreslení Drát do B-křivky

Umístění Menu
Kreslení -> Drát do B-křivky
Pracovní stoly
Kreslení, Architektura
Výchozí zástupce
Nikdo
Představen ve verzi
-
Viz také
Nikdo

Popis

Tento nástroj konvertuje Dráty do B-křivek a naopak.

Converting a Draft Wire to a Draft BSpline, and a closed Draft BSpline to a closed Draft Wire

Použití

  1. Vyberte drát nebo B-křivku
  2. Stiskněte tlačítko Kreslení Drát do B-křivky

Notes

  • The command may result in a closed, self-intersecting Draft Wire or Draft BSpline with a face. Such an object will not display properly in the 3D view. Its ÚdajeMake Face property, or its ÚdajeClosed property, must be set to false.

Scripting

Skriptování

Není dostupné, ale vytvoření nového objektu z bodů jiného objektu je snadné, například:

  • Je-li aktivní objekt drát:
import FreeCAD as App
import Draft

doc = App.newDocument()

p1 = App.Vector(1000, 1000, 0)
p2 = App.Vector(2000, 1000, 0)
p3 = App.Vector(2500, -1000, 0)
p4 = App.Vector(3500, -500, 0)

base_wire = Draft.make_wire([p1, p2, p3, p4])
base_spline = Draft.make_bspline([-p1, -1.3*p2, -1.2*p3, -2.1*p4])

points1 = base_wire.Points
spline_from_wire = Draft.make_bspline(points1)

points2 = base_spline.Points
wire_from_spline = Draft.make_wire(points2)

doc.recompute()