Aspose.3D FOSS for Java

API-referentie voor aspose-3d-foss 26.1.0 (Java 21+, MIT-licentie).

Alle klassen bevinden zich in de com.aspose.threed root package. De root import is:

import com.aspose.threed.*;

Pakketindeling: Bijna alle publieke klassen bevinden zich in com.aspose.threed. Het enige sub‑package dat doorgaans wordt gebruikt is com.aspose.threed.shading (voor PbrMaterial). De com.aspose.threed.formats sub‑package bevat interne importers/exporters en wordt meestal niet direct geïmporteerd.

Java naamgevingsconventie: Alle eigenschappen gebruiken getter/setter‑methoden. Bijvoorbeeld, gebruik node.getTransform() in plaats van node.transform, en transform.setTranslation(...) in plaats van transform.translation = .... Let op dat Vector3, Vector4, Quaternion, Matrix4, en FVector typen gebruiken openbare velden (v.x, v.y, v.z) in plaats van getters voor componenttoegang.


Kern Scene Graph

ExampleExample
SceneTop-level container voor alle 3D-scènegegevens. Bevat de rootnode, assetmetadata en animatieclips. Biedt fromFile(), open(), en save() als de primaire I/O-ingangspunten.
NodeEen benoemde node in de scènehiërarchie. Bevat een lijst van kindnodes en een lijst van gekoppelde Entity objecten zoals meshes, camera’s en lichten. Draagt een lokale Transform.
EntityAbstracte basisklasse voor alle objecten die aan een Node. Biedt naam en identiteit maar geen eigen geometrie.
SceneObjectBasisklasse gedeeld door Node en Entity. Biedt de eigenschapcollectie‑interface die wordt gebruikt voor door de gebruiker gedefinieerde metadata.
A3DObjectRoot‑basisklasse voor alle Aspose.3D beheerde objecten. Biedt de naam‑eigenschap en de Properties collectie.
INamedObjectInterface die een getName() methode garandeert. Geïmplementeerd door Node, Entity, en verschillende formaat‑specifieke descriptor‑typen.

Geometrie en Mesh

ExampleExample
MeshPolygonmesh-entiteit. Slaat controlepunten op (vertexposities als Vector4), polygonvlakkenlijsten (lijsten van controlepuntindices), en vertex-elementlagen (normals, UV’s, vertexkleuren).
GeometryAbstracte basis voor mesh-achtige geometrietypen. Definieert de controlepuntarray en de collectie van VertexElement lagen. Mesh erft van Geometry.
VertexElementAbstracte basis voor een datalaag gekoppeld aan geometrie (normals, UV’s, kleuren, enz.). Draagt getMappingMode(), getReferenceMode(), en een gegevenslijst.
VertexElementNormalSlaat één normaalvector op per vertex of per polygoongewicht, afhankelijk van de mappingmodus. Gegevenswaarden zijn Vector4 instanties met w ongebruikt.
VertexElementUVSlaat textuurcoördinaatparen op (Vector2) per vertex of per polygoongewicht. Een mesh kan meerdere UV-lagen bevatten voor verschillende textuurkanalen.
VertexElementVertexColorSlaat per-vertex of per-hoek RGBA-kleurgegevens op als Vector4 (r, g, b, a in het bereik 0–1).
VertexElementTypeEnumeratie die de semantische rol van een vertex-elementlaag identificeert: NORMAL, UV, VERTEX_COLOR, en anderen. Geef waarden door aan Mesh.getElement().
MappingModeEnumeratie die bepaalt naar welke primitive een vertex-elementwaarde wordt gemapt: CONTROL_POINT, POLYGON_VERTEX, of POLYGON.
ReferenceModeEnumeratie die bepaalt hoe waarden worden geïndexeerd: DIRECT (één waarde per mappingprimitive) of INDEX_TO_DIRECT (waardenarray plus een aparte indexarray).

Transformatie en Spatial

ExampleExample
TransformLokale transformatie gekoppeld aan een Node. Biedt translatie, rotatie (als Quaternion), en schaalcomponenten, plus handige methoden voor Euler-hoeken.
GlobalTransformAlleen-lezen weergave van de wereldruimtetransformatie van een knooppunt na het samenvoegen van alle vooroudertransformaties. Toegankelijk via node.getGlobalTransform().
AssetInfoMetadatablok gekoppeld aan een Scene. Slaat de naam van de auteurstoepassing, eenheidsnaam, eenheids-schaalfactor, definities van coördinatensysteemassen en aanmaak-/wijzigings-tijdstempels op.

Materialen en Shading

ExampleExample
MaterialAbstracte basisklasse voor alle materiaaltypes. Biedt een naam en een verzameling eigenschappen voor numerieke en kleurparameters.
PbrMaterialPhysically Based Rendering-materiaal. Slaat albedo, metallic factor, roughness factor, emissieve kleur, transparantie en bijbehorende textures op. Wordt gebruikt door glTF 2.0 en andere PBR-compatibele formaten. Import: com.aspose.threed.shading.PbrMaterial.

Example

ExampleExample
CameraCamera‑entiteit. Erft van Entity. Er worden geen formatspecifieke eigenschappen blootgesteld in de Java FOSS-editie, behalve de geërfde naam en eigenschapcollectie. Gekoppeld aan een Node om kijkpunttransformaties te definiëren.

Opmerking: Example Light klasse is niet beschikbaar in de Java editie van Aspose.3D FOSS. Scèneverlichtingsgegevens uit geïmporteerde bestanden worden opgeslagen als generieke Entity objecten.


Wiskundige hulpprogramma’s

ExampleExample
Vector2Dubbelprecisie 2-component vector (x, y). Gebruikt voor UV-textuurcoördinaten.
Vector3Dubbelprecisie 3-component vector (x, y, z). Gebruikt voor posities, richtingen en schaal.
Vector4Dubbelprecisie 4-component vector (x, y, z, w). Gebruikt voor controlepunten (homogene posities) en normaalgegevens.
FVector3Single-precision 3-component float vector. Komt voor in vertex-elementgegevensarrays voor normalen en tangenten.
FVector4Single-precision 4-component float vector. Het opslagtype van VertexElementFVector gegevens.
QuaternionEenheidsquaternion voor het representeren van rotaties (w, x, y, z). Gebruikt door Transform.getRotation().
Matrix44x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxAsgeoriënteerde begrenzingsbox gedefinieerd door getMinimum() en getMaximum() Vector3 hoeken. Gebruikt voor ruimtelijke queries en frustum culling-hulpmiddelen.

Example

ExampleExample
AnimationClipBenoemde container voor een animatiebereik. Een Scene kan meerdere clips bevatten (bijv. “Walk”, “Run”). Declaratiestub — keyframe-gegevens en afspelen zijn nog niet geïmplementeerd.

Formaat I/O

ExampleExample
Scene.fromFile(path)Statische methode. Opent het bestand op path, detecteert het formaat aan de hand van de extensie, en retourneert een gevulde Scene. Werpt een uitzondering bij bestand-niet-gevonden of niet-ondersteund formaat.
Scene.open(path, options)Instantiemethode. Opent een bestand in een bestaande Scene instantie, eventueel met gebruik van een formaat-specifieke LoadOptions subklasse.
Scene.save(path, options)Instantiemethode. Serialiseert de scène naar path gebruikmakend van het formaat dat uit de extensie wordt afgeleid, eventueel een formaat‑specifiek SaveOptions subklasse.
FileFormatRegister van ondersteunde bestandsformaten. Bevat items zoals FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII().
IOServiceInterne I/O-abstrahering gebruikt door formaatimporteurs en -exporteurs. Wordt doorgaans niet rechtstreeks door toepassingscode gebruikt.
LoadOptionsBasisklasse voor alle formaat‑specifieke laad‑optie‑objecten. Gesubklasseerd door ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions.
SaveOptionsBasisklasse voor alle formaat‑specifieke opslaan‑optie‑objecten. Gesubklasseerd door ObjSaveOptions, StlSaveOptions, GltfSaveOptions.

OBJ‑formaat

ExampleExample
ObjImporterInterne importklasse die Wavefront OBJ- en MTL‑bestanden parseert. Automatisch aangeroepen door Scene.fromFile() voor .obj extensies.
ObjLoadOptionsLaadopties voor Wavefront OBJ‑bestanden. Belangrijke eigenschappen: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal().
ObjSaveOptionsOpslagopties voor Wavefront OBJ‑output. Regelt normalen, UV’s, materiaallinks en puntwolkmodus.
ObjFormatFormaatdescriptor voor Wavefront OBJ. Toegankelijk als FileFormat.WAVEFRONT_OBJ().

STL‑formaat

ExampleExample
StlImporterInterne importeur die zowel binaire als ASCII STL‑bestanden leest. Automatisch geselecteerd op basis van extensie.
StlExporterInterne exporteur die STL schrijft.
StlLoadOptionsLaadopties voor STL‑bestanden. Ondersteunt setFlipCoordinateSystem(), setRecalculateNormal(), en setContentType().
StlSaveOptionsOpslagopties voor STL‑output. Regelt setFlipCoordinateSystem(), setAxisSystem(), en setContentType().
StlFormatFormaatdescriptor voor STL.

glTF‑formaat

ExampleExample
GltfLoadOptionsLaadopties voor glTF 2.0- en GLB-bestanden. Belangrijke eigenschappen: setFlipCoordinateSystem(), setPrettyPrint().
GltfSaveOptionsOpslaanopties voor glTF 2.0- en GLB-uitvoer. Gebruik setContentType(FileContentType.BINARY) om een zelfvoorzienend .glb pakket.
GltfFormatFormaatbeschrijving voor glTF 2.0 / GLB. Toegankelijk als FileFormat.GLTF2().

FBX‑formaat

FBX wordt ondersteund voor alleen import. Exporteren naar FBX is niet beschikbaar in de Java FOSS-editie.

ExampleExample
FbxLoadOptionsLaadopties voor FBX-bestanden. Belangrijke eigenschap: setFlipCoordinateSystem().
FbxFormatFormaatbeschrijving voor FBX. Toegankelijk als FileFormat.FBX7400ASCII().

Example

ExampleExample
AxisIdentificeert een coördinaat-as: X_AXIS, Y_AXIS, Z_AXIS. Gebruikt in opties voor het herschikken van coördinatensystemen.
CoordinateSystemSpecificeert de handvoorkeurconventie: RIGHT_HANDED of LEFT_HANDED.
TextureMappingIdentificeert hoe een textuur op geometrie wordt gemapt: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, enz.
BooleanOperationCSG Booleaanse bewerkingstype: UNION, DIFFERENCE, INTERSECTION.

Eigenschappen‑systeem

ExampleExample
PropertyEen enkele benoemde getypeerde eigenschap op een A3DObject. Slaat de eigenschapsnaam, typebeschrijving en huidige waarde op.
PropertyCollectionIterabele collectie van Property objecten gekoppeld aan een A3DObject. Ondersteunt opzoeken op naam en iteratie over alle gedefinieerde eigenschappen.
CustomObjectEen lichtgewicht A3DObject subklasse die alleen een naam en een willekeurige PropertyCollection. Gebruikt voor het opslaan van door de gebruiker gedefinieerde metadata op scène‑objecten.

Afbeelding en Renderen

ExampleExample
ImageRenderOptionsOpties voor software‑rasterisatie bij het renderen van een scène naar een afbeeldingsbuffer. Slaat achtergrondkleur, afbeeldingsafmetingen en camerareferentie op. Deze functie is beschikbaar in ondersteunde configuraties.

Zie ook

 Nederlands