-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathmaps.min.js
96 lines (96 loc) · 45.1 KB
/
maps.min.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
var $jscomp=$jscomp||{};$jscomp.scope={};$jscomp.owns=function(b,c){return Object.prototype.hasOwnProperty.call(b,c)};$jscomp.ASSUME_ES5=!1;$jscomp.ASSUME_NO_NATIVE_MAP=!1;$jscomp.ASSUME_NO_NATIVE_SET=!1;$jscomp.SIMPLE_FROUND_POLYFILL=!1;$jscomp.ISOLATE_POLYFILLS=!1;$jscomp.defineProperty=$jscomp.ASSUME_ES5||"function"==typeof Object.defineProperties?Object.defineProperty:function(b,c,a){if(b==Array.prototype||b==Object.prototype)return b;b[c]=a.value;return b};
$jscomp.getGlobal=function(b){b=["object"==typeof globalThis&&globalThis,b,"object"==typeof window&&window,"object"==typeof self&&self,"object"==typeof global&&global];for(var c=0;c<b.length;++c){var a=b[c];if(a&&a.Math==Math)return a}throw Error("Cannot find global object");};$jscomp.global=$jscomp.getGlobal(this);$jscomp.IS_SYMBOL_NATIVE="function"===typeof Symbol&&"symbol"===typeof Symbol("x");$jscomp.TRUST_ES6_POLYFILLS=!$jscomp.ISOLATE_POLYFILLS||$jscomp.IS_SYMBOL_NATIVE;$jscomp.polyfills={};
$jscomp.propertyToPolyfillSymbol={};$jscomp.POLYFILL_PREFIX="$jscp$";var $jscomp$lookupPolyfilledValue=function(b,c){var a=$jscomp.propertyToPolyfillSymbol[c];if(null==a)return b[c];a=b[a];return void 0!==a?a:b[c]};$jscomp.polyfill=function(b,c,a,d){c&&($jscomp.ISOLATE_POLYFILLS?$jscomp.polyfillIsolated(b,c,a,d):$jscomp.polyfillUnisolated(b,c,a,d))};
$jscomp.polyfillUnisolated=function(b,c,a,d){a=$jscomp.global;b=b.split(".");for(d=0;d<b.length-1;d++){var e=b[d];if(!(e in a))return;a=a[e]}b=b[b.length-1];d=a[b];c=c(d);c!=d&&null!=c&&$jscomp.defineProperty(a,b,{configurable:!0,writable:!0,value:c})};
$jscomp.polyfillIsolated=function(b,c,a,d){var e=b.split(".");b=1===e.length;d=e[0];d=!b&&d in $jscomp.polyfills?$jscomp.polyfills:$jscomp.global;for(var k=0;k<e.length-1;k++){var m=e[k];if(!(m in d))return;d=d[m]}e=e[e.length-1];a=$jscomp.IS_SYMBOL_NATIVE&&"es6"===a?d[e]:null;c=c(a);null!=c&&(b?$jscomp.defineProperty($jscomp.polyfills,e,{configurable:!0,writable:!0,value:c}):c!==a&&($jscomp.propertyToPolyfillSymbol[e]=$jscomp.IS_SYMBOL_NATIVE?$jscomp.global.Symbol(e):$jscomp.POLYFILL_PREFIX+e,e=
$jscomp.propertyToPolyfillSymbol[e],$jscomp.defineProperty(d,e,{configurable:!0,writable:!0,value:c})))};$jscomp.polyfill("Object.values",function(b){return b?b:function(c){var a=[],d;for(d in c)$jscomp.owns(c,d)&&a.push(c[d]);return a}},"es8","es3");$jscomp.arrayIteratorImpl=function(b){var c=0;return function(){return c<b.length?{done:!1,value:b[c++]}:{done:!0}}};$jscomp.arrayIterator=function(b){return{next:$jscomp.arrayIteratorImpl(b)}};$jscomp.initSymbol=function(){};
$jscomp.polyfill("Symbol",function(b){if(b)return b;var c=function(e,k){this.$jscomp$symbol$id_=e;$jscomp.defineProperty(this,"description",{configurable:!0,writable:!0,value:k})};c.prototype.toString=function(){return this.$jscomp$symbol$id_};var a=0,d=function(e){if(this instanceof d)throw new TypeError("Symbol is not a constructor");return new c("jscomp_symbol_"+(e||"")+"_"+a++,e)};return d},"es6","es3");$jscomp.initSymbolIterator=function(){};
$jscomp.polyfill("Symbol.iterator",function(b){if(b)return b;b=Symbol("Symbol.iterator");for(var c="Array Int8Array Uint8Array Uint8ClampedArray Int16Array Uint16Array Int32Array Uint32Array Float32Array Float64Array".split(" "),a=0;a<c.length;a++){var d=$jscomp.global[c[a]];"function"===typeof d&&"function"!=typeof d.prototype[b]&&$jscomp.defineProperty(d.prototype,b,{configurable:!0,writable:!0,value:function(){return $jscomp.iteratorPrototype($jscomp.arrayIteratorImpl(this))}})}return b},"es6",
"es3");$jscomp.initSymbolAsyncIterator=function(){};$jscomp.iteratorPrototype=function(b){b={next:b};b[Symbol.iterator]=function(){return this};return b};$jscomp.iteratorFromArray=function(b,c){b instanceof String&&(b+="");var a=0,d={next:function(){if(a<b.length){var e=a++;return{value:c(e,b[e]),done:!1}}d.next=function(){return{done:!0,value:void 0}};return d.next()}};d[Symbol.iterator]=function(){return d};return d};
$jscomp.polyfill("Array.prototype.values",function(b){return b?b:function(){return $jscomp.iteratorFromArray(this,function(c,a){return a})}},"es8","es3");$jscomp.checkEs6ConformanceViaProxy=function(){try{var b={},c=Object.create(new $jscomp.global.Proxy(b,{get:function(a,d,e){return a==b&&"q"==d&&e==c}}));return!0===c.q}catch(a){return!1}};$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS=!1;$jscomp.ES6_CONFORMANCE=$jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS&&$jscomp.checkEs6ConformanceViaProxy();
$jscomp.makeIterator=function(b){var c="undefined"!=typeof Symbol&&Symbol.iterator&&b[Symbol.iterator];return c?c.call(b):$jscomp.arrayIterator(b)};
$jscomp.polyfill("WeakMap",function(b){function c(){if(!b||!Object.seal)return!1;try{var f=Object.seal({}),l=Object.seal({}),n=new b([[f,2],[l,3]]);if(2!=n.get(f)||3!=n.get(l))return!1;n.delete(f);n.set(l,4);return!n.has(f)&&4==n.get(l)}catch(q){return!1}}function a(){}function d(f){var l=typeof f;return"object"===l&&null!==f||"function"===l}function e(f){if(!$jscomp.owns(f,m)){var l=new a;$jscomp.defineProperty(f,m,{value:l})}}function k(f){if(!$jscomp.ISOLATE_POLYFILLS){var l=Object[f];l&&(Object[f]=
function(n){if(n instanceof a)return n;Object.isExtensible(n)&&e(n);return l(n)})}}if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(b&&$jscomp.ES6_CONFORMANCE)return b}else if(c())return b;var m="$jscomp_hidden_"+Math.random();k("freeze");k("preventExtensions");k("seal");var p=0,h=function(f){this.id_=(p+=Math.random()+1).toString();if(f){f=$jscomp.makeIterator(f);for(var l;!(l=f.next()).done;)l=l.value,this.set(l[0],l[1])}};h.prototype.set=function(f,l){if(!d(f))throw Error("Invalid WeakMap key");
e(f);if(!$jscomp.owns(f,m))throw Error("WeakMap key fail: "+f);f[m][this.id_]=l;return this};h.prototype.get=function(f){return d(f)&&$jscomp.owns(f,m)?f[m][this.id_]:void 0};h.prototype.has=function(f){return d(f)&&$jscomp.owns(f,m)&&$jscomp.owns(f[m],this.id_)};h.prototype.delete=function(f){return d(f)&&$jscomp.owns(f,m)&&$jscomp.owns(f[m],this.id_)?delete f[m][this.id_]:!1};return h},"es6","es3");$jscomp.MapEntry=function(){};
$jscomp.polyfill("Map",function(b){function c(){if($jscomp.ASSUME_NO_NATIVE_MAP||!b||"function"!=typeof b||!b.prototype.entries||"function"!=typeof Object.seal)return!1;try{var h=Object.seal({x:4}),f=new b($jscomp.makeIterator([[h,"s"]]));if("s"!=f.get(h)||1!=f.size||f.get({x:4})||f.set({x:4},"t")!=f||2!=f.size)return!1;var l=f.entries(),n=l.next();if(n.done||n.value[0]!=h||"s"!=n.value[1])return!1;n=l.next();return n.done||4!=n.value[0].x||"t"!=n.value[1]||!l.next().done?!1:!0}catch(q){return!1}}
if($jscomp.USE_PROXY_FOR_ES6_CONFORMANCE_CHECKS){if(b&&$jscomp.ES6_CONFORMANCE)return b}else if(c())return b;var a=new WeakMap,d=function(h){this.data_={};this.head_=m();this.size=0;if(h){h=$jscomp.makeIterator(h);for(var f;!(f=h.next()).done;)f=f.value,this.set(f[0],f[1])}};d.prototype.set=function(h,f){h=0===h?0:h;var l=e(this,h);l.list||(l.list=this.data_[l.id]=[]);l.entry?l.entry.value=f:(l.entry={next:this.head_,previous:this.head_.previous,head:this.head_,key:h,value:f},l.list.push(l.entry),
this.head_.previous.next=l.entry,this.head_.previous=l.entry,this.size++);return this};d.prototype.delete=function(h){h=e(this,h);return h.entry&&h.list?(h.list.splice(h.index,1),h.list.length||delete this.data_[h.id],h.entry.previous.next=h.entry.next,h.entry.next.previous=h.entry.previous,h.entry.head=null,this.size--,!0):!1};d.prototype.clear=function(){this.data_={};this.head_=this.head_.previous=m();this.size=0};d.prototype.has=function(h){return!!e(this,h).entry};d.prototype.get=function(h){return(h=
e(this,h).entry)&&h.value};d.prototype.entries=function(){return k(this,function(h){return[h.key,h.value]})};d.prototype.keys=function(){return k(this,function(h){return h.key})};d.prototype.values=function(){return k(this,function(h){return h.value})};d.prototype.forEach=function(h,f){for(var l=this.entries(),n;!(n=l.next()).done;)n=n.value,h.call(f,n[1],n[0],this)};d.prototype[Symbol.iterator]=d.prototype.entries;var e=function(h,f){var l=f&&typeof f;"object"==l||"function"==l?a.has(f)?l=a.get(f):
(l=""+ ++p,a.set(f,l)):l="p_"+f;var n=h.data_[l];if(n&&$jscomp.owns(h.data_,l))for(h=0;h<n.length;h++){var q=n[h];if(f!==f&&q.key!==q.key||f===q.key)return{id:l,list:n,index:h,entry:q}}return{id:l,list:n,index:-1,entry:void 0}},k=function(h,f){var l=h.head_;return $jscomp.iteratorPrototype(function(){if(l){for(;l.head!=h.head_;)l=l.previous;for(;l.next!=l.head;)return l=l.next,{done:!1,value:f(l)};l=null}return{done:!0,value:void 0}})},m=function(){var h={};return h.previous=h.next=h.head=h},p=0;
return d},"es6","es3");$jscomp.checkStringArgs=function(b,c,a){if(null==b)throw new TypeError("The 'this' value for String.prototype."+a+" must not be null or undefined");if(c instanceof RegExp)throw new TypeError("First argument to String.prototype."+a+" must not be a regular expression");return b+""};
$jscomp.polyfill("String.prototype.startsWith",function(b){return b?b:function(c,a){var d=$jscomp.checkStringArgs(this,c,"startsWith");c+="";var e=d.length,k=c.length;a=Math.max(0,Math.min(a|0,d.length));for(var m=0;m<k&&a<e;)if(d[a++]!=c[m++])return!1;return m>=k}},"es6","es3");var s,loaded=0,mobile_dev=!1;drawcvco=!1;uselent=!0;compare=!1;sigma.utils.pkg("sigma.canvas.nodes");
sigma.canvas.nodes.image=function(){var b={},c={},a={},d=function(e,k,m){var p=arguments,h=m("prefix")||"",f=e[h+"size"];e.color||m("defaultNodeColor");var l=e.url;b[l]?(k.save(),k.beginPath(),k.arc(e[h+"x"],e[h+"y"],e[h+"size"],0,2*Math.PI,!0),k.closePath(),k.clip(),k.drawImage(b[l],e[h+"x"]-f,e[h+"y"]-f,2*f,2*f),k.restore()):(sigma.canvas.nodes.image.cache(l),sigma.canvas.nodes.def.apply(sigma.canvas.nodes,p))};d.cache=function(e,k){k&&(a[e]=k);if(!c[e]){var m=new Image;m.onload=function(){c[e]=
!1;b[e]=m;a[e]&&(a[e].call(this,m),delete a[e])};c[e]=!0;m.src=e}};return d}();var filter;urls="img/gbo.png img/gcm.png img/gmc.png img/ggb.png img/gbg.png img/ggo.png img/gog.png img/ggy.png img/gyb.png img/gby.png img/gyo.png img/goy.png img/gpb-g.png img/gpb,g.png img/gpb-m.png img/gpb,m.png img/gpg-b.png img/gpg,b.png img/gpg-m.png img/gpg,m.png img/gpm-b.png img/gpm,b.png img/gpm-g.png img/gpm,g.png img/gpr,m.png img/gpr-y.png img/gpm,c.png img/gpc-m.png img/r,m.png img/r,y.png img/g,y.png img/c,m.png img/y,m.png img/m,y.png img/g-r.png img/g-rk.png img/gray-r.png img/gray-rk.png img/gray-o.png img/gray-ok.png img/m-o.png img/mby.png img/moby.png img/b,o.png img/mbo.png img/bok.png img/mbok.png img/r,c.png img/c,r.png img/ryk.png img/icosa.png".split(" ");
function updateColorinfo(b,c){$("#colorinfo-pane").empty();mobile_dev&&$("#color-count-info-pane").css({bottom:parseInt($("#drawcvco").css("height"))+20+"px"});$("#colorinfo-pane").append("<div id='legend-title'><img title='drag this legend panel with mouse' style='position:relative;top:3px'src='img/drag.png'/> <b>Legends</b></div>");var a=0;"developable surfaces"==b?($("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[0]+"''></div><div class='legend-text' style='display:inline-block'> cylindrical</div><br>"),
$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[3]+"''></div><div class='legend-text' style='display:inline-block'> pseudocylindrical</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[2]+"''></div><div class='legend-text' style='display:inline-block'> conic </div><div class='circle' style='display:inline-block;background-color:"+
colormap[4]+"''></div><div class='legend-text' style='display:inline-block'> <span title='some pseudoconic map projections are classified as conic at https://map-projections.net/, e.g., Bonne, Werner, etc.'><u>pseudoconic</u></span></div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[5]+"''></div><div class='legend-text' style='display:inline-block'> azimuthal (or <span title='some azimuthal related projections are classified as modifiedazimuthal at https://www.mathworks.cn/help/map/projections.html or polyconic at https://www.giss.nasa.gov/tools/gprojector/help/projections/ e.g., Aitoff, Hammer, Briesemeister, etc.'><u>related</u></span>) </div><br>"),
uselent&&$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:#f88018''></div><div class='legend-text' style='display:inline-block'> lenticular</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:#AAA''></div><div class='legend-text' style='display:inline-block'> miscellaneous</div><br>")):"similar shape"==b?($("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+
colormap[0]+"''></div><div class='legend-text' style='display:inline-block'> similar shape group 1</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[5]+"''></div><div class='legend-text' style='display:inline-block'> similar shape group 2</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[1]+"''></div><div class='legend-text' style='display:inline-block'> (may be) interrupted</div><br>"),
$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[2]+"''></div><div class='legend-text' style='display:inline-block'> Bonne group</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[3]+"''></div><div class='legend-text' style='display:inline-block'> CEA family</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+
colormap[4]+"''></div><div class='legend-text' style='display:inline-block'> stretching</div><br>")):"combinations"==b?($("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[5]+"''></div><div class='legend-text' style='display:inline-block'> source</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[1]+"''></div><div class='legend-text' style='display:inline-block'> fusion</div><br>"),
$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[2]+"''></div><div class='legend-text' style='display:inline-block'> blending</div><br>"),$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[3]+"''></div><div class='legend-text' style='display:inline-block'> construction, modification,</div><br>"),$("#colorinfo-pane").append("<div class='legend-text' style='display:inline-block'> derivation, or inspiration</div><br>")):
(a=0,Object.values(c).forEach(function(d,e){"McBryde or McBT"==d?$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[e+a]+"''></div><div title = 'McBT denotes McBryde-Thomas' class='legend-text' style='display:inline-block'> "+d+"</div><br>"):"other same shapes"==d?($("#colorinfo-pane").append("<image src='img/qmark.png' height='20px' width='20px'><div class='legend-text' style='display:inline-block'> mixed-color discs represent</div><br>"),
$("#colorinfo-pane").append(" other cases of the same<br>"),$("#colorinfo-pane").append(" shape")):$("#colorinfo-pane").append("<div class='circle' style='display:inline-block;background-color:"+colormap[e+a]+"''></div><div class='legend-text' style='display:inline-block'> "+d+"</div><br>")}))}
function updateCountinfo(b){eds=s.renderers[0].edgesOnScreen;for(var c=0,a=0,d=0;d<eds.length;d++)"curvedArrow"==eds[d].type?c++:a++;0==b?$("#countinfo-pane").empty().append("<p class='countfont'>No node on screen.</p > "):$("#countinfo-pane").empty().append("<p class='countfont'>"+b+"<img style='position:relative;top:5px' src='img/nodes.png'/> and "+(c+a)+"<img style='position:relative;top:5px' src='img/edges.png'/>("+c+"<img style='position:relative;top:5px' src='img/direct.png'/> and "+a+"<img style='position:relative;top:5px' src='img/indirect.png'/>)</p > ")}
function genarray(b,c,a,d){for(;c<a;c+=d)b.push(c);return b}
$(function(){var b=[];genarray(b,-300,1500,50);genarray(b,1500,1800,15);genarray(b,1800,1900,2);genarray(b,1900,2021,1);$("#reset-year").click(function(){$("#comp-div").empty().hide();nodes=s.graph.nodes();edges=s.graph.edges();var d=0;for(i=0;i<nodes.length;i++)nodes[i].yearviz=!0,nodes[i].cat1viz&&nodes[i].cat2viz&&d++;filter.undo("yearrange").apply();updateCountinfo(d);$("#slider-range").slider("values",0,0);$("#slider-range").slider("values",1,b.length-1);d=b[$("#slider-range").slider("values",
0)];var e=b[$("#slider-range").slider("values",1)];0>e?$("#amount").val(-d+"BC - "+-e+"BC"):0>d?$("#amount").val(-d+"BC - "+e):$("#amount").val(d+" - "+e)});$("#slider-range").slider({range:!0,min:0,max:b.length-1,values:[0,b.length-1],slide:function(d,e){$("#comp-div").empty().hide();nodes=s.graph.nodes();edges=s.graph.edges();for(i=0;i<nodes.length;i++)nodes[i].yearviz=!0;$("#main-pane").empty();$("#minor-pane").empty();var k=b[e.values[0]],m=b[e.values[1]];0>m?$("#amount").val(-k+"BC - "+-m+"BC"):
0>k?$("#amount").val(-k+"BC - "+m):$("#amount").val(k+" - "+m);var p=0;filter.undo("yearrange").nodesBy(function(h){var f=!1;year=h.year;var l=/c.a./i;l.test(year)&&(year=year.replace("c.a.",""));year=parseInt(year);l=/BC/i;l.test(h.year)&&(year=-year);l=/and/i;l.test(h.year)?(split=h.year.split(" and "),y0=parseInt(split[0]),y1=parseInt(split[1]),y0>=k&&y0<=m&&(f=!0),y1>=k&&y1<=m&&(f=!0)):year>=k&&year<=m&&(f=!0);f&&h.cat1viz&&h.cat2viz&&p++;f||(h.yearviz=!1);return f},"yearrange").apply();updateCountinfo(p)}});
var c=b[$("#slider-range").slider("values",0)],a=b[$("#slider-range").slider("values",1)];0>a?$("#amount").val(-c+"BC - "+-a+"BC"):0>c?$("#amount").val(-c+"BC - "+a):$("#amount").val(c+" - "+a)});
var _={$:function(b){return document.getElementById(b)},all:function(b){return document.querySelectorAll(b)},removeClass:function(b,c){b=document.querySelectorAll(b);var a=b.length;for(i=0;i<a;i++){var d=b[i];d.className=d.className.replace(c,"")}},addClass:function(b,c){b=document.querySelectorAll(b);var a=b.length;for(i=0;i<a;i++){var d=b[i];-1==d.className.indexOf(c)&&(d.className+=" "+c)}},show:function(b){this.removeClass(b,"hidden")},hide:function(b){this.addClass(b,"hidden")},toggle:function(b,
c){c=c||"hidden";b=document.querySelectorAll(b);var a=b.length;for(i=0;i<a;i++){var d=b[i];-1!==d.className.indexOf(c)?d.className=d.className.replace(c,""):d.className+=" "+c}}},colormap="#c00 #0c0 #00c #c0c #0cc #cc0 #cff #ffc #cfc #ccc #ccc #ccc #333".split(" "),g={nodes:[],edges:[]},json_data;
urls.forEach(function(b){sigma.canvas.nodes.image.cache(b,function(){if(++loaded===urls.length){s=new sigma({graph:g,container:"graph-container",renderer:{container:document.getElementById("graph-container"),type:"canvas"},settings:{minNodeSize:8,maxNodeSize:16,enableEdgeHovering:!0,edgeHoverColor:"edge",defaultEdgeHoverColor:"#000",edgeHoverSizeRatio:1,edgeHoverExtremities:!0}});var c=sigma.plugins.dragNodes(s,s.renderers[0]),a=!1;c.bind("drag",function(e){a=!0});c.bind("dragend",function(e){$.each(json_data.nodes,
function(k,m){m.id==e.data.node.id&&(json_data.nodes[k].x=e.data.node.x,json_data.nodes[k].y=e.data.node.y)})});$("#mamual_comp").click(function(){compare=!compare;minor_node=major_node=0;compare?(updatePane("#main-pane",0,!1),updatePane("#minor-pane",0,!1)):($("#s-main-pane").hide(),$("#s-minor-pane").hide())});$("#json_down").click(function(){data="data:text/json;charset=utf-8,"+encodeURIComponent(JSON.stringify(json_data));$(this).parent().attr("href","data:"+data)});var d=0;$("#flip_edge").click(function(){d&&
(edges=s.graph.edges(),$.each(edges,function(e,k){k.id==d.id&&(edges[e].flip="true"===edges[e].flip?"false":"true")}),s.refresh())});s.bind("clickNode",function(e){compare=!1;a?a=!1:($("#comp-div").empty().hide(),wait4compare||$("#minor-pane").hide(),drawcvco=0,$("#drawcvco").removeAttr("checked"),node=e.data.node,node.label==node2compare.label?alert(node.label+" is already selected."):(updatePane("#main-pane",node,!wait4compare),wait4compare&&($("#main-pane").append("<hr><p><< see <b>"+node2compare.label+
' projection</b> in left side panel <button id="comp-btn">compare!</button></p>'),compareMap(node,node2compare)),wait4compare=0))});s.bind("clickEdge",function(e){compare=!1;d=e.data.edge;$("#comp-div").empty().hide();nodes=s.graph.nodes();edges=s.graph.edges();node1=nodes[e.data.edge.s];node2=nodes[e.data.edge.t];updatePane("#main-pane",node1,!1);updatePane("#minor-pane",node2,!1);$("#minor-pane").append("<hr>");$("#minor-pane").append("<p>"+e.data.edge.desc+"</p>");drawcvco=0;$("#drawcvco").removeAttr("checked");
for(j=0;j<edges.length;j++)edges[j].color=e.data.edge.id==edges[j].id?edges[j].defaultcolor:"#000";$("#main-pane").append("<hr><p><< see <b>"+node2.label+' projection</b> in left side panel <button id="comp-btn">compare!</button></p>');compareMap(node1,node2);s.refresh()});$("#color-count-info-pane").draggable({containment:"document",scroll:!1});$("#comp-div").draggable({containment:"document",scroll:!1});s.bind("clickStage",function(e){$("#type-pane").hide();$("#prop-pane").hide();clean=!0;
mobile_dev?$("#search-box").val(""):$("#search-box").focus().val("");offset=0;cur_neig=cur_node=null;$("#mapr-relmap").html("");$("#mapr-rel").html("");$("#mapr-reldiv").hide()});$.getJSON("maps.json",function(e){json_data=e});sigma.parsers.json("maps.json",s,function(){filter=new sigma.plugins.filter(s);var e,k=s.graph.nodes(),m=k.length;for(e=0;e<m;e++)listofnodes.push(k[e].label),k[e].cat1viz=!0,k[e].cat2viz=!0,k[e].yearviz=!0;for(e=0;e<m;e++)k[e].size=7,k[e].color=k[e].center?"#333":"#AAA",k[e].colorf=
"#AAA",k[e].colorg="#AAA";m=s.graph.edges();var p=m.length;for(e=0;e<p;e++)m[e].type="curve",m[e].defaultcolor=m[e].color,drawcvco||(m[e].color="#000");s.refresh();for(e=0;e<p;e++)"curved"==m[e].attributes[0]&&(m[e].type="curvedArrow");s.refresh();updateCountinfo(k.length);nolegendfornodes()})}})});var type_append=!1,prop_append=!1;offset=0;cur_neig=cur_node=null;var clean=!0,nextptr=1,ptrlen=0,neighbor,wait4compare=0;
function compareMap(b,c){var a=b.img,d=c.img,e="img/png/",k=a,m=!1,p=!1,h=!1,f=!1;for(i=0;i<Object.values(b.attributes).length;i++)"equal-area"==b.attributes[i]&&(m=!0),"conformal"==b.attributes[i]&&(h=!0);for(i=0;i<Object.values(c.attributes).length;i++)"equal-area"==c.attributes[i]&&(p=!0),"conformal"==c.attributes[i]&&(f=!0);var l=b.name?b.name:b.label+" projection";var n=c.name?c.name:c.label+" projection";$("#comp-div").empty().hide();$("#comp-btn").click(function(){node2compare=wait4compare=
0;e="img/png/";$(this).attr("disabled",!0);$("#comp-div").css({top:"100px"});var q=["<span id='comp-name'><h3 class='underline' style='text-align: right'>"+l+"</h3></span>","<span style='float: right;'><img title='close (ESC)' id='comp-close' width='20px' style='float: right;' src='img/cross.png'></span><br><span style='text-align: center; margin: auto; position: absolute; width: 600px; height: 400px; left: 0; right: 0;'><select title='mouse-wheeling UPON image to change selection' id='sel-comp' style='top:-10px; position:relative'><option title='mouse-wheeling UPON image to change selection' value='1'>plain preview</option><option title='mouse-wheeling UPON image to change selection' value='2'>area distortion</option><option title='mouse-wheeling UPON image to change selection' value='3'>shape distortion</option></select><br><span id='comp-content'><img id='comp-img' width='600px' height='300px' style='object-fit: scale-down; position:relative' ",
"src="+e+k+"></img>","<div id='text-img' style='color: white; width: 600px; text-align: center; position: absolute; top: 150px'></div></span><span>(click image to toggle projections)</span>"].join("");$("#comp-div").append(q);$("#comp-div").show().css({top:"100px",height:"400px"});$("#comp-img").mousewheel(function(t,r){curval=parseInt($("#sel-comp").val());curval=0<r?curval-1:curval+1;0==curval&&(curval=3);4==curval&&(curval=1);$("#sel-comp").val(curval);$("#sel-comp").change()});$("#sel-comp").change(function(){sel=
$(this).val();$("#text-img").text("");"1"==sel?e="img/png/":"2"==sel?(e="img/adis/",k==a&&m&&$("#text-img").text("Equal-area map projection"),k==d&&p&&$("#text-img").text("Equal-area map projection")):"3"==sel&&(e="img/sdis/",k==a&&h&&$("#text-img").text("Conformal map projection"),k==d&&f&&$("#text-img").text("Conformal map projection"));$("#comp-img").attr("src",e+k)});$("#check-3d").change(function(){});$("#comp-img").click(function(){$(this).attr("src")==e+a?($("#comp-name").html("<h3 class='underline' style='text-align: left'>"+
n+"</h3>"),k=d):($("#comp-name").html("<h3 class='underline' style='text-align: right'>"+l+"</h3>"),k=a);$(this).attr("src",e+k);$("#text-img").text("");"2"==$("#sel-comp").val()&&k==a&&m&&$("#text-img").text("Equal-area map projection");"2"==$("#sel-comp").val()&&k==d&&p&&$("#text-img").text("Equal-area map projection");"3"==$("#sel-comp").val()&&k==a&&h&&$("#text-img").text("Conformal map projection");"3"==$("#sel-comp").val()&&k==d&&f&&$("#text-img").text("Conformal map projection")});$("#comp-close").click(function(){$("#comp-div").empty().hide();
$("#comp-btn").attr("disabled",!1)})})}var listofnodes=[],minor_node=0,major_node=0,node2compare=0;
function updatePane(b,c,a,d){d=void 0===d?!1:d;if(c)if(nodes=s.graph.nodes(),edges=s.graph.edges(),$(b).empty(),$("#s-"+b.substring(1)).show(),d||$("#s-"+b.substring(1)).children().eq(0).hide(),$("#s-"+b.substring(1)).children().eq(1).show(),$(b).show(),mobile_dev&&$(b).css({top:parseInt($("#cat-l1").css("height"))+20+"px"}),c.name?$(b).append('<h3 class="underline">'+c.name+"</h3>"):$(b).append('<h3 class="underline">'+c.label+" projection</h3>"),c.alias&&$(b).append("<p>Alias: "+c.alias+"</p>"),
"VRT CEA"==c.label){$(b).append("<center><select id='cea-sel'><option value='1'>Behrmann, 30\u00b0, ~2.356</option><option value='2'>Smyth, ~37.07\u00b0, 2</option><option value='3'>Trystan Edwards, 37.4\u00b0, ~1.983</option><option value='4'>Hobo-Dyer, 37.5\u00b0, ~1.977</option><option value='5'>Gall-Peters, 45\u00b0, ~1.571</option><option value='6'>Balthasart, 50\u00b0, ~1.298</option><option value='7'>Toblers (square), ~55.65\u00b0, 1</option></select></center>");var e="Walter Behrmann;Charles Piazzi Smyth;Trystan Edwards;Mick Dyer;James Gall and Arno Peters;M. Balthasart;Waldo Tobler".split(";"),
k=[1910,1870,1953,2002,"1855 and 1967",1935,1993],m="behrmann smyth trystan-edwards-snyder hobo-dyer gall-peters balthasart toblers-world-in-a-square".split(" ");$("#cea-sel").change(function(){$(this).parent().nextAll().remove();sel_val=parseInt($(this).val())-1;$(b).append("<p>Properties: equal-area</p>");$(b).append("<p>Type: cylindrical</p>");$(this).parent().after("<img id='"+b.substring(1)+"img' src=\"img/thumb/"+m[sel_val]+'.png" width=100%></img>');$(this).parent().after("<p>Created by "+
e[sel_val]+" in "+k[sel_val]+"</p>")});$("#cea-sel").change()}else{c.crby&&(c.year?$(b).append("<p>Created by "+c.crby+" in "+c.year+"</p>"):$(b).append("<p>Created by "+c.crby+"</p>"));var p=d="";for(i=0;i<Object.values(c.attributes).length;i++){if("conformal"==c.attributes[i]||"equal-area"==c.attributes[i]||"equidistant"==c.attributes[i]||"compromise"==c.attributes[i])p=p?p+(", "+c.attributes[i]):p+c.attributes[i];if("cylindrical"==c.attributes[i]||"pseudocylindrical"==c.attributes[i]||"conic"==
c.attributes[i]||"pseudoconic"==c.attributes[i]||"azimuthal"==c.attributes[i]||"lenticular"==c.attributes[i])d+=c.attributes[i]}c.img&&$(b).append("<img id='"+b.substring(1)+"img' src=\"img/thumb/"+c.img+'" width=100%></img>');$(b+"img").waitForImages(!0).done(function(){20==$(this).height()&&$(this).attr("title","No preview image available");$(this).after("<img style='display:none' src=\"img/png/"+c.img+'" width=100%></img>')});d&&$(b).append("<p>Type: "+d+"</p>");p&&$(b).append("<p>Properties: "+
p+"</p>");$(b).show();if(a){nextptr=0;neighbor=c.neighbors;for(j=0;j<edges.length;j++)edges[j].color="#000";visnb=[];visedge=[];if(0==c.edges)$(b).append('<hr><div style="text-align:center"><button data-mpname = \''+c.id+"' title='"+c.label+" would be moved to the left-side panel, then click another node to compare with "+c.label+'\' id="add-compare">click to compare</button></div>');else{c.edges.forEach(function(h,f){0!=f&&(edges[h].color=edges[h].defaultcolor,vis=nodes[c.neighbors[f]].cat1viz&&
nodes[c.neighbors[f]].cat2viz&&nodes[c.neighbors[f]].yearviz)&&(visnb.push(c.neighbors[f]),visedge.push(c.edges[f]))});ptrlen=Object.values(visedge).length;if(0==ptrlen){$(b).append('<hr><div style="text-align:center"><button data-mpname = \''+c.id+"' title='"+c.label+" would be moved to the left-side panel, then click another node to compare with "+c.label+'\' id="add-compare">click to compare</button></div>');return}$(b).append('<hr><div id="show-rel" style="text-align:center"><button id="show-btn">show relations ('+
ptrlen+")</button></div>");$(b).append('<br><div style="text-align:center"><button data-mpname = \''+c.id+"' title='"+c.label+" would be moved to the left-side panel, then click another node to compare with "+c.label+'\' id="add-compare">click to compare</button></div>');$(b).append('<div id="rel-area"</div>');s.refresh();$("#show-btn").click(function(){1<ptrlen?$("#show-btn").text("next relations"):$("#show-btn").hide();for(j=0;j<edges.length;j++)edges[j].color="#000";nextptr>=ptrlen&&(nextptr=
0);edges[visedge[nextptr]].color=edges[visedge[nextptr]].defaultcolor;s.refresh();$("#rel-area").empty();$("#rel-area").append("<p><< see <b>"+nodes[visnb[nextptr]].label+" projection</b> ("+(nextptr+1)+"/"+ptrlen+') in left side panel <button id="comp-btn">compare!</button></p>');1<ptrlen&&$("#rel-area").append('<div style="text-align:center"><button id="prev-btn">prev relations</button></div>');compareMap(c,nodes[visnb[nextptr]]);$("#prev-btn").click(function(){nextptr--;nextptr--;0>nextptr&&
(nextptr=ptrlen-1);$("#show-btn").click();$("#comp-div").empty().hide()});updatePane("#minor-pane",nodes[visnb[nextptr]],!1);$("#minor-pane").append("<hr>");$("#minor-pane").append("<p>"+edges[visedge[nextptr]].desc+"</p>");nextptr++})}$("#add-compare").click(function(){var h=this;s.graph.nodes().forEach(function(f){f.id==$(h).attr("data-mpname")&&(updatePane("#minor-pane",f,!1),node2compare=f,wait4compare=!0,$("#main-pane").empty(),$("#s-main-pane").css("display","none"))})})}}else b="#s-"+b.substring(1),
$(b).show(),$(b).children().eq(0).show(),$(b).children().eq(1).hide(),$("#"+b.substring(1)+"_autosel").autocomplete({source:listofnodes}),$("#"+b.substring(1)+"_autosel").val(""),$("#"+b.substring(1)+"_addmp").click(function(){name=$("#"+b.substring(1)+"_autosel").val();parpane=$(this).parent().parent().attr("id");subpane="#"+parpane.substring(2);s.graph.nodes().forEach(function(h){h.label==name&&(updatePane(subpane,h,!1,!0),"#main-pane"==subpane?major_node=h:"#minor-pane"==subpane&&(minor_node=h),
"object"===typeof major_node&&"object"===typeof minor_node&&($("#comp-btn").parent().prev().remove(),$("#comp-btn").parent().remove(),$(subpane).append('<hr><p><button id="comp-btn">compare!</button></p>'),compareMap(major_node,minor_node)))})})}function forceCleanNode(b){nodes=s.graph.nodes();for(j=0;j<nodes.length;j++)nodes[j].color="#AAA";s.refresh()}function nolegendfornodes(){$("#colorinfo-pane").empty()}var sub_categories=new Map;sub_categories.set("developable surfaces","cylindrical conic azimuthal pseudocylindrical pseudoconic lenticular miscellaneous".split(" "));
sub_categories.set("distortions",["conformal","equal-area","equidistant","compromise"]);sub_categories.set("aspects (partial)",["normal","transverse","oblique"]);sub_categories.set("same shape",["2:1 ellipse","other same shapes"]);sub_categories.set("similar shape",["similar shape","(may be) interrupted","Bonne group","cylindrical equal-area family","stretching"]);sub_categories.set("form of parallels",["evenly spaced"]);
sub_categories.set("form of meridians",["elliptical","sinusoidal","quartic","parabolic","hyperbolic"]);sub_categories.set("form of poles",["as straight lines","as points"]);sub_categories.set("combinations",["fusion","blending","construction"]);sub_categories.set("authors (inc. aliases)","Eckert;Kavrayskiy;Lambert;McBryde or McBT;Putni\u0146\u0161;Siemon;Strebe;Tobler;Wagner;Werenskiold;Winkel;Hufnagel's family".split(";"));
function catReset(){compare=!1;$("#comp-div").empty().hide();$("#s-main-pane").hide();$("#s-minor-pane").hide();$("#main-pane").empty();$("#minor-pane").empty();var b=0;filter.undo("categories").nodesBy(function(c){c.cat1viz=!0;c.cat2viz=!0;c.yearviz&&b++;c.type="def";c.color="#AAA";c.colorf="#AAA";c.colorg="#AAA";return!0},"categories").apply();updateCountinfo(b);nolegendfornodes();$("#cat-l1").val("all categories");$("#cat-l2").empty();$("#cat-l2").append("<option>no sub-categories</option>");$("#cat-l2").val("no sub-categories");
$("#cat-more").val("== no more filters ==")}
function catFilter(b,c,a){var d=!1;a.colorf=0;for(i=a.colorg=0;i<Object.values(a.attributes).length;i++)Object.values(c).forEach(function(e,k){if("developable surfaces"==b)if("cylindrical"==a.attributes[i]?(d=!0,a.color=colormap[0]):"conic"==a.attributes[i]?(d=!0,a.color=colormap[2]):"azimuthal"==a.attributes[i]?(d=!0,a.color=colormap[5]):"pseudocylindrical"==a.attributes[i]?(d=!0,a.color=colormap[3]):"pseudoconic"==a.attributes[i]?(d=!0,a.color=colormap[4]):"miscellaneous"==a.attributes[i]&&(d=!0,
a.color="#AAA"),"Aitoff"==a.label||"Wagner 7"==a.label||"Wagner 8"==a.label||"Wagner 9"==a.label)d=!0,a.color=uselent?"#f88018":colormap[5];else if("Hammer"==a.label||"Nordic"==a.label||"Spilhaus Oceanic"==a.label||"Winkel 3"==a.label)d=!0,a.color=uselent?"#f88018":colormap[5];else if("Strebe 1995"==a.label)d=!0,a.color=uselent?"#f88018":colormap[5];else if("Ciric I"==a.label||"A4"==a.label||"Dedistort"==a.label)d=!0,a.color="#F0F";else{if("Briesemeister"==a.label||"Winkel 3 BOPC"==a.label)d=!0,a.color=
uselent?"#f88018":colormap[5]}else{if("same shape"==b&&a.attributes[i].startsWith("same shape g")){val=a.attributes[i].substring(12);d=!0;a.type="image";a.url="img/g"+val+".png";switch(val.substring(0,1)){case "g":a.colorf="#3cb44b";break;case "y":a.colorf="#ffe119";break;case "b":a.colorf="#4363d8";break;case "o":a.colorf="#f58231";break;case "c":a.colorf="#42d4f4";break;case "m":a.colorf="#f032e6"}switch(val.substring(1)){case "g":a.colorg="#3cb44b";break;case "y":a.colorg="#ffe119";break;case "b":a.colorg=
"#4363d8";break;case "o":a.colorg="#f58231";break;case "c":a.colorg="#42d4f4";break;case "m":a.colorg="#f032e6"}}if("similar shape"==b){a.attributes[i].startsWith("cylindrical equal-area")&&(d=!0,a.type="image",a.url="img/c,m.png",a.colorf="#00cccc",a.colorg="#cc00cc");"Sinusoidal"==a.label&&(d=!0,a.type="image",a.url="img/gpb,g.png",a.colorf="#0000cc",a.colorg="#00cc00");"Boggs eumorphic"==a.label&&(d=!0,a.type="image",a.url="img/g-r.png",a.colorf="#00cc00",a.colorg="#cc0000");"Siemon IV"==a.label&&
(d=!0,a.type="image",a.url="img/g-r.png",a.colorf="#00cc00",a.colorg="#cc0000");if("Putni\u0146\u0161 P1"==a.label||"Putni\u0146\u0161 P2"==a.label)d=!0,a.type="def",a.color="#cc0000";if("Putni\u0146\u0161 P3'"==a.label||"Putni\u0146\u0161 P4'"==a.label)d=!0,a.type="def",a.url="img/gray-ok.png",a.color=colormap[5];if("Wagner 1"==a.label||"Wagner 2"==a.label||"Wagner 3"==a.label)d=!0,a.type="def",a.url="img/gray-o.png",a.color=colormap[5]}if("combinations"==b){if("fusion-src"==a.attributes[i]||"blending-src"==
a.attributes[i]||"const-src"==a.attributes[i])d=!0,a.type="def",a.color=colormap[5];"Hammer"==a.label&&(a.type="image",a.url="img/y,m.png",a.colorf=colormap[5],a.colorg=colormap[3]);"Aitoff"==a.label&&(a.type="image",a.url="img/m,y.png",a.colorf=colormap[3],a.colorg=colormap[5])}a.attributes[i]==e&&(d=!0,"combinations"==b?"Aitoff"!=a.label&&"Hammer"!=a.label&&(a.type="def",a.color=colormap[k+1]):"distortions"==b?"Sinusoidal"==a.label||"Werner"==a.label?(a.type="image",a.url="img/gpb,g.png",a.colorf=
"#0000CC",a.colorg="#00CC00"):(a.type="def",a.color=colormap[k]):(a.type="def",a.color=colormap[k]))}});0==a.colorf&&(a.colorf=a.color);0==a.colorg&&(a.colorg=a.color);return{found:d,type:a.type,color:a.color,colorf:a.colorf,colorg:a.colorg,url:a.url}}
function catChange(){$("#comp-div").empty().hide();$("#main-pane").empty();$("#minor-pane").empty();$("#s-main-pane").css("display","none");$("#s-minor-pane").css("display","none");nodes=s.graph.nodes();edges=s.graph.edges();sel=$(this).val();for(i=0;i<nodes.length;i++)nodes[i].cat1viz=!0;if("all categories"==sel)$("#cat-l2").empty(),$("#cat-l2").append("<option>no sub-categories</option>"),filter.undo("categories").nodesBy(function(a){a.type="def";a.type2=a.type;a.color="#AAA";a.color2=a.color;a.colorf=
a.color;a.colorg=a.color;return a.cat2viz},"categories").apply(),updateCountinfo(nodes.length),nolegendfornodes();else{var b=sub_categories.get(sel);$("#cat-l2").empty();$("#cat-l2").append("<option>all sub-categories</option>");Object.values(b).forEach(function(a){$("#cat-l2").append("<option>"+a+"</option>")});var c=0;filter.undo("categories").nodesBy(function(a){var d=!1;ret=catFilter(sel,b,a);ret.found&&(d=!0);a.type=ret.type;a.color=ret.color;a.url=ret.url;a.type2=ret.type;a.color2=ret.color;
a.url2=ret.url;a.colorf=ret.colorf;a.colorg=ret.colorg;d||(a.cat1viz=!1);d&&a.cat2viz&&c++;return d&&a.cat2viz&&a.yearviz},"categories").apply();updateCountinfo(c);updateColorinfo(sel,b);$("#color-count-info-pane").css({left:$(window).width()-$("#color-count-info-pane").width()-15,top:$(window).height()-$("#color-count-info-pane").height()-50})}}
function subcatChange(){$("#comp-div").empty().hide();$("#main-pane").empty();$("#minor-pane").empty();$("#s-main-pane").css("display","none");$("#s-minor-pane").css("display","none");sel=$(this).val();idx=this.selectedIndex-1;for(i=0;i<nodes.length;i++)nodes[i].cat1viz=!0;if("all sub-categories"==sel){parsel=$("#cat-l1").val();var b=sub_categories.get(parsel),c=0;filter.undo("categories").nodesBy(function(a){var d=!1;ret=catFilter(parsel,b,a);ret.found&&(d=!0);a.type=ret.type;a.color=ret.color;a.url=
ret.url;a.type2=ret.type;a.color2=ret.color;a.url2=ret.url;a.colorf=ret.colorf;a.colorg=ret.colorg;d||(a.cat1viz=!1);d&&a.cat2viz&&c++;return d&&a.cat2viz&&a.yearviz},"categories").apply()}else c=0,filter.undo("categories").nodesBy(function(a){var d=!1;for(i=0;i<Object.values(a.attributes).length;i++){a.attributes[i]==sel&&(d=!0,a.type="def",a.color=colormap[idx],"fusion"==sel||"blending"==sel||"construction"==sel)&&(a.color=colormap[idx+1]);"cylindrical"==sel&&(a.color=colormap[0]);"conic"==sel&&
(a.color=colormap[2]);"azimuthal"==sel&&(a.color=colormap[5]);"lenticular"==sel&&(a.color="#f88018");"pseudocylindrical"==sel&&(a.color=colormap[3]);"pseudoconic"==sel&&(a.color=colormap[4]);"polyconic"==sel&&"Strebe 1995"==a.label&&(a.type="image",a.url="img/m-o.png");if("pseudoazimuthal"==sel){a.color=colormap[5];if("Hammer"==a.label||"Nordic"==a.label||"Spilhaus Oceanic"==a.label||"Winkel 3"==a.label)d=!0,a.type="image",a.url=uselent?"img/mbok.png":"img/bok.png";if("Aitoff"==a.label||"Wagner 7"==
a.label||"Wagner 8"==a.label||"Wagner 9"==a.label)a.type="image",a.url=uselent?"img/mbo.png":"img/b,o.png"}"miscellaneous"==sel&&(a.color="#AAA","Hammer"==a.label||"Nordic"==a.label||"Spilhaus Oceanic"==a.label||"Winkel 3"==a.label)&&(a.type="image",a.url=uselent?"img/mbok.png":"img/bok.png");if("equal-area"==sel||"equidistant"==sel)if("Sinusoidal"==a.label||"Werner"==a.label)a.type="image",a.url="img/gpb,g.png";"other same shapes"==sel&&a.attributes[i].startsWith("same shape g")&&(val=a.attributes[i].substring(12),
d=!0,a.type="image",a.url="img/g"+val+".png");if("similar shape"==sel&&("Boggs eumorphic"==a.label||"Siemon IV"==a.label||"Putni\u0146\u0161 P1"==a.label||"Putni\u0146\u0161 P2"==a.label||"Putni\u0146\u0161 P3'"==a.label||"Putni\u0146\u0161 P4'"==a.label||"Wagner 1"==a.label||"Wagner 2"==a.label||"Wagner 3"==a.label)){"Boggs eumorphic"==a.label&&(d=!0,a.type="image",a.url="img/g-r.png");"Siemon IV"==a.label&&(d=!0,a.type="image",a.url="img/g-r.png");if("Putni\u0146\u0161 P1"==a.label||"Putni\u0146\u0161 P2"==
a.label)d=!0,a.type="def",a.color=colormap[0];if("Putni\u0146\u0161 P3'"==a.label||"Putni\u0146\u0161 P4'"==a.label)d=!0,a.type="def",a.color=colormap[5];if("Wagner 1"==a.label||"Wagner 2"==a.label||"Wagner 3"==a.label)d=!0,a.type="def",a.color=colormap[5]}"(may be) interrupted"==sel&&("Sinusoidal"==a.label&&(d=!0,a.type="image",a.url="img/gpb,g.png"),"Boggs eumorphic"==a.label&&(d=!0,a.type="image",a.url="img/g-r.png"),"Siemon IV"==a.label&&(d=!0,a.type="image",a.url="img/g-r.png"));"Bonne group"==
sel&&"Sinusoidal"==a.label&&(d=!0,a.type="image",a.url="img/gpb,g.png");"cylindrical equal-area family"!=sel&&"stretching"!=sel||!a.attributes[i].startsWith("cylindrical equal-area")||(d=!0,a.type="image",a.url="img/c,m.png");if("fusion"==sel&&"fusion-src"==a.attributes[i]||"blending"==sel&&"blending-src"==a.attributes[i]||"construction"==sel&&("const-src"==a.attributes[i]||"construction"==a.attributes[i])){if("fusion-src"==a.attributes[i]||"blending-src"==a.attributes[i]||"const-src"==a.attributes[i])d=
!0,a.type="def",a.color=colormap[5];"Hammer"==a.label&&(a.type="image",a.url="img/y,m.png");"Aitoff"==a.label&&(a.type="image",a.url="img/m,y.png")}}d||(a.cat1viz=!1);d&&a.cat2viz&&c++;return d&&a.cat2viz&&a.yearviz},"categories").apply();updateCountinfo(c)}
function morecatChange(){$("#comp-div").empty().hide();nodes=s.graph.nodes();edges=s.graph.edges();sel=$(this).val();for(i=0;i<nodes.length;i++)nodes[i].cat2viz=!0;if("== no more filters =="==sel){var b=0;filter.undo("categories").nodesBy(function(c){c.type=c.type2;c.color=c.color2;c.url=c.url2;c.cat1viz&&b++;return c.cat1viz},"categories").apply()}else b=0,filter.undo("categories").nodesBy(function(c){var a=!1;c.type=c.type2;c.color=c.color2;c.url=c.url2;for(i=0;i<Object.values(c.attributes).length;i++)c.attributes[i]==
sel&&(a=!0);a||(c.cat2viz=!1);a&&c.cat1viz&&b++;return a&&c.cat1viz&&c.yearviz},"categories").apply();updateCountinfo(b);s.refresh()}function search(){$("#comp-div").empty().hide();var b=$(this).val();b=new RegExp(b,"i");$(this).val("");forceCleanNode();nodes=s.graph.nodes();var c=!1;for(j=0;j<nodes.length;j++)b.test(nodes[j].label)&&(nodes[j].color="#c00",nodes[j].colorf="#c00",nodes[j].colorg="#c00",c=!0);c?s.refresh():$(this).val("not found!").select()}
$(document).ready(function(){$("#search-pane").css("left",($(window).width()-$("#search-pane").width())/2);$("#countinfo-pane").css("right",250);$("#search-box").bind("change",search).focus();$("#cat-l1").change(catChange);$("#cat-l2").change(subcatChange);$("#cat-more").change(morecatChange);$("#reset-all").click(catReset);$("#zoom-vis").click(function(){s.cameras[0].goTo({x:0,y:0,angle:0,ratio:1})});$("#use_lent").click(function(){$("#comp-div").empty().hide();(uselent=!uselent)?$(this).children().eq(0).attr("src",
"img/lenticular.png"):$(this).children().eq(0).attr("src","img/nolenticular.png");$("#cat-more").empty();$("#cat-more").append("<option>== no more filters ==</option>");$("#cat-more").append("<option>cylindrical</option>");$("#cat-more").append("<option>pseudocylindrical</option>");$("#cat-more").append("<option>conic</option>");$("#cat-more").append("<option>pseudoconic</option>");$("#cat-more").append("<option>azimuthal</option>");uselent&&$("#cat-more").append("<option>lenticular</option>");$("#cat-more").append("<option>== no more filters ==</option>");
$("#cat-more").append("<option>conformal</option>");$("#cat-more").append("<option>equal-area</option>");$("#cat-more").append("<option>equidistant</option>");$("#cat-more").append("<option>compromise</option>");$("#reset-all").click();uselent?sub_categories.set("developable surfaces","cylindrical conic azimuthal pseudocylindrical pseudoconic lenticular miscellaneous".split(" ")):sub_categories.set("developable surfaces","cylindrical conic azimuthal pseudocylindrical pseudoconic miscellaneous".split(" "));
catChange();subcatChange()});$("#draw_cvco").click(function(){$("#comp-div").empty().hide();nodes=s.graph.nodes();edges=s.graph.edges();(drawcvco=!drawcvco)?$(this).children().eq(0).attr("src","img/color.png"):$(this).children().eq(0).attr("src","img/nocolor.png");if(drawcvco)for(j=0;j<edges.length;j++)edges[j].color=edges[j].defaultcolor;else for(j=0;j<edges.length;j++)edges[j].color="#000";s.refresh()});$(".link").mouseover(function(c){$(".popup-div").not("#"+$(this).attr("id")+"-pane").hide();
b=parseInt($(this).attr("height"));$("#"+$(this).attr("id")+"-pane").css({position:"absolute",top:c.pageY-20*b,left:c.pageX+10});$("#"+$(this).attr("id")+"-pane").stop().show()});$(".link").mouseout(function(){$("#"+$(this).attr("id")+"-pane").stop().fadeOut(3E3)});$(".popup-div").mouseover(function(){$(this).stop().fadeIn();return!1});$(".popup-div").mouseout(function(){$(this).stop().fadeOut(3E3);return!1});$(document).keyup(function(c){if(27==c.which)if(wait4compare=node2compare=0,"none"!=$("#comp-div").css("display"))$("#comp-close").click();
else if("none"!=$("#main-pane").css("display")||"none"!=$("#minor-pane").css("display"))$("#main-pane").empty(),$("#minor-pane").empty(),$("#s-main-pane").css("display","none"),$("#s-minor-pane").css("display","none")});$(window).resize(function(){s.refresh()});$("#checkbox-pane").css({left:.8333*$("#copy-pane").width()+30});var b=$(document).height();$(document).width()});