Macro Draw 2D Function: Difference between revisions

From FreeCAD Documentation
(Created page with '{{Macro|Name=draw2DFunction|Description=Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane)}} Use it to draw a function described by a "equation" [z=F(x)] (…')
 
(Use {{MacroCode}})
 
(22 intermediate revisions by 5 users not shown)
Line 1: Line 1:
<languages/>
{{Macro|Name=draw2DFunction|Description=Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane)}}
<translate>
<!--T:1-->
{{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]
}}


==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:
: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== <!--T:3-->
Needs to be defined :
</translate>


ToolBar Icon [[Image:Macro_Draw_2D_Function.png]]
F=variable used in the fonction,
X=initial value of x,


'''Macro_Draw_2D_Function.FCMacro'''
Nb= Number of step,
Z=function express with x


{{MacroCode|code=
ZZ=function express with xx


# 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 FreeCAD, FreeCADGui, Part
import math
import math
F=800
F=800
X=-500
X=-500
Nb=10
Nb=10
Step=1000/Nb
Step=1000/Nb
Y=0
Y=0
for I in range(Nb):
for I in range(Nb):
XX=X+Step
XX=X+Step
Z=X*X/(4*F)
Z=X*X/(4*F)
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])
X=XX
X=XX
Part.show(WWire)
Part.show(WWire)

}}

Latest revision as of 00:32, 8 May 2020

Draw 2D Function

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

ToolBar Icon

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)