// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type ExtrudeOptions
///|
#module("@mizchi/three-mbt/geometry")
pub extern "js" fn ExtrudeOptions::ExtrudeOptions() -> ExtrudeOptions = "extrudeOptions"
///|
pub extern "js" fn ExtrudeOptions::depth(self : ExtrudeOptions) -> Double =
#| (self) => self.depth
///|
pub extern "js" fn ExtrudeOptions::set_depth(
self : ExtrudeOptions,
value : Double,
) -> Unit =
#| (self, value) => { self.depth = value; }
///|
pub extern "js" fn ExtrudeOptions::bevel_thickness(
self : ExtrudeOptions,
) -> Double =
#| (self) => self.bevelThickness
///|
pub extern "js" fn ExtrudeOptions::set_bevel_thickness(
self : ExtrudeOptions,
value : Double,
) -> Unit =
#| (self, value) => { self.bevelThickness = value; }
///|
pub extern "js" fn ExtrudeOptions::bevel_size(self : ExtrudeOptions) -> Double =
#| (self) => self.bevelSize
///|
pub extern "js" fn ExtrudeOptions::set_bevel_size(
self : ExtrudeOptions,
value : Double,
) -> Unit =
#| (self, value) => { self.bevelSize = value; }
///|
pub extern "js" fn ExtrudeOptions::bevel_offset(
self : ExtrudeOptions,
) -> Double =
#| (self) => self.bevelOffset
///|
pub extern "js" fn ExtrudeOptions::set_bevel_offset(
self : ExtrudeOptions,
value : Double,
) -> Unit =
#| (self, value) => { self.bevelOffset = value; }
///|
pub extern "js" fn ExtrudeOptions::steps(self : ExtrudeOptions) -> Int =
#| (self) => self.steps
///|
pub extern "js" fn ExtrudeOptions::set_steps(
self : ExtrudeOptions,
value : Int,
) -> Unit =
#| (self, value) => { self.steps = value; }
///|
pub extern "js" fn ExtrudeOptions::bevel_segments(self : ExtrudeOptions) -> Int =
#| (self) => self.bevelSegments
///|
pub extern "js" fn ExtrudeOptions::set_bevel_segments(
self : ExtrudeOptions,
value : Int,
) -> Unit =
#| (self, value) => { self.bevelSegments = value; }
///|
pub extern "js" fn ExtrudeOptions::curve_segments(self : ExtrudeOptions) -> Int =
#| (self) => self.curveSegments
///|
pub extern "js" fn ExtrudeOptions::set_curve_segments(
self : ExtrudeOptions,
value : Int,
) -> Unit =
#| (self, value) => { self.curveSegments = value; }
///|
pub extern "js" fn ExtrudeOptions::bevel_enabled(self : ExtrudeOptions) -> Bool =
#| (self) => self.bevelEnabled
///|
pub extern "js" fn ExtrudeOptions::set_bevel_enabled(
self : ExtrudeOptions,
value : Bool,
) -> Unit =
#| (self, value) => { self.bevelEnabled = value; }
///|
extern "js" fn ExtrudeOptions::ffi_extrude_path(
self : ExtrudeOptions,
) -> Nullable[Curve3] =
#| (self) => self.extrudePath
///|
pub fn ExtrudeOptions::extrude_path(self : ExtrudeOptions) -> Curve3? {
self.ffi_extrude_path().to_option()
}
///|
extern "js" fn ExtrudeOptions::ffi_set_extrude_path(
self : ExtrudeOptions,
value : Nullable[Curve3],
) -> Unit =
#| (self, value) => { if (value == null) delete self.extrudePath; else self.extrudePath = value; }
///|
pub fn ExtrudeOptions::set_extrude_path(
self : ExtrudeOptions,
value : Curve3?,
) -> Unit {
self.ffi_set_extrude_path(Nullable::from_option(value))
}
///|
extern "js" fn ExtrudeOptions::ffi_uv_generator(
self : ExtrudeOptions,
) -> Nullable[UVGenerator] =
#| (self) => self.UVGenerator
///|
pub fn ExtrudeOptions::uv_generator(self : ExtrudeOptions) -> UVGenerator? {
self.ffi_uv_generator().to_option()
}
///|
extern "js" fn ExtrudeOptions::ffi_set_uv_generator(
self : ExtrudeOptions,
value : Nullable[UVGenerator],
) -> Unit =
#| (self, value) => { if (value == null) delete self.UVGenerator; else self.UVGenerator = value; }
///|
pub fn ExtrudeOptions::set_uv_generator(
self : ExtrudeOptions,
value : UVGenerator?,
) -> Unit {
self.ffi_set_uv_generator(Nullable::from_option(value))
}