====== Générer un fichier DXF à partir de coordonnées ====== L'objet de cet article est de présenter une méthode pour créer un tracé au format DXF depuis un tableau de coordonnées cartésiennes en utilisant des logiciels libres. ====== Logiciels utilisés ====== * La suite [[https://fr.libreoffice.org/|LibreOffice]] pour la mise en forme du fichier de données * [[https://librecad.org/|LibreCAD]] pour la création du fichier DXF ====== Préparation du fichier de données ====== LibreCAD possède une extension nommée "Read ascii points" pour tracer un chemin à partir de données présentes dans un fichier texte. La doc nous indique le format que doit adopter le fichier : ''Read points from a text file. Each line of the file is a point defined by an ID, X coordinate, Y coordinate, Z coordinate and an optional code. Each field can be separated by a comma, a tab or a space. The decimal separator is the point (.). The points can be connected with a line, ID, or coordinate and code fields can be plotted as text.'' Ainsi le fichier doit être au format texte et se présenter avec une ligne par point à tracer de la forme : N,X,Y,Z,C où: * N = numéro du point * X = coordonnée X * Y = coordonnée Y * Z = coordonnée Z * C = code (optionnel, nous ne l'évoquerons et ne l'utiliserons pas pour notre présentation) * Les coordonnées sont au format décimal, utilisant le . comme séparateur, par exemple : 8.452 * Le séparateur de champs peut être la virgule, la tabulation ou encore l'espace. Nous utiliserons donc le format de fichier CSV qui correspond parfaitement à cette description. Depuis le tableur Calc de LibreOffice nous créons le fichier exemple suivant : {{ :libreoffice:libreoffice1.png?nolink&400 |}} avec pour colonnes : * A = numéro du point * B = coordonnée X du point(en mm) * C = coordonnée Y du point (en mm) * D = coordonnée Zdu point (en mm) **Attention :** le point présent sur le pavé numérique est transformé en virgule par libreoffice. Vous devrez donc forcer la saisie du point ou désactiver l'option "Touche séparateur de décimale" dans Options > Paramètres linguistiques > Langues. On enregistre alors notre fichier au format Texte CSV, cocher la case "Éditer les paramètres du filtre" lors de l'enregistrement nous permet de paramétrer le format du fichier créé pour indiquer : * l'encodage de caractère utilisé: UTF8 * que l'on utilise la virgule comme séparateur de champ : {{ :libreoffice:libreoffice2.png?nolink&400 |}} ====== Importation dans LibreCAD ====== Dans LibreCAD : Plugins > Read ASCII points, on indique le chemin du fichier CSV à importer, on choisit le séparateur de champ utilisé (Comma separator pour la virgule, Tab separator pour la tabulation) et on coche Connect points afin de créer un chemin à partir des points : {{ :librecad:librecad1.png?nolink&400 |}} Malgré un avertissement "dibpunto procesFile" le chemin est créé : {{ :librecad:librecad:librecad2.png?nolink&400 |}} On peut enfin enregistrer le fichier au format DXF.