Aspose.3D FOSS for TypeScript

Riferimento API per @aspose/3d versione 24.12.0. Installa tramite:

npm install @aspose/3d

Runtime: 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 LambertMaterial con 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

 Italiano