Aspose.3D FOSS for TypeScript
Riferimento API per @aspose/3d versione 24.12.0. Installa tramite:
npm install @aspose/3dRuntime: Node.js 18, 20, 22+ · Linguaggio: TypeScript 5.0+ / JavaScript (CommonJS) · Licenza: MIT
Grafico della scena principale
ImageRenderOptions
Il contenitore radice per una scena 3D. Chiama scene.open() oppure scene.openFromBuffer() per caricare un file, e scene.save() per scrivere l’output. Espone scene.rootNode come punto di ingresso alla gerarchia dei nodi.
ImageRenderOptions
Un nodo nominato nell’albero della scena. Contiene un Transform, un opzionale entity (mesh, camera, light o altro SceneObject), e zero o più nodi figli accessibili tramite childNodes.
ImageRenderOptions
Classe base per tutti gli oggetti che possono essere collegati a un Node come sua entità primaria. Sottoclasse di Mesh, Camera, Light, e altri.
SceneObject
Base astratta per oggetti nominati che appartengono a una scena. Fornisce il name tracciamento delle proprietà e dell’appartenenza alla scena condiviso da nodi, entità e oggetti a livello di asset.
A3DObject
Classe base radice per tutti gli oggetti Aspose.3D. Fornisce il sistema di proprietà (getProperty, setProperty) e il name campo ereditato da ogni classe pubblica.
Geometria e Mesh
ImageRenderOptions
Rappresenta una mesh poligonale. Contiene un controlPoints array di Vector4 vertici e definizioni di poligoni creati tramite createPolygon(). Chiama triangulate() per convertire tutti i poligoni in triangoli prima dell’esportazione.
ImageRenderOptions
Classe base per tutti i tipi di geometria. Contiene controlPoints e la collezione di elementi dei vertici (normali, UV, colori) allegati alla geometria.
VertexElement
Classe base per i canali di attributi per vertice allegati a un Geometry. Le sottoclassi contengono array di dati tipizzati e mappingMode / referenceMode metadati.
VertexElementNormal
Un VertexElement sottoclasse che memorizza le normali di superficie. I dati sono memorizzati internamente come FVector4[] (ereditato da VertexElementFVector). Richiesto dalla maggior parte dei renderer per un’illuminazione corretta.
VertexElementUV
Un VertexElement sottoclasse che memorizza coordinate di texture 2D. Una singola mesh può avere più set di UV per diversi strati di texture.
VertexElementVertexColor
A VertexElement sottoclasse che memorizza i valori di colore RGBA per vertice.
VertexElementType
Enumerazione dei tipi di canale attributo che un VertexElement può rappresentare (ad es., NORMAL, UV, VERTEX_COLOR, TANGENT, BINORMAL).
MappingMode
Enumerazione che controlla come i dati dell’elemento vengono mappati sulla geometria: CONTROL_POINT, POLYGON_VERTEX, POLYGON, EDGE, o ALL_SAME.
ReferenceMode
Enumerazione che controlla come gli indici degli elementi fanno riferimento ai dati: DIRECT (uno-a-uno) o INDEX_TO_DIRECT (tramite un array di indici).
TextureMapping
Enumerazione delle semantiche dei canali di texture: DIFFUSE, SPECULAR, NORMAL, EMISSIVE, BUMP, e altro.
Trasformazione e Spaziale
ImageRenderOptions
Contiene la posizione locale (translation), rotazione (rotation come Quaternion), e scala (scaling) di un Node. Le modifiche qui influenzano il nodo e tutti i suoi figli.
GlobalTransform
Vista di sola lettura della trasformazione in spazio mondiale di un nodo, calcolata accumulando tutti gli antenati Transform valori. Accesso tramite node.globalTransform.
BoundingBox
Un bounding box allineato agli assi definito da un minimum e maximum Vector3 angolo. Usato per descrivere l’estensione spaziale di una mesh o di una scena.
ImageRenderOptions
Material, LambertMaterial, PhongMaterial, PbrMaterial
Material è la classe base astratta per tutti i tipi di materiale. Sono disponibili tre implementazioni concrete:
- LambertMaterial — diffuse-only con canali colore ambient, diffuse e emissive. Adatto per superfici non speculari.
- PhongMaterial — estende
LambertMaterialcon colore speculare e proprietà di lucentezza per il Phong shading. - PbrMaterial — materiale di rendering basato sulla fisica con canali metallic, roughness, base-color e normal-map. Mappa direttamente al modello di materiale glTF 2.0 PBR.
Telecamera e Illuminazione
ImageRenderOptions
Un’entità nodo di punto di vista con tipo di proiezione, campo visivo, distanze di clipping vicino/lontano e proprietà del rapporto d’aspetto.
ImageRenderOptions
Un’entità nodo sorgente di luce. Il tipo è controllato da LightType enumerazione.
LightType
Enumerazione dei tipi di luce supportati: POINT, DIRECTIONAL, SPOT, AREA, VOLUME.
ProjectionType
Enumerazione delle modalità di proiezione della fotocamera: PERSPECTIVE e ORTHOGRAPHIC.
Utility Matematiche
ImageRenderOptions
Un vettore a virgola mobile a tre componenti con x, y, z campi e metodi aritmetici comuni (dot, cross, normalize, minus, times). Esportato da @aspose/3d/utilities.
ImageRenderOptions
Un vettore a virgola mobile a quattro componenti con x, y, z, w campi. Usato come tipo di voci in Mesh.controlPoints.
ImageRenderOptions
Un vettore a doppia precisione a due componenti con x e y campi. Usato per le coordinate di texture UV.
FVector3
Un vettore compatto a tre componenti a precisione singola (float) utilizzato negli array di dati degli elementi dei vertici per normali e tangenti.
ImageRenderOptions
Una matrice di trasformazione 4×4. Supporta concatenazione, inversione, trasposizione e scomposizione in componenti di traslazione, rotazione e scala. Esportata da @aspose/3d/utilities.
ImageRenderOptions
Un quaternione unitario per rappresentare rotazioni senza blocco di gimbal. Fornisce slerp() per interpolazione fluida e conversione da/a angoli di Eulero e Matrix4. Esportato da @aspose/3d/utilities.
ImageRenderOptions
AnimationClip
Una raccolta denominata, limitata nel tempo di AnimationNode tracce. Il contenitore principale per i dati di animazione a fotogrammi chiave caricati da file FBX o COLLADA.
AnimationNode
Una traccia di animazione denominata che mira a un percorso di proprietà specifico su un oggetto della scena. Contiene uno o più AnimationChannel oggetti.
AnimationChannel
Un singolo canale di proprietà animata all’interno di un AnimationNode. Contiene un KeyframeSequence di coppie tempo/valore.
KeyFrame
Un singolo campione tempo/valore in un KeyframeSequence. Contiene il timestamp (in secondi), il valore e le informazioni di tangente per l’interpolazione.
KeyframeSequence
Un elenco ordinato di KeyFrame campioni per un canale di proprietà, insieme al Interpolation e Extrapolation impostazioni che governano la riproduzione.
ImageRenderOptions
Enumerazione delle modalità di interpolazione dei fotogrammi chiave. I membri noti includono LINEAR e CONSTANT. Altri membri come BEZIER potrebbe essere disponibile.
ImageRenderOptions
Definisce il comportamento al di fuori dell’intervallo dei fotogrammi chiave (prima del primo fotogramma e dopo l’ultimo). Controllato da ExtrapolationType.
StepMode
Enumerazione che controlla come l’interpolazione a gradini (costante) viene applicata ai confini.
WeightedMode
Enumerazione per la gestione del peso della tangente Bezier: NONE, OUT_WEIGHT, NEXT_IN_WEIGHT, o BOTH.
ExtrapolationType
Enumerazione dei comportamenti fuori intervallo: CONSTANT, GRADIENT, CYCLE, CYCLE_RELATIVE, e OSCILLATE.
I/O del formato
FileFormat
Descrittore base per un formato di file 3D. Ogni formato supportato fornisce un singleton concreto tramite getInstance().
ImageRenderOptions
Classe base per implementazioni di importazione specifiche per formato. Non istanziata direttamente; invocata internamente da scene.open().
ImageRenderOptions
Classe base per implementazioni di esportazione specifiche per formato. Non istanziata direttamente; invocata internamente da scene.save().
LoadOptions
Classe base per oggetti di opzioni di caricamento specifici per formato. Passare un’istanza della sottoclasse a scene.open() o scene.openFromBuffer().
SaveOptions
Classe base per oggetti di opzioni di salvataggio specifici per formato. Passare un’istanza della sottoclasse a scene.save().
IOService
Interfaccia di servizio interno che astrae I/O di file system e buffer per importatori ed esportatori.
Formato OBJ
OBJ supporta sia l’importazione che l’esportazione. Quando si salva come OBJ, la libreria dei materiali (.mtl) viene scritta automaticamente accanto al .obj file.
ObjImporter
Importatore interno che legge file Wavefront OBJ, risolve .mtl le librerie dei materiali e popola un Scene. Invocato automaticamente quando ObjLoadOptions viene passato a scene.open().
ObjExporter
Esportatore interno che scrive file Wavefront OBJ. Un companion .mtl la libreria dei materiali viene scritta automaticamente. Invocata quando scene.save() punti a un .obj percorso.
ObjLoadOptions
Carica opzioni per file OBJ. Proprietà chiave: enableMaterials (boolean, predefinito true), flipCoordinateSystem (boolean), normalizeNormal (boolean, predefinito true), scale (numero). Vedi Opzioni di caricamento e salvataggio del formato per tutti i dettagli.
ObjSaveOptions
Salva le opzioni per l’esportazione OBJ. Passa a scene.save() per controllare il comportamento dell’output OBJ. Vedi Opzioni di caricamento e salvataggio del formato per tutti i dettagli.
ObjFormat
Descrittore di formato singleton per OBJ. Entrambi canImport e canExport sono true.
Formato glTF
GltfImporter
Legge JSON glTF 2.0 (.gltf) e binario GLB (.glb) file. Gestisce riferimenti a buffer incorporati ed esterni, materiali PBR, skin e clip di animazione.
GltfExporter
Scrive l’output glTF 2.0. Quando GltfSaveOptions.binaryMode è true, produce un GLB autonomo; altrimenti scrive un JSON .gltf con un companion .bin buffer.
GltfLoadOptions
Opzioni di caricamento per file glTF/GLB. Controlla la risoluzione dei buffer e il comportamento di caricamento delle texture.
GltfSaveOptions
Opzioni di salvataggio per l’esportazione glTF/GLB. Proprietà notevoli: binaryMode (boolean, true → GLB, predefinito false), flipTexCoordV (boolean, inverte l’asse verticale UV, predefinito true). Vedi Opzioni di caricamento e salvataggio del formato per tutti i dettagli.
GltfFormat
Singleton del descrittore di formato. Ottieni tramite GltfFormat.getInstance() e passa a scene.save() come secondo argomento.
Formato STL
StlImporter
Legge sia file STL ASCII che binari in un Scene contenente un singolo Mesh entità.
StlExporter
Scrive STL binario. L’output contiene la mesh triangolata dalla scena; i poligoni non triangolari vengono triangolati automaticamente.
StlLoadOptions
Opzioni di caricamento per STL. Controlla se l’importatore inverte le normali durante l’importazione.
StlSaveOptions
Opzioni di salvataggio per l’esportazione STL. Proprietà chiave: binaryMode (boolean, predefinito false). Controlla se l’output è STL ASCII o binario. Vedi Opzioni di caricamento e salvataggio del formato per tutti i dettagli.
StlFormat
Singleton del descrittore di formato. Ottieni tramite StlFormat.getInstance().
3MF Format
ThreeMfImporter
Legge gli archivi Open Packaging Convention 3MF e popola un Scene con oggetti mesh, colori e proprietà dei materiali.
ThreeMfExporter
Scrive un archivio 3MF valido dalla scena corrente. Adatto ai flussi di lavoro di stampa 3D.
ThreeMfLoadOptions
Opzioni di caricamento per i file 3MF.
ThreeMfSaveOptions
Opzioni di salvataggio per l’esportazione 3MF.
ThreeMfFormat
Singleton del descrittore di formato. Ottieni tramite ThreeMfFormat.getInstance().
Formato FBX
FbxImporter
Legge file FBX binari e ASCII includendo geometria, materiali, scheletri, blend shapes e animation clips.
FbxExporter
Scrive file FBX dalla scena corrente. Sono supportati sia output FBX binario che ASCII a seconda delle opzioni.
FbxLoadOptions
Opzioni di caricamento per FBX. Controlla se animazione, skins e blend shapes vengono importati.
FbxSaveOptions
Opzioni di salvataggio per l’esportazione FBX. Proprietà chiave: embedTextures (boolean, default false) Opzioni di caricamento e salvataggio del formato Vedi.
FbxFormat
Singleton del descrittore di formato. Ottieni tramite FbxFormat.getInstance().
Formato COLLADA
L’importazione e l’esportazione COLLADA richiedono il xmldom peer dependency, che viene installata automaticamente con @aspose/3d.
ColladaImporter
Legge COLLADA (.dae) xmldom. Gestisce geometria, materiali, telecamere, luci e animazione.
ColladaExporter
Scrive l’output XML COLLADA dalla scena corrente. Adatto per lo scambio con strumenti DCC (Blender, Maya, ecc.).
ColladaFormat
Singleton del descrittore di formato. Ottieni tramite ColladaFormat.getInstance().
Sistema di Proprietà
ImageRenderOptions
Una coppia nome/valore tipizzata che può essere allegata a qualsiasi A3DObject. Supporta tipi di valore scalari e vettoriali.
PropertyCollection
Un contenitore ordinato di Property oggetti. Accessibile su qualsiasi A3DObject tramite il properties accessor.
CustomObject
Un contenitore di proprietà a forma libera che estende A3DObject. Utilizzato per memorizzare metadati arbitrari che non corrispondono a una classe standard.
Info Asset
AssetInfo
Trasporta i metadati a livello di scena caricati dal file sorgente: autore, nome dell’applicazione, data di creazione, scala dell’unità e informazioni sugli assi di coordinate.
ImageRenderOptions
Opzioni che controllano come le texture e le immagini vengono risolte e codificate durante il salvataggio in formati che incorporano dati immagine (ad esempio, GLB con binaryMode: true).
Vedi anche
- Base di conoscenza: Guide pratiche
- Panoramica dettagliata dell’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
- Opzioni di caricamento e salvataggio del formato
- Riferimento a Vector2, Vector4
- Riferimento a Property, PropertyCollection, AssetInfo
- Riferimento a A3DObject, SceneObject, Entity
- Riferimento a VertexElement, VertexElementNormal, VertexElementUV
- Riferimento alle enumerazioni
- npm: @aspose/3d
- GitHub: aspose-3d-node