Aspose.3D FOSS for Java

Referință API pentru aspose-3d-foss 26.1.0 (Java 21+, licență MIT).

Toate clasele se află în com.aspose.threed pachetul rădăcină. Importul rădăcină este:

import com.aspose.threed.*;

Structura pachetului: Aproape toate clasele publice se află în com.aspose.threed. Singurul sub-pachet utilizat în mod obișnuit este com.aspose.threed.shading (pentru PbrMaterial). Sub com.aspose.threed.formats sub-pachet conține importatori/exportatori interni și nu este de obicei importat direct.

Convenția de denumire Java: Toate proprietățile utilizează metode getter/setter. De exemplu, folosiți node.getTransform() în loc de node.transform, și transform.setTranslation(...) în loc de transform.translation = .... Rețineți că Vector3, Vector4, Quaternion, Matrix4, și FVector tipurile utilizează câmpuri publice (v.x, v.y, v.z) în loc de getter-uri pentru accesul la componente.


Grafică de scenă de bază

ExampleExample
SceneContainer de nivel superior pentru toate datele scenei 3D. Conține nodul rădăcină, metadatele activelor și clipurile de animație. Expune fromFile(), open(), și save() ca punctele principale de intrare I/O.
NodeUn nod denumit în ierarhia scenei. Deține o listă de noduri copil și o listă de atașate Entity obiecte precum meshes, camere și lumini. Poartă un local Transform.
EntityClasă de bază abstractă pentru toate obiectele care pot fi atașate la un Node. Oferă nume și identitate, dar nu are geometrie proprie.
SceneObjectClasă de bază partajată de Node și Entity. Oferă interfața de colecție de proprietăți utilizată pentru metadate definite de utilizator.
A3DObjectClasa de bază rădăcină pentru toate obiectele gestionate Aspose.3D. Expune proprietatea nume și Properties colecție.
INamedObjectInterfață care garantează o getName() metodă. Implementată de Node, Entity, și mai multe tipuri de descriptor specifice formatului.

Geometrie și Mesh

ExampleExample
MeshEntitate de plasă poligonală. Stochează punctele de control (pozițiile vârfurilor ca Vector4), liste de fețe poligonale (liste de indici ai punctelor de control), și straturi de elemente de vârf (normale, UV-uri, culori de vârf).
GeometryBază abstractă pentru tipuri de geometrie asemănătoare cu plasa. Definește matricea de puncte de control și colecția de VertexElement straturi. Mesh moștenește de la Geometry.
VertexElementBază abstractă pentru un strat de date atașat geometriei (normale, UV-uri, culori etc.). Poartă getMappingMode(), getReferenceMode(), și o listă de date.
VertexElementNormalStochează un vector normal per vârf sau per colț de poligon, în funcție de modul de mapare. Valorile de date sunt Vector4 instanțe cu w neutilizat.
VertexElementUVStochează perechi de coordonate de textură (Vector2) pe vârf sau pe colțul poligonului. O plasă poate conține mai multe straturi UV pentru diferite canale de textură.
VertexElementVertexColorStochează date de culoare RGBA per-vertex sau per-corner ca Vector4 (r, g, b, a în intervalul 0–1).
VertexElementTypeEnumerare care identifică rolul semantic al unui strat de element vertex: NORMAL, UV, VERTEX_COLOR, și altele. Transmite valorile către Mesh.getElement().
MappingModeEnumerare care controlează la care primitivă se mapă valoarea unui element vertex: CONTROL_POINT, POLYGON_VERTEX, sau POLYGON.
ReferenceModeEnumerare care controlează modul în care valorile sunt indexate: DIRECT (o valoare per primitiv de mapare) sau INDEX_TO_DIRECT (un tablou de valori plus un tablou separat de indici).

Transformare și Spațial

ExampleExample
TransformTransformare locală atașată la un Node. Oferă translație, rotație (ca Quaternion), și componente de scară, plus metode convenabile pentru unghiuri Euler.
GlobalTransformVizualizare numai în citire a transformării în spațiul mondial al unui nod după compunerea tuturor transformărilor strămoșilor. Accesată prin node.getGlobalTransform().
AssetInfoBloc de metadate atașat la un Scene. Stochează numele aplicației de authoring, numele unității, factorul de scară al unității, definițiile axelor sistemului de coordonate și marcajele temporale de creare/modificare.

Materiale și umbrire

ExampleExample
MaterialClasă de bază abstractă pentru toate tipurile de materiale. Oferă un nume și o colecție de proprietăți pentru parametri numerici și de culoare.
PbrMaterialMaterial de redare bazată pe fizică. Stochează albedo, factor metalic, factor de rugozitate, culoare emisivă, transparență și texturi asociate. Utilizat de glTF 2.0 și alte formate compatibile PBR. Import: com.aspose.threed.shading.PbrMaterial.

Example

ExampleExample
CameraEntitate cameră. Moștenește de la Entity. Nu sunt expuse proprietăți specifice formatului în ediția Java FOSS dincolo de numele moștenit și colecția de proprietăți. Atașat la un Node pentru a defini transformările punctului de vedere.

Notă: Example Light clasa nu este disponibilă în ediția Java a Aspose.3D FOSS. Datele de iluminare a scenei din fișierele importate sunt stocate ca generice Entity obiecte.


Utilitare matematice

ExampleExample
Vector2Vector cu dublă precizie, 2 componente (x, y). Utilizat pentru coordonatele de textură UV.
Vector3Vector cu dublă precizie, 3 componente (x, y, z). Utilizat pentru poziții, direcții și scară.
Vector4Vector cu dublă precizie, 4 componente (x, y, z, w). Utilizat pentru puncte de control (poziții omogene) și date normale.
FVector3Vector float cu 3 componente, precizie simplă. Apare în matricile de date ale elementelor de vârf pentru normale și tangente.
FVector4Vector float cu 4 componente, precizie simplă. Tipul de stocare al VertexElementFVector date.
QuaternionQuaternion unitar pentru reprezentarea rotațiilor (w, x, y, z). Utilizat de Transform.getRotation().
Matrix44x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxCutie de delimitare aliniată pe axe definită de getMinimum() și getMaximum() Vector3 colțuri. Utilizată pentru interogări spațiale și ajutoare de eliminare a frustumului.

Example

ExampleExample
AnimationClipContainer denumit pentru un interval de animație. Un Scene poate conține mai multe clipuri (de ex., “Walk”, “Run”). Stub de declarație — datele de cadre cheie și redarea nu sunt încă implementate.

Intrare/Ieșire format

ExampleExample
Scene.fromFile(path)Metodă statică. Deschide fișierul la path, detectează formatul din extensie și returnează un/ă populat/ă Scene. Aruncă o excepție dacă fișierul nu este găsit sau formatul nu este suportat.
Scene.open(path, options)Metodă de instanță. Deschide un fișier într-un/ă existent/ă Scene instanță, opțional utilizând un specific de format LoadOptions subclasă.
Scene.save(path, options)Metodă de instanță. Serializa scena în path utilizând formatul dedus din extensie, opțional utilizând un specific de format SaveOptions subclasă.
FileFormatRegistru al formatelor de fișiere acceptate. Conține intrări precum FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII().
IOServiceAbstracție internă I/O utilizată de importatorii și exportatorii de formate. De obicei nu este folosită direct de codul aplicației.
LoadOptionsClasă de bază pentru toate obiectele de opțiuni de încărcare specifice formatului. Subclasată de ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions.
SaveOptionsClasă de bază pentru toate obiectele de opțiuni de salvare specifice formatului. Subclasată de ObjSaveOptions, StlSaveOptions, GltfSaveOptions.

Format OBJ

ExampleExample
ObjImporterClasă internă de import care analizează fișierele Wavefront OBJ și MTL. Invocată automat de Scene.fromFile() pentru .obj extensii.
ObjLoadOptionsOpțiuni de încărcare pentru fișierele Wavefront OBJ. Proprietăți cheie: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal().
ObjSaveOptionsOpțiuni de salvare pentru ieșirea Wavefront OBJ. Controlează normalele, UV-urile, referințele de material și modul nor de puncte.
ObjFormatDescriptor de format pentru Wavefront OBJ. Accesibil ca FileFormat.WAVEFRONT_OBJ().

Format STL

ExampleExample
StlImporterImportator intern care citește fișiere STL atât binare, cât și ASCII. Selectat automat în funcție de extensie.
StlExporterExportator intern care scrie STL.
StlLoadOptionsOpțiuni de încărcare pentru fișiere STL. Suportă setFlipCoordinateSystem(), setRecalculateNormal(), și setContentType().
StlSaveOptionsOpțiuni de salvare pentru ieșirea STL. Controlează setFlipCoordinateSystem(), setAxisSystem(), și setContentType().
StlFormatDescriptor de format pentru STL.

Format glTF

ExampleExample
GltfLoadOptionsOpțiuni de încărcare pentru fișiere glTF 2.0 și GLB. Proprietăți cheie: setFlipCoordinateSystem(), setPrettyPrint().
GltfSaveOptionsOpțiuni de salvare pentru ieșirea glTF 2.0 și GLB. Folosiți setContentType(FileContentType.BINARY) pentru a produce un .glb pachet.
GltfFormatDescriptor de format pentru glTF 2.0 / GLB. Accesibil ca FileFormat.GLTF2().

Format FBX

FBX este suportat pentru doar import. Exportul în FBX nu este disponibil în ediția Java FOSS.

ExampleExample
FbxLoadOptionsOpțiuni de încărcare pentru fișiere FBX. Proprietate cheie: setFlipCoordinateSystem().
FbxFormatDescriptor de format pentru FBX. Accesibil ca FileFormat.FBX7400ASCII().

Example

ExampleExample
AxisIdentifică o axă de coordonate: X_AXIS, Y_AXIS, Z_AXIS. Folosit în opțiunile de remapare a sistemului de coordonate.
CoordinateSystemSpecifică convenția de orientare: RIGHT_HANDED sau LEFT_HANDED.
TextureMappingIdentifică modul în care o textură este mapată pe geometrie: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, etc.
BooleanOperationTip de operație Booleană CSG: UNION, DIFFERENCE, INTERSECTION.

Sistem de proprietăți

ExampleExample
PropertyO singură proprietate tipizată, denumită, pe un A3DObject. Stochează numele proprietății, descriptorul de tip și valoarea curentă.
PropertyCollectionColecție iterabilă de Property obiecte atașate la un A3DObject. Suportă căutarea după nume și iterarea peste toate proprietățile definite.
CustomObjectUn element ușor A3DObject subclasă care conține doar un nume și un arbitrar PropertyCollection. Folosit pentru stocarea metadatelor definite de utilizator pe obiectele scenei.

Imagine și Redare

ExampleExample
ImageRenderOptionsOpțiuni pentru rasterizarea software atunci când se redă o scenă într-un buffer de imagine. Stochează culoarea de fundal, dimensiunile imaginii și referința camerei. Această funcționalitate este disponibilă în configurațiile suportate.

Vezi și

 Română