Macro Triangle AH/fr: Difference between revisions
m (Created page with "==Description== Cette macro crée un triangle isocèle en donnant comme argument , l'angle de tête et la hauteur du triangle. La tête du triangle est positionnée aux coordo...") |
m (Created page with "==Utilisation== Copiez la macro '''triangleAH''' complète dans la console Python de FreeCAD et tapez :") |
||
Line 4: | Line 4: | ||
Cette macro crée un triangle isocèle en donnant comme argument , l'angle de tête et la hauteur du triangle. La tête du triangle est positionnée aux coordonnées XYZ 0,0,0. |
Cette macro crée un triangle isocèle en donnant comme argument , l'angle de tête et la hauteur du triangle. La tête du triangle est positionnée aux coordonnées XYZ 0,0,0. |
||
== |
==Utilisation== |
||
Copiez la macro '''triangleAH''' complète dans la console Python de FreeCAD et tapez : |
|||
<syntaxhighlight> |
<syntaxhighlight> |
||
triangleAH(angle=90, height=10) |
triangleAH(angle=90, height=10) |
Revision as of 09:11, 27 March 2015
File:Text-x-python Macro triangleAH |
Description |
---|
Cette macro crée un triangle isocèle en donnant comme argument , l'angle de tête et la hauteur du triangle. Auteur: mario52 |
Auteur |
mario52 |
Téléchargement |
None |
Liens |
Page des macros Comment installer une macro Comment créer une barre d'outils |
Version Macro |
1.0 |
Dernière modification |
None |
Version(s) FreeCAD |
None |
Raccourci clavier |
None |
Voir aussi |
None |
Description
Cette macro crée un triangle isocèle en donnant comme argument , l'angle de tête et la hauteur du triangle. La tête du triangle est positionnée aux coordonnées XYZ 0,0,0.
Utilisation
Copiez la macro triangleAH complète dans la console Python de FreeCAD et tapez :
triangleAH(angle=90, height=10)
# or
triangleAH(90, 10)
Script
Macro_triangleAH.FCMacro
__title__= "triangleAH"
__author__= "Mario52"
__version__= "00.01"
__date__= "20/03/2015"
from math import cos, sin, tan, degrees, radians, sqrt
import Draft, Part
def triangleAH(angle, height):
def line_length(x1 = 0.0, y1 = 0.0, z1 = 0.0, length = 10.0, angle2 = 0.0): # search coordinates
x2 = x1 + (length * cos(radians(angle2)))
y2 = y1 + (length * sin(radians(angle2)))
z2 = z1 #+ ()
return x2,y2,z2 # return coordinates (xyz) to point
x0 = y0 = z0 = 0.0
a0 = line_length(x1=x0,y1=y0,z1=z0,length=height,angle2=0 ) #
hypo = height / cos(radians(angle/2))
a0 = line_length(x1=x0,y1=y0,z1=z0,length=0, angle2 = angle ) # point 0 (depart sommet)
a = line_length(x1=a0[0],y1=a0[1],z1=a0[2],length= hypo, angle2=-(angle/2)) #
b = line_length(a[0],a[1],a[2],length= (abs(a[1])*2), angle2=90.0) # base du triangle
return Draft.makeWire([FreeCAD.Vector(a0),FreeCAD.Vector(a),FreeCAD.Vector(b)],closed=True,face=False,support=None) # create triangle
Version
ver 00.01 20/03/2015 :