// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type QuadraticBezierCurve3
///|
#module("@mizchi/three-mbt/constructors")
pub extern "js" fn QuadraticBezierCurve3::QuadraticBezierCurve3(
start : Vector3,
control : Vector3,
end : Vector3,
) -> QuadraticBezierCurve3 = "quadraticBezierCurve3"
///|
pub fn QuadraticBezierCurve3::as_curve3(self : QuadraticBezierCurve3) -> Curve3 = "%identity"
///|
pub extern "js" fn QuadraticBezierCurve3::v0(
self : QuadraticBezierCurve3,
) -> Vector3 =
#| (self) => self.v0
///|
pub extern "js" fn QuadraticBezierCurve3::set_v0(
self : QuadraticBezierCurve3,
value : Vector3,
) -> Unit =
#| (self, value) => { self.v0 = value; }
///|
pub extern "js" fn QuadraticBezierCurve3::v1(
self : QuadraticBezierCurve3,
) -> Vector3 =
#| (self) => self.v1
///|
pub extern "js" fn QuadraticBezierCurve3::set_v1(
self : QuadraticBezierCurve3,
value : Vector3,
) -> Unit =
#| (self, value) => { self.v1 = value; }
///|
pub extern "js" fn QuadraticBezierCurve3::v2(
self : QuadraticBezierCurve3,
) -> Vector3 =
#| (self) => self.v2
///|
pub extern "js" fn QuadraticBezierCurve3::set_v2(
self : QuadraticBezierCurve3,
value : Vector3,
) -> Unit =
#| (self, value) => { self.v2 = value; }
///|
pub extern "js" fn QuadraticBezierCurve3::clone(
self : QuadraticBezierCurve3,
) -> QuadraticBezierCurve3 =
#| (self) => self.clone()
///|
pub extern "js" fn QuadraticBezierCurve3::copy(
self : QuadraticBezierCurve3,
source : QuadraticBezierCurve3,
) -> QuadraticBezierCurve3 =
#| (self, source) => self.copy(source)
///|
extern "js" fn QuadraticBezierCurve3::ffi_get_point(
self : QuadraticBezierCurve3,
t : Double,
target : Vector3,
) -> Vector3 =
#| (self, t, target) => self.getPoint(t, target)
///|
/// Passes target to the native method and preserves its return value. An omitted target is allocated per call.
pub fn QuadraticBezierCurve3::get_point(
self : QuadraticBezierCurve3,
t : Double,
target? : Vector3 = Vector3(0, 0, 0),
) -> Vector3 {
self.ffi_get_point(t, target)
}
///|
extern "js" fn QuadraticBezierCurve3::ffi_get_point_at(
self : QuadraticBezierCurve3,
u : Double,
target : Vector3,
) -> Vector3 =
#| (self, u, target) => self.getPointAt(u, target)
///|
/// Passes target to the native method and preserves its return value. An omitted target is allocated per call.
pub fn QuadraticBezierCurve3::get_point_at(
self : QuadraticBezierCurve3,
u : Double,
target? : Vector3 = Vector3(0, 0, 0),
) -> Vector3 {
self.ffi_get_point_at(u, target)
}
///|
extern "js" fn QuadraticBezierCurve3::ffi_get_tangent(
self : QuadraticBezierCurve3,
t : Double,
target : Vector3,
) -> Vector3 =
#| (self, t, target) => self.getTangent(t, target)
///|
/// Passes target to the native method and preserves its return value. An omitted target is allocated per call.
pub fn QuadraticBezierCurve3::get_tangent(
self : QuadraticBezierCurve3,
t : Double,
target? : Vector3 = Vector3(0, 0, 0),
) -> Vector3 {
self.ffi_get_tangent(t, target)
}
///|
extern "js" fn QuadraticBezierCurve3::ffi_get_tangent_at(
self : QuadraticBezierCurve3,
u : Double,
target : Vector3,
) -> Vector3 =
#| (self, u, target) => self.getTangentAt(u, target)
///|
/// Passes target to the native method and preserves its return value. An omitted target is allocated per call.
pub fn QuadraticBezierCurve3::get_tangent_at(
self : QuadraticBezierCurve3,
u : Double,
target? : Vector3 = Vector3(0, 0, 0),
) -> Vector3 {
self.ffi_get_tangent_at(u, target)
}
///|
pub extern "js" fn QuadraticBezierCurve3::get_points(
self : QuadraticBezierCurve3,
divisions : Int,
) -> FixedArray[Vector3] =
#| (self, divisions) => self.getPoints(divisions)
///|
pub extern "js" fn QuadraticBezierCurve3::get_spaced_points(
self : QuadraticBezierCurve3,
divisions : Int,
) -> FixedArray[Vector3] =
#| (self, divisions) => self.getSpacedPoints(divisions)
///|
pub extern "js" fn QuadraticBezierCurve3::get_length(
self : QuadraticBezierCurve3,
) -> Double =
#| (self) => self.getLength()
///|
pub extern "js" fn QuadraticBezierCurve3::update_arc_lengths(
self : QuadraticBezierCurve3,
) -> Unit =
#| (self) => self.updateArcLengths()
///|
pub extern "js" fn QuadraticBezierCurve3::compute_frenet_frames(
self : QuadraticBezierCurve3,
segments : Int,
closed : Bool,
) -> FrenetFrames =
#| (self, segments, closed) => self.computeFrenetFrames(segments, closed)