Jellemzők és funkciók
Jellemzők és funkciók
Ez az oldal minden fő funkciót fed le a aspose-3d-foss 26.0 és 6.0 Java példákkal dolgozunk.
Felszállítási és megtakarítási jelenetek
scene.open() fájl feltöltéséhez; scene.save() exportálják a:
import com.aspose.threed.Scene;
Scene scene = new Scene();
scene.open("input.obj");
scene.save("output.glb");Statikus gyár alternatívák:
Scene scene = Scene.fromFile("input.fbx");
scene.save("output.stl");Speciális formátumok
Passzázs LoadOptions vagy SaveOptions A finom-zöld ellenőrzés alosztályai:
import com.aspose.threed.*;
Scene scene = new Scene();
ObjLoadOptions opts = new ObjLoadOptions();
opts.setFlipCoordinateSystem(true);
scene.open("model.obj", opts);
GltfSaveOptions saveOpts = new GltfSaveOptions();
saveOpts.setFlipCoordinateSystem(true);
scene.save("model.glb", saveOpts);Megjegyzések : Az FBX csak importra van támogatva; az FB X export nem fut be a FOSS verzióban. Binar FBX fájlok támogatják import — ASCII FBX dobja
ImportException.
A színpad grafikus kialakítása
Hozzon létre csomópontokat és csatlakoztassa a szervezeteket:
Scene scene = new Scene();
Node root = scene.getRootNode();
Mesh mesh = new Mesh("myMesh");
mesh.getControlPoints().add(new Vector4(0, 0, 0));
mesh.getControlPoints().add(new Vector4(10, 0, 0));
mesh.getControlPoints().add(new Vector4(10, 10, 0));
mesh.createPolygon(0, 1, 2);
Node meshNode = root.createChildNode("triangle", mesh);Mesh műveletek
létrehozása a Mesh A programozás a vezérlőpontokkal és poligonokkal:
Mesh mesh = new Mesh("custom");
mesh.getControlPoints().add(new Vector4(0, 0, 0));
mesh.getControlPoints().add(new Vector4(10, 0, 0));
mesh.getControlPoints().add(new Vector4(10, 10, 0));
mesh.getControlPoints().add(new Vector4(0, 10, 0));
mesh.createPolygon(0, 1, 2, 3);átalakulás
Minden egyes Node A hordozó a Transform:
Node node = scene.getRootNode().createChildNode("moved", new Mesh());
node.getTransform().setTranslation(10, 0, 5);
node.getTransform().setScale(2, 2, 2);Olvasson világszerte a node.getGlobalTransform().getMatrix().
anyagok
Az anyagok a csomópontokra kerülnek:
import com.aspose.threed.*;
PbrMaterial mat = new PbrMaterial("shiny");
mat.setAlbedo(new Vector4(0.8, 0.2, 0.2, 1.0));
mat.setMetallicFactor(0.5);
mat.setRoughnessFactor(0.3);
scene.getRootNode().createChildNode("red_mesh", mesh, mat);Anyagok típusa: Material és a bázis, PbrMaterial (A fém szilárdságának a megközelítése).
Tippek és legjobb gyakorlatok
- Használat
Scene.fromFile()egy vonalra történő terhelésekhez, amikor a személyre szabott opciók nem szükségesek - A programozás programokhoz való hozzáférés
createPolygon()A geometria szokásos - Használat
.glbkiterjesztés a kompakt bináris glTF-kibocsátáshoz - Ellenőrizze
node.getEntity() != nullMielőtt a casting - Az STL exportja Nem A bináris STL export csak az első 3 vertikumot írja le minden poligon arcában - a négy vagy n-gon arcok csendesen törnek. Az ASCII STl export minden vertekes indexet ír, amely rossz formátú oldalsó blokkokat termel a nem háromszögű arcokra. Mindig átadja a pre-triangulált meshet (minden háromszoros arc) a ST L exporthoz, hogy elkerülje az adatvesztést vagy a hibás kimeneteleket.
Közös kérdések
| kérdések | okok | Fix |
|---|---|---|
| A terhelés kivételével | Támogatatlan vagy korrupt fájl | Ellenőrizze, hogy a fájl megnyílik egy 3D nézőben |
| Eltűnt anyagok OBJ terhelés után | .mtl Nem talált fájl | Helyszín .mtl A mellett a .obj;• Az anyagok engedélyezése |
| A kivitel után a mérleg nem megfelelő | Különböző egységrendszerek | alkalmazás a Transform A rakodás után a méret |
FAQ
Hogyan tudom felismerni a fájlformátumot?
FileFormat format = FileFormat.detect("unknown.bin");
System.out.println(format.getExtension());Lehet-e egy áramból tölteni?
Igen az. scene.open() elfogadja az InputStream.
Milyen formátumok támogatják mind az importot, mind a exportot?
Az OBJ, a STL és a glTF/GLB mindkét irányt támogat. FBX csak importál; export nem fut be az FOSS verzióban.
API referenciaközlemény
| Tanfolyam / módszer | leírás |
|---|---|
Scene | 3D színpad tartályok |
scene.open() | 3D fájl feltöltés út vagy áram szerint |
scene.save() | Export jelenet a fájl vagy áramlás |
Scene.fromFile() | A statikus gyár töltésére és visszaküldésére a Scene |
Node | Színházi hierarchia csomópont |
node.createChildNode() | Hozzon létre és csatlakoztassa a gyermek csomópontját |
Mesh | Polygon mező ellenőrzési pontokkal és arclistákkal |
mesh.createPolygon() | A poligóni arc megfogalmazása |
Mesh.toMesh() | Konvertált vagy klónos mezh geometria |
Transform | Helyi fordítás, forgatás és skála |
FileFormat | Regisztráció és detektor formátumokhoz |