README

cxh04/moon-cv-geometry/core does not have a README file

#
GeometryError

pub(all) suberror GeometryError {
DegenerateInput(String)
NotEnoughPoints(String)
} derive(Eq,
Debug
)

#
Mat3

pub(all) struct Mat3 {
m00 : Double
m01 : Double
m02 : Double
m10 : Double
m11 : Double
m12 : Double
m20 : Double
m21 : Double
m22 : Double
} derive(Eq,
Debug
)

#
Mat3::det

fn Mat3::det(m : Mat3) -> Double

#
Mat3::inverse

fn Mat3::inverse(m : Mat3) -> Mat3 raise GeometryError

#
Mat3::mul

fn Mat3::mul(a : Mat3, b : Mat3) -> Mat3

#
Mat3::mul_vec3

fn Mat3::mul_vec3(m : Mat3, v : Vec3) -> Vec3

#
Mat3::transpose

fn Mat3::transpose(m : Mat3) -> Mat3

#
Mat34

pub(all) struct Mat34 {
m00 : Double
m01 : Double
m02 : Double
m03 : Double
m10 : Double
m11 : Double
m12 : Double
m13 : Double
m20 : Double
m21 : Double
m22 : Double
m23 : Double
} derive(Eq,
Debug
)

#
Mat34::transform_point

fn Mat34::transform_point(m : Mat34, p : Point3) -> Point3

#
Point2

pub(all) struct Point2 {
x : Double
y : Double
} derive(Eq,
Debug
)

#
Point2::minus

fn Point2::minus(a : Point2, b : Point2) -> Vec2

#
Point2::new

fn Point2::new(x~ : Double, y~ : Double) -> Point2

#
Point2::to_vec

fn Point2::to_vec(p : Point2) -> Vec2

#
Point2::translate

fn Point2::translate(p : Point2, v : Vec2) -> Point2

#
Point3

pub(all) struct Point3 {
x : Double
y : Double
z : Double
} derive(Eq,
Debug
)

#
Point3::new

fn Point3::new(x~ : Double, y~ : Double, z~ : Double) -> Point3

#
Point3::to_vec

fn Point3::to_vec(p : Point3) -> Vec3

#
Vec2

pub(all) struct Vec2 {
x : Double
y : Double
} derive(Eq,
Debug
)

#
Vec2::add

fn Vec2::add(a : Vec2, b : Vec2) -> Vec2

#
Vec2::dot

fn Vec2::dot(a : Vec2, b : Vec2) -> Double

#
Vec2::new

fn Vec2::new(x~ : Double, y~ : Double) -> Vec2

#
Vec2::norm

fn Vec2::norm(v : Vec2) -> Double

#
Vec2::norm2

fn Vec2::norm2(v : Vec2) -> Double

#
Vec2::normalize

fn Vec2::normalize(v : Vec2) -> Vec2 raise GeometryError

#
Vec2::scale

fn Vec2::scale(v : Vec2, s : Double) -> Vec2

#
Vec2::sub

fn Vec2::sub(a : Vec2, b : Vec2) -> Vec2

#
Vec3

pub(all) struct Vec3 {
x : Double
y : Double
z : Double
} derive(Eq,
Debug
)

#
Vec3::add

fn Vec3::add(a : Vec3, b : Vec3) -> Vec3

#
Vec3::cross

fn Vec3::cross(a : Vec3, b : Vec3) -> Vec3

#
Vec3::dot

fn Vec3::dot(a : Vec3, b : Vec3) -> Double

#
Vec3::new

fn Vec3::new(x~ : Double, y~ : Double, z~ : Double) -> Vec3

#
Vec3::norm

fn Vec3::norm(v : Vec3) -> Double

#
Vec3::norm2

fn Vec3::norm2(v : Vec3) -> Double

#
Vec3::normalize

fn Vec3::normalize(v : Vec3) -> Vec3 raise GeometryError

#
Vec3::scale

fn Vec3::scale(v : Vec3, s : Double) -> Vec3

#
Vec3::sub

fn Vec3::sub(a : Vec3, b : Vec3) -> Vec3

#
abs

fn abs(x : Double) -> Double

#
almost_equal

fn almost_equal(a : Double, b : Double, eps? : Double) -> Bool

#
clamp

fn clamp(x : Double, lo~ : Double, hi~ : Double) -> Double

#
distance2

fn distance2(a : Point2, b : Point2) -> Double

#
identity3

fn identity3() -> Mat3

#
mat34_from_rows

fn mat34_from_rows(r0 : (Double, Double, Double, Double), r1 : (Double, Double, Double, Double), r2 : (Double, Double, Double, Double)) -> Mat34

#
mat3_from_rows

fn mat3_from_rows(r0 : (Double, Double, Double), r1 : (Double, Double, Double), r2 : (Double, Double, Double)) -> Mat3

#
reprojection_error

fn reprojection_error(a : Point2, b : Point2) -> Double

#
square

fn square(x : Double) -> Double

Powered by MoonBit

Site sourceReport issuePackagesBuild queueSkillsStatistics

© 2026 mooncakes.io