möbius-transformation

implements beautiful geometric transformations that preserve angles and generalized circles

Möbius transformations are named in honor of August Ferdinand Möbius; they are also variously named homographies, homographic transformations, linear fractional transformations, bilinear transformations, or fractional linear transformations.

See Möbius transformation on wikipedia.

Installation | API | Example | License

NPM version JavaScript Style Guide

Installation

With npm do

npm install mobius-transformation

API

new mobius.Transformation([a, b, c, d])

Examples

Unit circle inversion.

Inversion

const algebra = require('algebra')
const mobius = require('mobius-transformation')
const Complex = algebra.Complex
const zero = new Complex([0, 0])
const one = new Complex([1, 0])
const half = new Complex([0.5, 0])
const inversion = new mobius.Transformation([zero, one,
                                             one,  zero])
const two = inversion(half)
console.log(two) // Complex { data: [2, 0] }

License

MIT