vislite 1.6.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (176) hide show
  1. package/AUTHORS.txt +6 -6
  2. package/CHANGELOG +8 -1
  3. package/LICENSE +20 -20
  4. package/lib/BarLayout/index.es.js +105 -105
  5. package/lib/BarLayout/index.es.min.js +2 -2
  6. package/lib/Buffer/index.es.js +1 -1
  7. package/lib/Buffer/index.es.min.js +1 -1
  8. package/lib/Canvas/index.es.js +1 -1
  9. package/lib/Canvas/index.es.min.js +1 -1
  10. package/lib/Cardinal/index.es.js +1 -1
  11. package/lib/Cardinal/index.es.min.js +1 -1
  12. package/lib/Eoap/index.es.js +1 -1
  13. package/lib/Eoap/index.es.min.js +1 -1
  14. package/lib/Hermite/index.es.js +1 -1
  15. package/lib/Hermite/index.es.min.js +1 -1
  16. package/lib/MapCoordinate/index.es.js +1 -1
  17. package/lib/MapCoordinate/index.es.min.js +1 -1
  18. package/lib/Matrix4/index.es.js +1 -1
  19. package/lib/Matrix4/index.es.min.js +1 -1
  20. package/lib/Mercator/index.es.js +1 -1
  21. package/lib/Mercator/index.es.min.js +1 -1
  22. package/lib/PieLayout/index.es.js +105 -105
  23. package/lib/PieLayout/index.es.min.js +2 -2
  24. package/lib/RawCanvas/index.es.js +1 -1
  25. package/lib/RawCanvas/index.es.min.js +1 -1
  26. package/lib/SVG/index.es.js +2 -2
  27. package/lib/SVG/index.es.min.js +2 -2
  28. package/lib/Shader/index.es.js +1 -1
  29. package/lib/Shader/index.es.min.js +1 -1
  30. package/lib/Texture/index.es.js +1 -1
  31. package/lib/Texture/index.es.min.js +1 -1
  32. package/lib/TreeLayout/index.es.js +105 -105
  33. package/lib/TreeLayout/index.es.min.js +2 -2
  34. package/lib/animation/index.es.js +105 -105
  35. package/lib/animation/index.es.min.js +2 -2
  36. package/lib/assemble/index.es.js +1 -1
  37. package/lib/assemble/index.es.min.js +1 -1
  38. package/lib/getLoopColors/index.es.js +1 -1
  39. package/lib/getLoopColors/index.es.min.js +1 -1
  40. package/lib/getWebGLContext/index.es.js +1 -1
  41. package/lib/getWebGLContext/index.es.min.js +1 -1
  42. package/lib/index.umd.js +156 -156
  43. package/lib/index.umd.min.js +5 -5
  44. package/lib/initOption/index.es.js +1 -1
  45. package/lib/initOption/index.es.min.js +1 -1
  46. package/lib/mergeOption/index.es.js +1 -1
  47. package/lib/mergeOption/index.es.min.js +1 -1
  48. package/lib/move/index.es.js +1 -1
  49. package/lib/move/index.es.min.js +1 -1
  50. package/lib/rotate/index.es.js +1 -1
  51. package/lib/rotate/index.es.min.js +1 -1
  52. package/lib/ruler/index.es.js +1 -1
  53. package/lib/ruler/index.es.min.js +1 -1
  54. package/lib/scale/index.es.js +1 -1
  55. package/lib/scale/index.es.min.js +1 -1
  56. package/lib/throttle/index.es.js +51 -51
  57. package/lib/throttle/index.es.min.js +2 -2
  58. package/minialipay/ui-canvas/drawImage.js +35 -35
  59. package/minialipay/ui-canvas/index.acss +4 -4
  60. package/minialipay/ui-canvas/index.axml +3 -3
  61. package/minialipay/ui-canvas/index.d.ts +1 -1
  62. package/minialipay/ui-canvas/index.js +100 -100
  63. package/minialipay/ui-canvas/index.json +6 -6
  64. package/miniprogram/ui-canvas/drawImage.js +35 -35
  65. package/miniprogram/ui-canvas/index.js +125 -125
  66. package/miniprogram/ui-canvas/index.json +4 -4
  67. package/miniprogram/ui-canvas/index.wxml +4 -4
  68. package/miniprogram/ui-canvas/index.wxss +5 -5
  69. package/package/BarLayout/index.ts +2 -2
  70. package/package/Buffer/index.ts +2 -2
  71. package/package/Canvas/index.ts +2 -2
  72. package/package/Cardinal/index.ts +2 -2
  73. package/package/Eoap/index.ts +2 -2
  74. package/package/Hermite/index.ts +2 -2
  75. package/package/MapCoordinate/index.ts +2 -2
  76. package/package/Matrix4/index.ts +2 -2
  77. package/package/Mercator/index.ts +2 -2
  78. package/package/PieLayout/index.ts +2 -2
  79. package/package/RawCanvas/index.ts +2 -2
  80. package/package/SVG/index.ts +2 -2
  81. package/package/Shader/index.ts +2 -2
  82. package/package/Texture/index.ts +2 -2
  83. package/package/TreeLayout/index.ts +2 -2
  84. package/package/animation/index.ts +5 -5
  85. package/package/assemble/index.ts +2 -2
  86. package/package/getLoopColors/index.ts +2 -2
  87. package/package/getWebGLContext/index.ts +40 -40
  88. package/package/index.ts +84 -84
  89. package/package/initOption/index.ts +2 -2
  90. package/package/mergeOption/index.ts +2 -2
  91. package/package/move/index.ts +2 -2
  92. package/package/rotate/index.ts +2 -2
  93. package/package/ruler/index.ts +2 -2
  94. package/package/scale/index.ts +2 -2
  95. package/package/throttle/index.ts +2 -2
  96. package/package.json +2 -2
  97. package/src/Eoap.ts +66 -66
  98. package/src/Matrix4/index.ts +84 -84
  99. package/src/Matrix4/move.ts +12 -12
  100. package/src/Matrix4/rotate.ts +15 -15
  101. package/src/Matrix4/scale.ts +11 -11
  102. package/src/Matrix4/transform.ts +64 -64
  103. package/src/Mercator.ts +27 -27
  104. package/src/common/assemble.ts +22 -22
  105. package/src/common/canvas/arc.ts +51 -51
  106. package/src/common/canvas/config.ts +176 -176
  107. package/src/common/canvas/default.ts +64 -64
  108. package/src/common/canvas/gradient.ts +31 -31
  109. package/src/common/canvas/index.ts +188 -188
  110. package/src/common/canvas/texts.ts +18 -18
  111. package/src/common/map/getBoundary.ts +15 -15
  112. package/src/common/map/tool.ts +29 -29
  113. package/src/common/option.ts +29 -29
  114. package/src/common/setStyle.ts +5 -5
  115. package/src/common/svg/config.ts +213 -213
  116. package/src/common/svg/default.ts +29 -29
  117. package/src/common/svg/gradient.ts +53 -53
  118. package/src/common/svg/index.ts +332 -332
  119. package/src/common/svg/tool.ts +51 -51
  120. package/src/common/tree/index.ts +25 -25
  121. package/src/common/tree/toInnerTree.ts +61 -61
  122. package/src/common/type.ts +26 -26
  123. package/src/common/webgl/buffer.ts +79 -79
  124. package/src/common/webgl/getWebGLContext.ts +45 -45
  125. package/src/common/webgl/shader.ts +75 -75
  126. package/src/coordinate/MapCoordinate.ts +80 -80
  127. package/src/getLoopColors.ts +42 -42
  128. package/src/interpolation/Cardinal.ts +110 -110
  129. package/src/interpolation/Hermite.ts +65 -65
  130. package/src/move.ts +7 -7
  131. package/src/rotate.ts +7 -7
  132. package/src/ruler.ts +209 -209
  133. package/src/scale.ts +6 -6
  134. package/types/Bar.d.ts +91 -91
  135. package/types/BarConfig.d.ts +4 -4
  136. package/types/BarLayout.d.ts +48 -48
  137. package/types/BarOption.d.ts +31 -31
  138. package/types/Buffer.d.ts +23 -23
  139. package/types/CanvasConfig.d.ts +88 -88
  140. package/types/CanvasOption.d.ts +13 -13
  141. package/types/CanvasOpts.d.ts +9 -9
  142. package/types/Cardinal.d.ts +13 -13
  143. package/types/Gradient.d.ts +14 -14
  144. package/types/Hermite.d.ts +18 -18
  145. package/types/Map.d.ts +9 -9
  146. package/types/MapConfig.d.ts +27 -27
  147. package/types/MapCoordinate.d.ts +22 -22
  148. package/types/Matrix4.d.ts +47 -47
  149. package/types/Pie.d.ts +73 -73
  150. package/types/PieConfig.d.ts +26 -26
  151. package/types/PieLayout.d.ts +40 -40
  152. package/types/PieOption.d.ts +21 -21
  153. package/types/SVG.d.ts +247 -247
  154. package/types/SVGConfig.d.ts +71 -71
  155. package/types/Shader.d.ts +16 -16
  156. package/types/Texture.d.ts +16 -16
  157. package/types/Tree.d.ts +74 -74
  158. package/types/TreeConfig.d.ts +36 -36
  159. package/types/TreeLayout.d.ts +59 -59
  160. package/types/TreeOption.d.ts +48 -48
  161. package/types/animation.d.ts +11 -11
  162. package/types/assemble.d.ts +5 -5
  163. package/types/getLoopColors.d.ts +5 -5
  164. package/types/getWebGLContext.d.ts +7 -7
  165. package/types/index.d.ts +195 -195
  166. package/types/move.d.ts +5 -5
  167. package/types/option.d.ts +12 -12
  168. package/types/painterConfig.d.ts +4 -4
  169. package/types/rotate.d.ts +5 -5
  170. package/types/ruler.d.ts +10 -10
  171. package/types/scale.d.ts +5 -5
  172. package/types/throttle.d.ts +5 -5
  173. package/types/ui-canvas.d.ts +4 -4
  174. package/types/uni-canvas.d.ts +3 -3
  175. package/uni-app/drawImage.js +19 -19
  176. package/uni-app/ui-canvas.vue +295 -295
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * PieLayout of VISLite JavaScript Library v1.6.0
2
+ * PieLayout of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function initOption(setOption, defaultOption) {
@@ -18,113 +18,113 @@ function rotate (cx, cy, deg, x, y) {
18
18
  }
19
19
 
20
20
  /*!
21
- * animation of OIPage v1.3.0
21
+ * animation of OIPage v1.5.0
22
22
  * git+https://github.com/oi-contrib/OIPage.git
23
23
  */
24
24
 
25
- //当前正在运动的动画的tick函数堆栈
26
- var $timers = [];
27
- //唯一定时器的定时间隔
28
- var $interval = 13;
29
- //定时器ID
30
- var $timerId;
31
-
32
- /**
33
- * 动画轮播
34
- * @param {function} doback 轮询函数,有一个形参deep,0-1,表示执行进度
35
- * @param {number} duration 动画时长,可选
36
- * @param {function} callback 动画结束回调,可选,有一个形参deep,0-1,表示执行进度
37
- *
38
- * @returns {function} 返回一个函数,调用该函数,可以提前结束动画
39
- */
40
- function animation(doback, duration, callback) {
41
- if (arguments.length < 2) duration = 400;
42
- if (arguments.length < 3) callback = function () { };
43
-
44
- var clock = {
45
- //把tick函数推入堆栈
46
- "timer": function (tick, duration, callback) {
47
- if (!tick) {
48
- throw new Error('Tick is required!');
49
- }
50
- var id = new Date().valueOf() + "_" + (Math.random() * 1000).toFixed(0);
51
- $timers.push({
52
- "id": id,
53
- "createTime": new Date(),
54
- "tick": tick,
55
- "duration": duration,
56
- "callback": callback
57
- });
58
- clock.start();
59
- return id;
60
- },
61
-
62
- //开启唯一的定时器timerId
63
- "start": function () {
64
- if (!$timerId) {
65
- $timerId = setInterval(clock.tick, $interval);
66
- }
67
- },
68
-
69
- //被定时器调用,遍历timers堆栈
70
- "tick": function () {
71
- var createTime, flag, tick, callback, timer, duration, passTime, timers = $timers;
72
-
73
- $timers = [];
74
- $timers.length = 0;
75
-
76
- for (flag = 0; flag < timers.length; flag++) {
77
- //初始化数据
78
- timer = timers[flag];
79
- createTime = timer.createTime;
80
- tick = timer.tick;
81
- duration = timer.duration;
82
- callback = timer.callback;
83
-
84
- //执行
85
- passTime = (+new Date().valueOf() - createTime.valueOf()) / duration;
86
- passTime = passTime > 1 ? 1 : passTime;
87
- tick(passTime);
88
- if (passTime < 1 && timer.id) {
89
- //动画没有结束再添加
90
- $timers.push(timer);
91
- } else {
92
- callback(passTime);
93
- }
94
- }
95
- if ($timers.length <= 0) {
96
- clock.stop();
97
- }
98
- },
99
-
100
- //停止定时器,重置timerId=null
101
- "stop": function () {
102
- if ($timerId) {
103
- clearInterval($timerId);
104
- $timerId = null;
105
- }
106
- }
107
- };
108
-
109
- var id = clock.timer(function (deep) {
110
- //其中deep为0-1,表示改变的程度
111
- doback(deep);
112
- }, duration, callback);
113
-
114
- return {
115
- // 一个函数
116
- // 用于在动画结束前结束动画
117
- stop: function () {
118
- var i;
119
- for (i in $timers) {
120
- if ($timers[i].id == id) {
121
- $timers[i].id = void 0;
122
- return;
123
- }
124
- }
125
- }
126
- };
127
-
25
+ //当前正在运动的动画的tick函数堆栈
26
+ var $timers = [];
27
+ //唯一定时器的定时间隔
28
+ var $interval = 13;
29
+ //定时器ID
30
+ var $timerId;
31
+
32
+ /**
33
+ * 动画轮播
34
+ * @param {function} doback 轮询函数,有一个形参deep,0-1,表示执行进度
35
+ * @param {number} duration 动画时长,可选
36
+ * @param {function} callback 动画结束回调,可选,有一个形参deep,0-1,表示执行进度
37
+ *
38
+ * @returns {function} 返回一个函数,调用该函数,可以提前结束动画
39
+ */
40
+ function animation(doback, duration, callback) {
41
+ if (arguments.length < 2) duration = 400;
42
+ if (arguments.length < 3) callback = function () { };
43
+
44
+ var clock = {
45
+ //把tick函数推入堆栈
46
+ "timer": function (tick, duration, callback) {
47
+ if (!tick) {
48
+ throw new Error('Tick is required!');
49
+ }
50
+ var id = new Date().valueOf() + "_" + (Math.random() * 1000).toFixed(0);
51
+ $timers.push({
52
+ "id": id,
53
+ "createTime": new Date(),
54
+ "tick": tick,
55
+ "duration": duration,
56
+ "callback": callback
57
+ });
58
+ clock.start();
59
+ return id;
60
+ },
61
+
62
+ //开启唯一的定时器timerId
63
+ "start": function () {
64
+ if (!$timerId) {
65
+ $timerId = setInterval(clock.tick, $interval);
66
+ }
67
+ },
68
+
69
+ //被定时器调用,遍历timers堆栈
70
+ "tick": function () {
71
+ var createTime, flag, tick, callback, timer, duration, passTime, timers = $timers;
72
+
73
+ $timers = [];
74
+ $timers.length = 0;
75
+
76
+ for (flag = 0; flag < timers.length; flag++) {
77
+ //初始化数据
78
+ timer = timers[flag];
79
+ createTime = timer.createTime;
80
+ tick = timer.tick;
81
+ duration = timer.duration;
82
+ callback = timer.callback;
83
+
84
+ //执行
85
+ passTime = (+new Date().valueOf() - createTime.valueOf()) / duration;
86
+ passTime = passTime > 1 ? 1 : passTime;
87
+ tick(passTime);
88
+ if (passTime < 1 && timer.id) {
89
+ //动画没有结束再添加
90
+ $timers.push(timer);
91
+ } else {
92
+ callback(passTime);
93
+ }
94
+ }
95
+ if ($timers.length <= 0) {
96
+ clock.stop();
97
+ }
98
+ },
99
+
100
+ //停止定时器,重置timerId=null
101
+ "stop": function () {
102
+ if ($timerId) {
103
+ clearInterval($timerId);
104
+ $timerId = null;
105
+ }
106
+ }
107
+ };
108
+
109
+ var id = clock.timer(function (deep) {
110
+ //其中deep为0-1,表示改变的程度
111
+ doback(deep);
112
+ }, duration, callback);
113
+
114
+ return {
115
+ // 一个函数
116
+ // 用于在动画结束前结束动画
117
+ stop: function () {
118
+ var i;
119
+ for (i in $timers) {
120
+ if ($timers[i].id == id) {
121
+ $timers[i].id = void 0;
122
+ return;
123
+ }
124
+ }
125
+ }
126
+ };
127
+
128
128
  }
129
129
 
130
130
  var PieLayout = (function () {
@@ -1,9 +1,9 @@
1
1
  /*!
2
- * PieLayout of VISLite JavaScript Library v1.6.0
2
+ * PieLayout of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  function t(t,i){for(var n in t)i[n]=t[n];return i}function i(t,i,n,e,r){var o=Math.cos(n),a=Math.sin(n);return[(e-t)*o-(r-i)*a+t,(e-t)*a+(r-i)*o+i]}
6
6
  /*!
7
- * animation of OIPage v1.3.0
7
+ * animation of OIPage v1.5.0
8
8
  * git+https://github.com/oi-contrib/OIPage.git
9
9
  */var n,e=[];var r=function(){function r(i){void 0===i&&(i={}),this.name="PieLayout",this.__option={cx:200,cy:200,radius:[50,100],duration:200},this.__hoverIndex=-1,this.__config=t(i,{name:function(t,i){return t.name},value:function(t,i){return t.value}})}return r.prototype.setOption=function(i){return t(i,this.__option),this},r.prototype.use=function(t,n){void 0===n&&(n=-1);for(var e={count:t.length,cx:this.__option.cx,cy:this.__option.cy,radius:this.__option.radius,hoverIndex:n,node:[]},r=0,o=[],a=[],_=0;_<t.length;_++)o[_]=this.__config.name(t[_],t),a[_]=this.__config.value(t[_],t),r+=a[_];var s,u=-.5*Math.PI;for(_=0;_<t.length;_++){s=a[_]/r*Math.PI*2;var h=[this.__option.radius[0],this.__option.radius[1]*(1+(n===_?.05:0))],c=u+.5*s,d=Math.max(this.__option.radius[0],this.__option.radius[1]),p=i(e.cx,e.cy,c,e.cx+d,e.cy),l=i(e.cx,e.cy,c,e.cx+d+15,e.cy),f=p[0]>e.cx?1:-1,v=[l[0]+20*f,l[1]],x=[l[0]+25*f,l[1]];e.node[_]={value:a[_],name:o[_],beginDeg:u,deg:s,isHover:n===_,radius:h,label:{line:[p,l,v],position:x,align:-1===f?"right":"left"}},u+=s}return e},r.prototype.bind=function(t,i){return this.__rback=i,this.__oralPie=t,this.__prePie=this.use(this.__oralPie,this.__hoverIndex),this.__rback(this.__prePie),this},r.prototype.unbind=function(){return this.__rback=function(){return null},this.__oralPie=null,this.__prePie=null,this.__hoverIndex=-1,this},r.prototype.setHover=function(t){return this.__prePie&&this.__hoverIndex!==t?(this.__hoverIndex=t,this.doUpdate(),this):this},r.prototype.doUpdate=function(){var t=this,i=this.use(this.__oralPie,this.__hoverIndex),r=JSON.parse(JSON.stringify(i));return function(t,i,r){arguments.length<2&&(i=400),arguments.length<3&&(r=function(){});var o={timer:function(t,i,n){if(!t)throw new Error("Tick is required!");var r=(new Date).valueOf()+"_"+(1e3*Math.random()).toFixed(0);return e.push({id:r,createTime:new Date,tick:t,duration:i,callback:n}),o.start(),r},start:function(){n||(n=setInterval(o.tick,13))},tick:function(){var t,i,n,r,a,_,s,u=e;for((e=[]).length=0,i=0;i<u.length;i++)t=(a=u[i]).createTime,n=a.tick,_=a.duration,r=a.callback,n(s=(s=(+(new Date).valueOf()-t.valueOf())/_)>1?1:s),s<1&&a.id?e.push(a):r(s);e.length<=0&&o.stop()},stop:function(){n&&(clearInterval(n),n=null)}},a=o.timer((function(i){t(i)}),i,r)}((function(n){if(t.__prePie)for(var e=0;e<r.count;e++)r.node[e].radius[1]=t.__prePie.node[e].radius[1]+(i.node[e].radius[1]-t.__prePie.node[e].radius[1])*n;t.__rback(r)}),this.__option.duration,(function(){t.__prePie=i,t.__rback(t.__prePie)})),this},r}();export{r as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * RawCanvas of VISLite JavaScript Library v1.6.0
2
+ * RawCanvas of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  /******************************************************************************
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * RawCanvas of VISLite JavaScript Library v1.6.0
2
+ * RawCanvas of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var t=function(i,e){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,i){t.__proto__=i}||function(t,i){for(var e in i)Object.prototype.hasOwnProperty.call(i,e)&&(t[e]=i[e])},t(i,e)};var i=function(){return i=Object.assign||function(t){for(var i,e=1,n=arguments.length;e<n;e++)for(var r in i=arguments[e])Object.prototype.hasOwnProperty.call(i,r)&&(t[r]=i[r]);return t},i.apply(this,arguments)};"function"==typeof SuppressedError&&SuppressedError;var e=function(t,i,e,n,r){var o=Math.cos(e),s=Math.sin(e);return[+((n-t)*o-(r-i)*s+t).toFixed(7),+((n-t)*s+(r-i)*o+i).toFixed(7)]};var n=function(t,i,e,n,r){return t.beginPath(),t.translate(e,n),t.rotate(r),t.font=i.fontStyle+" "+i.fontWeight+" "+i.fontSize+"px "+i.fontFamily,t},r=function(t,i,n,r,o,s,_,a){if(o>s){var h=o;o=s,s=h}return _%=2*Math.PI,a>=1.999999*Math.PI||a<=1.999999*-Math.PI?a=2*Math.PI:a%=2*Math.PI,function(t,i,n,r,o,s,_){i<0&&(t+=i,i*=-1);var a,h=[];a=e(0,0,t,o,0),h[0]=a[0],h[1]=a[1],a=e(0,0,i,a[0],a[1]),h[2]=a[0],h[3]=a[1],a=e(0,0,t,s,0),h[4]=a[0],h[5]=a[1],a=e(0,0,i,a[0],a[1]),h[6]=a[0],h[7]=a[1],_(t,t+i,h[0]+n,h[1]+r,h[4]+n,h[5]+r,h[2]+n,h[3]+r,h[6]+n,h[7]+r,.5*(s-o))}(_,a,n,r,o,s,(function(e,_,a,h,l,p,u,f,c,g,y){y<0&&(y=-y),t.beginPath(),t.moveTo(a,h),t.arc(n,r,o,e,_,!1),"round"==i.arcEndCap?t.arc(.5*(u+c),.5*(f+g),y,_-Math.PI,_,!0):"-round"==i.arcEndCap?t.arc(.5*(u+c),.5*(f+g),y,_-Math.PI,_,!1):t.lineTo(c,g),t.arc(n,r,s,_,e,!0),"round"==i.arcStartCap?t.arc(.5*(a+l),.5*(h+p),y,e,e-Math.PI,!0):"-round"==i.arcStartCap?t.arc(.5*(a+l),.5*(h+p),y,e,e-Math.PI,!1):t.lineTo(a,h)})),"butt"==i.arcStartCap&&t.closePath(),t},o=function(t,i,e,n){return t.beginPath(),t.moveTo(i+n,e),t.arc(i,e,n,0,2*Math.PI),t},s=function(t,i,e,n,r,o){t.beginPath();var s=[];if(Array.isArray(i.rectRadius)&&i.rectRadius.length>0)for(var _=0;_<4;_++)s.push.apply(s,i.rectRadius);return s.length>=4?(t.arc(e+s[0],n+s[0],s[0],Math.PI,1.5*Math.PI),t.arc(e+r-s[1],n+s[1],s[1],1.5*Math.PI,0),t.arc(e+r-s[2],n+o-s[2],s[2],0,.5*Math.PI),t.arc(e+s[3],n+o-s[3],s[3],.5*Math.PI,Math.PI),t.closePath()):t.rect(e,n,r,o),t};function _(t,i,e,n,r){for(var o=0,s="",_=0;_<i.length;_++)t.measureText(s+i[_]).width>e||/\n$/.test(s)?(r(s,((o+=1)-.5)*n),s=i[_]):_==i.length-1?(o+=1,r(s+i[_],(o-.5)*n)):s+=i[_];return o*n}function a(t){var e={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt",rectRadius:[]},n={fillStyle:"black",strokeStyle:"black",lineWidth:1,lineCap:"butt",lineJoin:"miter",lineDash:[],textAlign:"left",textBaseline:"middle",shadowBlur:0,shadowColor:"black"};return"special"==t?e:"init"==t?n:i(i({},e),n)}var h=function(){function t(t,i,e,n,r){void 0===i&&(i={}),void 0===n&&(n=!1),this.__region=null,this.__onlyRegion=!1,this.__onlyView=!1,this.__specialConfig=a("special"),this.__initConfig=a("init"),this.painter=t.getContext("2d",i),this.__region=e,this.__isPainter=n,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&!this.__onlyView&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),this.__isPainter&&this.__onlyRegion)return this;if("lineDash"==t)this.painter.setLineDash&&this.painter.setLineDash(i);else if(t in this.__specialConfig)"fontSize"==t&&(i=Math.round(i)),this.__specialConfig[t]=i;else{if(!(t in this.__initConfig))throw new Error("Illegal configuration item of painter : "+t+" !");this.painter[t]=i}return this},t.prototype.fillText=function(t,i,e,r){return void 0===r&&(r=0),this.__region&&!this.__onlyView&&this.__region.fillText(t,i,e,r),this.__isPainter&&this.__onlyRegion||(this.painter.save(),n(this.painter,this.__specialConfig,i,e,r).fillText(t,0,0),this.painter.restore()),this},t.prototype.strokeText=function(t,i,e,r){return void 0===r&&(r=0),this.__region&&!this.__onlyView&&this.__region.strokeText(t,i,e,r),this.__isPainter&&this.__onlyRegion||(this.painter.save(),n(this.painter,this.__specialConfig,i,e,r).strokeText(t,0,0),this.painter.restore()),this},t.prototype.fullText=function(t,i,e,r){return void 0===r&&(r=0),this.__region&&!this.__onlyView&&this.__region.fullText(t,i,e,r),this.__isPainter&&this.__onlyRegion||(this.painter.save(),n(this.painter,this.__specialConfig,i,e,r),this.painter.fillText(t,0,0),this.painter.strokeText(t,0,0),this.painter.restore()),this},t.prototype.fillTexts=function(t,i,e,r,o,s){var a=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,r,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var l=_(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){a.painter.fillText(t,0,i)}));return this.painter.restore(),l},t.prototype.strokeTexts=function(t,i,e,r,o,s){var a=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,r,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var l=_(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){a.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.fullTexts=function(t,i,e,r,o,s){var a=this;void 0===o&&(o=1.2),void 0===s&&(s=0);var h=0;if(this.__region&&!this.__onlyView&&(h=this.__region.fillTexts(t,i,e,r,o)),this.__isPainter&&this.__onlyRegion)return h;this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var l=_(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){a.painter.fillText(t,0,i),a.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.beginPath=function(){return this.__region&&!this.__onlyView&&this.__region.beginPath(),this.__isPainter&&this.__onlyRegion||this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&!this.__onlyView&&this.__region.closePath(),this.__isPainter&&this.__onlyRegion||this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.moveTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&!this.__onlyView&&this.__region.lineTo(t,i),this.__isPainter&&this.__onlyRegion||this.painter.lineTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.arc=function(t,i,e,n,r){return this.__region&&!this.__onlyView&&this.__region.arc(t,i,e,n,r),this.__isPainter&&this.__onlyRegion||this.painter.arc(t,i,e,n,n+r,r<0),this},t.prototype.fill=function(){return this.__region&&!this.__onlyView&&this.__region.fill(),this.__isPainter&&this.__onlyRegion||this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&!this.__onlyView&&this.__region.stroke(),this.__isPainter&&this.__onlyRegion||this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&!this.__onlyView&&this.__region.full(),this.__isPainter&&this.__onlyRegion||(this.painter.fill(),this.painter.stroke()),this},t.prototype.save=function(){return this.__region&&!this.__onlyView&&this.__region.save(),this.__isPainter&&this.__onlyRegion||this.painter.save(),this},t.prototype.restore=function(){return this.__region&&!this.__onlyView&&this.__region.restore(),this.__isPainter&&this.__onlyRegion||this.painter.restore(),this},t.prototype.clip=function(){return this.__region&&!this.__onlyView&&this.__region.clip(),this.__isPainter&&this.__onlyRegion||this.painter.clip(),this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.quadraticCurveTo(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.quadraticCurveTo(t,i,e,n),this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__region&&!this.__onlyView&&this.__region.bezierCurveTo(t,i,e,n,r,o),this.__isPainter&&this.__onlyRegion||this.painter.bezierCurveTo(t,i,e,n,r,o),this},t.prototype.clearRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.clearRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||this.painter.clearRect(t,i,e,n),this},t.prototype.clearCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.clearCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(this.painter.beginPath(),this.painter.globalCompositeOperation="destination-out",this.painter.arc(t,i,e,0,2*Math.PI),this.painter.fill(),this.painter.globalCompositeOperation="source-over",this.painter.closePath()),this},t.prototype.fillArc=function(t,i,e,n,o,s){return this.__region&&!this.__onlyView&&this.__region.fillArc(t,i,e,n,o,s),this.__isPainter&&this.__onlyRegion||r(this.painter,this.__specialConfig,t,i,e,n,o,s).fill(),this},t.prototype.strokeArc=function(t,i,e,n,o,s){return this.__region&&!this.__onlyView&&this.__region.strokeArc(t,i,e,n,o,s),this.__isPainter&&this.__onlyRegion||r(this.painter,this.__specialConfig,t,i,e,n,o,s).stroke(),this},t.prototype.fullArc=function(t,i,e,n,o,s){return this.__region&&!this.__onlyView&&this.__region.fullArc(t,i,e,n,o,s),this.__isPainter&&this.__onlyRegion||(r(this.painter,this.__specialConfig,t,i,e,n,o,s),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fillCircle(t,i,e),this.__isPainter&&this.__onlyRegion||o(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.strokeCircle(t,i,e),this.__isPainter&&this.__onlyRegion||o(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&!this.__onlyView&&this.__region.fullCircle(t,i,e),this.__isPainter&&this.__onlyRegion||(o(this.painter,t,i,e),this.painter.fill(),this.painter.stroke()),this},t.prototype.fillRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fillRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||s(this.painter,this.__specialConfig,t,i,e,n).fill(),this},t.prototype.strokeRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.strokeRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||s(this.painter,this.__specialConfig,t,i,e,n).stroke(),this},t.prototype.fullRect=function(t,i,e,n){return this.__region&&!this.__onlyView&&this.__region.fullRect(t,i,e,n),this.__isPainter&&this.__onlyRegion||(s(this.painter,this.__specialConfig,t,i,e,n),this.painter.fill(),this.painter.stroke()),this},t.prototype.draw=function(){return Promise.resolve()},t.prototype.drawImage=function(t,i,e,n,r,o){var s=this;return void 0===o&&(o=!1),new Promise((function(_){if(s.__region&&!s.__onlyView&&s.__region.fillRect(i,e,n,r),s.__isPainter&&s.__onlyRegion)_({});else if("string"!=typeof t||o)s.painter.drawImage(t,i,e,n,r),_({});else{var a=new Image;a.onload=function(){s.painter.drawImage(a,i,e,n,r),_({})},a.src=t}}))},t.prototype.translate=function(t,i){return this.painter.translate(t,i),this},t.prototype.rotate=function(t){return this.painter.rotate(t),this},t.prototype.install=function(t){var i=this,e=function(e){if(e in n)throw new Error("VISLite Canvas:Method already exists and cannot be overwritten.");n[e]=function(){for(var n=[],r=0;r<arguments.length;r++)n[r]=arguments[r];var o=t[e].apply(i,n);return null!=o?o:i}},n=this;for(var r in t)e(r);return this},t}();var l=function(t,i){var e={value:function(){return t},setColor:function(n,r){return t.addColorStop(i?i(n):n,r),e}};return e},p=function(i){function e(t,e,n,r){void 0===n&&(n={}),void 0===r&&(r=1);var o=i.call(this,t,n,e?new h(e,{willReadFrequently:!0}):void 0,!0,r)||this;return o.name="Canvas",o.__regionList={},o.__regionAssemble=function(t,i,e,n){for(var r=[],o=0;o<n;o++)r[o]=t;return function(){for(var o=0;o<n;o++){if(r[o]+e<i){r[o]=+(r[o]+e).toFixed(7);break}o<n-1&&(r[o]=t)}return r}}(0,255,10,3),o.__scaleSize=r,o.setRegion(""),o}return function(i,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function n(){this.constructor=i}t(i,e),i.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)}(e,i),e.prototype.config=function(t){for(var i in t)this.useConfig(i,t[i]);return this},e.prototype.reset=function(){return this.config(a()),this},e.prototype.onlyRegion=function(t){return this.__onlyRegion=t,this},e.prototype.onlyView=function(t){return this.__onlyView=t,this},e.prototype.setRegion=function(t){if(this.__region)if(t){if(null==this.__regionList[t]){var i=this.__regionAssemble();this.__regionList[t]="rgb("+i[0]+","+i[1]+","+i[2]+")"}this.__region.useConfig("fillStyle",this.__regionList[t])&&this.__region.useConfig("strokeStyle",this.__regionList[t])}else this.__region.useConfig("fillStyle","#000000")&&this.__region.useConfig("strokeStyle","#000000");return this},e.prototype.getRegion=function(t,i){var e=this;return new Promise((function(n){var r=e.__region?e.__region.painter.getImageData(t-.5,i-.5,1,1):{data:[0,0,0,0]},o=r.data,s=function(){if(e.__region)for(var t in e.__regionList)if("rgb("+o[0]+","+o[1]+","+o[2]+")"==e.__regionList[t]){n(t);break}n("")};o?s():r.then((function(t){o=t,s()}))}))},e.prototype.textWidth=function(t){this.painter.save(),n(this.painter,this.__specialConfig,0,0,0);var i=this.painter.measureText(t+"").width;return this.painter.restore(),i},e.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region?this.__region.painter:null:this.painter},e.prototype.getInfo=function(){return{width:this.painter.canvas.width/this.__scaleSize,height:this.painter.canvas.height/this.__scaleSize}},e.prototype.createLinearGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createLinearGradient(i,e,n,r);return l(o)}(this.painter,t,i,e,n)},e.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,n){var r=t.createRadialGradient(i,e,0,i,e,n);return l(r)}(this.painter,t,i,e)},e.prototype.createConicGradient=function(t,i,e,n){return function(t,i,e,n,r){var o=t.createConicGradient(n,i,e);return l(o,r?function(t){return r/(2*Math.PI)*t}:void 0)}(this.painter,t,i,e,n)},e.prototype.getColor=function(t,i){t*=this.__scaleSize,i*=this.__scaleSize;var e=this.painter.getImageData(t-.5,i-.5,1,1).data;return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},e}(h);export{p as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * SVG of VISLite JavaScript Library v1.6.0
2
+ * SVG of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  /******************************************************************************
@@ -354,7 +354,7 @@ var SVG$1 = (function () {
354
354
  path: "path",
355
355
  arc: "path",
356
356
  circle: "circle",
357
- rect: "rect",
357
+ rect: "path",
358
358
  }[el] || "";
359
359
  if (_el == "")
360
360
  throw new Error("Unsupported drawing method:" + el);
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * SVG of VISLite JavaScript Library v1.6.0
2
+ * SVG of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
- var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},t(e,i)};"function"==typeof SuppressedError&&SuppressedError;var e=["href","title","show","type","role","actuate"],i=function(t,e){o(t,"stroke-dasharray",e.lineDash.join(",")),o(t,"stroke-width",e.lineWidth+""),o(t,"stroke-linecap",e.lineCap+""),o(t,"stroke-linejoin",e.lineJoin+"")};function n(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var r=function(t,i,n){e.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,n+""):t.setAttribute(i,n+"")},o=r;function s(t,e){i(t,e),r(t,"stroke",e.strokeStyle),r(t,"fill",e.fillStyle)}function u(t,e){r(t,"fill",e.fillStyle)}function h(t,e){i(t,e),r(t,"stroke",e.strokeStyle),r(t,"fill","none")}var a=function(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[+((n-t)*o-(r-e)*s+t).toFixed(7),+((n-t)*s+(r-e)*o+e).toFixed(7)]};var _=function(t){var e=t.getElementsByTagName("defs");if(e.length<=0){var i=n("defs");return t.appendChild(i),i}return e[0]},l=function(t,e,i,n,r){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");o(t,"dy",{top:.5*e.fontSize,middle:0,bottom:.5*-e.fontSize}[e.textBaseline]),function(t,e){for(var i in e)t.style[i]=e[i]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[e.textAlign],"dominant-baseline":"central","font-size":e.fontSize+"px","font-family":e.fontFamily}),o(t,"x",i),o(t,"y",n),"number"==typeof r&&o(t,"transform","rotate("+(r%=360)+","+i+","+n+")")},c=function(t,e,i,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");o(t,"cx",e),o(t,"cy",i),o(t,"r",n)},f=function(t,e){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");o(t,"d",e)},p=function(t,e,i,n,r,s){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");var u=[];if(Array.isArray(e.rectRadius)&&e.rectRadius.length>0)for(var h=0;h<4;h++)u.push.apply(u,e.rectRadius);s<0&&(n-=s*=-1),r<0&&(i-=r*=-1);var a="";u.length>=4?(a="M"+(i+u[0])+" "+n,a+="L"+(i+r-u[1])+" "+n,a+="A"+u[1]+" "+u[1]+" 0 0 1 "+(i+r)+" "+(n+u[1]),a+="L"+(i+r)+" "+(n+s-u[2]),a+="A"+u[2]+" "+u[2]+" 0 0 1 "+(i+r-u[2])+" "+(n+s),a+="L"+(i+u[3])+" "+(n+s),a+="A"+u[3]+" "+u[3]+" 0 0 1 "+i+" "+(n+s-u[3]),a+="L"+i+" "+(n+u[0]),a+="A"+u[0]+" "+u[0]+" 0 0 1 "+(i+u[0])+" "+n):(a="M"+i+" "+n,a+="L"+(i+r)+" "+n,a+="L"+(i+r)+" "+(n+s),a+="L"+i+" "+(n+s),a+="Z"),o(t,"d",a)},d=function(t,e,i,n,r,s,u,h){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(u=u/180*Math.PI,h=h/180*Math.PI,u%=2*Math.PI,r>s){var _=r;r=s,s=_}h>=1.999999*Math.PI||h<=1.999999*-Math.PI?h=1.999999*Math.PI:h%=2*Math.PI,function(t,e,i,n,r,o,s){e<0&&(t+=e,e*=-1);var u,h=[];u=a(0,0,t,r,0),h[0]=u[0],h[1]=u[1],u=a(0,0,e,u[0],u[1]),h[2]=u[0],h[3]=u[1],u=a(0,0,t,o,0),h[4]=u[0],h[5]=u[1],u=a(0,0,e,u[0],u[1]),h[6]=u[0],h[7]=u[1],s(t,t+e,h[0]+i,h[1]+n,h[4]+i,h[5]+n,h[2]+i,h[3]+n,h[6]+i,h[7]+n,.5*(o-r))}(u,h,i,n,r,s,(function(i,n,u,h,a,_,l,c,f,p,d){var g=n-i>Math.PI?1:0,y="M"+u+" "+h;d<0&&(d=-d),y+="A"+r+" "+r+" 0 "+g+" 1 "+l+" "+c,"round"==e.arcEndCap?y+="A"+d+" "+d+" 0 1 0 "+f+" "+p:"-round"==e.arcEndCap?y+="A"+d+" "+d+" 0 1 1 "+f+" "+p:y+="L"+f+" "+p,y+="A"+s+" "+s+" 0 "+g+" 0 "+a+" "+_,"round"==e.arcStartCap?y+="A"+d+" "+d+" 0 1 0 "+u+" "+h:"-round"==e.arcStartCap?y+="A"+d+" "+d+" 0 1 1 "+u+" "+h:y+="L"+u+" "+h,"butt"==e.arcStartCap&&(y+="Z"),o(t,"d",y)}))};function g(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[(n-t)*o-(r-e)*s+t,(n-t)*s+(r-e)*o+e]}var y=function(t,e){var i={value:function(){return"url(#"+e+")"},setColor:function(e,r){var s=n("stop");return t.appendChild(s),o(s,"offset",100*e+"%"),o(s,"style","stop-color:"+r+";"),i}};return i};var E=function(){function t(t){this.name="SVG",this.__config={fillStyle:"rgb(0,0,0)",strokeStyle:"rgb(0,0,0)",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter",rectRadius:[]},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var e in t)this.__config[e]=t[e];return this},t.prototype.reset=function(){return this.config({fillStyle:"rgb(0,0,0)",strokeStyle:"rgb(0,0,0)",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter",rectRadius:[]}),this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,e){return e=e||this.__svg,"string"==typeof t&&(t=n(t)),e.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,e){var i=t;if("string"==typeof t&&(i={text:"text",path:"path",arc:"path",circle:"circle",rect:"rect"}[t]||""),""==i)throw new Error("Unsupported drawing method:"+t);return this.appendEl(i,e)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return e.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)o(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,u(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,h(this.__useEl,this.__config),this},t.prototype.fullText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,s(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),u(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),h(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),s(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,e,i){return c(this.__useEl,t,e,i),u(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,e,i){return c(this.__useEl,t,e,i),h(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,e,i){return c(this.__useEl,t,e,i),s(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),u(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),h(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),s(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,e){return this.__currentPosition=[t,e],this.__path+="M"+t+" "+e,this},t.prototype.lineTo=function(t,e){return this.__currentPosition=[t,e],this.__path+=(""==this.__path?"M":"L")+t+" "+e,this},t.prototype.fill=function(){return f(this.__useEl,this.__path),u(this.__useEl,this.__config),this},t.prototype.stroke=function(){return f(this.__useEl,this.__path),h(this.__useEl,this.__config),this},t.prototype.full=function(){return f(this.__useEl,this.__path),s(this.__useEl,this.__config),this},t.prototype.arc=function(t,e,i,n,r){var o=g(t,e,n/180*Math.PI,t+i,e),s=g(t,e,(n+r)/180*Math.PI,t+i,e);return""==this.__path?this.__path+="M"+o[0]+","+o[1]:o[0]==this.__currentPosition[0]&&o[1]==this.__currentPosition[1]||(this.__path+="L"+o[0]+","+o[1]),this.__path+="A"+i+","+i+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+s[0]+","+s[1],this},t.prototype.quadraticCurveTo=function(t,e,i,n){return this.__path+="Q"+t+" "+e+","+i+" "+n,this},t.prototype.bezierCurveTo=function(t,e,i,n,r,o){return this.__path+="C"+t+" "+e+","+i+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,e){return this.__useEl.addEventListener(t,(function(t){e.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,e,i,r){return function(t,e,i,r,s){var u=_(t),h="visliteLg"+(new Date).valueOf()+(1e6*Math.random()).toFixed(0),a=n("linearGradient");return u.appendChild(a),o(a,"id",h),o(a,"x1",e+"%"),o(a,"y1",i+"%"),o(a,"x2",r+"%"),o(a,"y2",s+"%"),y(a,h)}(this.__svg,t,e,i,r)},t.prototype.createRadialGradient=function(t,e,i){return function(t,e,i,r){var s=_(t),u="visliteRg"+(new Date).valueOf()+(1e6*Math.random()).toFixed(0),h=n("radialGradient");return s.appendChild(h),o(h,"id",u),o(h,"cx",e+"%"),o(h,"cy",i+"%"),o(h,"r",r+"%"),y(h,u)}(this.__svg,t,e,i)},t}(),v=function(e){function i(t){var i=this;if(!t)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var n=t.clientWidth,r=t.clientHeight,o=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.appendChild(o),o.setAttribute("width",n+""),o.setAttribute("height",r+""),o.setAttribute("viewBox","0 0 "+n+" "+r),(i=e.call(this,o)||this).__el=t,i}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i.prototype.toDataURL=function(){var t=this;return new Promise((function(e){var i=t.__el.clientWidth,n=t.__el.clientHeight,r=document.createElement("img");r.setAttribute("width",i+""),r.setAttribute("height",n+"");var o="data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='"+i+"' height='"+n+"'>"+t.__svg.innerHTML.replace(/"/g,"'")+"</svg>";r.setAttribute("src",o),setTimeout((function(){var t=document.createElement("canvas");t.setAttribute("width",i+""),t.setAttribute("height",n+"");var o=t.getContext("2d");o&&o.drawImage(r,0,0,i,n),e(t.toDataURL())}),100)}))},i}(E);export{v as default};
5
+ var t=function(e,i){return t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])},t(e,i)};"function"==typeof SuppressedError&&SuppressedError;var e=["href","title","show","type","role","actuate"],i=function(t,e){o(t,"stroke-dasharray",e.lineDash.join(",")),o(t,"stroke-width",e.lineWidth+""),o(t,"stroke-linecap",e.lineCap+""),o(t,"stroke-linejoin",e.lineJoin+"")};function n(t){return document.createElementNS("http://www.w3.org/2000/svg",t)}var r=function(t,i,n){e.indexOf(i)>-1?t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:"+i,n+""):t.setAttribute(i,n+"")},o=r;function s(t,e){i(t,e),r(t,"stroke",e.strokeStyle),r(t,"fill",e.fillStyle)}function u(t,e){r(t,"fill",e.fillStyle)}function h(t,e){i(t,e),r(t,"stroke",e.strokeStyle),r(t,"fill","none")}var a=function(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[+((n-t)*o-(r-e)*s+t).toFixed(7),+((n-t)*s+(r-e)*o+e).toFixed(7)]};var _=function(t){var e=t.getElementsByTagName("defs");if(e.length<=0){var i=n("defs");return t.appendChild(i),i}return e[0]},l=function(t,e,i,n,r){if("text"!==t.nodeName.toLowerCase())throw new Error("Need a <text> !");o(t,"dy",{top:.5*e.fontSize,middle:0,bottom:.5*-e.fontSize}[e.textBaseline]),function(t,e){for(var i in e)t.style[i]=e[i]}(t,{"text-anchor":{left:"start",right:"end",center:"middle"}[e.textAlign],"dominant-baseline":"central","font-size":e.fontSize+"px","font-family":e.fontFamily}),o(t,"x",i),o(t,"y",n),"number"==typeof r&&o(t,"transform","rotate("+(r%=360)+","+i+","+n+")")},c=function(t,e,i,n){if("circle"!==t.nodeName.toLowerCase())throw new Error("Need a <circle> !");o(t,"cx",e),o(t,"cy",i),o(t,"r",n)},f=function(t,e){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");o(t,"d",e)},p=function(t,e,i,n,r,s){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");var u=[];if(Array.isArray(e.rectRadius)&&e.rectRadius.length>0)for(var h=0;h<4;h++)u.push.apply(u,e.rectRadius);s<0&&(n-=s*=-1),r<0&&(i-=r*=-1);var a="";u.length>=4?(a="M"+(i+u[0])+" "+n,a+="L"+(i+r-u[1])+" "+n,a+="A"+u[1]+" "+u[1]+" 0 0 1 "+(i+r)+" "+(n+u[1]),a+="L"+(i+r)+" "+(n+s-u[2]),a+="A"+u[2]+" "+u[2]+" 0 0 1 "+(i+r-u[2])+" "+(n+s),a+="L"+(i+u[3])+" "+(n+s),a+="A"+u[3]+" "+u[3]+" 0 0 1 "+i+" "+(n+s-u[3]),a+="L"+i+" "+(n+u[0]),a+="A"+u[0]+" "+u[0]+" 0 0 1 "+(i+u[0])+" "+n):(a="M"+i+" "+n,a+="L"+(i+r)+" "+n,a+="L"+(i+r)+" "+(n+s),a+="L"+i+" "+(n+s),a+="Z"),o(t,"d",a)},d=function(t,e,i,n,r,s,u,h){if("path"!==t.nodeName.toLowerCase())throw new Error("Need a <path> !");if(u=u/180*Math.PI,h=h/180*Math.PI,u%=2*Math.PI,r>s){var _=r;r=s,s=_}h>=1.999999*Math.PI||h<=1.999999*-Math.PI?h=1.999999*Math.PI:h%=2*Math.PI,function(t,e,i,n,r,o,s){e<0&&(t+=e,e*=-1);var u,h=[];u=a(0,0,t,r,0),h[0]=u[0],h[1]=u[1],u=a(0,0,e,u[0],u[1]),h[2]=u[0],h[3]=u[1],u=a(0,0,t,o,0),h[4]=u[0],h[5]=u[1],u=a(0,0,e,u[0],u[1]),h[6]=u[0],h[7]=u[1],s(t,t+e,h[0]+i,h[1]+n,h[4]+i,h[5]+n,h[2]+i,h[3]+n,h[6]+i,h[7]+n,.5*(o-r))}(u,h,i,n,r,s,(function(i,n,u,h,a,_,l,c,f,p,d){var g=n-i>Math.PI?1:0,y="M"+u+" "+h;d<0&&(d=-d),y+="A"+r+" "+r+" 0 "+g+" 1 "+l+" "+c,"round"==e.arcEndCap?y+="A"+d+" "+d+" 0 1 0 "+f+" "+p:"-round"==e.arcEndCap?y+="A"+d+" "+d+" 0 1 1 "+f+" "+p:y+="L"+f+" "+p,y+="A"+s+" "+s+" 0 "+g+" 0 "+a+" "+_,"round"==e.arcStartCap?y+="A"+d+" "+d+" 0 1 0 "+u+" "+h:"-round"==e.arcStartCap?y+="A"+d+" "+d+" 0 1 1 "+u+" "+h:y+="L"+u+" "+h,"butt"==e.arcStartCap&&(y+="Z"),o(t,"d",y)}))};function g(t,e,i,n,r){var o=Math.cos(i),s=Math.sin(i);return[(n-t)*o-(r-e)*s+t,(n-t)*s+(r-e)*o+e]}var y=function(t,e){var i={value:function(){return"url(#"+e+")"},setColor:function(e,r){var s=n("stop");return t.appendChild(s),o(s,"offset",100*e+"%"),o(s,"style","stop-color:"+r+";"),i}};return i};var E=function(){function t(t){this.name="SVG",this.__config={fillStyle:"rgb(0,0,0)",strokeStyle:"rgb(0,0,0)",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter",rectRadius:[]},this.__path="",this.__currentPosition=[],this.__svg=t}return t.prototype.config=function(t){if("object"!=typeof t)return this.__config[t];for(var e in t)this.__config[e]=t[e];return this},t.prototype.reset=function(){return this.config({fillStyle:"rgb(0,0,0)",strokeStyle:"rgb(0,0,0)",textAlign:"left",textBaseline:"middle",fontSize:16,fontFamily:"sans-serif",arcStartCap:"butt",arcEndCap:"butt",lineDash:[],lineWidth:1,lineCap:"butt",lineJoin:"miter",rectRadius:[]}),this},t.prototype.useEl=function(t){return this.__useEl=t,this},t.prototype.getEl=function(){return this.__useEl},t.prototype.appendEl=function(t,e){return e=e||this.__svg,"string"==typeof t&&(t=n(t)),e.appendChild(t),this.__useEl=t,this},t.prototype.appendBoard=function(t,e){var i=t;if("string"==typeof t&&(i={text:"text",path:"path",arc:"path",circle:"circle",rect:"path"}[t]||""),""==i)throw new Error("Unsupported drawing method:"+t);return this.appendEl(i,e)},t.prototype.remove=function(){if(!this.__useEl)throw new Error("Currently, no node can be deleted.");return this.__useEl.parentNode.removeChild(this.__useEl),this},t.prototype.attr=function(t){if(!this.__useEl)throw new Error("Currently, no node can be modified or viewed.");if("object"!=typeof t)return function(t,i){return e.indexOf(i)>-1&&(i="xlink:"+i),t.getAttribute(i)}(this.__useEl,t);for(var i in t)o(this.__useEl,i,t[i]);return this},t.prototype.fillText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,u(this.__useEl,this.__config),this},t.prototype.strokeText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,h(this.__useEl,this.__config),this},t.prototype.fullText=function(t,e,i,n){return void 0===n&&(n=0),l(this.__useEl,this.__config,e,i,n),this.__useEl.textContent=t,s(this.__useEl,this.__config),this},t.prototype.fillArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),u(this.__useEl,this.__config),this},t.prototype.strokeArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),h(this.__useEl,this.__config),this},t.prototype.fullArc=function(t,e,i,n,r,o){return d(this.__useEl,this.__config,t,e,i,n,r,o),s(this.__useEl,this.__config),this},t.prototype.fillCircle=function(t,e,i){return c(this.__useEl,t,e,i),u(this.__useEl,this.__config),this},t.prototype.strokeCircle=function(t,e,i){return c(this.__useEl,t,e,i),h(this.__useEl,this.__config),this},t.prototype.fullCircle=function(t,e,i){return c(this.__useEl,t,e,i),s(this.__useEl,this.__config),this},t.prototype.fillRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),u(this.__useEl,this.__config),this},t.prototype.strokeRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),h(this.__useEl,this.__config),this},t.prototype.fullRect=function(t,e,i,n){return p(this.__useEl,this.__config,t,e,i,n),s(this.__useEl,this.__config),this},t.prototype.beginPath=function(){return this.__currentPosition=[],this.__path="",this},t.prototype.closePath=function(){return this.__path+="Z",this},t.prototype.moveTo=function(t,e){return this.__currentPosition=[t,e],this.__path+="M"+t+" "+e,this},t.prototype.lineTo=function(t,e){return this.__currentPosition=[t,e],this.__path+=(""==this.__path?"M":"L")+t+" "+e,this},t.prototype.fill=function(){return f(this.__useEl,this.__path),u(this.__useEl,this.__config),this},t.prototype.stroke=function(){return f(this.__useEl,this.__path),h(this.__useEl,this.__config),this},t.prototype.full=function(){return f(this.__useEl,this.__path),s(this.__useEl,this.__config),this},t.prototype.arc=function(t,e,i,n,r){var o=g(t,e,n/180*Math.PI,t+i,e),s=g(t,e,(n+r)/180*Math.PI,t+i,e);return""==this.__path?this.__path+="M"+o[0]+","+o[1]:o[0]==this.__currentPosition[0]&&o[1]==this.__currentPosition[1]||(this.__path+="L"+o[0]+","+o[1]),this.__path+="A"+i+","+i+" 0 "+(r>180||r<-180?1:0)+","+(r>0?1:0)+" "+s[0]+","+s[1],this},t.prototype.quadraticCurveTo=function(t,e,i,n){return this.__path+="Q"+t+" "+e+","+i+" "+n,this},t.prototype.bezierCurveTo=function(t,e,i,n,r,o){return this.__path+="C"+t+" "+e+","+i+" "+n+","+r+" "+o,this},t.prototype.bind=function(t,e){return this.__useEl.addEventListener(t,(function(t){e.call(this,t,this)}),!1),this},t.prototype.createLinearGradient=function(t,e,i,r){return function(t,e,i,r,s){var u=_(t),h="visliteLg"+(new Date).valueOf()+(1e6*Math.random()).toFixed(0),a=n("linearGradient");return u.appendChild(a),o(a,"id",h),o(a,"x1",e+"%"),o(a,"y1",i+"%"),o(a,"x2",r+"%"),o(a,"y2",s+"%"),y(a,h)}(this.__svg,t,e,i,r)},t.prototype.createRadialGradient=function(t,e,i){return function(t,e,i,r){var s=_(t),u="visliteRg"+(new Date).valueOf()+(1e6*Math.random()).toFixed(0),h=n("radialGradient");return s.appendChild(h),o(h,"id",u),o(h,"cx",e+"%"),o(h,"cy",i+"%"),o(h,"r",r+"%"),y(h,u)}(this.__svg,t,e,i)},t}(),v=function(e){function i(t){var i=this;if(!t)throw new Error("VISLite SVG:The mount point requires an HTMLElement type but encountered null.");var n=t.clientWidth,r=t.clientHeight,o=document.createElementNS("http://www.w3.org/2000/svg","svg");return t.appendChild(o),o.setAttribute("width",n+""),o.setAttribute("height",r+""),o.setAttribute("viewBox","0 0 "+n+" "+r),(i=e.call(this,o)||this).__el=t,i}return function(e,i){if("function"!=typeof i&&null!==i)throw new TypeError("Class extends value "+String(i)+" is not a constructor or null");function n(){this.constructor=e}t(e,i),e.prototype=null===i?Object.create(i):(n.prototype=i.prototype,new n)}(i,e),i.prototype.toDataURL=function(){var t=this;return new Promise((function(e){var i=t.__el.clientWidth,n=t.__el.clientHeight,r=document.createElement("img");r.setAttribute("width",i+""),r.setAttribute("height",n+"");var o="data:image/svg+xml;charset=utf-8,<svg xmlns='http://www.w3.org/2000/svg' width='"+i+"' height='"+n+"'>"+t.__svg.innerHTML.replace(/"/g,"'")+"</svg>";r.setAttribute("src",o),setTimeout((function(){var t=document.createElement("canvas");t.setAttribute("width",i+""),t.setAttribute("height",n+"");var o=t.getContext("2d");o&&o.drawImage(r,0,0,i,n),e(t.toDataURL())}),100)}))},i}(E);export{v as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Shader of VISLite JavaScript Library v1.6.0
2
+ * Shader of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var loadShader = function (painter, type, source) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Shader of VISLite JavaScript Library v1.6.0
2
+ * Shader of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var r=function(r,e,t){var a=r.createShader(e);if(null==a)throw new Error("Unable to create shader!");if(r.shaderSource(a,t),r.compileShader(a),!r.getShaderParameter(a,r.COMPILE_STATUS))throw new Error("Failed to compile shader:"+r.getShaderInfoLog(a));return a},e=function(){function e(r){this.__painter=r}return e.prototype.use=function(){return this.__painter.useProgram(this.program),this},e.prototype.compile=function(e,t){return this.program=function(e,t,a){var o=r(e,e.VERTEX_SHADER,t),n=r(e,e.FRAGMENT_SHADER,a),i=e.createProgram();if(e.attachShader(i,o),e.attachShader(i,n),e.linkProgram(i),!e.getProgramParameter(i,e.LINK_STATUS))throw new Error("Failed to link program: "+e.getProgramInfoLog(i));return i}(this.__painter,e,t),this},e}();export{e as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Texture of VISLite JavaScript Library v1.6.0
2
+ * Texture of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var initTexture = function (painter, type, unit) {
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * Texture of VISLite JavaScript Library v1.6.0
2
+ * Texture of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  var _=function(){function _(_,t,e){void 0===e&&(e=0),this.__painter=_,this.__type={"2d":_.TEXTURE_2D,cube:_.TEXTURE_CUBE_MAP}[t],this.__texture=function(_,t,e){var E=_.createTexture();return _.activeTexture(_["TEXTURE"+e]),_.bindTexture(t,E),E}(_,this.__type,e),_.texParameteri(this.__type,_.TEXTURE_MIN_FILTER,_.NEAREST),_.texParameteri(this.__type,_.TEXTURE_MAG_FILTER,_.NEAREST),_.texParameteri(this.__type,_.TEXTURE_WRAP_S,_.CLAMP_TO_EDGE),_.texParameteri(this.__type,_.TEXTURE_WRAP_T,_.CLAMP_TO_EDGE)}return _.prototype.useImage=function(_){return function(_,t,e,E,T,i){_.texImage2D(t,e,E,E,T,i)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,_),this},_.prototype.useCube=function(_,t,e){return function(_,t,e,E,T,i,r,n,a){for(var u,p=[_.TEXTURE_CUBE_MAP_POSITIVE_X,_.TEXTURE_CUBE_MAP_NEGATIVE_X,_.TEXTURE_CUBE_MAP_POSITIVE_Y,_.TEXTURE_CUBE_MAP_NEGATIVE_Y,_.TEXTURE_CUBE_MAP_POSITIVE_Z,_.TEXTURE_CUBE_MAP_NEGATIVE_Z],s=0;s<p.length;s++)i[s]&&(u=p[s],_.texImage2D(u,e,E,r,n,0,E,T,null),_.bindTexture(t,a),_.texImage2D(u,e,E,E,T,i[s]));_.generateMipmap(t)}(this.__painter,this.__type,0,this.__painter.RGBA,this.__painter.UNSIGNED_BYTE,_,t,e,this.__texture),this},_}();export{_ as default};
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * TreeLayout of VISLite JavaScript Library v1.6.0
2
+ * TreeLayout of VISLite JavaScript Library v1.6.1
3
3
  * git+https://github.com/oi-contrib/VISLite.git
4
4
  */
5
5
  /******************************************************************************
@@ -188,113 +188,113 @@ var Tree = (function () {
188
188
  }());
189
189
 
190
190
  /*!
191
- * animation of OIPage v1.3.0
191
+ * animation of OIPage v1.5.0
192
192
  * git+https://github.com/oi-contrib/OIPage.git
193
193
  */
194
194
 
195
- //当前正在运动的动画的tick函数堆栈
196
- var $timers = [];
197
- //唯一定时器的定时间隔
198
- var $interval = 13;
199
- //定时器ID
200
- var $timerId;
201
-
202
- /**
203
- * 动画轮播
204
- * @param {function} doback 轮询函数,有一个形参deep,0-1,表示执行进度
205
- * @param {number} duration 动画时长,可选
206
- * @param {function} callback 动画结束回调,可选,有一个形参deep,0-1,表示执行进度
207
- *
208
- * @returns {function} 返回一个函数,调用该函数,可以提前结束动画
209
- */
210
- function animation(doback, duration, callback) {
211
- if (arguments.length < 2) duration = 400;
212
- if (arguments.length < 3) callback = function () { };
213
-
214
- var clock = {
215
- //把tick函数推入堆栈
216
- "timer": function (tick, duration, callback) {
217
- if (!tick) {
218
- throw new Error('Tick is required!');
219
- }
220
- var id = new Date().valueOf() + "_" + (Math.random() * 1000).toFixed(0);
221
- $timers.push({
222
- "id": id,
223
- "createTime": new Date(),
224
- "tick": tick,
225
- "duration": duration,
226
- "callback": callback
227
- });
228
- clock.start();
229
- return id;
230
- },
231
-
232
- //开启唯一的定时器timerId
233
- "start": function () {
234
- if (!$timerId) {
235
- $timerId = setInterval(clock.tick, $interval);
236
- }
237
- },
238
-
239
- //被定时器调用,遍历timers堆栈
240
- "tick": function () {
241
- var createTime, flag, tick, callback, timer, duration, passTime, timers = $timers;
242
-
243
- $timers = [];
244
- $timers.length = 0;
245
-
246
- for (flag = 0; flag < timers.length; flag++) {
247
- //初始化数据
248
- timer = timers[flag];
249
- createTime = timer.createTime;
250
- tick = timer.tick;
251
- duration = timer.duration;
252
- callback = timer.callback;
253
-
254
- //执行
255
- passTime = (+new Date().valueOf() - createTime.valueOf()) / duration;
256
- passTime = passTime > 1 ? 1 : passTime;
257
- tick(passTime);
258
- if (passTime < 1 && timer.id) {
259
- //动画没有结束再添加
260
- $timers.push(timer);
261
- } else {
262
- callback(passTime);
263
- }
264
- }
265
- if ($timers.length <= 0) {
266
- clock.stop();
267
- }
268
- },
269
-
270
- //停止定时器,重置timerId=null
271
- "stop": function () {
272
- if ($timerId) {
273
- clearInterval($timerId);
274
- $timerId = null;
275
- }
276
- }
277
- };
278
-
279
- var id = clock.timer(function (deep) {
280
- //其中deep为0-1,表示改变的程度
281
- doback(deep);
282
- }, duration, callback);
283
-
284
- return {
285
- // 一个函数
286
- // 用于在动画结束前结束动画
287
- stop: function () {
288
- var i;
289
- for (i in $timers) {
290
- if ($timers[i].id == id) {
291
- $timers[i].id = void 0;
292
- return;
293
- }
294
- }
295
- }
296
- };
297
-
195
+ //当前正在运动的动画的tick函数堆栈
196
+ var $timers = [];
197
+ //唯一定时器的定时间隔
198
+ var $interval = 13;
199
+ //定时器ID
200
+ var $timerId;
201
+
202
+ /**
203
+ * 动画轮播
204
+ * @param {function} doback 轮询函数,有一个形参deep,0-1,表示执行进度
205
+ * @param {number} duration 动画时长,可选
206
+ * @param {function} callback 动画结束回调,可选,有一个形参deep,0-1,表示执行进度
207
+ *
208
+ * @returns {function} 返回一个函数,调用该函数,可以提前结束动画
209
+ */
210
+ function animation(doback, duration, callback) {
211
+ if (arguments.length < 2) duration = 400;
212
+ if (arguments.length < 3) callback = function () { };
213
+
214
+ var clock = {
215
+ //把tick函数推入堆栈
216
+ "timer": function (tick, duration, callback) {
217
+ if (!tick) {
218
+ throw new Error('Tick is required!');
219
+ }
220
+ var id = new Date().valueOf() + "_" + (Math.random() * 1000).toFixed(0);
221
+ $timers.push({
222
+ "id": id,
223
+ "createTime": new Date(),
224
+ "tick": tick,
225
+ "duration": duration,
226
+ "callback": callback
227
+ });
228
+ clock.start();
229
+ return id;
230
+ },
231
+
232
+ //开启唯一的定时器timerId
233
+ "start": function () {
234
+ if (!$timerId) {
235
+ $timerId = setInterval(clock.tick, $interval);
236
+ }
237
+ },
238
+
239
+ //被定时器调用,遍历timers堆栈
240
+ "tick": function () {
241
+ var createTime, flag, tick, callback, timer, duration, passTime, timers = $timers;
242
+
243
+ $timers = [];
244
+ $timers.length = 0;
245
+
246
+ for (flag = 0; flag < timers.length; flag++) {
247
+ //初始化数据
248
+ timer = timers[flag];
249
+ createTime = timer.createTime;
250
+ tick = timer.tick;
251
+ duration = timer.duration;
252
+ callback = timer.callback;
253
+
254
+ //执行
255
+ passTime = (+new Date().valueOf() - createTime.valueOf()) / duration;
256
+ passTime = passTime > 1 ? 1 : passTime;
257
+ tick(passTime);
258
+ if (passTime < 1 && timer.id) {
259
+ //动画没有结束再添加
260
+ $timers.push(timer);
261
+ } else {
262
+ callback(passTime);
263
+ }
264
+ }
265
+ if ($timers.length <= 0) {
266
+ clock.stop();
267
+ }
268
+ },
269
+
270
+ //停止定时器,重置timerId=null
271
+ "stop": function () {
272
+ if ($timerId) {
273
+ clearInterval($timerId);
274
+ $timerId = null;
275
+ }
276
+ }
277
+ };
278
+
279
+ var id = clock.timer(function (deep) {
280
+ //其中deep为0-1,表示改变的程度
281
+ doback(deep);
282
+ }, duration, callback);
283
+
284
+ return {
285
+ // 一个函数
286
+ // 用于在动画结束前结束动画
287
+ stop: function () {
288
+ var i;
289
+ for (i in $timers) {
290
+ if ($timers[i].id == id) {
291
+ $timers[i].id = void 0;
292
+ return;
293
+ }
294
+ }
295
+ }
296
+ };
297
+
298
298
  }
299
299
 
300
300
  function rotate (cx, cy, deg, x, y) {