// Generated by scripts/generate.mjs from bindings/api.mjs. Do not edit.
///|
#external
pub type CCDIKSolver
///|
#module("@mizchi/three-mbt/rigging")
pub extern "js" fn CCDIKSolver::CCDIKSolver(
mesh : SkinnedMesh,
chains : FixedArray[IKChain],
) -> CCDIKSolver = "cCDIKSolver"
///|
extern "js" fn CCDIKSolver::ffi_update(
self : CCDIKSolver,
blend : Double,
) -> JsResult[CCDIKSolver] =
#| (self, blend) => { try { return { ok: true, value: (() => self.update(blend))() }; } catch (error) { return { ok: false, error: String(error) }; } }
///|
pub fn CCDIKSolver::update(
self : CCDIKSolver,
blend : Double,
) -> CCDIKSolver raise ModelingError {
match self.ffi_update(blend).into_result() {
Ok(value) => value
Err(message) => raise ModelingError(message)
}
}
///|
extern "js" fn CCDIKSolver::ffi_update_one(
self : CCDIKSolver,
chain : IKChain,
blend : Double,
) -> JsResult[CCDIKSolver] =
#| (self, chain, blend) => { try { return { ok: true, value: (() => self.updateOne(chain, blend))() }; } catch (error) { return { ok: false, error: String(error) }; } }
///|
pub fn CCDIKSolver::update_one(
self : CCDIKSolver,
chain : IKChain,
blend : Double,
) -> CCDIKSolver raise ModelingError {
match self.ffi_update_one(chain, blend).into_result() {
Ok(value) => value
Err(message) => raise ModelingError(message)
}
}
///|
pub extern "js" fn CCDIKSolver::create_helper(
self : CCDIKSolver,
sphere_size : Double,
) -> CCDIKHelper =
#| (self, sphere_size) => self.createHelper(sphere_size)
///|
pub extern "js" fn CCDIKSolver::mesh(self : CCDIKSolver) -> SkinnedMesh =
#| (self) => self.mesh