{"_id":"robust-predicates","_rev":"376607","name":"robust-predicates","description":"Fast robust predicates for computational geometry","dist-tags":{"latest":"3.0.1"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"time":{"modified":"2021-07-30T05:40:43.000Z","created":"2019-09-01T09:38:58.403Z","3.0.1":"2021-04-05T14:54:38.675Z","3.0.0":"2021-02-08T19:42:31.725Z","2.0.4":"2019-09-10T15:08:18.733Z","2.0.3":"2019-09-04T12:00:46.516Z","2.0.2":"2019-09-03T10:59:05.362Z","2.0.1":"2019-09-02T13:37:34.619Z","2.0.0":"2019-09-02T12:54:37.749Z","1.1.0":"2019-09-01T20:57:02.413Z","1.0.0":"2019-09-01T16:45:07.939Z","0.1.0":"2019-09-01T09:38:58.403Z"},"users":{},"author":{"name":"Vladimir Agafonkin"},"repository":{"type":"git","url":"git+https://github.com/mourner/robust-predicates.git"},"versions":{"3.0.1":{"name":"robust-predicates","version":"3.0.1","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","type":"module","main":"index.js","unpkg":"umd/predicates.min.js","module":"index.js","exports":"./index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src test/test.js","test":"npm run lint && npm run build && node test/test.js","cov":"c8 node test/test.js","bench":"node bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"c8":"^7.7.0","eslint":"^7.23.0","eslint-config-mourner":"^3.0.0","mkdirp":"^1.0.4","nextafter":"^1.0.0","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^2.44.0","rollup-plugin-terser":"^7.0.2","tape":"^5.2.2","terser":"^5.6.1"},"repository":{"type":"git","url":"git+https://github.com/mourner/robust-predicates.git"},"eslintConfig":{"extends":"mourner","parserOptions":{"ecmaVersion":2020},"rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]|u3|[st][01]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Two_One_Product":false,"$Cross_Product":false,"$Square_Sum":false,"$Two_Product_Sum":false}},"gitHead":"3d59c26a3a454115f2c58e08b906340d3b460614","bugs":{"url":"https://github.com/mourner/robust-predicates/issues"},"homepage":"https://github.com/mourner/robust-predicates#readme","_id":"robust-predicates@3.0.1","_nodeVersion":"14.16.0","_npmVersion":"7.7.5","dist":{"shasum":"ecde075044f7f30118682bd9fb3f123109577f9a","size":41316,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-3.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-3.0.1.tgz"},"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_3.0.1_1617634478501_0.9802787619487836"},"_hasShrinkwrap":false,"publish_time":1617634478675,"_cnpm_publish_time":1617634478675},"3.0.0":{"name":"robust-predicates","version":"3.0.0","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","type":"module","main":"index.js","unpkg":"umd/predicates.min.js","module":"index.js","exports":"./index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src test/test.js","test":"npm run lint && npm run build && node test/test.js","cov":"c8 node test/test.js","bench":"node bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"c8":"^7.5.0","eslint":"^7.19.0","eslint-config-mourner":"^3.0.0","mkdirp":"^1.0.4","nextafter":"^1.0.0","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^2.38.5","rollup-plugin-terser":"^7.0.2","tape":"^5.1.1","terser":"^5.5.1"},"repository":{"type":"git","url":"git+https://github.com/mourner/robust-predicates.git"},"eslintConfig":{"extends":"mourner","parserOptions":{"ecmaVersion":2020},"rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]|u3|[st][01]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Two_One_Product":false,"$Cross_Product":false,"$Square_Sum":false,"$Two_Product_Sum":false}},"gitHead":"cad31800c2faa0619f23e5e7d4e235c2c5097ad1","bugs":{"url":"https://github.com/mourner/robust-predicates/issues"},"homepage":"https://github.com/mourner/robust-predicates#readme","_id":"robust-predicates@3.0.0","_nodeVersion":"12.20.1","_npmVersion":"7.5.2","dist":{"shasum":"e26d6ba398d80a782be3b4ba5998d5a98f7e06db","size":41825,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-3.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-3.0.0.tgz"},"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_3.0.0_1612813351585_0.6394327148548931"},"_hasShrinkwrap":false,"publish_time":1612813351725,"_cnpm_publish_time":1612813351725},"2.0.4":{"name":"robust-predicates","version":"2.0.4","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src test/test.js","test":"npm run lint && npm run build && node -r esm test/test.js","cov":"rm -rf node_modules/.cache/esm && nyc --require esm -r lcov -r text node test/test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","nyc":"^14.1.1","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]|u3|[st][01]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Two_One_Product":false,"$Cross_Product":false,"$Square_Sum":false,"$Two_Product_Sum":false}},"gitHead":"7f81678a2b487457c7c089322a7b4d13acb96997","_id":"robust-predicates@2.0.4","_nodeVersion":"10.16.3","_npmVersion":"6.9.0","dist":{"shasum":"0a2367a93abd99676d075981707f29cfb402248b","size":47652,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-2.0.4.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-2.0.4.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_2.0.4_1568128098614_0.9058931142892381"},"_hasShrinkwrap":false,"publish_time":1568128098733,"_cnpm_publish_time":1568128098733},"2.0.3":{"name":"robust-predicates","version":"2.0.3","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src test/test.js","test":"npm run lint && npm run build && node -r esm test/test.js","cov":"rm -rf node_modules/.cache/esm && nyc --require esm -r lcov -r text node test/test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","nyc":"^14.1.1","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]|u3|[st][01]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Two_One_Product":false,"$Cross_Product":false,"$Square_Sum":false,"$Two_Product_Sum":false}},"gitHead":"9dc20a7710f9d5b5d276e91d0f85a797e0356410","_id":"robust-predicates@2.0.3","_nodeVersion":"10.16.3","_npmVersion":"6.11.3","dist":{"shasum":"d032c72f4612e3bc3cf15457d29564e7e11d6655","size":58856,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-2.0.3.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-2.0.3.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_2.0.3_1567598446413_0.7062130269412414"},"_hasShrinkwrap":false,"publish_time":1567598446516,"_cnpm_publish_time":1567598446516},"2.0.2":{"name":"robust-predicates","version":"2.0.2","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src test/test.js","test":"npm run lint && npm run build && node -r esm test/test.js","cov":"rm -rf node_modules/.cache/esm && nyc --require esm -r lcov -r text node test/test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","nyc":"^14.1.1","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"gitHead":"bd91f6f53be04a676b95ab10296a886baf673af2","_id":"robust-predicates@2.0.2","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"8432b018e9bb94f4d5a95c12394d62540c04bb20","size":73605,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-2.0.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-2.0.2.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_2.0.2_1567508345216_0.4760856954928945"},"_hasShrinkwrap":false,"publish_time":1567508345362,"_cnpm_publish_time":1567508345362},"2.0.1":{"name":"robust-predicates","version":"2.0.1","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src","test":"npm run lint && npm run build && node -r esm test.js","cov":"nyc -r lcov -r text node -r esm test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","nyc":"^14.1.1","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"gitHead":"1d7957bd71e03dc16c7a6c2e9f6358945b25afe9","_id":"robust-predicates@2.0.1","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"f69344d2bcbbbd8ae86a4e704a405987184c6909","size":74412,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-2.0.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-2.0.1.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_2.0.1_1567431454384_0.7787164826586579"},"_hasShrinkwrap":false,"publish_time":1567431454619,"_cnpm_publish_time":1567431454619},"2.0.0":{"name":"robust-predicates","version":"2.0.0","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src","test":"npm run lint && npm run build && node -r esm test.js","cov":"nyc -r lcov -r text node -r esm test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","nyc":"^14.1.1","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"gitHead":"0d4b2788554c2318435117f872e0788a52b2d9c4","_id":"robust-predicates@2.0.0","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"c09c43b001f604cb1a6c54be0ca67cce2c19d822","size":74402,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-2.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-2.0.0.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_2.0.0_1567428877565_0.06382601283003608"},"_hasShrinkwrap":false,"publish_time":1567428877749,"_cnpm_publish_time":1567428877749},"1.1.0":{"name":"robust-predicates","version":"1.1.0","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","types":"index.d.ts","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src","test":"npm run lint && npm run build && node -r esm test.js","bench":"node -r esm bench.js","prepublishOnly":"npm run test && rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":[2,{"varsIgnorePattern":"splitter|bvirt|c|[ab]hi|[ab]lo|_[ijk0]"}],"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"gitHead":"02d0f5383508963fc5d2e99313a0159ce943269b","_id":"robust-predicates@1.1.0","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"505947d2759d95cd29a04c4314556dc4dbb23cc5","size":74248,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-1.1.0.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_1.1.0_1567371422267_0.40084371121025475"},"_hasShrinkwrap":false,"publish_time":1567371422413,"_cnpm_publish_time":1567371422413},"1.0.0":{"name":"robust-predicates","version":"1.0.0","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js src","test":"npm run lint && npm run build && node -r esm test.js","bench":"node -r esm bench.js","prepublishOnly":"rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","robust-in-sphere":"^1.1.3","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"no-unused-vars":0,"no-lonely-if":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"prettier":{"tabWidth":4},"gitHead":"82ff1b57cd169df912a01712d8194f16a738bef0","_id":"robust-predicates@1.0.0","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"d368acd886df90a34de17361b317f51fb93fa982","size":72442,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-1.0.0.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_1.0.0_1567356307767_0.8967744430371007"},"_hasShrinkwrap":false,"publish_time":1567356307939,"_cnpm_publish_time":1567356307939},"0.1.0":{"name":"robust-predicates","version":"0.1.0","description":"Fast robust predicates for computational geometry","keywords":["computational geometry","robust arithmetic"],"author":{"name":"Vladimir Agafonkin"},"license":"Unlicense","main":"umd/predicates.js","unpkg":"umd/predicates.min.js","module":"index.js","scripts":{"build":"mkdirp esm && node compile.js","lint":"eslint *.js esm src","test":"npm run build && npm run lint && node -r esm test.js","bench":"node -r esm bench.js","prepublishOnly":"rollup -c"},"devDependencies":{"eslint":"^6.3.0","eslint-config-mourner":"^3.0.0","esm":"^3.2.25","mkdirp":"^0.5.1","nextafter":"^1.0.0","robust-orientation":"^1.1.3","rollup":"^1.20.3","rollup-plugin-terser":"^5.1.1","tape":"^4.11.0","terser":"^4.2.1"},"eslintConfig":{"extends":"mourner","rules":{"camelcase":0,"new-cap":0,"prefer-const":0,"no-unused-vars":0},"globals":{"$Fast_Two_Sum":false,"$Two_Sum":false,"$Two_Diff_Tail":false,"$Two_Diff":false,"$Split":false,"$Two_Product":false,"$Two_Product_Presplit":false,"$Square":false,"$Two_One_Sum":false,"$Two_One_Diff":false,"$Two_Two_Sum":false,"$Two_Two_Diff":false,"$Two_One_Product":false}},"prettier":{"tabWidth":4},"gitHead":"c5e3ada61e8d0e48752355886d331e837813fd2b","_id":"robust-predicates@0.1.0","_nodeVersion":"10.16.3","_npmVersion":"6.11.2","dist":{"shasum":"68428f21b21c592ef91909b965c840c3d4928c81","size":41511,"noattachment":false,"key":"/robust-predicates/-/robust-predicates-0.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/robust-predicates/download/robust-predicates-0.1.0.tgz"},"maintainers":[{"name":"mourner","email":"agafonkin@gmail.com"}],"_npmUser":{"name":"mourner","email":"agafonkin@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/robust-predicates_0.1.0_1567330738156_0.7428750281046101"},"_hasShrinkwrap":false,"publish_time":1567330738403,"_cnpm_publish_time":1567330738403}},"readme":"# robust-predicates\n\nFast robust predicates for computational geometry in JavaScript. Provides reliable 2D and 3D point orientation tests (`orient2d`, `orient3d`, `incircle`, `insphere`) that are not susceptible to floating point errors (without sacrificing performance). A modern port of [Jonathan R Shewchuk's C code](https://www.cs.cmu.edu/~quake/robust.html), an industry standard since 1996.\n\n<a href=\"https://observablehq.com/@mourner/non-robust-arithmetic-as-art\"><img width=\"600\" height=\"200\" src=\"predicates.png\" /></a>\n\n_Figure: non-robust vs robust `orient2d` test for points within a tiny range (2<sup>-42</sup>)._\n\n[![Build Status](https://github.com/mourner/robust-predicates/actions/workflows/node.yml/badge.svg)](https://github.com/mourner/robust-predicates/actions/workflows/node.yml)\n[![Simply Awesome](https://img.shields.io/badge/simply-awesome-brightgreen.svg)](https://github.com/mourner/projects)\n[![Browser Build](https://img.shields.io/bundlephobia/minzip/robust-predicates)](https://unpkg.com/robust-predicates)\n\n## [Demo](https://observablehq.com/@mourner/non-robust-arithmetic-as-art)\n\n## API\n\nNote: unlike J. Shewchuk's original code, all the functions in this library assume `y` axis is oriented _downwards_ &darr;, so the semantics are different.\n\n### `orient2d(ax,ay, bx,by, cx,cy)`\n\n- Returns a *positive* value if the points `a`, `b`, and `c` occur in _counterclockwise_ order (`c` lies to the left of the directed line defined by points `a` and `b`).\n- Returns a *negative* value if they occur in _clockwise_ order (`c` lies to the right of the directed line `ab`).\n- Returns *zero* if they are _collinear_.\n\nThe result is also an approximation of twice the signed area of the triangle defined by the three points.\n\n### `incircle(ax,ay, bx,by, cx,cy, dx,dy)`\n\n- Returns a _positive_ value if the point `d` lies _outside_ the circle passing through `a`, `b`, and `c`.\n- Returns a _negative_ value if it lies _inside_.\n- Returns _zero_ if the four points are _cocircular_.\n\nThe points `a`, `b`, and `c` must be in _counterclockwise_ order, or the sign of the result will be reversed.\n\n### `orient3d(ax,ay,az, bx,by,bz, cx,cy,cz, dx,dy,dz)`\n\n- Returns a _positive_ value if the point `d` lies _above_ the plane passing through `a`, `b`, and `c`, meaning that `a`, `b`, and `c` appear in counterclockwise order when viewed from `d`.\n- Returns a _negative_ value if `d` lies _below_ the plane.\n- Returns _zero_ if the points are _coplanar_.\n\nThe result is also an approximation of six times the signed volume of the tetrahedron defined by the four points.\n\n### `insphere(ax,ay,az, bx,by,bz, cx,cy,cz, dx,dy,dz, ex,ey,ez)`\n\n- Returns a _positive_ value if the point `e` lies _outside_ the sphere passing through `a`, `b`, `c`, and `d`.\n- Returns a _negative_ value if it lies _inside_.\n- Returns _zero_ if the five points are _cospherical_.\n\nThe points `a`, `b`, `c`, and `d` must be ordered so that they have a _positive orientation_\n(as defined by `orient3d`), or the sign of the result will be reversed.\n\n### `orient2dfast`, `orient3dfast`, `incirclefast`, `inspherefast`\n\nSimple, approximate, non-robust versions of predicates above. Use when robustness isn't needed.\n\n## Example\n\n```js\nimport {orient2d} from 'robust-predicates';\n\nconst ccw = orient2d(ax, ay, bx, by, cx, cy) > 0;\n````\n\n## Install\n\nInstall with `npm install robust-predicates` or `yarn add robust-predicates`, or use one of the browser builds:\n\n- [predicates.min.js](https://unpkg.com/robust-predicates/umd/predicates.min.js) (all predicates)\n- [orient2d.min.js](https://unpkg.com/robust-predicates/umd/orient2d.min.js) (`orient2d`, `orient2dfast`)\n- [orient3d.min.js](https://unpkg.com/robust-predicates/umd/orient3d.min.js) (`orient3d`, `orient3dfast`)\n- [incircle.min.js](https://unpkg.com/robust-predicates/umd/incircle.min.js) (`incircle`, `incirclefast`)\n- [insphere.min.js](https://unpkg.com/robust-predicates/umd/insphere.min.js) (`insphere`, `inspherefast`)\n\n## Thanks\n\nThis project is just a port — all the brilliant, hard work was done by [Jonathan Richard Shewchuk](https://people.eecs.berkeley.edu/~jrs/).\n\nThe port was also inspired by [Mikola Lysenko](https://twitter.com/MikolaLysenko)'s excellent [Robust Arithmetic Notes](https://github.com/mikolalysenko/robust-arithmetic-notes) and related projects like [robust-orientation](https://github.com/mikolalysenko/robust-orientation) and [robust-in-sphere](https://github.com/mikolalysenko/robust-in-sphere).\n\n## License\n\nSince the original code is in the public domain, this project follows the same choice. See [Unlicense](https://unlicense.org).\n","_attachments":{},"homepage":"https://github.com/mourner/robust-predicates#readme","bugs":{"url":"https://github.com/mourner/robust-predicates/issues"},"license":"Unlicense"}