OpenSCAD est un logiciel pour créer des objets CAO 3D solides. Il est logiciel gratuit et disponible pour Linux / Unix, MS Windows et MacOS.
Contrairement à la plupart des logiciels libres pour créer des modèles 3D (comme le célèbre Blender d'application), OpenSCAD se concentre sur les aspects CAO plutôt que sur les aspects artistiques de la modélisation 3D. Ainsi, c'est peut-être l'application que vous recherchez lorsque vous prévoyez de créer des modèles 3D de pièces de machine, mais probablement pas l'outil de création de films animés par ordinateur.
OpenSCAD n'est pas un modélisateur interactif. Au lieu de cela, cela ressemble plus à un compositeur 3D qui lit un fichier de script qui décrit l'objet et rend le modèle 3D à partir de ce fichier de script (voir les exemples ci-dessous). Cela vous donne, le concepteur, un contrôle complet sur le processus de modélisation et vous permet de modifier facilement une étape du processus de modélisation ou de faire des conceptions définies par des paramètres configurables.
OpenSCAD fournit deux techniques de modélisation principales: il y a d'abord une géométrie solide constructive (AKA CSG) et deuxièmement, il y a une extrusion de contours 2D. Comme le format d'échange de données pour ces découvertes 2D AutoCAD DXF est utilisé. En plus des chemins 2D pour l'extrusion, il est également possible de lire les paramètres de conception à partir des fichiers DXF. Outre les fichiers DXF OpenSCAD peuvent lire et créer des modèles 3D dans les formats STL et hors fichiers.
Vous pouvez télécharger les derniers binaires d'OpenSCAD à https://www.opensenscad.org/downloads.html. Installez des binaires comme vous le feriez pour tout autre logiciel.
Lorsque vous ouvrez OpenSCAD, vous verrez trois images dans la fenêtre. La trame gauche est l'endroit où vous écrirez du code pour modéliser les objets 3D. Le bon cadre est l'endroit où vous verrez le rendu 3D de votre modèle.
Faisons un arbre! Tapez le code suivant dans le cadre de gauche:
cylinder(h = 30, r = 8);
Rendez ensuite le modèle 3D en frappant F5. Maintenant, vous pouvez voir un cylindre pour le coffre de notre arbre. Ajoutons maintenant la partie touffue / feuillée de l'arbre représenté par une sphère. Pour ce faire, nous allons un syndicat et une sphère.
union() {
cylinder(h = 30, r = 8);
sphere(20);
}
Mais ce n'est pas tout à fait vrai! Les touches brouillantes sont autour de la base de l'arbre. Nous devons déplacer la sphère dans l'axe Z.
union() {
cylinder(h = 30, r = 8);
translate([0, 0, 40]) sphere(20);
}
Et c'est tout! Vous avez fait votre premier modèle 3D! Il existe d'autres formes primitives que vous pouvez combiner avec d'autres opérations d'ensemble (union, intersection, différence) et des transformations (rotation, échelle, traduire) pour faire des modèles complexes! Consultez toutes les autres fonctionnalités linguistiques du manuel OpenSCAD.
Jetez un œil à la page d'accueil OpenSCAD (https://www.opensenscad.org/documentation.html) pour la documentation.
Pour créer OpenSCAD à partir de Source, suivez les instructions de la plate-forme qui vous sont applicables ci-dessous.
Pour créer OpenSCAD, vous avez besoin de certaines bibliothèques et outils. Les numéros de version entre parenthèses spécifient les versions qui ont été utilisées pour le développement. D'autres versions peuvent aussi bien fonctionner.
Si vous utilisez une version plus récente d'Ubuntu, vous pouvez installer ces bibliothèques à partir d'aptitude. Si vous utilisez Mac ou un ancien Linux / BSD, il existe des scripts de construction qui téléchargent et compilent les bibliothèques à partir de la source. Suivez les instructions pour la plate-forme sur laquelle vous composez ci-dessous.
Pour la suite de test, les exigences supplémentaires sont:
Installez Git (https://git-scm.com/) sur votre système. Ensuite, exécutez un clone:
git clone https://github.com/openscad/openscad.git
Cela téléchargera les dernières sources dans un répertoire nommé openscad .
Pour tirer les différents sous-modules (y compris la bibliothèque MCAD), procédez comme suit:
cd openscad
git submodule update --init --recursive
Prérequis:
Installez les dépendances:
Après les dépendances de construction à l'aide de l'une des options suivantes, suivez les instructions dans la section de compilation .
De la source
Exécutez le script qui configure les variables d'environnement:
source scripts/setenv-macos.sh
Ensuite, exécutez le script pour compiler toutes les dépendances:
./scripts/macosx-build-dependencies.sh
Homebrew (suppose que Homebrew est déjà installé)
./scripts/macosx-build-homebrew.sh
Tout d'abord, assurez-vous que vous avez installé Git (souvent emballé sous le nom de «git-core» ou «scmgit»). Une fois que vous avez cloné ce référentiel GIT, téléchargez et installez les packages de dépendance répertoriés ci-dessus à l'aide du gestionnaire de packages de votre système. Un script de commodité est fourni qui peut aider ce processus sur certains systèmes:
sudo ./scripts/uni-get-dependencies.sh
Après avoir installé des dépendances, vérifiez leurs versions. Vous pouvez exécuter ce script pour vous aider:
./scripts/check-dependencies.sh
Faites attention à ce que vous n'ayez de vieilles copies locales nulle part ( /usr/local/ ). Si toutes les dépendances sont présentes et d'une version suffisamment élevée, passez à l'avenir aux instructions de compilation.
Si certaines de vos bibliothèques de dépendances système sont manquantes ou anciennes, vous pouvez télécharger et créer des versions plus récentes dans $HOME/openscad_deps en suivant ce processus. Tout d'abord, exécutez le script qui met en place les variables d'environnement.
source ./scripts/setenv-unibuild.sh
Ensuite, exécutez le script pour compiler toutes les bibliothèques préalables ci-dessus:
./scripts/uni-build-dependencies.sh
Notez que d'énormes dépendances comme GCC, QT ou GLIB2 ne sont pas incluses ici, seulement les plus petites (boost, CGAL, OpenCSG, etc.). Après la construction, vérifiez à nouveau les dépendances.
./scripts/check-dependencies.sh
Après cela, suivez les instructions de compilation ci-dessous.
OpenSCAD pour Windows est généralement compilé à partir de Linux. Si vous souhaitez tenter une construction MSVC sur Windows, veuillez consulter ce site: https://en.wikibooks.org/wiki/opensecad_user_manual/building_on_windows
Pour construire, assurez-vous d'abord que vous disposez de toutes les dépendances nécessaires du projet MXE (répertorié sur https://mxe.cc/#Requirements). N'installez pas MXE lui-même, les scripts ci-dessous le feront pour vous sous $HOME/openscad_deps/mxe
Ensuite, faites installer vos outils de développement pour obtenir GCC. Ensuite, après avoir cloné ce référentiel GIT, démarrez un nouveau shell Clean Bash et exécutez le script qui configure les variables d'environnement.
source ./scripts/setenv-mingw-xbuild.sh 64
Ensuite, exécutez le script pour télécharger et compiler toutes les bibliothèques préalables ci-dessus:
./scripts/mingw-x-build-dependencies.sh 64
Notez que ce processus peut prendre plusieurs heures et des dizaines de gigaoctets d'espace disque, car il utilise le système https://mxe.cc pour réduire de nombreuses bibliothèques. Une fois terminé, construisez OpenSCAD et emballez-le à un installateur:
./scripts/release-common.sh mingw64
Pour une construction transversale de Windows 32 bits, remplacez 64 par 32 dans les instructions ci-dessus.
Nous soutenons le bâtiment OpenSCAD sans tête pour WebAssembly w / Emscripten, en utilisant une image Docker préfabriquée intégrée dans OpenSCAD / OpenSCAD-WASM (qui a également des exemples d'utilisation)
#### Navigateur
La commande suivante crée build-web/openscad.wasm & build-web/openscad.js :
./scripts/wasm-base-docker-run.sh emcmake cmake -B build-web -DCMAKE_BUILD_TYPE=Debug -DEXPERIMENTAL=1
./scripts/wasm-base-docker-run.sh cmake --build build-web -j2OpenSCAD / OpenSCAD-Playground utilise cette construction Wasm pour fournir à une interface utilisateur Web un sous-ensemble de fonctionnalités d'OpenSCAD.
Note
Avec une version de débogage ( -DCMAKE_BUILD_TYPE=Debug ), vous pouvez définir des points d'arrêt C ++ dans Firefox et dans Chrome (ce dernier a besoin d'une extension).
La commande suivante crée build-node/openscad.js , qui est exécutable (nécessite node ):
./scripts/wasm-base-docker-run.sh emcmake cmake -B build-node -DWASM_BUILD_TYPE=node -DCMAKE_BUILD_TYPE=Debug -DEXPERIMENTAL=1
./scripts/wasm-base-docker-run.sh cmake --build build-node -j2
build-node/openscad.js --helpNote
Avec une version de débogage ( -DCMAKE_BUILD_TYPE=Debug ), vous pouvez définir les points d'arrêt C ++ dans VScode + Node (a besoin d'une extension).
Tout d'abord, exécutez cmake -B build -DEXPERIMENTAL=1 pour générer un makefile dans le dossier build .
Ensuite, exécutez cmake --build build . Enfin, sur Linux, vous pouvez exécuter cmake --install build en tant que racine.
Si vous avez eu des problèmes de compilation à partir de Source, soulevez un nouveau problème dans le tracker du numéro sur la page GitHub.
Ce site et ses sous-pages peuvent également être utiles: https://en.wikibooks.org/wiki/OpenScad_User_manual/Building_OpenScad_From_Sources
Une fois construit, vous pouvez exécuter des tests avec ctest à partir du répertoire build .
Remarque: cmake --build et ctest acceptent un argument -j N pour distribuer la charge sur N processus parallèles.
Installez Circleci-Cli (vous aurez besoin d'une clé API)
Remarque : Nous utilisons également les flux de travail GitHub, mais uniquement pour exécuter des tests sur Windows (pour lesquels nous rébusons dans les flux de travail Circleci basés sur Linux ci-dessous). De plus, ACT n'aime pas notre configuration de sous-module de toute façon.
Exécutez les travaux CI
# When "successful", these will fail to upload at the very end of the workflow.
circleci local execute --job openscad-mxe-64bit
circleci local execute --job openscad-mxe-32bit
circleci local execute --job openscad-appimage-64bitRemarque : OpenSCAD-MACOS ne peut pas être construit localement.
Si / quand GCC est tué au hasard, donnez à Docker plus de RAM (par exemple 4 Go par image simultanée que vous prévoyez d'exécuter)
Pour déboguer les travaux de manière plus interactive, vous pouvez suivre l'itinéraire manuel (inspecter .circleci / config.yml pour obtenir l'image Docker réelle dont vous avez besoin)
docker run --entrypoint=/bin/bash -it openscad/mxe-x86_64-gui:latestEnsuite, une fois que vous avez obtenu la console:
git clone https://github.com/%your username%/openscad.git workspace
cd workspace
git checkout %your branch%
git submodule init
git submodule update
# Then execute the commands from .circleci/config.yml:
# export NUMCPU=2
# ...
# ./scripts/release-common.sh -snapshot -mingw64 -v "$OPENSCAD_VERSION"