// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type SpotLight
///|
#module("@mizchi/three-mbt/constructors")
pub extern "js" fn SpotLight::SpotLight(
color : Int,
intensity : Double,
distance : Double,
angle : Double,
penumbra : Double,
decay : Double,
) -> SpotLight = "spotLight"
///|
pub fn SpotLight::as_light(self : SpotLight) -> Light = "%identity"
///|
pub fn SpotLight::as_object3d(self : SpotLight) -> Object3D = "%identity"
///|
pub extern "js" fn SpotLight::distance(self : SpotLight) -> Double =
#| (self) => self.distance
///|
pub extern "js" fn SpotLight::set_distance(
self : SpotLight,
value : Double,
) -> Unit =
#| (self, value) => { self.distance = value; }
///|
pub extern "js" fn SpotLight::angle(self : SpotLight) -> Double =
#| (self) => self.angle
///|
pub extern "js" fn SpotLight::set_angle(
self : SpotLight,
value : Double,
) -> Unit =
#| (self, value) => { self.angle = value; }
///|
pub extern "js" fn SpotLight::penumbra(self : SpotLight) -> Double =
#| (self) => self.penumbra
///|
pub extern "js" fn SpotLight::set_penumbra(
self : SpotLight,
value : Double,
) -> Unit =
#| (self, value) => { self.penumbra = value; }
///|
pub extern "js" fn SpotLight::decay(self : SpotLight) -> Double =
#| (self) => self.decay
///|
pub extern "js" fn SpotLight::set_decay(
self : SpotLight,
value : Double,
) -> Unit =
#| (self, value) => { self.decay = value; }
///|
pub extern "js" fn SpotLight::target(self : SpotLight) -> Object3D =
#| (self) => self.target
///|
pub extern "js" fn SpotLight::shadow(self : SpotLight) -> LightShadow =
#| (self) => self.shadow
///|
pub extern "js" fn SpotLight::power(self : SpotLight) -> Double =
#| (self) => self.power
///|
pub extern "js" fn SpotLight::set_power(
self : SpotLight,
value : Double,
) -> Unit =
#| (self, value) => { self.power = value; }
///|
pub extern "js" fn SpotLight::copy(
self : SpotLight,
source : SpotLight,
recursive : Bool,
) -> SpotLight =
#| (self, source, recursive) => self.copy(source, recursive)
///|
extern "js" fn SpotLight::ffi_map(self : SpotLight) -> Nullable[Texture] =
#| (self) => self.map
///|
pub fn SpotLight::map(self : SpotLight) -> Texture? {
self.ffi_map().to_option()
}
///|
extern "js" fn SpotLight::ffi_set_map(
self : SpotLight,
value : Nullable[Texture],
) -> Unit =
#| (self, value) => { self.map = value; }
///|
pub fn SpotLight::set_map(self : SpotLight, value : Texture?) -> Unit {
self.ffi_set_map(Nullable::from_option(value))
}
///|
pub extern "js" fn SpotLight::cast_shadow(self : SpotLight) -> Bool =
#| (self) => self.castShadow
///|
pub extern "js" fn SpotLight::set_cast_shadow(
self : SpotLight,
value : Bool,
) -> Unit =
#| (self, value) => { self.castShadow = value; }
///|
pub extern "js" fn SpotLight::receive_shadow(self : SpotLight) -> Bool =
#| (self) => self.receiveShadow
///|
pub extern "js" fn SpotLight::set_receive_shadow(
self : SpotLight,
value : Bool,
) -> Unit =
#| (self, value) => { self.receiveShadow = value; }
///|
pub extern "js" fn SpotLight::id(self : SpotLight) -> Int =
#| (self) => self.id
///|
pub extern "js" fn SpotLight::uuid(self : SpotLight) -> String =
#| (self) => self.uuid
///|
pub extern "js" fn SpotLight::kind(self : SpotLight) -> String =
#| (self) => self.type
///|
pub extern "js" fn SpotLight::name(self : SpotLight) -> String =
#| (self) => self.name
///|
pub extern "js" fn SpotLight::visible(self : SpotLight) -> Bool =
#| (self) => self.visible
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::position(self : SpotLight) -> Vector3 =
#| (self) => self.position
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::rotation(self : SpotLight) -> Euler =
#| (self) => self.rotation
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::quaternion(self : SpotLight) -> Quaternion =
#| (self) => self.quaternion
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::scale(self : SpotLight) -> Vector3 =
#| (self) => self.scale
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::up(self : SpotLight) -> Vector3 =
#| (self) => self.up
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::matrix(self : SpotLight) -> Matrix4 =
#| (self) => self.matrix
///|
/// Returns the live three.js reference, not a copy.
pub extern "js" fn SpotLight::matrix_world(self : SpotLight) -> Matrix4 =
#| (self) => self.matrixWorld
///|
pub extern "js" fn SpotLight::set_name(self : SpotLight, name : String) -> Unit =
#| (self, name) => { self.name = name; }
///|
pub extern "js" fn SpotLight::set_visible(
self : SpotLight,
visible : Bool,
) -> Unit =
#| (self, visible) => { self.visible = visible; }
///|
pub extern "js" fn SpotLight::children(
self : SpotLight,
) -> FixedArray[Object3D] =
#| (self) => self.children.slice()
///|
pub extern "js" fn SpotLight::add(
self : SpotLight,
child : Object3D,
) -> Object3D =
#| (self, child) => self.add(child)
///|
pub extern "js" fn SpotLight::remove(
self : SpotLight,
child : Object3D,
) -> Object3D =
#| (self, child) => self.remove(child)
///|
pub extern "js" fn SpotLight::attach(
self : SpotLight,
child : Object3D,
) -> Object3D =
#| (self, child) => self.attach(child)
///|
pub extern "js" fn SpotLight::remove_from_parent(self : SpotLight) -> Object3D =
#| (self) => self.removeFromParent()
///|
pub extern "js" fn SpotLight::look_at(
self : SpotLight,
target : Vector3,
) -> Unit =
#| (self, target) => self.lookAt(target)
///|
pub extern "js" fn SpotLight::rotate_x(
self : SpotLight,
angle : Double,
) -> Object3D =
#| (self, angle) => self.rotateX(angle)
///|
pub extern "js" fn SpotLight::rotate_y(
self : SpotLight,
angle : Double,
) -> Object3D =
#| (self, angle) => self.rotateY(angle)
///|
pub extern "js" fn SpotLight::rotate_z(
self : SpotLight,
angle : Double,
) -> Object3D =
#| (self, angle) => self.rotateZ(angle)
///|
pub extern "js" fn SpotLight::translate_x(
self : SpotLight,
distance : Double,
) -> Object3D =
#| (self, distance) => self.translateX(distance)
///|
pub extern "js" fn SpotLight::translate_y(
self : SpotLight,
distance : Double,
) -> Object3D =
#| (self, distance) => self.translateY(distance)
///|
pub extern "js" fn SpotLight::translate_z(
self : SpotLight,
distance : Double,
) -> Object3D =
#| (self, distance) => self.translateZ(distance)
///|
pub extern "js" fn SpotLight::apply_matrix4(
self : SpotLight,
matrix : Matrix4,
) -> Unit =
#| (self, matrix) => self.applyMatrix4(matrix)
///|
pub extern "js" fn SpotLight::apply_quaternion(
self : SpotLight,
quaternion : Quaternion,
) -> Object3D =
#| (self, quaternion) => self.applyQuaternion(quaternion)
///|
pub extern "js" fn SpotLight::update_matrix(self : SpotLight) -> Unit =
#| (self) => self.updateMatrix()
///|
pub extern "js" fn SpotLight::update_matrix_world(
self : SpotLight,
force : Bool,
) -> Unit =
#| (self, force) => self.updateMatrixWorld(force)
///|
pub extern "js" fn SpotLight::update_world_matrix(
self : SpotLight,
update_parents : Bool,
update_children : Bool,
) -> Unit =
#| (self, update_parents, update_children) => self.updateWorldMatrix(update_parents, update_children)
///|
pub extern "js" fn SpotLight::get_world_position(
self : SpotLight,
target : Vector3,
) -> Vector3 =
#| (self, target) => self.getWorldPosition(target)
///|
pub extern "js" fn SpotLight::get_world_quaternion(
self : SpotLight,
target : Quaternion,
) -> Quaternion =
#| (self, target) => self.getWorldQuaternion(target)
///|
pub extern "js" fn SpotLight::get_world_scale(
self : SpotLight,
target : Vector3,
) -> Vector3 =
#| (self, target) => self.getWorldScale(target)
///|
pub extern "js" fn SpotLight::get_world_direction(
self : SpotLight,
target : Vector3,
) -> Vector3 =
#| (self, target) => self.getWorldDirection(target)
///|
pub extern "js" fn SpotLight::local_to_world(
self : SpotLight,
vector : Vector3,
) -> Vector3 =
#| (self, vector) => self.localToWorld(vector)
///|
pub extern "js" fn SpotLight::world_to_local(
self : SpotLight,
vector : Vector3,
) -> Vector3 =
#| (self, vector) => self.worldToLocal(vector)
///|
pub extern "js" fn SpotLight::traverse(
self : SpotLight,
callback : (Object3D) -> Unit,
) -> Unit =
#| (self, callback) => self.traverse(callback)
///|
pub extern "js" fn SpotLight::traverse_visible(
self : SpotLight,
callback : (Object3D) -> Unit,
) -> Unit =
#| (self, callback) => self.traverseVisible(callback)