Light

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

Light bir Entity 3D sahneye bir ışık kaynağı ekleyen. Like Camera, bir Node konumunu ve yönünü kontrol etmek için.

class Light(Camera):

Methods

A3DObjectSceneObjectEntityCameraLight

Light mirâs alır Camera. Mevcut sürümde, the Light sınıfı, miras alınanların ötesinde ek özellikler sunmaz Camera ve Entity. LightType enum, ışıkları sınıflandırmak için vardır ancak light_type özelliği Light sınıfta.


Methods

Light(name: str = None)
MethodsMethodsMethodsMethods
name`strNone`None

Methods

MethodsMethodsMethods
namestrIşık nesnesinin adı (şuradan miras alınan A3DObject).

Light aynı zamanda tüm Camera özellikler (near_plane, far_plane, vb.), ancak bunlar hafif nesneler için anlamlı değildir. Not: Light sınıfı bir şey ortaya koymaz light_type mevcut API yüzeyindeki özellik.


LightType Değerleri

from aspose.threed.entities import LightType
MethodsMethodsMethods
LightType.POINT"POINT"Tek bir noktadan tüm yönlere eşit olarak ışık yayar.
LightType.DIRECTIONAL"DIRECTIONAL"Sonsuz uzak bir kaynaktan (güneş ışığı gibi) paralel ışınlar.
LightType.SPOT"SPOT"Konik şekilli ışın demeti; konum ve yön önemlidir.
LightType.AREA"AREA"Dikdörtgen bir alandan yayılan ışık.
LightType.VOLUME"VOLUME"Hacimsel/genel aydınlatma ışığı.

Kullanım Örnekleri

Nokta Işığı

from aspose.threed import Scene, FileFormat
from aspose.threed.entities import Light, LightType

scene = Scene()

light = Light("PointLight")
node = scene.root_node.create_child_node("light", light)
node.transform.set_translation(0.0, 10.0, 0.0)

scene.save("lit-scene.glb", FileFormat.GLTF)

Yönlü Işık

from aspose.threed import Scene
from aspose.threed.entities import Light, LightType

scene = Scene()

sun = Light("Sun")
node = scene.root_node.create_child_node("sun", sun)
# Direction is controlled by the node's rotation
node.transform.set_euler_angles(-45.0, 30.0, 0.0)  # degrees

scene.save("directional-light.glb")

Hem Kamera hem de Işık ekleyin

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

scene = Scene()

# Camera
cam = Camera("Cam", ProjectionType.PERSPECTIVE)
cam.field_of_view = 60.0
cam_node = scene.root_node.create_child_node("camera", cam)
cam_node.transform.set_translation(0.0, 5.0, 15.0)

# Directional light
light = Light("DirLight")
light_node = scene.root_node.create_child_node("light", light)
light_node.transform.set_euler_angles(-30.0, 45.0, 0.0)

scene.save("camera-and-light.glb", FileFormat.GLTF)

İçe Aktarılan Sahnedeki Işıkları Listele

from aspose.threed import Scene
from aspose.threed.entities import Light

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

def find_lights(node, depth=0):
    if isinstance(node.entity, Light):
        print(f"{'  ' * depth}Light: {node.name}")
    for child in node.child_nodes:
        find_lights(child, depth + 1)

find_lights(scene.root_node)

Ayrıca Bakınız

 Türkçe