tapspace
Version:
A zoomable user interface lib for web apps
18 lines (16 loc) • 388 B
JavaScript
const point3 = require('affineplane').point3
module.exports = function (newBasis) {
// @Point:changeBasis(newBasis)
//
// Parameters:
// newBasis
// a Component
//
// Return:
// a Point
//
const tran = this.basis.getTransitionTo(newBasis)
const xyz = point3.transitFrom(this.point, tran)
const Point = this.constructor
return new Point(newBasis, xyz)
}