@thi.ng/distance
Version:
N-dimensional distance metrics & K-nearest neighborhoods for point queries
24 lines (23 loc) • 450 B
JavaScript
import { distSq, distSq2, distSq3 } from "@thi.ng/vectors/distsq";
class Squared {
constructor(metric) {
this.metric = metric;
}
to(x) {
return x * x;
}
from(x) {
return Math.sqrt(x);
}
}
const DIST_SQ = new Squared(distSq);
const DIST_SQ1 = new Squared((a, b) => (a - b) ** 2);
const DIST_SQ2 = new Squared(distSq2);
const DIST_SQ3 = new Squared(distSq3);
export {
DIST_SQ,
DIST_SQ1,
DIST_SQ2,
DIST_SQ3,
Squared
};