Módulo OpenSCAD

From FreeCAD Documentation
Jump to navigation Jump to search
This page is a translated version of the page OpenSCAD Module and the translation is 100% complete.
Other languages:
Bahasa Indonesia • ‎Deutsch • ‎English • ‎Türkçe • ‎español • ‎français • ‎hrvatski • ‎italiano • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎svenska • ‎čeština • ‎русский • ‎中文 • ‎中文(中国大陆)‎ • ‎中文(台灣)‎
El icono del Ambiente de trabajo OpenSCAD

Introducción

El Workbench OpenSCAD.svg Ambiente de trabajo OpenSCAD tiene como objetivo ofrecer interoperabilidad con el software de código abierto OpenSCAD. Este programa no se distribuye como parte de FreeCAD, pero debe ser instalado para hacer uso completo de este banco de trabajo. No se debe confundir OpenSCAD con OpenCASCADE, que es el núcleo geométrico que FreeCAD utiliza para construir la geometría en la pantalla. Las bibliotecas de OpenCASCADE siempre son necesarias para usar FreeCAD, mientras que el ejecutable de OpenSCAD es totalmente opcional.

Contiene un importador que permite abrir los archivos CSG de OpenSCAD en FreeCAD, y un exportador para producir un árbol basado en CSG. La geometría que no esté basada en operaciones CSG será exportada como una malla.

Este ambiente de trabajo contiene funciones para modificar el árbol de características CSG y reparar modelos. También contiene herramientas de propósito general que no requieren la instalación de OpenSCAD; se pueden utilizar junto con otros ambientes de trabajo. Por ejemplo, el ambiente de trabajo Mesh utiliza internamente las funciones de OpenSCAD para realizar operaciones con meshes, ya que son bastante robustas.

OpenSCADexamaple1.png

Dependencias

En FreeCAD 0.19, el módulo Ply (Python-Lex-Yacc), que se utiliza para importar archivos CSG, fue eliminado del código fuente de FreeCAD, ya que es una biblioteca de terceros no desarrollada por FreeCAD. Como resultado, ahora es necesario instalar Ply antes de utilizar el ambiente de trabajo OpenSCAD. Cuando se utiliza una versión estable y pre-empaquetada de FreeCAD esta dependencia debería instalarse automáticamente en todas las plataformas; en otros casos, por ejemplo, cuando se compila desde el código fuente, puede que tengas que instalarlo desde un repositorio online.

En los sistemas basados en Debian/Ubuntu esto se hace así.

sudo apt install python3-ply

La instalación general en todas las plataformas se puede hacer desde el índice de paquetes de Python.

pip3 install --user ply

OpenSCAD lenguaje y formato de archivo

El lenguaje de OpenSCAD permite la utilización de variables y bucles. Permite especificar submódulos para reutilizar geometría y código. Esta alto grado de flexibilidad hace el análisis sintáctico muy complejo. Actualmente el módulo OpenSCAD en FreeCAD no puede manejar el lenguaje de OpenSCAD de forma nativa. En cambio si OpenSCAD está instalado, se puede utilizar para convertir la entrada en un formato de salida denominado 'CSG'. Es un subconjunto del lenguaje OpenSCAD y se puede utilizar como la entrada de OpenSCAD para su procesamiento posterior. Durante la conversión todo el comportamiento paramétrico se pierde. Todos los nombres de variables serán desechados, los bucles expandidos y las expresiones matemáticas evaluadas.

Herramientas

OpenSCAD IncreaseToleranceFeature.svg Función de aumento de la tolerancia: Aumenta la tolerancia de bordes/caras/vértice de objeto(s) seleccionado(s).

  • OpenSCAD Edgestofaces.svg Aristas a caras: Convierte aristas a caras. Útil para preparar geometría DXF importada para su extrusión.
  • OpenSCAD ExpandPlacements.svg Expandir ubicación: Expande todas las ubicaciones por debajo del árbol de operaciones
  • OpenSCAD ExplodeGroup.svg Explotar grupo: explota las partes primitivas fusionadas.
  • OpenSCAD AddOpenSCADElement.svg Añadir elementos OpenSCAD: Añade un elemento OpenSCAD introduciendo código OpenSCAD en el panel de tareas y ejecutando el binario de OpenSCAD (requiere de OpenSCAD)
  • OpenSCAD MeshBoolean.svg Mesh Booleana: Crea un nuevo objeto de malla mediante una operación booleana a partir de formas.
  • OpenSCAD Hull.svg Casco: Aplica un casco a las formas seleccionadas.
  • OpenSCAD Minkowski.svg Minkowski: Aplica una suma de minkowski a las formas seleccionadas.

Preferencias

  • Std DlgParameter.svg Preferencias: Preferencias disponibles para las herramientas de OpenSCAD.

Limitaciones

OpenSCAD crea geometría sólida constructiva, así como importa archivos de malla y extruye geometría 2D desde archivos DXF. FreeCAD permite crear CSG con primitivas también.

El núcleo de geometría de FreeCAD (OCCT) funciona trabajando sobre una representación de los limites.

Por tanto la conversión de CSG a BREP en teoría debería ser posible. Mientras que una conversión de BREP a CSG es, en general, imposible.

OpenSCAD funciona internamente sobre mallas. Algunas operaciones que son útiles en mallas no son significativas en un modelo BREP y no pueden ser totalmente compatibles. Entre estos se encuentran el convex hull, minkowski sum, glide y subdiv. Actualmente ejecutamos el binario OpenSCAD para realizar operaciones de hull y minkwoski e importar el resultado. Esto significa que la geometría involucrada será triangulada. En OpenSCAD, a menudo se usa una escala no uniforme, que no impone ningún problema cuando se usan mallas. En nuestra geometría, las primitivas geométricas del núcleo (líneas, secciones circulares, etc.) se convierten a BSpline antes de realizar tales deformaciones. Esas líneas de BS son conocidas por causar problemas en operaciones booleanas posteriores. Una solución automática no está disponible en este momento. Por favor, siéntase libre de publicar en el foro si encuentra tales problemas. A menudo, tales problemas se pueden resolver remodelando piezas pequeñas. Una deformación de un cilindro puede sustituirse por una extrusión de una elipsis.

Pistas

Cuando se importa DXF establecer la precisión Borrador a una cantidad sensible para que afecte a la detección de aristas conectadas.

Si FreeCAD se cuelga importando CSG, es muy recomendable activar automáticamente comprobar el modelo después de una operación booleana en Menú → Editar → Preferencias → DiseñoPiezas → Configuración del modelo

Tutoriales

Enlaces