tapspace
Version:
A zoomable user interface lib for web apps
26 lines (21 loc) • 449 B
JavaScript
const fine = require('affineplane')
const dir3 = fine.dir3
module.exports = (Vector) => {
return function (dir) {
// @Distance:getVector(dir)
//
// Parameters:
// dir
// a Direction
//
// Return
// a Vector
//
// Normalize direction
if (dir.transitRaw) {
dir = dir.transitRaw(this.basis)
}
const vec = dir3.toVector(dir, this.dist)
return new Vector(this.basis, vec)
}
}