Macro Draw 2D Function/cs: Difference between revisions

From FreeCAD Documentation
No edit summary
(Updating to match new version of source page)
 
(25 intermediate revisions by 4 users not shown)
Line 1: Line 1:
<languages/>
{{Macro|Icon=Text-x-python|Name=draw2DFunction|Description=Use it to draw a function described by a "equation" [z=F(x)] (Z-X plane)|Author=unknown}}
{{Macro/cs
|Name=Draw 2D Function
|Translate=Vykresli 2D funkci
|Icon=Macro_Draw_2D_Function.png
|Description=Použijete k nakreslení funkce popsané "rovnicí" [z=F(x)] (Z-X rovina)
|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==
Použijete k nakreslení funkce popsané "rovnicí" [z=F(x)] (Z-X rovina) Příklad ukázaný zde generuje parabolu.
Použijete k nakreslení funkce popsané "rovnicí" [z=F(x)] (Z-X rovina). Příklad ukázaný zde generuje parabolu.<br />
Je potřeba definovat :
Nemá žádné dialogové okno. Je potřeba definovat :<br />
F = proměnná použitá ve funkci,<br />
X = iniciační hodnota x,<br />
Nb = počet kroků,<br />
Z = funkce vyjádřená x <br />
ZZ = funkce vyjádřená xx<br />


==Skript==
F = proměnná použitá ve funkci,


ToolBar Icon [[Image:Macro_Draw_2D_Function.png]]
X = iniciační hodnota x,


'''Macro_Draw_2D_Function.FCMacro'''
Nb = počet kroků,


{{MacroCode|code=
Z = funkce vyjádřená x


# F = variable used in the function,
ZZ = funkce vyjádřená xx
# 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
<syntaxhighlight>
F=800
import FreeCAD, FreeCADGui, Part
X=-500
import math
Nb=10
F=800
Step=1000/Nb
X=-500
Y=0
Nb=10
for I in range(Nb):
Step=1000/Nb
XX=X+Step
Y=0
for I in range(Nb):
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)


}}
</syntaxhighlight>
<languages/>

Latest revision as of 10:16, 23 May 2020

Vykresli 2D funkci

Popis
Použijete k nakreslení funkce popsané "rovnicí" [z=F(x)] (Z-X rovina)

Version macro : 1.0
Date last modification : 2011-08-01
FreeCAD version : All
Download : ToolBar Icon
Autor: unknown
Autor
unknown
Download
ToolBar Icon
Odkazy
Verze
1.0
Datum poslední úpravy
2011-08-01
Verze FreeCAD
All
Výchozí zástupce
None
Viz též
None

Description

Použijete k nakreslení funkce popsané "rovnicí" [z=F(x)] (Z-X rovina). Příklad ukázaný zde generuje parabolu.
Nemá žádné dialogové okno. Je potřeba definovat :
F = proměnná použitá ve funkci,
X = iniciační hodnota x,
Nb = počet kroků,
Z = funkce vyjádřená x
ZZ = funkce vyjádřená xx

Skript

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)