Camera — Aspose.3D FOSS for Java
Methods: com.aspose.threed (aspose-3d-foss 26.1.0)
Camera е Entity който определя гледна точка в 3D сцена. Той контролира как сцената се проектира върху 2D равнина на изображението. Камерата е прикрепена към Node за да я позиционира и ориентира в сцената.
public class Camera extends EntityMethods
A3DObject -> SceneObject -> Entity -> Camera
Бележки за имплементацията
В Java FOSS изданието, Camera класът има само конструктори — няма реализирани свойства, специфични за камерата (field-of-view, near/far plane, projection mode).
Ограничение при експортиране: Камераните обекти са не е записано при експортиране на сцени. glTF експортерът (GltfExporter) обработва само Mesh обекти — възлите на камерата се пропускат без предупреждение. Това означава, че камера, прикрепена към възел, няма да се появи в нито един експортиран файл. Примерът „Read Camera After Import“ по-долу показва как да се прочетат имената на камерите от импортиран файл; обаче записването на камери обратно в нов файл не се поддържа в това издание.
Methods
Camera()
Camera(String name)| Methods | Methods | Methods | Methods |
|---|---|---|---|
name | String | null | Опционално име за камерата. |
Methods
Камерата наследява всички свойства от Entity и A3DObject. В това издание не се излагат допълнителни свойства, специфични за формата.
| Methods | Methods | Methods | Methods | Methods |
|---|---|---|---|---|
name | String | getName() | setName(String) | Име на обекта на камерата. |
parentNode | Node | getParentNode() | setParentNode(Node) | Възелът, към който е прикрепена тази камера. |
excluded | boolean | getExcluded() | setExcluded(boolean) | Methods true, тази единица е изключена от експорта. |
Примери за употреба
Прикрепете камера към сцена
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");Прочетете камера след импорт
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());
}
}