Aspose.3D FOSS for TypeScript

Referencia de API para @aspose/3d versión 24.12.0. Instalar mediante:

npm install @aspose/3d

Entorno de ejecución: Node.js 18, 20, 22+ · Lenguaje: TypeScript 5.0+ / JavaScript (CommonJS) · Licencia: MIT


Gráfico de escena principal

El contenedor raíz para una escena 3D. Llama a scene.open() o scene.openFromBuffer() para cargar un archivo, y scene.save() para escribir la salida. Expone scene.rootNode como el punto de entrada a la jerarquía de nodos.

Un nodo con nombre en el árbol de escena. Contiene un Transform, un opcional entity (malla, cámara, luz, u otro SceneObject), y cero o más nodos hijos accesibles a través de childNodes.

Clase base para todos los objetos que pueden adjuntarse a un Node como su entidad principal. Subclase de Mesh, Camera, Light, y otros.

SceneObject

Base abstracta para objetos nombrados que pertenecen a una escena. Proporciona el name propiedad y el seguimiento de pertenencia a la escena compartidos por nodos, entidades y objetos a nivel de activo.

A3DObject

Clase base raíz para todos los objetos Aspose.3D. Proporciona el sistema de propiedades (getProperty, setProperty) y el name campo heredado por cada clase pública.


Geometría y malla

Representa una malla poligonal. Contiene un controlPoints matriz de Vector4 vértices y definiciones de polígonos creadas mediante createPolygon(). Llamar triangulate() para convertir todos los polígonos en triángulos antes de exportar.

Clase base para todos los tipos de geometría. Contiene controlPoints y la colección de elementos de vértice (normales, UVs, colores) adjuntos a la geometría.

VertexElement

Clase base para canales de atributos por vértice adjuntos a un Geometry.Las subclases llevan matrices de datos tipados y mappingMode / referenceMode metadatos.

VertexElementNormal

Un VertexElement subclase que almacena normales de superficie. Los datos se almacenan internamente como FVector4[] (heredado de VertexElementFVector). Requerido por la mayoría de los renderizadores para una iluminación correcta.

VertexElementUV

A VertexElement subclase que almacena coordenadas de textura 2D. Una sola malla puede tener múltiples conjuntos UV para diferentes capas de textura.

VertexElementVertexColor

A VertexElement subclase que almacena valores de color RGBA por vértice.

VertexElementType

Enumeración de los tipos de canal de atributo que un VertexElement puede representar (p.ej., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).

MappingMode

Enumeración que controla cómo los datos del elemento se asignan a la geometría: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, o ALL_SAME.

ReferenceMode

Enumeración que controla cómo los índices de elemento hacen referencia a los datos: DIRECT (uno a uno) o INDEX_TO_DIRECT (a través de una matriz de índices).

TextureMapping

Enumeración de semánticas de canales de textura: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, y más.


Transform y Spatial

Contiene la posición local (translation), rotación (rotation como Quaternion), y escala (scaling) de un Node. Los cambios aquí afectan al nodo y a todos sus hijos.

GlobalTransform

Vista de solo lectura de la transformación en espacio mundial de un nodo, calculada acumulando todos los ancestros Transform valores. Acceso a través de node.globalTransform.

BoundingBox

Una axis-aligned bounding box definida por un minimum y maximum Vector3 esquina. Utilizado para describir la extensión espacial de una malla o escena.


Material, LambertMaterial, PhongMaterial, PbrMaterial

Material es la clase base abstracta para todos los tipos de material. Hay disponibles tres implementaciones concretas:

  • LambertMaterial — solo difuso con canales de color ambiental, difuso y emisivo. Adecuado para superficies no especulares.
  • PhongMaterial — extiende LambertMaterial con color especular y propiedades de brillo para sombreado Phong.
  • PbrMaterial — material de renderizado basado en la física con canales metálico, rugosidad, color base y mapa de normales. Se asigna directamente al modelo de material PBR de glTF 2.0.

Cámara y Iluminación

Una entidad de nodo de punto de vista con tipo de proyección, campo de visión, distancias de recorte cercano/lejos y propiedades de relación de aspecto.

Una entidad de nodo de fuente de luz. El tipo es controlado por el LightType enumeración.

LightType

Enumeración de los tipos de luz compatibles: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.

ProjectionType

Enumeración de los modos de proyección de cámara: PERSPECTIVE y ORTHOGRAPHIC.


Utilidades Matemáticas

Un vector de punto flotante de tres componentes con x, y, z campos y métodos aritméticos comunes (dot, cross, normalize, minus, times). Exportado desde @aspose/3d/utilities.

Un vector de punto flotante de cuatro componentes con x, y, z, w campos. Usado como el tipo de entradas en Mesh.controlPoints.

Un vector de doble precisión de dos componentes con x y y campos. Usado para coordenadas de textura UV.

FVector3

Un vector compacto de tres componentes de precisión simple utilizado en matrices de datos de elementos de vértice para normales y tangentes.

Una matriz de transformación 4×4. Soporta concatenación, inversión, transposición y descomposición en componentes de traslación, rotación y escala. Exportado desde @aspose/3d/utilities.

Un cuaternión unitario para representar rotaciones sin bloqueo de gimbal. Proporciona slerp() para una interpolación suave y conversión de/hacia ángulos de Euler y Matrix4. Exportado desde @aspose/3d/utilities.


AnimationClip

Una colección nombrada, limitada en el tiempo, de AnimationNode pistas. El contenedor principal de datos de animación por fotogramas clave cargados desde archivos FBX o COLLADA.

AnimationNode

Una pista de animación nombrada que apunta a una ruta de propiedad específica en un objeto de escena. Contiene uno o más AnimationChannel objetos.

AnimationChannel

Un único canal de propiedad animado dentro de un AnimationNode. Contiene un KeyframeSequence de pares tiempo/valor.

KeyFrame

Una única muestra tiempo/valor en un KeyframeSequence. Lleva la marca de tiempo (en segundos), el valor y la información de tangente para la interpolación.

KeyframeSequence

Una lista ordenada de KeyFrame muestras para un canal de propiedad, junto con el Interpolation y Extrapolation ajustes que rigen la reproducción.

Enumeración de modos de interpolación de fotogramas clave. Los miembros conocidos incluyen LINEAR y CONSTANT. Miembros adicionales como BEZIER pueden estar disponibles.

Define el comportamiento fuera del rango de fotogramas clave (antes del primer fotograma y después del último). Controlado por ExtrapolationType.

StepMode

Enumeración que controla cómo se aplica la interpolación escalonada (constante) en los límites.

WeightedMode

Enumeración para el manejo del peso de la tangente Bézier: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, o BOTH.

ExtrapolationType

Enumeración de comportamientos fuera de rango: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, y OSCILLATE.


E/S de formato

FileFormat

Descriptor base para un formato de archivo 3D. Cada formato compatible proporciona una instancia única concreta a través de getInstance().

Clase base para implementaciones de importación específicas de formato. No se instancia directamente; es invocada internamente por scene.open().

Clase base para implementaciones de exportación específicas de formato. No se instancia directamente; es invocada internamente por scene.save().

LoadOptions

Clase base para objetos de opciones de carga específicos de formato. Pase una instancia de subclase a scene.open() o scene.openFromBuffer().

SaveOptions

Clase base para objetos de opciones de guardado específicos de formato. Pase una instancia de subclase a scene.save().

IOService

Interfaz de servicio interno que abstrae la E/S del sistema de archivos y del búfer para importadores y exportadores.


Formato OBJ

OBJ admite tanto importación como exportación. Al guardar como OBJ, la biblioteca de materiales (.mtl) se escribe automáticamente junto a la .obj archivo.

ObjImporter

Importador interno que lee archivos Wavefront OBJ, resuelve .mtl bibliotecas de materiales y rellena un Scene. Se invoca automáticamente cuando ObjLoadOptions se pasa a scene.open().

ObjExporter

Exportador interno que escribe archivos Wavefront OBJ. Un compañero .mtl biblioteca de materiales se escribe automáticamente. Se invoca cuando scene.save() apunta a un .obj ruta.

ObjLoadOptions

Opciones de carga para archivos OBJ. Propiedades clave: enableMaterials (booleano, por defecto true), flipCoordinateSystem (boolean), normalizeNormal (boolean, default true), scale (number). Ver Opciones de carga y guardado de formato para obtener detalles completos.

ObjSaveOptions

Guardar opciones para la exportación OBJ. Pasar a scene.save() para controlar el comportamiento de salida OBJ. Ver Opciones de carga y guardado de formato para obtener detalles completos.

ObjFormat

Descriptor de formato singleton para OBJ. Ambos canImport y canExport son true.


Formato glTF

GltfImporter

Lee JSON glTF 2.0 (.gltf) y binario GLB (.glb) archivos. Maneja referencias de buffer incrustadas y externas, materiales PBR, skins y clips de animación.

GltfExporter

Escribe salida glTF 2.0. Cuando GltfSaveOptions.binaryMode es true, produce un GLB autocontenido; de lo contrario escribe un JSON .gltf con un buffer complementario .bin buffer.

GltfLoadOptions

Opciones de carga para archivos glTF/GLB. Controla la resolución de búferes y el comportamiento de carga de texturas.

GltfSaveOptions

Opciones de guardado para la exportación glTF/GLB. Propiedades notables: binaryMode (boolean, true → GLB, default false), flipTexCoordV (boolean, flips UV vertical axis, default true). Ver Opciones de carga y guardado de formato para obtener detalles completos.

GltfFormat

Descriptor de formato singleton. Obtenga a través de GltfFormat.getInstance() y páselo a scene.save() como segundo argumento.


Formato STL

StlImporter

Lee archivos STL tanto ASCII como binarios en un Scene que contiene un único Mesh entidad.

StlExporter

Escribe STL binario. La salida contiene la malla triangulada de la escena; los polígonos que no son triángulos se triangulan automáticamente.

StlLoadOptions

Opciones de carga para STL. Controla si el importador invierte las normales durante la importación.

StlSaveOptions

Opciones de guardado para la exportación STL. Propiedad clave: binaryMode (booleano, por defecto false). Controla si la salida es STL ASCII o binario. Ver Opciones de carga y guardado de formato para obtener detalles completos.

StlFormat

Descriptor de formato singleton. Obtenga a través de StlFormat.getInstance().


3MF Format

ThreeMfImporter

Lee archivos 3MF de Open Packaging Convention y rellena un Scene con objetos de malla, colores y propiedades de material.

ThreeMfExporter

Escribe un archivo 3MF válido a partir de la escena actual. Adecuado para flujos de trabajo de impresión 3D.

ThreeMfLoadOptions

Opciones de carga para archivos 3MF.

ThreeMfSaveOptions

Opciones de guardado para la exportación 3MF.

ThreeMfFormat

Descriptor de formato singleton. Obtenga a través de ThreeMfFormat.getInstance().


Formato FBX

FbxImporter

Lee archivos FBX binarios y ASCII, incluyendo geometría, materiales, esqueletos, blend shapes y clips de animación.

FbxExporter

Escribe archivos FBX a partir de la escena actual. Se admite salida FBX tanto binaria como ASCII según las opciones.

FbxLoadOptions

Opciones de carga para FBX. Controla si se importan animación, skins y blend shapes.

FbxSaveOptions

Opciones de guardado para la exportación FBX. Propiedad clave: embedTextures (booleano, por defecto false). Ver Opciones de carga y guardado de formato para obtener detalles completos.

FbxFormat

Descriptor de formato singleton. Obtenga a través de FbxFormat.getInstance().


Formato COLLADA

La importación y exportación COLLADA requieren el xmldom dependencia peer, que se instala automáticamente con @aspose/3d.

ColladaImporter

Lee COLLADA (.dae) archivos XML usando xmldom. Maneja geometría, materiales, cámaras, luces y animación.

ColladaExporter

Escribe salida XML COLLADA a partir de la escena actual. Adecuado para el intercambio con herramientas DCC (Blender, Maya, etc.).

ColladaFormat

Singleton del descriptor de formato. Obtenga mediante ColladaFormat.getInstance().


Sistema de Propiedades

Un par nombre/valor tipado que puede adjuntarse a cualquier A3DObject. Soporta tipos de valor escalar y vectorial.

PropertyCollection

Un contenedor ordenado de Property objetos. Accesible en cualquier A3DObject a través del properties accesor.

CustomObject

Un contenedor de propiedades de forma libre que extiende A3DObject. Se utiliza para almacenar metadatos arbitrarios que no se asignan a una clase estándar.


Información del activo

AssetInfo

Transporta metadatos a nivel de escena cargados del archivo fuente: autor, nombre de la aplicación, fecha de creación, escala de unidades y información del eje de coordenadas.

ImageRenderOptions

Opciones que controlan cómo se resuelven y codifican las texturas e imágenes al guardar en formatos que incrustan datos de imagen (p. ej., GLB con binaryMode: true).


Ver también

 Español