Camera

Methods: aspose.threed.entities (aspose-3d-foss)

Camera is een Entity die een gezichtspunt definieert in een 3D‑scène. Het bepaalt hoe de scène wordt geprojecteerd op een 2D‑beeldvlak. Een camera is gekoppeld aan een Node om deze te positioneren en te oriënteren in de scène.

class Camera(Entity):

Methods

A3DObjectSceneObjectEntityCamera


Implementatienotities

In deze editie van aspose-3d-foss, de Camera klasse is een declaratiestub. Alleen projection_type en name worden functioneel opgeslagen en opvraagbaar. Alle andere eigenschappen (near_plane, far_plane, field_of_view, aspect_ratio, etc.) hebben setters die geen effect hebben; de toegewezen waarden worden niet behouden. Het uitlezen van deze eigenschappen geeft de standaardwaarde van de klasse terug, ongeacht wat er was toegewezen.

Bij het importeren van cameragegevens uit een 3D‑bestand (glTF, FBX), wordt de projection_type correct geparseerd. Andere camera‑attributen zijn beschikbaar als het formaat ze opslaat als scene‑graph metadata.


Methods

Camera(name: str = None, projection_type: str = "PERSPECTIVE")
MethodsMethodsMethodsMethods
name`strNone`None
projection_typestr"PERSPECTIVE"Initiële projectietype. Gebruik ProjectionType.PERSPECTIVE of ProjectionType.ORTHOGRAPHIC.

Methods

MethodsMethodsMethods
projection_typestrProjectiemodus: "PERSPECTIVE" of "ORTHOGRAPHIC". Instellen met ProjectionType constanten.
near_planefloatAfstand tot het nabije knipvlak. Geometrie die dichterbij ligt wordt niet gerenderd. Standaard 0.1.
far_planefloatAfstand tot het verre knipvlak. Geometrie die verder weg ligt wordt niet gerenderd. Standaard 1000.0.
field_of_viewfloatVerticaal gezichtsveld in graden (alleen perspectiefcamera’s). Standaard 0.0.
field_of_view_xfloatHorizontaal gezichtsveld in graden. Standaard 0.0.
field_of_view_yfloatVerticaal gezichtsveld in graden (hetzelfde als field_of_view). Standaard 0.0.
aspect_ratiofloatBreedte-hoogteverhouding van de uitvoerafbeelding. Standaard 1.0.
ortho_heightfloatHoogte van het orthografische kijkvolume in wereldeenheden (alleen orthografische camera’s). Standaard 100.0.
namestrNaam van het camera-object.

Gebruiksexemplaren

Methods: In deze editie wordt alleen projection_type functioneel opgeslagen. Eigenschapstoewijzingen voor near_plane, far_plane, field_of_view, en aspect_ratio worden geaccepteerd zonder fout maar worden niet bewaard.

Perspective Camera

from aspose.threed import Scene
from aspose.threed.entities import Camera
from aspose.threed.entities import ProjectionType

scene = Scene()

# projection_type is stored and saved
cam = Camera("MainCamera", ProjectionType.PERSPECTIVE)

node = scene.root_node.create_child_node("camera", cam)

# Position the camera using node transform (this does persist)
node.transform.set_translation(0.0, 5.0, 20.0)

scene.save("scene-with-camera.glb")

Orthografische Camera

from aspose.threed import Scene, FileFormat
from aspose.threed.entities import Camera, ProjectionType

scene = Scene()

# Only projection_type is retained; other property assignments are no-ops
cam = Camera("OrthoCamera", ProjectionType.ORTHOGRAPHIC)

scene.root_node.create_child_node("ortho_cam", cam)
scene.save("ortho-scene.glb", FileFormat.GLTF)

Camera lezen na import

from aspose.threed import Scene
from aspose.threed.entities import Camera

scene = Scene()
scene.open("model.glb")

for node in scene.root_node.child_nodes:
    if isinstance(node.entity, Camera):
        cam = node.entity
        # projection_type is reliably populated; other numeric properties
        # return default values (0.0 / 1.0) regardless of file content
        print(f"Camera '{cam.name}': {cam.projection_type}")

Zie ook

 Nederlands