// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type SelectionBox
///|
#module("@mizchi/three-mbt/modeling-edit")
pub extern "js" fn SelectionBox::SelectionBox(
camera : Camera,
scene : Scene,
depth : Double,
) -> SelectionBox = "selectionBox"
///|
pub extern "js" fn SelectionBox::camera(self : SelectionBox) -> Camera =
#| (self) => self.camera
///|
pub extern "js" fn SelectionBox::set_camera(
self : SelectionBox,
value : Camera,
) -> Unit =
#| (self, value) => { self.camera = value; }
///|
pub extern "js" fn SelectionBox::scene(self : SelectionBox) -> Scene =
#| (self) => self.scene
///|
pub extern "js" fn SelectionBox::set_scene(
self : SelectionBox,
value : Scene,
) -> Unit =
#| (self, value) => { self.scene = value; }
///|
pub extern "js" fn SelectionBox::depth(self : SelectionBox) -> Double =
#| (self) => self.deep
///|
pub extern "js" fn SelectionBox::set_depth(
self : SelectionBox,
value : Double,
) -> Unit =
#| (self, value) => { self.deep = value; }
///|
pub extern "js" fn SelectionBox::start_point(self : SelectionBox) -> Vector3 =
#| (self) => self.startPoint
///|
pub extern "js" fn SelectionBox::end_point(self : SelectionBox) -> Vector3 =
#| (self) => self.endPoint
///|
pub extern "js" fn SelectionBox::select(
self : SelectionBox,
start : Vector3,
end : Vector3,
) -> FixedArray[Object3D] =
#| (self, start, end) => self.select(start, end).slice()
///|
pub extern "js" fn SelectionBox::collection(
self : SelectionBox,
) -> FixedArray[Object3D] =
#| (self) => self.collection.slice()
///|
pub extern "js" fn SelectionBox::instance_ids(
self : SelectionBox,
mesh : InstancedMesh,
) -> FixedArray[Int] =
#| (self, mesh) => (self.instances[mesh.uuid] ?? []).slice()
///|
pub extern "js" fn SelectionBox::batch_ids(
self : SelectionBox,
mesh : BatchedMesh,
) -> FixedArray[BatchedInstanceId] =
#| (self, mesh) => (self.batches[mesh.uuid] ?? []).slice()