FormIt for Windows
Español
Español
  • Introducción
  • Novedades
  • Funciones de FormIt
    • Varios clientes
    • Modelado conceptual de sólidos
    • Trabajo con formatos de datos
    • Idiomas
    • Colaboración
    • Gráficos de presentación
    • FormIt + Autodesk Docs
    • FormIt + Dynamo
    • Análisis solar + energético
    • FormIt + Revit
    • FormIt + JavaScript para módulos de extensión
  • Introducción a FormIt
    • Preguntas frecuentes
    • Requisitos previos e instalación
    • Configuración del proyecto
    • Barras de herramientas y paletas
    • Navegación por la escena
  • FormIt Primer
    • Parte 1
      • 1.1 - Establecer la ubicación
      • 1.2 - Configuración de proyectos con imágenes y rejilla
      • 1.3 - Boceto 3D y Arrastrar cara
      • 1.4 - Añadir suelos con niveles
      • 1.5 - Agrupar objetos
      • 1.6 - Controlar la visibilidad con capas
      • 1.7 - Pintar con materiales
      • 1.8 - Crear pilares con matriz
      • 1.9 - Adición de detalles
      • 1.10 - Grupos de cálculo con Dynamo
      • 1.11 - Importar modelos con la biblioteca de contenido
      • 1.12 - Estilos visuales
      • 1.13 - Planos de sección
      • 1.14 - Exportar imagen
      • 1.15 - Trabajo con Revit
    • Parte 2
      • 2.1 - Herramienta Línea de desfase
      • 2.2 - Herramientas avanzadas de modelado: Vaciar y Recubrimiento
      • 2.3 - Flujo de trabajo de la vista ortogonal
      • 2.4 - Flujos de trabajo de terreno 3D
      • 2.5 - Módulos de extensión
      • 2.6 - Nodos de Dynamo en FormIt
      • 2.7 - Herramientas de diagnóstico
      • 2.8 - Flujos de trabajo avanzados de Revit
      • 2.9 - Análisis solar y análisis energético con Insight
      • 2.10 - Sesiones de colaboración
  • Biblioteca de herramientas
    • Texto 3D
    • Alinear cámara con cara
    • Arco
    • Matriz
    • Array Along Path
    • Guardado automático
    • Corte booleano
    • Intersección booleana
    • Unión booleana
    • Círculo
    • Colaboración
    • Biblioteca de contenido
    • Copiar objeto
    • Recubrimiento, Barrido y Solevación
    • Crear panorámica
    • Facetado de curva + superficie
    • Suprimir, Editar y Mover
    • Dynamo
    • Análisis energético con Insight
    • Caras: Extruir, Cortar y Desfase
    • Caras: Aplanar caras
    • Caras: Inclinar cara y Facetar caras suaves
    • Árbol de grupos
    • Grupos
    • Importar y exportar datos
    • Capas
    • Niveles y área
    • Líneas
    • Materiales
    • Medir ángulo
    • Medir
    • Mallas
    • Reflejar
    • Estadísticas de modelo
    • Árbol del modelo
    • Modificación de caras, bordes y puntos
    • Escala no uniforme
    • Línea de desfase
    • Vistas ortogonales
    • Cámara ortogonal y en perspectiva
    • Colocación de primitivas
    • Colocar un vértice
    • Módulos de extensión
    • Polígono
    • Propiedades
    • Railing Along Path
    • Rectángulo
    • Revit
    • Rotar objetos
    • Ajustar escala de objetos
    • Escenas
    • Planos de sección
    • Selección
    • Configuración de la ubicación
    • Sol + sombras
    • Vaciado
    • Forzados de cursor y deducciones
    • Análisis solar
    • Spline
    • Sistema de montantes de escaparate/muro cortina
    • Administrador de deshacer
    • Estilos visuales
    • Planos de trabajo
    • Ejes universales
  • Módulos de extensión
    • Introducción a los módulos de extensión
    • Cómo utilizar módulos de extensión
    • Cómo desarrollar módulos de extensión
      • Su primer módulo de extensión
        • Plugin Playground
        • Inicio del módulo de extensión de ejemplo
        • Adición de sus propias funciones
        • Guardar el trabajo en GitHub
        • Publicación del proyecto
      • Desarrollo avanzado
        • Uso de un IDE
        • Clonación de un módulo de extensión de ejemplo
        • Alojamiento de un módulo de extensión en un servidor local
        • Vista preliminar de un módulo de extensión en Plugin Manager
        • Configuración de FormIt para el desarrollo
        • Alojamiento de un módulo de extensión en GitHub
        • Configuración general de módulos de extensión en el archivo manifest
        • Volver a cargar para aplicar cambios locales
        • Comparación entre motores del cliente y motores web
        • Depuración
        • Creación de versiones
      • Opciones de desarrollo adicionales
        • Creación de un módulo de extensión de panel HTML
        • Creación de un módulo de extensión combinado de panel HTML y barra de herramientas
        • Creación de un módulo de extensión basado en barra de herramientas
        • Probar un módulo de extensión combinado de panel HTML y barra de herramientas
        • Creación de un complemento
        • Llamada a módulos de extensión y API desde Dynamo
    • API de FormIt
    • Ejemplos
      • Generar guirnaldas de luces
      • Módulo de extensión Manage Cameras
      • Módulo de extensión Properties Plus
      • 3D Context Creator
      • Comunidad de módulos de extensión de FormIt
  • Apéndice
    • Métodos abreviados de teclado
Powered by GitBook
On this page
Edit on GitHub
  1. Módulos de extensión
  2. Cómo desarrollar módulos de extensión
  3. Opciones de desarrollo adicionales

Creación de un complemento

PreviousProbar un módulo de extensión combinado de panel HTML y barra de herramientasNextLlamada a módulos de extensión y API desde Dynamo

Last updated 2 years ago

Un complemento es un módulo de extensión que también carga archivos DLL que muestran nuevas API de JavaScript.

Descargar la API de FormIt

Para generar archivos DLL que admitan FormIt, se necesita la API de FormIt. La API de FormIt se puede descargar desde . Es necesario iniciar sesión para acceder a la descarga.

Una vez que haya iniciado sesión, la API de FormIt está disponible en SOFTWARE.

Un complemento presenta la siguiente estructura:

            // FormIt looks for REGISTERAPIMETHODS to load new JS APIs
            REGISTERAPIMETHODS
            {
                // Declare new namespace for the new JS APIs
                REGISTERNAMESPACE("HelloDLL")
                // Create a JS API with no arguments
                APIMETHOD(HelloDLL, API1, "") {}
                // Create a JS API with 1 argument
                APIMETHOD(HelloDLL, API2, "arg1") {}
                // Create a JS API with 2 argument
                APIMETHOD(HelloDLL, API3, "arg1, arg2") {}
                ...
                ...
            }

Para obtener los argumentos en las variables de C++, utilice SCRIPTCONVERTER, como se muestra a continuación:

            // Create a JS API with 2 argument
            APIMETHOD(HelloDLL, API3, "arg1, arg2")
            {
                // NOTE: The arg names above ^^^^ have to match the args in the macros below.
                // arg1 expects a bool
                SCRIPTCONVERTER(bool, arg1);
                // arg2 expects an int
                SCRIPTCONVERTER(int, arg2);
                return JSON_UNDEFINED;
            }

Puede devolverse JSON_UNDEFINED o cualquier objeto json. Utilice to_json para convertir la variable C++ en json.

            // Create a JS API with 2 argument
            APIMETHOD(HelloDLL, API3, "arg1, arg2")
            {
                // NOTE: The arg names above ^^^^ have to match the args in the macros below.
                // arg1 expects a bool
                SCRIPTCONVERTER(bool, arg1);
                // arg2 expects an int
                SCRIPTCONVERTER(int, arg2);

                std::string myValue = "Test";
                return to_json(myValue);
            }
        "DLLs" : ["PLUGINLOCATION/MyClass.dll", "PLUGINLOCATION/HelloDLL.dll"]

Un complemento tiene acceso a la y la .

Una vez que el archivo DLL defina todas las API de JS necesarias, el módulo de extensión debe indicar a FormIt los archivos DLL que deben cargarse. Esta acción se realiza en el archivo .

es un ejemplo práctico que explica cómo crear un complemento.

es un ejemplo práctico que explica cómo crear un complemento con la .

API de FormIt
API de C++ de núcleo de modelado de FormIt
manifest
HelloAddIn
HelloWSMAddIn
API de C++ de núcleo de modelado de FormIt
Autodesk Developer Network