Camera

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

Camera एक है Entity जो 3D दृश्य में एक दृष्टिकोण को परिभाषित करता है। यह नियंत्रित करता है कि दृश्य को 2D इमेज प्लेन पर कैसे प्रोजेक्ट किया जाता है। एक कैमरा एक से जुड़ा होता है Node दृश्य में इसे स्थित करने और अभिविन्यास करने के लिए।.

class Camera(Entity):

Methods

A3DObjectSceneObjectEntityCamera


कार्यान्वयन नोट्स

aspose-3d-foss के इस संस्करण में, Camera क्लास एक है घोषणा स्टब. केवल projection_type और name फ़ंक्शनली संग्रहीत और पुनः प्राप्त करने योग्य हैं। सभी अन्य गुण (near_plane, far_plane, field_of_view, aspect_ratio, आदि) के पास ऐसे सेटर्स होते हैं जो कोई कार्य नहीं करते; असाइन किए गए मान रखे नहीं जाते। इन गुणों को पढ़ने पर क्लास का डिफ़ॉल्ट मान वापस मिलता है चाहे जो भी असाइन किया गया हो।.

जब 3D फ़ाइल (glTF, FBX) से कैमरा डेटा आयात किया जाता है, तो projection_type सही ढंग से पार्स किया गया है। अन्य camera attributes उपलब्ध हैं यदि format उन्हें scene-graph metadata के रूप में संग्रहीत करता है।.


Methods

Camera(name: str = None, projection_type: str = "PERSPECTIVE")
MethodsMethodsMethodsMethods
name`strNone`None
projection_typestr"PERSPECTIVE"प्रारंभिक प्रोजेक्शन प्रकार। उपयोग करें ProjectionType.PERSPECTIVE या ProjectionType.ORTHOGRAPHIC.

Methods

MethodsMethodsMethods
projection_typestrप्रोजेक्शन मोड: "PERSPECTIVE" या "ORTHOGRAPHIC". सेट के साथ ProjectionType स्थिरांक।.
near_planefloatनिकट क्लिपिंग प्लेन की दूरी। इस से निकट की ज्योमेट्री रेंडर नहीं की जाती। डिफ़ॉल्ट 0.1.
far_planefloatदूर क्लिपिंग प्लेन की दूरी। इस से दूर की ज्योमेट्री रेंडर नहीं की जाती। डिफ़ॉल्ट 1000.0.
field_of_viewfloatडिग्री में ऊर्ध्वाधर दृश्य क्षेत्र (केवल पर्स्पेक्टिव कैमरों के लिए)। डिफ़ॉल्ट 0.0.
field_of_view_xfloatडिग्री में क्षैतिज दृश्य क्षेत्र। डिफ़ॉल्ट 0.0.
field_of_view_yfloatडिग्री में ऊर्ध्वाधर दृश्य क्षेत्र (जैसे field_of_view). डिफ़ॉल्ट 0.0.
aspect_ratiofloatआउटपुट छवि का चौड़ाई-से-ऊँचाई अनुपात। डिफ़ॉल्ट 1.0.
ortho_heightfloatविश्व इकाइयों में ऑर्थोग्राफिक दृश्य आयतन की ऊँचाई (केवल ऑर्थोग्राफिक कैमरों के लिए)। डिफ़ॉल्ट 100.0.
namestrकैमरा ऑब्जेक्ट का नाम।.

उपयोग उदाहरण

Methods: इस संस्करण में, केवल projection_type कार्यात्मक रूप से संग्रहीत है। प्रॉपर्टी असाइनमेंट्स के लिए near_plane, far_plane, field_of_view, और aspect_ratio त्रुटि के बिना स्वीकार किए जाते हैं, लेकिन स्थायी नहीं होते।.

परस्पेक्टिव कैमरा

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")

ऑर्थोग्राफिक कैमरा

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)

आयात के बाद कैमरा पढ़ें

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}")

संबंधित देखें

 हिन्दी