Camera — Aspose.3D FOSS for Java
Methods: com.aspose.threed (aspose-3d-foss 26.1.0)
Camera jest Entity który definiuje punkt widzenia w scenie 3D. Kontroluje, jak scena jest rzutowana na płaszczyznę obrazu 2D. Kamera jest dołączona do Node aby ustawić ją i ustawić orientację w scenie.
public class Camera extends EntityMethods
A3DObject -> SceneObject -> Entity -> Camera
Uwagi implementacyjne
W edycji Java FOSS, Camera klasa ma tylko konstruktory — nie zaimplementowano właściwości specyficznych dla kamery (kąt widzenia, płaszczyzna bliska/daleka, tryb projekcji).
Ograniczenie eksportu: Jednostki kamery są nie zapisywane przy eksportowaniu scen. Eksporter glTF (GltfExporter) przetwarza tylko Mesh entities — Węzły kamer są pomijane cicho. Oznacza to, że kamera podłączona do węzła nie pojawi się w żadnym wyeksportowanym pliku. Poniższy przykład „Read Camera After Import” pokazuje, jak odczytać nazwy kamer z zaimportowanego pliku; jednak zapisywanie kamer z powrotem do nowego pliku nie jest obsługiwane w tej edycji.
Methods
Camera()
Camera(String name)| Methods | Methods | Methods | Methods |
|---|---|---|---|
name | String | null | Opcjonalna nazwa kamery. |
Methods
Kamera dziedziczy wszystkie właściwości z Entity oraz A3DObject. W tej edycji nie udostępniono dodatkowych właściwości specyficznych dla formatu.
| Methods | Methods | Methods | Methods | Methods |
|---|---|---|---|---|
name | String | getName() | setName(String) | Nazwa obiektu kamery. |
parentNode | Node | getParentNode() | setParentNode(Node) | Węzeł, do którego podłączona jest kamera. |
excluded | boolean | getExcluded() | setExcluded(boolean) | Methods true, ta jednostka jest wykluczona z eksportu. |
Przykłady użycia
Dołącz kamerę do sceny
import com.aspose.threed.*;
Scene scene = new Scene();
Camera cam = new Camera("MainCamera");
Node node = scene.getRootNode().createChildNode("camera", cam);
node.getTransform().setTranslation(0.0, 5.0, 20.0);
scene.save("scene-with-camera.glb");Odczytaj kamerę po imporcie
import com.aspose.threed.*;
Scene scene = new Scene();
scene.open("model.glb");
for (Node node : scene.getRootNode().getChildNodes()) {
if (node.getEntity() instanceof Camera) {
Camera cam = (Camera) node.getEntity();
System.out.println("Camera: " + cam.getName());
}
}