Draft Point: Difference between revisions

From FreeCAD Documentation
m ([[ | ]](Vertical Docnav))
(Updated default shortcuts.)
 
(45 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<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_Workbench|Draft]]
|IconL=Draft_BSpline.svg
|IconL=Draft_BezCurve.svg
|IconR=Draft_Facebinder.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_ShapeString.svg
}}
}}


Line 14: Line 15:
{{GuiCommand
{{GuiCommand
|Name=Draft Point
|Name=Draft Point
|MenuLocation=Draft → Point
|MenuLocation=Drafting → Point
|Workbenches=[[Draft Module|Draft]], [[Arch Module|Arch]]
|Workbenches=[[Draft_Workbench|Draft]], [[Arch_Workbench|Arch]]
|Shortcut=P T
|SeeAlso=[[Draft Line|Draft Line]], [[Draft Wire|Draft Wire]]
|Version=0.7
|Version=0.7
}}
}}
Line 24: Line 23:


<!--T:3-->
<!--T:3-->
The 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''' command creates a simple point. Draft points can be useful as a reference for placing lines, wires or other objects.


</translate>
</translate>
[[Image:Draft_point_example.jpg|400px]]
[[Image:Draft_point_example.jpg|400px]]
<translate>
<translate>
<!--T:4-->
{{Caption|A single point placed on the working plane}}


==How to use== <!--T:5-->
==Usage== <!--T:5-->

<!--T:21-->
See also: [[Draft_Tray|Draft Tray]], [[Draft_Snap|Draft Snap]] and [[Draft_Constrain|Draft Constrain]].


<!--T:6-->
<!--T:6-->
# There are several ways to invoke the command:
# Press the {{KEY|[[Image:Draft Point.png|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|Point]]}} button.
#* Select the {{MenuCommand|Drafting → [[Image:Draft_Point.svg|16px]] Point}} option from the menu.
# The {{MenuCommand|Point}} task panel opens. See [[#Options|Options]] for more information.
# Pick a point in the [[3D_view|3D view]], or type coordinates and press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button.


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

<!--T:22-->
The single character keyboard shortcuts available in the task panel can be changed. See [[Draft_Preferences|Draft Preferences]]. The shortcuts mentioned here are the default shortcuts (for version 0.22).


<!--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 manually enter coordinates enter the X, Y and Z component, and press {{KEY|Enter}} after each. Or you can press the {{Button|[[Image:Draft_AddPoint.svg|16px]] Enter point}} button when you have the desired values. It is advisable to move the pointer out of the [[3D_view|3D view]] before entering coordinates.
* 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|G}} or click the {{MenuCommand|Global}} checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the [[Draft_SelectPlane|working plane]] coordinate system. {{Version|0.20}}
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the current command.
* Press {{KEY|N}} or click the {{MenuCommand|Continue}} checkbox to toggle continue mode. If continue mode is on, the command will restart after finishing, allowing you to continue creating points.
* Press {{KEY|S}} to switch [[Draft_Snap|Draft snapping]] on or off.
* Press {{KEY|Esc}} or the {{Button|Close}} button to abort the command.

==Notes== <!--T:34-->

<!--T:35-->
* Use [[Image:Draft_Snap_Near.svg|16px]] [[Draft_Snap_Near|Draft Snap Near]] ({{VersionMinus|0.20}}) or [[Image:Draft_Snap_Endpoint.svg|16px]] [[Draft_Snap_Endpoint|Draft Snap Endpoint]] ({{VersionPlus|0.21}}) to snap to Draft points.


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

<!--T:23-->
See also: [[Property_editor|Property editor]].

<!--T:24-->
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=== <!--T:25-->

<!--T:26-->
{{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=== <!--T:27-->

<!--T:28-->
{{TitleProperty|Draft}}

<!--T:29-->
* {{PropertyView|Pattern|Enumeration}}: not used.
* {{PropertyView|Pattern Size|Float}}: not used.

==Scripting== <!--T:30-->


==Scripting== <!--T:11-->
<!--T:11-->
{{Emphasis|See also:}} [[Draft API|Draft API]] and [[FreeCAD Scripting Basics|FreeCAD Scripting Basics]].
See also: [https://freecad.github.io/SourceDoc/ 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 109:
<!--T:19-->
<!--T:19-->
Example:
Example:

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


doc = App.newDocument()
Point1 = Draft.makePoint(1600, 1400, 0)

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)


doc.recompute()
p2 = FreeCAD.Vector(-3200, 1800, 0)
Point2 = Draft.makePoint(p2, color=(0.5, 0.3, 0.6), point_size=10)
FreeCAD.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

doc = App.newDocument()


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 153:
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()
doc.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_Workbench|Draft]]
|IconL=Draft_BSpline.svg
|IconL=Draft_BezCurve.svg
|IconR=Draft_Facebinder.svg
|IconC=Workbench_Draft.svg
|IconC=Workbench_Draft.svg
|IconR=Draft_ShapeString.svg
}}
}}

<!--T:17-->
{{Draft Tools navi}}

<!--T:18-->
{{Userdocnavi}}


</translate>
</translate>
{{Draft Tools navi{{#translation:}}}}
{{clear}}
{{Userdocnavi{{#translation:}}}}

Latest revision as of 18:29, 6 January 2024

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. Draft points can be useful as a reference for placing lines, wires or other objects.

Usage

See also: Draft Tray, Draft Snap and Draft Constrain.

  1. There are several ways to invoke the command:
    • Press the Point button.
    • Select the Drafting → Point option from the menu.
  2. The Point task panel opens. See Options for more information.
  3. Pick a point in the 3D view, or type coordinates and press the Enter point button.

Options

The single character keyboard shortcuts available in the task panel can be changed. See Draft Preferences. The shortcuts mentioned here are the default shortcuts (for version 0.22).

  • To manually enter coordinates enter the X, Y and Z component, and press Enter after each. Or you can press the Enter point button when you have the desired values. It is advisable to move the pointer out of the 3D view before entering coordinates.
  • Press G or click the Global checkbox to toggle global mode. If global mode is on, coordinates are relative to the global coordinate system, else they are relative to the working plane coordinate system. introduced in version 0.20
  • Press N or click the Continue checkbox to toggle continue mode. If continue mode is on, the command will restart after finishing, allowing you to continue creating points.
  • Press S to switch Draft snapping on or off.
  • Press Esc or the Close button to abort the command.

Notes

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

doc = App.newDocument()

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)

doc.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

doc = App.newDocument()

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)

doc.recompute()