UNPKG

flatten-js

Version:

Javascript library for 2d geometry

1 lines 2.02 kB
{"dependencies":[{"name":"C:\\Users\\alexbol\\WebstormProjects\\flatten-js\\package.json","includedInParent":true,"mtime":1520238055570},{"name":"C:\\Users\\alexbol\\WebstormProjects\\flatten-js\\node_modules\\flatten-interval-tree\\package.json","includedInParent":true,"mtime":1520238156082},{"name":"../classes/interval","loc":{"line":8,"column":23}},{"name":"../utils/constants","loc":{"line":9,"column":55}}],"generated":{"js":"\"use strict\";let t=require(\"../classes/interval\"),{RB_TREE_COLOR_RED:e,RB_TREE_COLOR_BLACK:i}=require(\"../utils/constants\"),s=class{constructor(e,s,h=null,l=null,a=null,m=i){this.left=h,this.right=l,this.parent=a,this.color=m,this.item={key:e,value:s},e&&e instanceof Array&&2==e.length&&(Number.isNaN(e[0])||Number.isNaN(e[1])||(this.item.key=new t(Math.min(e[0],e[1]),Math.max(e[0],e[1])))),this.max=this.item.key?this.item.key.max:void 0}isNil(){return void 0===this.item.key&&void 0===this.item.value&&null===this.left&&null===this.right&&this.color===i}less_than(t){return this.item.key.less_than(t.item.key)}equal_to(t){let e=!0;return this.item.value&&t.item.value&&(e=this.item.value.equal_to?this.item.value.equal_to(t.item.value):this.item.value==t.item.value),this.item.key.equal_to(t.item.key)&&e}intersect(t){return this.item.key.intersect(t.item.key)}copy_data(t){this.item.key=t.item.key.clone(),this.item.value=t.item.value}update_max(){if(this.max=this.item.key?this.item.key.max:void 0,this.right&&this.right.max){let t=this.item.key.maximal_val;this.max=t(this.max,this.right.max)}if(this.left&&this.left.max){let t=this.item.key.maximal_val;this.max=t(this.max,this.left.max)}}not_intersect_left_subtree(t){return(0,this.item.key.val_less_than)(this.left.max.high?this.left.max.high:this.left.max,t.item.key.low)}not_intersect_right_subtree(t){let e=this.item.key.val_less_than,i=this.right.max.low?this.right.max.low:this.right.item.key.low;return e(t.item.key.high,i)}};module.exports=s;"},"hash":"1801a105c2f6780f515ecc9d79b1936a","cacheData":{"env":{}}}