{"version":3,"sources":["jsdelivr-header.js","/npm/barycentric@1.0.1/barycentric.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,ACNA,aAEA,OAAO,QAAU,YAEjB,IAAI,MAAQ,QAAQ,uBAEpB,SAAS,OAAO,GAEd,IADA,IAAI,EAAI,EACA,EAAE,EAAG,EAAE,EAAE,SAAU,EACzB,GAAK,EAAE,GAET,OAAO,CACT,CAEA,SAAS,YAAY,EAAS,GAG5B,IAFA,IAAI,EAAI,EAAM,OACV,EAAI,IAAI,MAAM,EAAE,GACZ,EAAE,EAAG,EAAE,IAAK,EAAG,CAErB,IADA,IAAI,EAAM,IAAI,MAAM,EAAE,GACd,EAAE,EAAG,GAAG,IAAK,EACnB,EAAI,GAAK,EAAQ,GAAG,GAEtB,EAAE,GAAK,CACT,CACA,EAAE,GAAK,IAAI,MAAM,EAAE,GACnB,IAAQ,EAAE,EAAG,GAAG,IAAK,EACnB,EAAE,GAAG,GAAK,EAGZ,IAAI,EAAI,IAAI,MAAM,EAAE,GACpB,IAAQ,EAAE,EAAG,EAAE,IAAK,EAClB,EAAE,GAAK,EAAM,GAEf,EAAE,GAAK,EAEP,IAAI,EAAI,MAAM,EAAG,GACb,EAAI,OAAO,EAAE,EAAE,IAEV,IAAN,IACD,EAAI,GAEN,IAAI,EAAI,IAAI,MAAM,EAAE,GACpB,IAAQ,EAAE,EAAG,GAAG,IAAK,EACnB,EAAE,GAAK,OAAO,EAAE,IAAM,EAExB,OAAO,CACT","file":"/npm/barycentric@1.0.1/barycentric.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/barycentric@1.0.1/barycentric.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","'use strict'\n\nmodule.exports = barycentric\n\nvar solve = require('robust-linear-solve')\n\nfunction reduce(x) {\n  var r = 0\n  for(var i=0; i<x.length; ++i) {\n    r += x[i]\n  }\n  return r\n}\n\nfunction barycentric(simplex, point) {\n  var d = point.length\n  var A = new Array(d+1)\n  for(var i=0; i<d; ++i) {\n    var row = new Array(d+1)\n    for(var j=0; j<=d; ++j) {\n      row[j] = simplex[j][i]\n    }\n    A[i] = row\n  }\n  A[d] = new Array(d+1)\n  for(var i=0; i<=d; ++i) {\n    A[d][i] = 1\n  }\n\n  var b = new Array(d+1)\n  for(var i=0; i<d; ++i) {\n    b[i] = point[i]\n  }\n  b[d] = 1.0\n\n  var x = solve(A, b)\n  var w = reduce(x[d+1])\n  \n  if(w === 0) {\n    w = 1.0\n  }\n  var y = new Array(d+1)\n  for(var i=0; i<=d; ++i) {\n    y[i] = reduce(x[i]) / w\n  }\n  return y\n}"]}