Aspose.3D FOSS for Java

API-referens för aspose-3d-foss 26.1.0 (Java 21+, MIT-licens).

Alla klasser finns i com.aspose.threed rotpaketet. Rotimporten är:

import com.aspose.threed.*;

Paketlayout: Nästan alla offentliga klasser finns i com.aspose.threed. Det enda underpaketet som vanligtvis används är com.aspose.threed.shading (för PbrMaterial). Den com.aspose.threed.formats underpaketet innehåller interna importörer/exportörer och importeras vanligtvis inte direkt.

Java namngivningskonvention: Alla egenskaper använder getter/setter‑metoder. Till exempel, använd node.getTransform() istället för node.transform, och transform.setTranslation(...) istället för transform.translation = .... Observera att Vector3, Vector4, Quaternion, Matrix4, och FVector typer använder publika fält (v.x, v.y, v.z) snarare än getters för komponentåtkomst.


Kärnscengraf

ExampleExample
SceneBehållare på toppnivå för all 3D-scen-data. Innehåller rotknuten, tillgångsmetadata och animationsklipp. Exponerar fromFile(), open(), och save() som de primära I/O-ingångspunkterna.
NodeEn namngiven nod i scenhierarkin. Äger en lista med barnnoder och en lista med bifogade Entity objekt såsom meshar, kameror och ljus. Bär en lokal Transform.
EntityAbstrakt basklass för alla objekt som kan bifogas till en Node. Tillhandahåller namn och identitet men ingen egen geometri.
SceneObjectBasklass som delas av Node och Entity.
A3DObjectRotbasklass för alla Aspose.3D-hanterade objekt. Exponerar namn‑egenskapen och Properties samlingen.
INamedObjectGränssnitt som garanterar en getName() metod. Implementerad av Node, Entity, och flera format‑specifika deskriptortyper.

Geometri och mesh

ExampleExample
MeshPolygonnät-entity. Lagrar kontrollpunkter (vertex positions as Vector4), polygonansiktslistor (listor med kontrollpunktsindex), och vertex-elementlager (normals, UVs, vertex colours).
GeometryAbstrakt bas för mesh-liknande geometrityper. Definierar kontrollpunktsarrayen och samlingen av VertexElement lager. Mesh ärver från Geometry.
VertexElementAbstrakt bas för ett datalager som är fäst vid geometri (normaler, UV:er, färger osv.). Bär getMappingMode(), getReferenceMode(), och en datalista.
VertexElementNormalLagrar en normalvektor per vertex eller per polygonhörn, beroende på mappningsläge. Datavärden är Vector4 instanser med w oanvända.
VertexElementUVLagrar texturkoordinatpar (Vector2) per vertex eller per polygonhörn. Ett mesh kan ha flera UV-lager för olika texturkanaler.
VertexElementVertexColorLagrar per-vertex eller per-hörn RGBA-färgd data som Vector4 (r, g, b, a i intervallet 0–1).
VertexElementTypeEnumeration som identifierar den semantiska rollen för ett vertex-elementlager: NORMAL, UV, VERTEX_COLOR, och andra. Skicka värden till Mesh.getElement().
MappingModeEnumeration som styr vilken primitiv ett vertex-elementvärde mappar till: CONTROL_POINT, POLYGON_VERTEX, eller POLYGON.
ReferenceModeEnumeration som styr hur värden indexeras: DIRECT (ett värde per mappningsprimitiv) eller INDEX_TO_DIRECT (värdearray plus en separat indexarray).

Transform och Spatial

ExampleExample
TransformLokal transformation kopplad till en Node. Tillhandahåller translation, rotation (som Quaternion), och skalningskomponenter, samt bekvämlighetsmetoder för Euler-vinklar.
GlobalTransformSkrivskyddad vy av en nods världsrymdstransformation efter att ha sammansatt alla föräldratransformeringar. Åtkomst via node.getGlobalTransform().
AssetInfoMetadatablock bifogat till en Scene. Lagrar namn på författarprogram, enhetsnamn, enhetsskalfaktor, definitioner av koordinatsystemets axlar samt skapande‑/ändringstidsstämplar.

Material och Shading

ExampleExample
MaterialAbstrakt basklass för alla materialtyper. Tillhandahåller ett namn och en egenskapskollektion för numeriska och färgparametrar.
PbrMaterialFysiskt baserat renderingsmaterial. Lagrar albedo, metallfaktor, roughness‑faktor, emissiv färg, transparens och tillhörande texturer. Används av glTF 2.0 och andra PBR‑kapabla format. Import: com.aspose.threed.shading.PbrMaterial.

Example

ExampleExample
CameraKameraenhet. Ärver från Entity. Inga format‑specifika egenskaper exponeras i Java FOSS‑utgåvan utöver det ärvda namnet och egenskapskollektionen. Bifogas till en Node för att definiera vytransformeringar.

Obs: Example Light klassen är inte tillgänglig i Java‑utgåvan av Aspose.3D FOSS. Scenbelysningsdata från importerade filer lagras som generiska Entity objekt.


Matematikverktyg

ExampleExample
Vector2Dubbelprecision 2‑komponentsvektor (x, y). Används för UV‑texturkoordinater.
Vector3Dubbelprecision 3‑komponentsvektor (x, y, z). Används för positioner, riktningar och skala.
Vector4Dubbelprecision 4‑komponentsvektor (x, y, z, w). Används för kontrollpunkter (homogena positioner) och normaldata.
FVector3Single-precision 3-komponent floatvektor. Förekommer i vertex-elementdatamatriser för normaler och tangenter.
FVector4Single-precision 4-komponent floatvektor. Lagringstypen för VertexElementFVector data.
QuaternionEnhetskvaternion för att representera rotationer (w, x, y, z). Används av Transform.getRotation().
Matrix44x4 double-precision transformation matrix. Used for world/local transform computations and can be constructed from TRS decompositions.
BoundingBoxAxeljusterad avgränsningslåda definierad av getMinimum() och getMaximum() Vector3 hörn. Används för rumsliga frågor och frustum culling‑hjälpmedel.

Example

ExampleExample
AnimationClipNamngiven behållare för ett animationsintervall. En Scene kan innehålla flera klipp (t.ex. “Walk”, “Run”). Deklarationsstub — nyckelbildsdata och uppspelning är ännu inte implementerade.

Format I/O

ExampleExample
Scene.fromFile(path)Statisk metod. Öppnar filen på path, upptäcker formatet från filändelsen och returnerar ett ifyllt Scene. Kastar ett undantag vid fil‑ej‑hittad eller ej‑stödd format.
Scene.open(path, options)Instansmetod. Öppnar en fil i en befintlig Scene instans, eventuellt med en format‑specifik LoadOptions subklass.
Scene.save(path, options)Instansmetod. Serialiserar scenen till path använder formatet som härleds från filändelsen, eventuellt med ett format‑specifikt SaveOptions subklass.
FileFormatRegister över stödda filformat. Innehåller poster såsom FileFormat.WAVEFRONT_OBJ(), FileFormat.GLTF2(), FileFormat.FBX7400ASCII().
IOServiceIntern I/O-abstraktion som används av formatimportörer och -exportörer. Vanligtvis inte använd direkt av applikationskod.
LoadOptionsBasklass för alla format‑specifika laddningsalternativobjekt. Subklassad av ObjLoadOptions, StlLoadOptions, GltfLoadOptions, FbxLoadOptions.
SaveOptionsBasklass för alla format‑specifika sparalternativobjekt. Subklassad av ObjSaveOptions, StlSaveOptions, GltfSaveOptions.

OBJ-format

ExampleExample
ObjImporterIntern importklass som parsar Wavefront OBJ- och MTL-filer. Anropas automatiskt av Scene.fromFile() för .obj filändelser.
ObjLoadOptionsLaddningsalternativ för Wavefront OBJ-filer. Viktiga egenskaper: setFlipCoordinateSystem(), setScale(), setEnableMaterials(), setNormalizeNormal().
ObjSaveOptionsSparalternativ för Wavefront OBJ-utdata. Styr normaler, UV:er, materialreferenser och punktmolnsläge.
ObjFormatFormatbeskrivning för Wavefront OBJ. Tillgänglig som FileFormat.WAVEFRONT_OBJ().

STL-format

ExampleExample
StlImporterIntern importör som läser både binära och ASCII STL-filer. Väljs automatiskt efter filändelse.
StlExporterIntern exportör som skriver STL.
StlLoadOptionsLaddningsalternativ för STL-filer. Stöder setFlipCoordinateSystem(), setRecalculateNormal(), och setContentType().
StlSaveOptionsSparalternativ för STL-utdata. Styr setFlipCoordinateSystem(), setAxisSystem(), och setContentType().
StlFormatFormatbeskrivning för STL.

glTF-format

ExampleExample
GltfLoadOptionsLäs in alternativ för glTF 2.0- och GLB-filer. Viktiga egenskaper: setFlipCoordinateSystem(), setPrettyPrint().
GltfSaveOptionsSpara alternativ för glTF 2.0- och GLB-utdata. Använd setContentType(FileContentType.BINARY) för att producera ett fristående .glb paket.
GltfFormatFormatbeskrivning för glTF 2.0 / GLB. Tillgänglig som FileFormat.GLTF2().

FBX-format

FBX stöds för endast import. Export till FBX är inte tillgängligt i Java FOSS-utgåvan.

ExampleExample
FbxLoadOptionsLäsalternativ för FBX-filer. Nyckelegenskap: setFlipCoordinateSystem().
FbxFormatFormatbeskrivning för FBX. Tillgänglig som FileFormat.FBX7400ASCII().

Example

ExampleExample
AxisIdentifierar en koordinataxel: X_AXIS, Y_AXIS, Z_AXIS. Används i alternativ för omkartläggning av koordinatsystem.
CoordinateSystemAnger handhetskonvention: RIGHT_HANDED eller LEFT_HANDED.
TextureMappingIdentifierar hur en textur mappas till geometri: DIFFUSE, SPECULAR, EMISSIVE, NORMAL, AMBIENT, osv.
BooleanOperationCSG Boolesk operationstyp: UNION, DIFFERENCE, INTERSECTION.

Egenskapssystem

ExampleExample
PropertyEn enskild namngiven typad egenskap på en A3DObject. Lagrar egenskapsnamnet, typbeskrivningen och aktuellt värde.
PropertyCollectionItererbar samling av Property objekt kopplade till en A3DObject. Stöder uppslagning efter namn och iteration över alla definierade egenskaper.
CustomObjectEn lättviktig A3DObject subklass som bara bär ett namn och en godtycklig PropertyCollection. Används för att lagra användardefinierad metadata på scenobjekt.

Bild och rendering

ExampleExample
ImageRenderOptionsAlternativ för mjukvarurasterisering när en scen renderas till en bildbuffert. Lagrar bakgrundsfärg, bilddimensioner och kamerareferens. Denna funktion är tillgänglig i stödda konfigurationer.

Se även

 Svenska