flatten-js
Version:
Javascript library for 2d geometry
1 lines • 4.62 kB
JSON
{"dependencies":[{"name":"C:\\Users\\alexbol\\WebstormProjects\\flatten-js\\package.json","includedInParent":true,"mtime":1520238055570}],"generated":{"js":"\"use strict\";var e=function(){return function(e,r){if(Array.isArray(e))return e;if(Symbol.iterator in Object(e))return function(e,r){var t=[],n=!0,a=!1,i=void 0;try{for(var o,l=e[Symbol.iterator]();!(n=(o=l.next()).done)&&(t.push(o.value),!r||t.length!==r);n=!0);}catch(e){a=!0,i=e}finally{try{!n&&l.return&&l.return()}finally{if(a)throw i}}return t}(e,r);throw new TypeError(\"Invalid attempt to destructure non-iterable instance\")}}(),r=function(){function e(e,r){for(var t=0;t<r.length;t++){var n=r[t];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}return function(r,t,n){return t&&e(r.prototype,t),n&&e(r,n),r}}();function t(e){if(Array.isArray(e)){for(var r=0,t=Array(e.length);r<e.length;r++)t[r]=e[r];return t}return Array.from(e)}function n(e,r){if(!(e instanceof r))throw new TypeError(\"Cannot call a class as a function\")}module.exports=function(a){a.Edge;var i=a.Face,o=a.PlanarSet,l=a.Box,u=a.ray_shoot;a.Polygon=function(){function c(){n(this,c),this.faces=new o,this.edges=new o}return r(c,[{key:\"addFace\",value:function(){for(var e=arguments.length,r=Array(e),t=0;t<e;t++)r[t]=arguments[t];var n=new(Function.prototype.bind.apply(i,[null].concat([this],r)));return this.faces.add(n),n}},{key:\"deleteFace\",value:function(e){var r=!0,t=!1,n=void 0;try{for(var a,i=e[Symbol.iterator]();!(r=(a=i.next()).done);r=!0){var o=a.value;this.edges.delete(o)}}catch(e){t=!0,n=e}finally{try{!r&&i.return&&i.return()}finally{if(t)throw n}}return this.faces.delete(e)}},{key:\"removeChain\",value:function(e,r,t){if(t.next!==r){for(var n=r;n!==t.next;n=n.next)if(e.remove(this.edges,n),e.isEmpty()){this.deleteFace(e);break}}else this.deleteFace(e)}},{key:\"addVertex\",value:function(e,r){var t=r.shape.split(e);if(!(t.length<2)){var n=new a.Edge(t[0]),i=r.prev;return r.face.insert(this.edges,n,i),this.edges.delete(r),r.shape=t[1],this.edges.add(r),n}}},{key:\"reverse\",value:function(){var e=!0,r=!1,t=void 0;try{for(var n,a=this.faces[Symbol.iterator]();!(e=(n=a.next()).done);e=!0){n.value.reverse()}}catch(e){r=!0,t=e}finally{try{!e&&a.return&&a.return()}finally{if(r)throw t}}return this}},{key:\"clone\",value:function(){var e=new c,r=!0,t=!1,n=void 0;try{for(var a,i=this.faces[Symbol.iterator]();!(r=(a=i.next()).done);r=!0){var o=a.value,l=[],u=!0,f=!1,s=void 0;try{for(var v,y=o[Symbol.iterator]();!(u=(v=y.next()).done);u=!0){var h=v.value;l.push(h.shape.clone())}}catch(e){f=!0,s=e}finally{try{!u&&y.return&&y.return()}finally{if(f)throw s}}e.addFace(l)}}catch(e){t=!0,n=e}finally{try{!r&&i.return&&i.return()}finally{if(t)throw n}}return e}},{key:\"area\",value:function(){var e=[].concat(t(this.faces)).reduce(function(e,r){return e+r.signedArea()},0);return Math.abs(e)}},{key:\"contains\",value:function(e){var r=u(this,e);return r==a.INSIDE||r==a.BOUNDARY}},{key:\"distanceTo\",value:function(r){var t=a.Distance;if(r instanceof a.Point){var n=t.point2polygon(r,this),i=e(n,2),o=i[0],l=i[1];return[o,l=l.reverse()]}if(r instanceof a.Circle||r instanceof a.Line||r instanceof a.Segment||r instanceof a.Arc){var u=t.shape2polygon(r,this),c=e(u,2),f=c[0],s=c[1];return[f,s=s.reverse()]}if(r instanceof a.Polygon){var v=[Number.POSITIVE_INFINITY,new a.Segment],y=void 0,h=void 0,d=!0,g=!1,p=void 0;try{for(var b,k=this.edges[Symbol.iterator]();!(d=(b=k.next()).done);d=!0){var m=b.value,w=v[0],S=t.shape2planarSet(m.shape,r.edges,w),x=e(S,2);y=x[0],h=x[1],a.Utils.LT(y,w)&&(v=[y,h])}}catch(e){g=!0,p=e}finally{try{!d&&k.return&&k.return()}finally{if(g)throw p}}return v}}},{key:\"svg\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{stroke:\"black\",strokeWidth:\"3\",fill:\"lightcyan\",fillRule:\"evenodd\"},r='\\n<path stroke=\"'+e.stroke+'\" stroke-width=\"'+e.strokeWidth+'\" fill=\"'+e.fill+'\" fill-rule=\"'+e.fillRule+'\" d=\"',t=!0,n=!1,a=void 0;try{for(var i,o=this.faces[Symbol.iterator]();!(t=(i=o.next()).done);t=!0){r+=i.value.svg()}}catch(e){n=!0,a=e}finally{try{!t&&o.return&&o.return()}finally{if(n)throw a}}return r+='\">\\n</path>'}},{key:\"toJSON\",value:function(){return[].concat(t(this.faces)).map(function(e){return e.toJSON()})}},{key:\"box\",get:function(){return[].concat(t(this.faces)).reduce(function(e,r){return e.merge(r.box)},new l)}},{key:\"vertices\",get:function(){return[].concat(t(this.edges)).map(function(e){return e.start})}}]),c}()};"},"hash":"980c9f61b5d8bd5ef3c5efe26868f56a","cacheData":{"env":{}}}