Macro Line Length: Difference between revisions

From FreeCAD Documentation
m (code)
m (minor)
Line 4: Line 4:


<!--T:2-->
<!--T:2-->
==Desciption==
This small macro create a line giving as an argument the XYZ coordinates, length, and angle
This small macro create a line giving as an argument the XYZ coordinates, length, and angle


===Use=== <!--T:3-->
==Use== <!--T:3-->
Can be used from the Freecad macro editor.
Can be used from the Freecad macro editor.


Line 32: Line 33:
the default values are : x1 = 0, y1 = 0, z1 = 0, length = 10, angle = 0
the default values are : x1 = 0, y1 = 0, z1 = 0, length = 10, angle = 0


===Script=== <!--T:7-->
==Script== <!--T:7-->
Macro Line_Length.py
Macro Line_Length.py
</translate>
</translate>

Revision as of 21:35, 20 March 2015

File:Text-x-python Macro Line Length

Description
Creates a line giving as an argument the XYZ coordinates, length, and angle.

Author: mario52
Author
mario52
Download
None
Links
Macro Version
1.0
Date last modified
None
FreeCAD Version(s)
None
Default shortcut
None
See also
None

Desciption

This small macro create a line giving as an argument the XYZ coordinates, length, and angle

Use

Can be used from the Freecad macro editor.

If the macro is copied in the Python console, you can you can use it by:

>>> line_length(x1 = 0, y1 = 0, z1 = 0, length = 10, angle = 45)

or choice

>>> line_length(x1 = 10, y1 = 10, z1 = 0, length = 50)

>>> line_length(length = 50, angle = 45)

the default values are : x1 = 0, y1 = 0, z1 = 0, length = 10, angle = 0

Script

Macro Line_Length.py

# -*- coding: utf-8 -*-
# créer une ligne avec une coordonnée une longueur et un angle sur le plan X Y
# create line with coordinate length and angle to plane X Y
import FreeCAD, FreeCADGui, Draft
from math import cos, sin, radians
#from FreeCAD import Base
 
def line_length(x1 = 0.0, y1 = 0.0, z1 = 0.0, length = 10.0, angle = 0.0):
    x2 = x1 + (length * cos(radians(angle)))
    y2 = y1 + (length * sin(radians(angle)))
    z2 = z1 #+ ()
    Draft.makeWire([FreeCAD.Vector(x1,y1,z1),FreeCAD.Vector(x2,y2,z2)])
 
x1 = 0.0          # Edit coordinate x1 origin
y1 = 0.0          # Edit coordinate y1 origin
z1 = 0.0          # Edit coordinate z1 origin
length = 50.0       # Edit length
angle  = 45.0       # Edit angle plane XY
 
line_length(x1, y1, z1, length, angle)
Other languages: