Aspose.3D FOSS for TypeScript
Referència de l’API per a @aspose/3d versió 24.12.0. Instal·la via:
npm install @aspose/3dEntorn d’execució: Node.js 18, 20, 22+ · Llenguatge: TypeScript 5.0+ / JavaScript (CommonJS) · Llicència: MIT
Graf de l’escena principal
Methods
El contenidor arrel per a una escena 3D. Crida scene.open() o scene.openFromBuffer() per carregar un fitxer, i scene.save() per escriure la sortida. Exposa scene.rootNode com a punt d’entrada a la jerarquia de nodes.
Methods
Un node anomenat a l’arbre d’escena. Conté un Transform, opcional entity (malla, càmera, llum, o altre SceneObject), i zero o més nodes fill accessibles a través de childNodes.
Methods
Classe base per a tots els objectes que es poden adjuntar a un Node com a entitat principal. Subclasse de Mesh, Camera, Light, i altres.
SceneObject
Base abstracta per a objectes anomenats que pertanyen a una escena. Proporciona el name propietat i el seguiment de pertinença a l’escena compartits per nodes, entitats i objectes a nivell d’actiu.
A3DObject
Classe base arrel per a tots els objectes Aspose.3D. Proporciona el sistema de propietats (getProperty, setProperty) i el name camp heretat per a cada classe pública.
Geometria i Malla
Methods
Representa una malla de polígons. Conté un controlPoints matriu de Vector4 vèrtexs i definicions de polígons creades via createPolygon(). Crida triangulate() per convertir tots els polígons en triangles abans d’exportar.
Methods
Classe base per a tots els tipus de geometria. Conté controlPoints i la col·lecció d’elements de vèrtex (normals, UVs, colors) adjunta a la geometria.
VertexElement
Classe base per a canals d’atributs per vèrtex adjunts a un Geometry.Les subclasses contenen matrius de dades tipades i mappingMode / referenceMode metadades.
VertexElementNormal
Un VertexElement subclasse que emmagatzema normals de superfície. Les dades s’emmagatzemen internament com a FVector4[] (heretat de VertexElementFVector). Requerit per la majoria de renderitzadors per a una il·luminació correcta.
VertexElementUV
A VertexElement subclasse que emmagatzema coordenades de textura 2D. Una única malla pot tenir múltiples conjunts UV per a diferents capes de textura.
VertexElementVertexColor
A VertexElement subclasse que emmagatzema valors de color RGBA per vèrtex.
VertexElementType
Enumeració dels tipus de canals d’atribut que un VertexElement pot representar (p. ex., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
Enumeració que controla com les dades d’element es mapen a la geometria: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, o ALL_SAME.
ReferenceMode
Enumeració que controla com els índexs d’element fan referència a les dades: DIRECT (un a un) o INDEX_TO_DIRECT (a través d’una matriu d’índexs).
TextureMapping
Enumeració de les semàntiques del canal de textura: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, i més.
Transform i Spatial
Methods
Conté la posició local (translation), rotació (rotation com Quaternion), i escala (scaling) Node.d’un.
GlobalTransform
Vista de només lectura de la transformació en espai mundial d’un node, calculada acumulant tots els avantpassats Transform valors. Accés a través de node.globalTransform.
BoundingBox
Una caixa delimitadora alineada amb els eixos definida per una minimum i maximum Vector3 cantonada. S’utilitza per descriure l’extensió espacial d’una malla o escena.
Methods
Material, LambertMaterial, PhongMaterial, PbrMaterial
Material és la classe base abstracta per a tots els tipus de material. Hi ha tres implementacions concretes disponibles:
- LambertMaterial — només difús amb canals de color ambient, difús i emissiu. Adequat per a superfícies no especulars.
- PhongMaterial — s’estén
LambertMaterialamb color especular i propietats de brillantor per a l’ombreig Phong. - PbrMaterial — material de renderització basat en la física amb canals de metall, rugositat, color base i mapa normal. Es mapeja directament al model de material PBR de glTF 2.0.
Càmera i Il·luminació
Methods
Una entitat de node de punt de vista amb tipus de projecció, camp de visió, distàncies de tall proper i llunyà, i propietats de relació d’aspecte.
Methods
Una entitat de node font de llum. El tipus està controlat per la LightType enumeració.
LightType
Enumeració dels tipus de llum compatibles: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
Enumeració dels modes de projecció de la càmera: PERSPECTIVE i ORTHOGRAPHIC.
Utilitats matemàtiques
Methods
Un vector de punt flotant de tres components amb x, y, z camps i mètodes aritmètics comuns (dot, cross, normalize, minus, times). Exportat des de @aspose/3d/utilities.
Methods
Un vector de punt flotant de quatre components amb x, y, z, w camps. Utilitzat com a tipus d’entrades a Mesh.controlPoints.
Methods
Un vector de doble precisió de dos components amb x i y camps. Utilitzat per a coordenades de textura UV.
FVector3
Un vector compacte de tres components de precisió simple utilitzat en matrius de dades d’elements de vèrtex per a normals i tangents.
Methods
Una matriu de transformació 4×4. Admet concatenació, inversió, transposició i descomposició en components de translació, rotació i escala. Exportada des de @aspose/3d/utilities.
Methods
Un quaternion unitari per representar rotacions sense bloqueig de gimbal. Proporciona slerp() per a una interpolació suau i conversió cap a/des de angles d’Euler i Matrix4. Exportat des de @aspose/3d/utilities.
Methods
AnimationClip
Una col·lecció anomenada, limitada en el temps, de AnimationNode pistes. El contenidor principal per a dades d’animació de fotogrames carregades des de fitxers FBX o COLLADA.
AnimationNode
Una pista d’animació anomenada que apunta a un camí de propietat específic en un objecte de l’escena. Conté una o més AnimationChannel objectes.
AnimationChannel
Un únic canal de propietat animada dins d’un AnimationNode. Conté un KeyframeSequence de parelles temps/valor.
KeyFrame
Una única mostra temps/valor en un KeyframeSequence. Conté la marca de temps (en segons), el valor i la informació de tangent per a la interpolació.
KeyframeSequence
Una llista ordenada de KeyFrame mostres per a un canal de propietat, juntament amb el Interpolation i Extrapolation paràmetres que governen la reproducció.
Methods
Enumeració dels modes d’interpolació de fotogrames clau. Els membres coneguts inclouen LINEAR i CONSTANT. Membres addicionals com ara BEZIER poden estar disponibles.
Methods
Defineix el comportament fora del rang de fotogrames clau (abans del primer fotograma i després de l’últim). Controlat per ExtrapolationType.
StepMode
Enumeració que controla com s’aplica la interpolació escalonada (constant) a les fronteres.
WeightedMode
Enumeració per a la gestió del pes del tangent Bézier: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, o BOTH.
ExtrapolationType
Enumeració de comportaments fora de rang: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, i OSCILLATE.
E/S de format
FileFormat
Descriptor base per a un format de fitxer 3D. Cada format compatible proporciona una instància única concreta a través de getInstance().
Methods
Classe base per a implementacions d’importació específiques d’un format. No s’instancia directament; s’invoca internament per scene.open().
Methods
Classe base per a implementacions d’exportació específiques d’un format. No s’instancia directament; s’invoca internament per scene.save().
LoadOptions
Classe base per a objectes d’opcions de càrrega específiques d’un format. Passeu una instància de subclasse a scene.open() o scene.openFromBuffer().
SaveOptions
Classe base per a objectes d’opcions de desament específiques d’un format. Passeu una instància de subclasse a scene.save().
IOService
Interfície de servei interna que abstracteix l’E/S del sistema de fitxers i de buffers per a importadors i exportadors.
Format OBJ
OBJ admet tant importació com exportació. En desar com a OBJ, la biblioteca de materials (.mtl) s’escriu automàticament al costat del .obj fitxer.
ObjImporter
Importador intern que llegeix fitxers Wavefront OBJ, resol .mtl biblioteques de materials i omple un Scene. S’invoca automàticament quan ObjLoadOptions es passa a scene.open().
ObjExporter
Exportador intern que escriu fitxers Wavefront OBJ. Una biblioteca complementària .mtl de materials s’escriu automàticament. S’invoca quan scene.save() apunta a un .obj camí.
ObjLoadOptions
Opcions de càrrega per a fitxers OBJ. Propietats clau: enableMaterials (boolean, per defecte true), flipCoordinateSystem (booleà), normalizeNormal (booleà, per defecte true), scale (nombre). Vegeu Opcions de càrrega i desament de format per a més detalls.
ObjSaveOptions
Desa les opcions per a l’exportació OBJ. Passa a scene.save() per controlar el comportament de sortida OBJ. Vegeu Opcions de càrrega i desament de format per a més detalls.
ObjFormat
Descriptor de format singleton per a OBJ. Ambdós canImport i canExport són true.
Format glTF
GltfImporter
Llegeix JSON glTF 2.0 (.gltf) i binari GLB (.glb) fitxers. Gestiona referències de memòria intermèdia incrustades i externes, materials PBR, skins i clips d’animació.
GltfExporter
Escriu la sortida glTF 2.0. Quan GltfSaveOptions.binaryMode és true, produeix un GLB autònom; altrament escriu un JSON .gltf amb un companion .bin buffer.
GltfLoadOptions
Opcions de càrrega per a fitxers glTF/GLB. Controla la resolució dels buffers i el comportament de càrrega de textures.
GltfSaveOptions
Opcions de desament per a l’exportació glTF/GLB. Propietats destacades: binaryMode (boolean, true → GLB, per defecte false), flipTexCoordV (boolean, inverteix l’eix vertical UV, per defecte true). Vegeu Opcions de càrrega i desament de format per a detalls complets.
GltfFormat
Descriptor de format singleton. Obteniu via GltfFormat.getInstance() i passeu a scene.save() com a segon argument.
Format STL
StlImporter
Llegeix fitxers STL tant ASCII com binaris en un Scene que conté un únic Mesh entitat.
StlExporter
Escriu STL binari. La sortida conté la malla triangulada de l’escena; els polígons que no siguin triangles es triangulen automàticament.
StlLoadOptions
Opcions de càrrega per a STL. Controla si l’importador inverteix les normals durant la importació.
StlSaveOptions
Opcions de desament per a l’exportació STL. Propietat clau: binaryMode (boolean, per defecte false). Controla si la sortida és STL ASCII o binari. Vegeu Opcions de càrrega i desament de format per a més detalls.
StlFormat
Descriptor de format singleton. Obteniu-lo a través de StlFormat.getInstance().
3MF Format
ThreeMfImporter
Llegeix arxius 3MF de la Open Packaging Convention i omple un Scene amb objectes de malla, colors i propietats del material.
ThreeMfExporter
Escriu un arxiu 3MF vàlid a partir de l’escena actual. Adequat per a fluxos de treball d’impressió 3D.
ThreeMfLoadOptions
Opcions de càrrega per a fitxers 3MF.
ThreeMfSaveOptions
Opcions de desament per a l’exportació 3MF.
ThreeMfFormat
Descriptor de format singleton. Obteniu-lo a través de ThreeMfFormat.getInstance().
Format FBX
FbxImporter
Llegeix fitxers FBX binaris i ASCII incloent geometria, materials, esquelets, formes de mescla i clips d’animació.
FbxExporter
Escriu fitxers FBX a partir de l’escena actual. Es suporta tant la sortida FBX binària com ASCII segons les opcions.
FbxLoadOptions
Opcions de càrrega per a FBX. Controla si s’importen animacions, skins i formes de mescla.
FbxSaveOptions
Opcions de desament per a l’exportació FBX. Propietat clau: embedTextures (boolean, per defecte false). Vegeu Opcions de càrrega i desament de format per a més detalls.
FbxFormat
Descriptor de format singleton. Obteniu-lo a través de FbxFormat.getInstance().
Format COLLADA
La importació i exportació COLLADA requereixen el xmldom dependència peer, que s’instal·la automàticament amb @aspose/3d.
ColladaImporter
Llegeix COLLADA (.dae) fitxers XML utilitzant xmldom. Gestiona geometria, materials, càmeres, llums i animació.
ColladaExporter
Escriu sortida XML COLLADA a partir de l’escena actual. Adequat per a intercanvi amb eines DCC (Blender, Maya, etc.).
ColladaFormat
Descriptor de format singleton. Obté a través de ColladaFormat.getInstance().
Sistema de propietats
Methods
Una parella de nom/valor tipada que pot ser adjuntada a qualsevol A3DObject. Admet tipus de valor escalar i vectorial.
PropertyCollection
Un contenidor ordenat de Property objectes. Accessible en qualsevol A3DObject a través del properties accessor.
CustomObject
Una bossa de propietats de forma lliure que s’amplia A3DObject. S’utilitza per emmagatzemar metadades arbitràries que no es corresponen amb cap classe estàndard.
Informació de l’actiu
AssetInfo
Porta metadades a nivell d’escena carregades des del fitxer d’origen: autor, nom de l’aplicació, data de creació, escala d’unitats i informació de l’eix de coordenades.
ImageRenderOptions
Opcions que controlen com es resolen i codifiquen les textures i imatges en desar a formats que incrusten dades d’imatge (p. ex., GLB amb binaryMode: true).
Vegeu també
- Base de coneixement: Guies pràctiques
- Visió general detallada de l’API
- Classe Scene
- Classe Node
- Classe Mesh
- Classe Transform
- Classe GlobalTransform
- Classe Camera
- Classe Light
- Classe Vector3
- Classe Quaternion
- Classe Matrix4
- Classe BoundingBox
- Material, LambertMaterial, PhongMaterial, PbrMaterial
- Opcions de càrrega i desament de format
- Referència Vector2, Vector4
- Referència Property, PropertyCollection, AssetInfo
- Referència A3DObject, SceneObject, Entity
- Referència VertexElement, VertexElementNormal, VertexElementUV
- Referència d’enumeracions
- npm: @aspose/3d
- GitHub: aspose-3d-node