Macro WireXYZ/fr: Difference between revisions

From FreeCAD Documentation
(Updating to match new version of source page)
(Updating to match new version of source page)
Line 29: Line 29:


Modifiez le chemin et nom du fichier, sauvez la macro, rechargez la macro et lancez la.
Modifiez le chemin et nom du fichier, sauvez la macro, rechargez la macro et lancez la.
{{Code|code=
<syntaxhighlight>
fichier = "C:\yourPath\cloud.asc" # path and name of file.txt
fichier = "C:\yourPath\cloud.asc" # path and name of file.txt
}}
</syntaxhighlight>
Si vous voulez un wire fermé, modifiez le code (closed=False):
Si vous voulez un wire fermé, modifiez le code (closed=False):
{{Code|code=
<syntaxhighlight>
Draft.makeWire(wire,closed=False,face=False,support=None) # create the wire open
Draft.makeWire(wire,closed=False,face=False,support=None) # create the wire open
}}
</syntaxhighlight>
et remplacez le par (closed=True)
et remplacez le par (closed=True)
{{Code|code=
<syntaxhighlight>
Draft.makeWire(wire,closed=True,face=False,support=None) # create the wire closed
Draft.makeWire(wire,closed=True,face=False,support=None) # create the wire closed
}}
</syntaxhighlight>
même procédure pour la face, False ou True (face=True).
même procédure pour la face, False ou True (face=True).


===Script===
===Script===
Macro_WireXYZ.FCMacro
Macro_WireXYZ.FCMacro
{{Code|code=
<syntaxhighlight>
# -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
# created a wire with coordinate x y z separated (in the file)
# created a wire with coordinate x y z separated (in the file)
Line 74: Line 74:
#Draft.makeWire(wire,closed=True,face=False,support=None) # create the wire closed (uncomment for use)
#Draft.makeWire(wire,closed=True,face=False,support=None) # create the wire closed (uncomment for use)


}}
</syntaxhighlight>


===Liens===
===Liens===

Revision as of 09:41, 22 September 2016

File:Text-x-python WireXYZ

Description
Crée un wire avec les coordonnées x y z. d'un fichier

Version macro : 0.1
Auteur: Mario52
Auteur
Mario52
Téléchargement
None
Liens
Version Macro
0.1
Dernière modification
None
Version(s) FreeCAD
None
Raccourci clavier
None
Voir aussi
None

Description

Cette macro crée un wire (ou points) avec les coordonnées XYZ extraites d'un fichier. Les coordonnées X Y Z sont séparées par un espace.

Utilisation

Le fichier doit avoir les coordonnées X Y Z au ASCII sans entête.

EX:

0 240.42686 0

20 243.83054 0

40 247.33677 0

60 250.94702 0

80 254.66283 0

100 258.48575 0

...

Modifiez le chemin et nom du fichier, sauvez la macro, rechargez la macro et lancez la.

fichier = "C:\yourPath\cloud.asc"                          # path and name of file.txt

Si vous voulez un wire fermé, modifiez le code (closed=False):

Draft.makeWire(wire,closed=False,face=False,support=None)   # create the wire open

et remplacez le par (closed=True)

Draft.makeWire(wire,closed=True,face=False,support=None)   # create the wire closed

même procédure pour la face, False ou True (face=True).

Script

Macro_WireXYZ.FCMacro

# -*- coding: utf-8 -*-
# created a wire with coordinate x y z separated (in the file)
#EX:
#0 0 0
#10 10 10
#15 20 25
#. . . .

from __future__ import unicode_literals
from FreeCAD import Base
import Draft, Part

fichier = "C:\yourPath\cloud.asc"                          # path and name of file.txt

file = open(fichier, "r")                                  # open the file read
wire = []
X=Y=Z = 0.0

for ligne in file:
    coordinates = ligne.split()
    X,Y,Z = coordinates                                     # separate the coordinates
#    Draft.makePoint(float(X),float(Y),float(Z))            # create points (uncomment for use)
    print X," ",Y," ",Z
    wire.append(FreeCAD.Vector(float(X),float(Y),float(Z))) # append the coordinates

file.close()
Draft.makeWire(wire,closed=False,face=False,support=None)   # create the wire open
#Draft.makeWire(wire,closed=True,face=False,support=None)   # create the wire closed (uncomment for use)

Liens

La discussion sur le forum How do I transform a point cloud to a line?

Other languages: