Newts Parading Majestically
    Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    robust-in-spherepublic

    robust-in-sphere

    Exact arithmetic test to check if (n+2) points are cospherical.

    (Very) loosely inspired by Jonathan Shewchuk's work on robust predicates. Currently not as fast, but pull requests are welcome.

    testling badge

    build status

    Example

    var inSphere = require("robust-in-sphere")
     
    console.log(inSphere(
      [0, 1],
      [1, 0],
      [-1, 0],
      [0, -1]))

    Install

    npm install robust-in-sphere
    

    API

    var inSphere = require("robust-in-sphere")

    inSphere(a,b,c,...)

    Tests if a collection of n+2 points in n-dimensional space are cospherical or if the last point is contained in the sphere or not.

    • a,b,c,... is a list of points

    Returns A signed integer that gives the orientation of the points

    • <0 if the last point is contained in the oriented sphere defined by the previous two points
    • >0 if the last point is outside the sphere
    • 0 is the points are cospherical

    Notes Up to 6 points it is possible to get a specialized version of inSphere that avoids an extra dispatch using the syntax:

    inSphere[4](a,b,c,d) === inSphere(a,b,c,d)

    Credits

    (c) 2014 Mikola Lysenko. MIT License

    install

    npm i robust-in-sphere

    Downloadsweekly downloads

    12,088

    version

    1.1.3

    license

    MIT

    repository

    githubgithub

    last publish

    collaborators

    • avatar