Macro Draw 2D Function: Difference between revisions
(Vertical {{Macro}}; fixed icon) |
m (icon) |
||
Line 4: | Line 4: | ||
{{Macro |
{{Macro |
||
|Name=Draw 2D Function |
|Name=Draw 2D Function |
||
|Icon=Macro_Draw_2D_Function.png |
|||
|Description=Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane) |
|Description=Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane) |
||
|Author=unknown |
|Author=unknown |
||
|Version=1.0 |
|Version=1.0 |
||
|Date=2011-08-01 |
|Date=2011-08-01 |
||
|FCVersion=All |
|||
|Download=[https://www.freecadweb.org/wiki/images/3/36/Macro_Draw_2D_Function.png ToolBar Icon] |
|||
}} |
}} |
||
Line 44: | Line 47: | ||
ZZ=XX*XX/(4*F) |
ZZ=XX*XX/(4*F) |
||
if I==0: |
if I==0: |
||
print "Le test est vrai !" |
print( "Le test est vrai !") |
||
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ)) |
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ)) |
||
WWire=Part.Wire([nomme]) |
WWire=Part.Wire([nomme]) |
||
else : |
else : |
||
print "Le test est 2 !" |
print( "Le test est 2 !") |
||
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ)) |
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ)) |
||
WWire=Part.Wire([WWire,nomme]) |
WWire=Part.Wire([WWire,nomme]) |
Revision as of 19:47, 15 June 2019
Description |
---|
Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane) Macro version: 1.0 Last modified: 2011-08-01 FreeCAD version: All Download: ToolBar Icon Author: unknown |
Author |
unknown |
Download |
ToolBar Icon |
Links |
Macros recipes How to install macros How to customize toolbars |
Macro Version |
1.0 |
Date last modified |
2011-08-01 |
FreeCAD Version(s) |
All |
Default shortcut |
None |
See also |
None |
Description
Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane) The example done here generate a parabol. Has no dialog. Needs to be defined:
- F = variable used in the function,
- X = initial value of x,
- Nb = Number of step,
- Z = function express with x
- ZZ = function express with xx
Script
Macro_Draw_2D_Function.FCMacro
# F = variable used in the function,
# X = initial value of x,
# Nb = Number of step,
# Z = function express with x
# ZZ = function express with xx
import FreeCAD, FreeCADGui, Part
import math
F=800
X=-500
Nb=10
Step=1000/Nb
Y=0
for I in range(Nb):
XX=X+Step
Z=X*X/(4*F)
ZZ=XX*XX/(4*F)
if I==0:
print( "Le test est vrai !")
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ))
WWire=Part.Wire([nomme])
else :
print( "Le test est 2 !")
nomme=Part.makeLine((X,Y,Z),(XX,Y,ZZ))
WWire=Part.Wire([WWire,nomme])
X=XX
Part.show(WWire)