Cette page vous donne les différences entre la révision choisie et la version actuelle de la page.
projets:de_inkscape_a_openscad [2015/11/17 22:48] thierry_dasse |
projets:de_inkscape_a_openscad [2016/07/01 21:01] (Version actuelle) thierry_dasse |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
{{{project | {{{project | ||
picture:{{:gdesign:gdesign.png?200|}} | picture:{{:gdesign:gdesign.png?200|}} | ||
- | machines: | + | machines: 3D |
materiaux: | materiaux: | ||
- | logiciels: | + | logiciels: Inkscape, Openscad |
sources: | sources: | ||
liens: https://github.com/tdasse/gdesign-inkscape.git | liens: https://github.com/tdasse/gdesign-inkscape.git | ||
- | tags: | + | tags: inkscape, openscad, gdesign |
usager:thierry_dasse | usager:thierry_dasse | ||
- | licence:cc-by-sa | + | licence:cc-by-nc |
}}} | }}} | ||
Ligne 32: | Ligne 32: | ||
Le package gdesign est disponible sur [[https://github.com/tdasse/gdesign-inkscape.git]] | Le package gdesign est disponible sur [[https://github.com/tdasse/gdesign-inkscape.git]] | ||
- | Copier les fichiers du dossier extensions dans le dossier des extensions d'Inkscape | + | Copier les fichiers du dossier extensions dans le dossier des extensions d'Inkscape\\ |
+ | Windows : "C:\Program Files\Inkscape\share\extensions"\\ | ||
+ | Linux : "/usr/share/inkscape/extensions"\\ | ||
+ | Mac : "/Applications/Inkscape.app/Contents/Resources/extensions"\\ | ||
- | Windows : "C:\Program Files\Inkscape\share\extensions" | ||
- | Linux : "/usr/share/inkscape/extensions" | + | Dans Enregistrer sous... apparaît Openscad File(.scad) qui permet d'exporter en Openscad. |
- | Mac : "/Applications/Inkscape.app/Contents/Resources/extensions" | + | {{:projets:scad-save01.png?200|}} {{:projets:scad-save02.png?200|}} {{:projets:scad-save03.png?200|}} |
+ | Openscad unit : convertit en mm, cm ou inches\\ | ||
+ | number of digits : nombre de chiffres significatifs\\ | ||
+ | header : entête du fichier .scad (utile pour y mettre des paramêtres type $fn= 60; ...)\\ | ||
+ | header of path : entête de chaque chemin (on peut y mettre des commandes openscad comme linear_extrude() ou rotate_extrude())\\ | ||
+ | footer of path : pied de chaque chemin\\ | ||
+ | footer : pied du fichier .scad\\ | ||
- | Dans Enregistrer sous... apparaît Openscad File(.scad) qui permet d'exporter en Openscad. | + | error max : erreur max lors de la conversion des courbes de Bezier et des arcs en lignes polygonales\\ |
+ | error unit en mm, cm, in, pt or px\\ | ||
+ | includes definit les groupes et calques à inclure dans le fichier .scad\\ | ||
+ | Si le champ est vide, tous les grooupes et calques seront inclus\\ | ||
+ | Si le champ contient une liste séparée par des + et -, les éléments de la liste seront inclus(+) ou exclus.\\ | ||
+ | all représente tous les groupes et calques. Par exemple 'all - calque1' représente tous les calques sauf calque1\\ | ||
+ | les éléments et opérateurs doivent être séparés par un espace. Les noms de groupes et calques, eux, ne doivent pas comporter d'espaces.\\ | ||
+ | Pour les calques, inkscape:label est utilisé à la place de id | ||
===== Exemples ===== | ===== Exemples ===== | ||
+ | Exemple 1 | ||
+ | |||
+ | {{:gdesign:ex01-svg.png?200|}} {{:gdesign:ex01-scad.png?200|}} | ||
+ | |||
+ | Pour réaliser des solides en extrusion, on peut ajouter linear_extrude(//hauteur//) dans le champ //header of path// de l'enregistrer sous...\\ | ||
+ | Si Openscad est paramétré de manière à recharger et recompiler le fichier automatiquement (menu Design), on peut modifier les points sur inkscape et voir les modifications à chaque enregistrement du fichier.\\ | ||
+ | Attention, en cas de modifications, penser à les enregistrer aussi en svg. | ||
+ | |||
+ | |||
+ | Exemple 2 | ||
+ | |||
+ | {{:gdesign:ex02-svg.png?200|}} {{:gdesign:ex02-scad.png?200|}} | ||
+ | |||
+ | Pour réaliser des solides de révolution, on peut ajouter rotate_extrude() dans le champ //header of path// de l'enregistrer sous... et éventuellement $fn = 50; dans le champ //header// pour ajuster la qualité. | ||
+ | Exemple 3 | ||
+ | {{:gdesign:ex03-svg.png?200|}} {{:gdesign:ex03-scad.png?200|}} | ||
+ | Pour réaliser des modèles plus compliqués, il faut ajouter les commandes openscad directement dans les chemins.\\ | ||
+ | Pour cela, sélectionner le chemin et utiliser extensions/scad parameters/définir.\\ | ||
+ | On peut aussi créer et modifier les champs //scad-header//, //scad-footer// et //scad-pos// dans l'éditeur XML. | ||
+ | scad-header est appliqué avant le chemin (transformé en polygone), scad-footer après.\\ | ||
+ | scad-pos permet de repositionner le chemin, non pas à partir de sa position dans le svg mais à partir de l'origine.\\ | ||
+ | Il peut prendre les valeurs //center//, //top-left//, //top//, //top-right//, //left, //right//, //bottom-left//, //bottom//, //bottom-right// ...\\ | ||
+ | \\ | ||
+ | Avantages:\\ | ||
+ | |||
+ | * on peut mettre des commandes différentes par chemin\\ | ||
+ | * on enregistre les paramètres scad directement dans le fichier svg\\ | ||
+ | * on peut mixer avec le menu enregistrer sous... (les commandes de chemins seront appliquées d'abord)\\ | ||
+ | \\ | ||
+ | Attention:\\ | ||
+ | On peut modifier les points d'un chemin après avoir ajoutés des paramètres scad. Par contre, lors d'opérations de type union, intersection, ...\\ | ||
+ | inkscape élimine tous les champs inconnus donc les scad parameters.\\ | ||
+ | Pour contourner le problème, on peut les enregistrer d'abord sur un fichier temporaire extensions/scad parameters/enregistrer et les restaurer après l'opération.\\ | ||