Difference between revisions of "Macro Draw 2D Function"
Jump to navigation
Jump to search
m (date) |
(Use {{MacroCode}}) |
||
(7 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
+ | <languages/> | ||
<translate> | <translate> | ||
<!--T:1--> | <!--T:1--> | ||
− | {{Macro | + | {{Macro |
+ | |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) | ||
+ | |Author=unknown | ||
+ | |Version=1.0 | ||
+ | |Date=2011-08-01 | ||
+ | |FCVersion=All | ||
+ | |Download=[https://www.freecadweb.org/wiki/images/3/36/Macro_Draw_2D_Function.png ToolBar Icon] | ||
+ | }} | ||
− | <!--T:2--> | + | ==Description== <!--T:2--> |
− | Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane) The example done here generate a parabol. | + | 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 : | + | Has no dialog. Needs to be defined: |
− | F = variable used in the function, | + | :F = variable used in the function, |
− | X = initial value of x, | + | :X = initial value of x, |
− | Nb = Number of step, | + | :Nb = Number of step, |
− | Z = function express with x | + | :Z = function express with x |
− | ZZ = function express with xx | + | :ZZ = function express with xx |
+ | ==Script== <!--T:3--> | ||
</translate> | </translate> | ||
− | {{ | + | ToolBar Icon [[Image:Macro_Draw_2D_Function.png]] |
+ | |||
+ | '''Macro_Draw_2D_Function.FCMacro''' | ||
+ | |||
+ | {{MacroCode|code= | ||
# F = variable used in the function, | # F = variable used in the function, | ||
Line 34: | Line 49: | ||
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]) | ||
Line 46: | Line 61: | ||
}} | }} | ||
− |
Latest revision as of 00:32, 8 May 2020
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)