Draft Point: Difference between revisions

From FreeCAD Documentation
No edit summary
No edit summary
Line 25: Line 25:


<!--T:3-->
<!--T:3-->
The [[Image:Draft_Point.svg|24px]] [[Draft_Point|Draft Point]] command creates a simple point in the current [[Draft_SelectPlane|working plane]], useful as 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]].
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>

Revision as of 14:03, 17 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
Draft AddPoint, Draft Line, Draft Wire

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 on the 3D view, or type a coordinate 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 add 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

  • DataX: the X coordinate of the point.
  • DataY: the Y coordinate of the point.
  • DataZ: the Z coordinate of the point.

Scripting

See also: Draft API and FreeCAD Scripting Basics.

The Point tool can be used in macros and from the [[Python|]Python] console by using the following function:

Point = makePoint(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)
  • 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
import Draft

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

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

L = 1000
centered = FreeCAD.Placement(FreeCAD.Vector(-L, -L, 0), FreeCAD.Rotation())
Rectangle = Draft.makeRectangle(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.makePoint(x, y, z, color=(r, g, b), point_size=size)

FreeCAD.ActiveDocument.recompute()