Draft Point: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
(12 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{Page_in_progress}}
<languages/>
<languages/>
<translate>
<translate>

<!--T:16-->
<!--T:16-->
{{Docnav
{{Docnav
|[[Draft_BSpline|BSpline]]
|[[Draft_BezCurve|BezCurve]]
|[[Draft_Facebinder|Facebinder]]
|[[Draft_ShapeString|ShapeString]]
|[[Draft_Module|Draft]]
|[[Draft_Module|Draft]]
|IconL=Draft_BSpline.svg
|IconL=Draft_BezCurve.svg
|IconR=Draft_ShapeString.svg
|IconR=Draft_Facebinder.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
}}
}}
Line 14: Line 16:
{{GuiCommand
{{GuiCommand
|Name=Draft Point
|Name=Draft Point
|MenuLocation=Draft → Point
|MenuLocation=Drafting → Point
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Workbenches=[[Draft_Module|Draft]], [[Arch_Module|Arch]]
|Shortcut={{KEY|P}} {{KEY|T}}
|Version=0.7
|Version=0.7
|SeeAlso=[[Draft_AddPoint|Draft AddPoint]], [[Draft_Line|Draft Line]], [[Draft_Wire|Draft Wire]]
}}
}}


Line 24: Line 24:


<!--T:3-->
<!--T:3-->
The {{Button|[[Image:Draft_Point.svg|16px]] [[Draft_Point|Draft Point]]}} tool creates a simple point in the current [[Draft_SelectPlane|work plane]], handy to serve as reference for placing lines, wires, or other objects later. It uses the [[Draft_Linestyle|Draft Linestyle]] (only the color) set on the [[Draft_Tray|Draft Tray]].
The [[Image:Draft_Point.svg|24px]] [[Draft_Point|Draft Point]] command creates a simple point in the current [[Draft_SelectPlane|working plane]], useful as a reference for placing lines, wires, or other objects. It uses the [[Draft_Linestyle|Draft Linestyle]] (only the color) set on the [[Draft_Tray|Draft Tray]].


</translate>
</translate>
Line 35: Line 35:


<!--T:6-->
<!--T:6-->
# There are several ways to invoke the command:
# Press the {{KEY|[[Image:Draft_Point.svg|16px]] [[Draft Point|Draft Point]]}} button, or press {{KEY|P}} then {{KEY|T}} keys.
# Click a point on the 3D view, or type a [[Draft_Coordinates|coordinate]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button.
#* Press the {{Button|[[Image:Draft_Point.svg|16px]] [[Draft_Point|Draft Point]]}} button.
#* Select the {{MenuCommand|Drafting → [[Image:Draft_Point.svg|16px]] Point}} option from the menu.
# Click a point in the [[3D_view|3D view]], or type [[Draft_Coordinates|coordinates]] and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button.


==Options== <!--T:7-->
==Options== <!--T:7-->


<!--T:8-->
<!--T:8-->
* To enter coordinates manually, simply enter the numbers, then press {{KEY|Enter}} between each X, Y and Z component. You can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] [[Draft_AddPoint|add point]]}} button when you have the desired values to insert the point.
* To enter coordinates manually, simply enter the numbers, then press {{KEY|Enter}} between each X, Y and Z component. You can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button when you have the desired values to insert the point.
* Press {{KEY|T}} or click the checkbox to toggle ''continue'' mode. If continue mode is on, the point tool will restart after you place a point, allowing you to place another one without pressing the tool button again.
* Press {{KEY|T}} or click the checkbox to toggle ''continue'' mode. If continue mode is on, the point tool will restart after you place a point, allowing you to place another one without pressing the tool button again.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.


==Properties== <!--T:9-->
==Properties== <!--T:9-->

See also: [[property_editor|Property editor]].

A Draft Point object is derived from a [[Part_Feature|Part Feature]] object and inherits all its properties. It also has the following additional properties:

===Data===

{{TitleProperty|Draft}}


<!--T:10-->
<!--T:10-->
* {{PropertyData|X}}: the X coordinate of the point.
* {{PropertyData|X|Distance}}: specifies the X coordinate of the point.
* {{PropertyData|Y}}: the Y coordinate of the point.
* {{PropertyData|Y|Distance}}: specifies the Y coordinate of the point.
* {{PropertyData|Z}}: the Z coordinate of the point.
* {{PropertyData|Z|Distance}}: specifies the Z coordinate of the point.


===View===
==Scripting== <!--T:11-->

{{Emphasis|See also:}} [[Draft API|Draft API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
{{TitleProperty|Draft}}

* {{PropertyView|Pattern|Enumeration}}: not used.
* {{PropertyView|Pattern Size|Float}}: not used.

==Scripting==

<!--T:11-->
See also: [https://www.freecadweb.org/api Autogenerated API documentation] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].


<!--T:12-->
<!--T:12-->
To create a Draft Point use the {{incode|make_point}} method ({{Version|0.19}}) of the Draft module. This method replaces the deprecated {{incode|makePoint}} method.
The Point tool can be used in [[macros|macros]] and from the [[Python|]Python] console by using the following function:

</translate>
</translate>
{{Code|code=
{{Code|code=
Point = makePoint(X=0, Y=0, Z=0, color=None, name="Point", point_size=5)
point = make_point(X=0, Y=0, Z=0, color=None, name="Point", point_size=5)
Point = makePoint(point, Y=0, Z=0, color=None, name="Point", point_size=5)
point = make_point(point, Y=0, Z=0, color=None, name="Point", point_size=5)
}}
}}
<translate>
<translate>


<!--T:13-->
<!--T:13-->
* Creates a {{incode|Point}} object in the specified {{incode|X}}, {{incode|Y}} and {{incode|Z}} coordinates, with units in millimeters. If no coordinates are given the point is created at the origin (0,0,0).
* Creates a {{incode|point}} object in the specified {{incode|X}}, {{incode|Y}} and {{incode|Z}} coordinates, with units in millimeters. If no coordinates are given the point is created at the origin (0,0,0).
** If {{incode|X}} is a {{incode|point}} defined by a {{incode|FreeCAD.Vector}}, it is used.
** If {{incode|X}} is a {{incode|point}} defined by a {{incode|FreeCAD.Vector}}, it is used.
* {{incode|color}} is a tuple {{incode|(R, G, B)}} that indicates the color of the point in the RGB scale; each value in the tuple should be in the range from {{incode|0}} to {{incode|1}}.
* {{incode|color}} is a tuple {{incode|(R, G, B)}} that indicates the color of the point in the RGB scale; each value in the tuple should be in the range from {{incode|0}} to {{incode|1}}.
Line 73: Line 93:
<!--T:19-->
<!--T:19-->
Example:
Example:

</translate>
</translate>
{{Code|code=
{{Code|code=
import FreeCAD
import FreeCAD as App
import Draft
import Draft


Point1 = Draft.makePoint(1600, 1400, 0)
point1 = Draft.make_point(1600, 1400, 0)


p2 = FreeCAD.Vector(-3200, 1800, 0)
p2 = App.Vector(-3200, 1800, 0)
Point2 = Draft.makePoint(p2, color=(0.5, 0.3, 0.6), point_size=10)
point2 = Draft.make_point(p2, color=(0.5, 0.3, 0.6), point_size=10)

FreeCAD.ActiveDocument.recompute()
App.ActiveDocument.recompute()
}}
}}
<translate>
<translate>

<!--T:14-->
<!--T:14-->
Example:
Example:


<!--T:20-->
<!--T:20-->
This code creates {{incode|N}} random points within a square of side {{incode|2L}}. It makes a loop creating {{incode|N}} points, that may appear anywhere from {{incode|-L}} to {{incode|+L}} on both X and Y; it also chooses a random color and size for each point. Change {{incode|N}} to change the number of points, and change {{incode|L}} to change the area covered by the points.
This code creates {{incode|N}} random points within a square of side {{incode|2L}}. It makes a loop creating {{incode|N}} points, that may appear anywhere from {{incode|-L}} to {{incode|+L}} on both X and Y. It also chooses a random color and size for each point. Change {{incode|N}} to change the number of points, and change {{incode|L}} to change the area covered by the points.


</translate>
</translate>
{{Code|code=
{{Code|code=
import random
import random
import FreeCAD
import FreeCAD as App
import Draft
import Draft


L = 1000
L = 1000
centered = FreeCAD.Placement(FreeCAD.Vector(-L, -L, 0), FreeCAD.Rotation())
centered = App.Placement(App.Vector(-L, -L, 0), App.Rotation())
Rectangle = Draft.makeRectangle(2*L, 2*L, placement=centered)
rectangle = Draft.make_rectangle(2*L, 2*L, placement=centered)
N = 10


N = 10
for i in range(N):
for i in range(N):
x = 2*L*random.random() - L
x = 2*L*random.random() - L
Line 110: Line 133:
b = random.random()
b = random.random()
size = 15*random.random() + 5
size = 15*random.random() + 5
Draft.makePoint(x, y, z, color=(r, g, b), point_size=size)
Draft.make_point(x, y, z, color=(r, g, b), point_size=size)


FreeCAD.ActiveDocument.recompute()
App.ActiveDocument.recompute()
}}
}}
<translate>
<translate>



<!--T:15-->
<!--T:15-->
{{Docnav
{{Docnav
|[[Draft_BSpline|BSpline]]
|[[Draft_BezCurve|BezCurve]]
|[[Draft_Facebinder|Facebinder]]
|[[Draft_ShapeString|ShapeString]]
|[[Draft_Module|Draft]]
|[[Draft_Module|Draft]]
|IconL=Draft_BSpline.svg
|IconL=Draft_BezCurve.svg
|IconR=Draft_ShapeString.svg
|IconR=Draft_Facebinder.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
}}
}}
Line 129: Line 153:
{{Draft Tools navi{{#translation:}}}}
{{Draft Tools navi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{Userdocnavi{{#translation:}}}}
{{clear}}

Revision as of 14:37, 28 March 2021

This documentation is a work in progress. Please don't mark it as translatable since it will change in the next hours and days.

Draft Point

Menu location
Drafting → Point
Workbenches
Draft, Arch
Default shortcut
None
Introduced in version
0.7
See also
None

Description

The Draft Point command creates a simple point in the current working plane, useful as a reference for placing lines, wires, or other objects. It uses the Draft Linestyle (only the color) set on the Draft Tray.

A single point placed on the working plane

Usage

  1. There are several ways to invoke the command:
    • Press the Draft Point button.
    • Select the Drafting → Point option from the menu.
  2. Click a point in the 3D view, or type coordinates and press the Enter point button.

Options

  • To enter coordinates manually, simply enter the numbers, then press Enter between each X, Y and Z component. You can press the Enter point button when you have the desired values to insert the point.
  • Press T or click the checkbox to toggle continue mode. If continue mode is on, the point tool will restart after you place a point, allowing you to place another one without pressing the tool button again.
  • Press Esc or the Close button to abort the current command.

Properties

See also: Property editor.

A Draft Point object is derived from a Part Feature object and inherits all its properties. It also has the following additional properties:

Data

Draft

  • DataX (Distance): specifies the X coordinate of the point.
  • DataY (Distance): specifies the Y coordinate of the point.
  • DataZ (Distance): specifies the Z coordinate of the point.

View

Draft

  • ViewPattern (Enumeration): not used.
  • ViewPattern Size (Float): not used.

Scripting

See also: Autogenerated API documentation and FreeCAD Scripting Basics.

To create a Draft Point use the make_point method (introduced in version 0.19) of the Draft module. This method replaces the deprecated makePoint method.

point = make_point(X=0, Y=0, Z=0, color=None, name="Point", point_size=5)
point = make_point(point, Y=0, Z=0, color=None, name="Point", point_size=5)
  • Creates a point object in the specified X, Y and Z coordinates, with units in millimeters. If no coordinates are given the point is created at the origin (0,0,0).
    • If X is a point defined by a FreeCAD.Vector, it is used.
  • color is a tuple (R, G, B) that indicates the color of the point in the RGB scale; each value in the tuple should be in the range from 0 to 1.
  • name is the name of the object.
  • point_size is the size of the object in pixels, if the graphical user interface is loaded.

Example:

import FreeCAD as App
import Draft

point1 = Draft.make_point(1600, 1400, 0)

p2 = App.Vector(-3200, 1800, 0)
point2 = Draft.make_point(p2, color=(0.5, 0.3, 0.6), point_size=10)

App.ActiveDocument.recompute()

Example:

This code creates N random points within a square of side 2L. It makes a loop creating N points, that may appear anywhere from -L to +L on both X and Y. It also chooses a random color and size for each point. Change N to change the number of points, and change L to change the area covered by the points.

import random
import FreeCAD as App
import Draft

L = 1000
centered = App.Placement(App.Vector(-L, -L, 0), App.Rotation())
rectangle = Draft.make_rectangle(2*L, 2*L, placement=centered)

N = 10
for i in range(N):
    x = 2*L*random.random() - L
    y = 2*L*random.random() - L
    z = 0
    r = random.random()
    g = random.random()
    b = random.random()
    size = 15*random.random() + 5
    Draft.make_point(x, y, z, color=(r, g, b), point_size=size)

App.ActiveDocument.recompute()