vislite 0.2.0-alpha.8 → 0.3.0-alpha.0
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.
- package/AUTHORS.txt +6 -6
- package/CHANGELOG +20 -2
- package/LICENSE +20 -20
- package/README.md +53 -53
- package/lib/Canvas/index.umd.js +86 -13
- package/lib/Canvas/index.umd.min.js +2 -2
- package/lib/Cardinal/index.umd.js +1 -1
- package/lib/Cardinal/index.umd.min.js +1 -1
- package/lib/Eoap/index.umd.js +1 -1
- package/lib/Eoap/index.umd.min.js +1 -1
- package/lib/Hermite/index.umd.js +1 -1
- package/lib/Hermite/index.umd.min.js +1 -1
- package/lib/Matrix4/index.umd.js +1 -1
- package/lib/Matrix4/index.umd.min.js +1 -1
- package/lib/Mercator/index.umd.js +1 -1
- package/lib/Mercator/index.umd.min.js +1 -1
- package/lib/OralCanvas/index.es.js +86 -13
- package/lib/OralCanvas/index.es.min.js +2 -2
- package/lib/OralWebGL/index.es.js +3 -1
- package/lib/OralWebGL/index.es.min.js +1 -1
- package/lib/SVG/index.umd.js +77 -61
- package/lib/SVG/index.umd.min.js +2 -2
- package/lib/WebGL/index.umd.js +1 -1
- package/lib/WebGL/index.umd.min.js +1 -1
- package/lib/animation/index.umd.js +1 -1
- package/lib/animation/index.umd.min.js +1 -1
- package/lib/getLoopColors/index.umd.js +1 -1
- package/lib/getLoopColors/index.umd.min.js +1 -1
- package/lib/index.umd.js +162 -73
- package/lib/index.umd.min.js +2 -2
- package/lib/rotate/index.umd.js +1 -1
- package/lib/rotate/index.umd.min.js +1 -1
- package/lib/ruler/index.umd.js +1 -1
- package/lib/ruler/index.umd.min.js +1 -1
- package/lib/viewHandler/index.umd.js +1 -1
- package/lib/viewHandler/index.umd.min.js +1 -1
- package/miniprogram/ui-canvas/index.json +4 -4
- package/miniprogram/ui-canvas/index.wxml +4 -4
- package/miniprogram/ui-canvas/index.wxss +5 -5
- package/package/Canvas/index.ts +1 -1
- package/package/Cardinal/index.ts +2 -2
- package/package/Eoap/index.ts +2 -2
- package/package/Hermite/index.ts +2 -2
- package/package/Matrix4/index.ts +2 -2
- package/package/OralCanvas/index.ts +1 -1
- package/package/OralWebGL/index.ts +1 -1
- package/package/SVG/index.ts +2 -2
- package/package/animation/index.ts +2 -2
- package/package/getLoopColors/index.ts +2 -2
- package/package/rotate/index.ts +2 -2
- package/package/ruler/index.ts +2 -2
- package/package.json +4 -4
- package/src/Matrix4/index.ts +76 -76
- package/src/Matrix4/move.ts +12 -12
- package/src/Matrix4/rotate.ts +15 -15
- package/src/Matrix4/scale.ts +11 -11
- package/src/Matrix4/transform.ts +64 -64
- package/src/animation.ts +99 -99
- package/src/common/canvas/arc.ts +50 -50
- package/src/common/canvas/config.ts +142 -61
- package/src/common/canvas/gradient.ts +29 -0
- package/src/common/canvas/index.ts +122 -82
- package/src/common/canvas/painter.ts +12 -0
- package/src/common/setStyle.ts +5 -5
- package/src/common/svg/config.ts +173 -128
- package/src/common/svg/index.ts +315 -266
- package/src/common/svg/tool.ts +43 -43
- package/src/getLoopColors.ts +42 -42
- package/src/interpolation/Cardinal.ts +91 -91
- package/src/interpolation/Hermite.ts +65 -65
- package/src/rotate.ts +7 -7
- package/src/ruler.ts +99 -99
- package/types/Canvas.d.ts +282 -221
- package/types/CanvasConfig.d.ts +3 -3
- package/types/Cardinal.d.ts +13 -13
- package/types/Gradient.d.ts +15 -0
- package/types/Hermite.d.ts +18 -18
- package/types/Matrix4.d.ts +42 -42
- package/types/SVG.d.ts +210 -210
- package/types/animation.d.ts +6 -6
- package/types/getLoopColors.d.ts +2 -2
- package/types/rotate.d.ts +2 -2
- package/types/ruler.d.ts +2 -2
- package/uni-app/ui-canvas.vue +22 -67
package/AUTHORS.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Authors ordered by first contribution.
|
|
2
|
-
|
|
3
|
-
zxl20070701 <1904314465@qq.com> <https://github.com/zxl20070701>
|
|
4
|
-
|
|
5
|
-
-----------------------------------------------------
|
|
6
|
-
We thank all of them for their contributions!
|
|
1
|
+
Authors ordered by first contribution.
|
|
2
|
+
|
|
3
|
+
zxl20070701 <1904314465@qq.com> <https://github.com/zxl20070701>
|
|
4
|
+
|
|
5
|
+
-----------------------------------------------------
|
|
6
|
+
We thank all of them for their contributions!
|
package/CHANGELOG
CHANGED
|
@@ -20,7 +20,7 @@ v0.1.1:
|
|
|
20
20
|
- 修复bug
|
|
21
21
|
1、解决uni-app和微信小程序组件ui-canvas未绑定事件点击报错问题
|
|
22
22
|
v0.2.0:
|
|
23
|
-
date:
|
|
23
|
+
date:2023-06-03
|
|
24
24
|
changes:
|
|
25
25
|
- 修复bug
|
|
26
26
|
1、为解决this问题,同时优化参数内容,修改了uni-app和微信小程序组件ui-canvas事件语法
|
|
@@ -37,4 +37,22 @@ v0.2.0:
|
|
|
37
37
|
3、Canvas新增功能
|
|
38
38
|
* 多行文字:fillTexts、strokeTexts、fullTexts
|
|
39
39
|
* 获取原始画笔:getContext
|
|
40
|
-
4、uni-app平台的ui-canvas新增cover属性配置,支持非原生渲染模式
|
|
40
|
+
4、uni-app平台的ui-canvas新增cover属性配置,支持非原生渲染模式
|
|
41
|
+
5、控制信息捕获 viewHandler
|
|
42
|
+
(支持平台:H5)
|
|
43
|
+
v0.3.0:
|
|
44
|
+
date:
|
|
45
|
+
changes:
|
|
46
|
+
- 修复bug
|
|
47
|
+
1、修复部分情况下文字大小设置失败问题
|
|
48
|
+
2、修复SVG配置失效问题
|
|
49
|
+
3、修复SVG画笔的圆弧系列(fillArc、strokeArc、fullArc)和路径arc角度未正确使用角度值问题
|
|
50
|
+
- 新增功能
|
|
51
|
+
1、丰富Canvas画笔方法
|
|
52
|
+
* createLinearGradient 线性渐变色
|
|
53
|
+
* createRadialGradient 环形渐变色
|
|
54
|
+
* clip 裁剪
|
|
55
|
+
* 绘制圆弧系列(fillArc、strokeArc、fullArc)的闭合方式添加```-round```选项
|
|
56
|
+
* getColor 获取指定位置颜色
|
|
57
|
+
2、丰富SVG画笔方法
|
|
58
|
+
* 绘制圆弧系列(fillArc、strokeArc、fullArc)的闭合方式添加```-round```选项
|
package/LICENSE
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
MIT License
|
|
2
|
-
|
|
3
|
-
Copyright (c) zxl20070701 走一步,再走一步
|
|
4
|
-
|
|
5
|
-
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
-
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
-
in the Software without restriction, including without limitation the rights
|
|
8
|
-
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
-
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
-
furnished to do so, subject to the following conditions:
|
|
11
|
-
|
|
12
|
-
The above copyright notice and this permission notice shall be included in all
|
|
13
|
-
copies or substantial portions of the Software.
|
|
14
|
-
|
|
15
|
-
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
-
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
-
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
-
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
-
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
-
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) zxl20070701 走一步,再走一步
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
21
|
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,54 +1,54 @@
|
|
|
1
|
-
- 开源不易,去 <i>[Github给个Star](https://github.com/oi-contrib/VISLite) </i>吧!
|
|
2
|
-
|
|
3
|
-
<img src='https://oi-contrib.github.io/VISLite/images/logo.png' height='300px'/>
|
|
4
|
-
|
|
5
|
-
<p>
|
|
6
|
-
<a href="https://www.npmjs.com/package/vislite?activeTab=versions">
|
|
7
|
-
<img src="https://img.shields.io/npm/dm/vislite.svg" alt="downloads">
|
|
8
|
-
</a>
|
|
9
|
-
<a href="https://www.npmjs.com/package/vislite">
|
|
10
|
-
<img src="https://img.shields.io/npm/v/vislite.svg" alt="Version">
|
|
11
|
-
</a>
|
|
12
|
-
<a href="https://github.com/oi-contrib/VISLite" target='_blank'>
|
|
13
|
-
<img alt="GitHub repo stars" src="https://img.shields.io/github/stars/oi-contrib/VISLite?style=social">
|
|
14
|
-
</a>
|
|
15
|
-
</p>
|
|
16
|
-
|
|
17
|
-
# VISLite
|
|
18
|
-
|
|
19
|
-
```VISLite```是一个使用```TypeScript```开发的可视化库。官网地址:[https://oi-contrib.github.io/VISLite](https://oi-contrib.github.io/VISLite)
|
|
20
|
-
|
|
21
|
-
主要提供了跨端的画布和计算,开发人员只需要按照文档的描述就可以非常简单的完成包括Web、uni-app、微信小程序等平台的可视化开发,除了必要的初始化差异,主要的业务代码部分不同端完全一致。
|
|
22
|
-
|
|
23
|
-
## 特点
|
|
24
|
-
|
|
25
|
-
- 灵活的引入方式:包括npm安装后按照```ES Module```或```CommonJS```规范引入或直接使用script标签的```CDN```方式。
|
|
26
|
-
- 按需引入或全局引入:支持源码TS引入、按需JS引入或者全量引入等多种方式。
|
|
27
|
-
- 简单与复杂共存:一方面我们提供了可视化需要的基础功能,你可以按照自己的需要组合使用;另一方面,为了加速开发,我们针对常见的可视化业务场景进行了封装,可以帮助你快速完成,你可以根据实际情况进行选择。
|
|
28
|
-
- 向下兼容:我们向你保证,始终向下兼容```(alpha和beta版本为测试版本,不包括)```,因此,无论何时,最新版本总是最好的选择。
|
|
29
|
-
|
|
30
|
-
## 需求墙
|
|
31
|
-
|
|
32
|
-
我们的目标是不断完善丰富可视化功能,非常希望获得你宝贵的建议和批评,无论任何想法,都可以给我们[留言](https://github.com/oi-contrib/VISLite/issues)告诉我们。
|
|
33
|
-
|
|
34
|
-
你所提的任何建议我们都会在最长一周内进行反馈说明。
|
|
35
|
-
|
|
36
|
-
## 更新日志
|
|
37
|
-
|
|
38
|
-
详见[正式版更新日志](./CHANGELOG),我们会在每次发布完正式版本后更新其内容。
|
|
39
|
-
|
|
40
|
-
## 下一步
|
|
41
|
-
|
|
42
|
-
我们会在这里列出接下来的工作重心:
|
|
43
|
-
|
|
44
|
-
- Canvas、SVG和WebGL画笔功能丰富
|
|
45
|
-
- 为加速开发,提供常用坐标系和布局
|
|
46
|
-
-
|
|
47
|
-
|
|
48
|
-
给我们[留言](https://github.com/oi-contrib/VISLite/issues)告诉我们你希望快速扩展的功能,我们会优先你的建议考虑哦~
|
|
49
|
-
|
|
50
|
-
## 版权
|
|
51
|
-
|
|
52
|
-
MIT License
|
|
53
|
-
|
|
1
|
+
- 开源不易,去 <i>[Github给个Star](https://github.com/oi-contrib/VISLite) </i>吧!
|
|
2
|
+
|
|
3
|
+
<img src='https://oi-contrib.github.io/VISLite/images/logo.png' height='300px'/>
|
|
4
|
+
|
|
5
|
+
<p>
|
|
6
|
+
<a href="https://www.npmjs.com/package/vislite?activeTab=versions">
|
|
7
|
+
<img src="https://img.shields.io/npm/dm/vislite.svg" alt="downloads">
|
|
8
|
+
</a>
|
|
9
|
+
<a href="https://www.npmjs.com/package/vislite">
|
|
10
|
+
<img src="https://img.shields.io/npm/v/vislite.svg" alt="Version">
|
|
11
|
+
</a>
|
|
12
|
+
<a href="https://github.com/oi-contrib/VISLite" target='_blank'>
|
|
13
|
+
<img alt="GitHub repo stars" src="https://img.shields.io/github/stars/oi-contrib/VISLite?style=social">
|
|
14
|
+
</a>
|
|
15
|
+
</p>
|
|
16
|
+
|
|
17
|
+
# VISLite
|
|
18
|
+
|
|
19
|
+
```VISLite```是一个使用```TypeScript```开发的可视化库。官网地址:[https://oi-contrib.github.io/VISLite](https://oi-contrib.github.io/VISLite)
|
|
20
|
+
|
|
21
|
+
主要提供了跨端的画布和计算,开发人员只需要按照文档的描述就可以非常简单的完成包括Web、uni-app、微信小程序等平台的可视化开发,除了必要的初始化差异,主要的业务代码部分不同端完全一致。
|
|
22
|
+
|
|
23
|
+
## 特点
|
|
24
|
+
|
|
25
|
+
- 灵活的引入方式:包括npm安装后按照```ES Module```或```CommonJS```规范引入或直接使用script标签的```CDN```方式。
|
|
26
|
+
- 按需引入或全局引入:支持源码TS引入、按需JS引入或者全量引入等多种方式。
|
|
27
|
+
- 简单与复杂共存:一方面我们提供了可视化需要的基础功能,你可以按照自己的需要组合使用;另一方面,为了加速开发,我们针对常见的可视化业务场景进行了封装,可以帮助你快速完成,你可以根据实际情况进行选择。
|
|
28
|
+
- 向下兼容:我们向你保证,始终向下兼容```(alpha和beta版本为测试版本,不包括)```,因此,无论何时,最新版本总是最好的选择。
|
|
29
|
+
|
|
30
|
+
## 需求墙
|
|
31
|
+
|
|
32
|
+
我们的目标是不断完善丰富可视化功能,非常希望获得你宝贵的建议和批评,无论任何想法,都可以给我们[留言](https://github.com/oi-contrib/VISLite/issues)告诉我们。
|
|
33
|
+
|
|
34
|
+
你所提的任何建议我们都会在最长一周内进行反馈说明。
|
|
35
|
+
|
|
36
|
+
## 更新日志
|
|
37
|
+
|
|
38
|
+
详见[正式版更新日志](./CHANGELOG),我们会在每次发布完正式版本后更新其内容。
|
|
39
|
+
|
|
40
|
+
## 下一步
|
|
41
|
+
|
|
42
|
+
我们会在这里列出接下来的工作重心:
|
|
43
|
+
|
|
44
|
+
- Canvas、SVG和WebGL画笔功能丰富
|
|
45
|
+
- 为加速开发,提供常用坐标系和布局
|
|
46
|
+
- 文档优化(提高可读性、丰富用例、补充教程)
|
|
47
|
+
|
|
48
|
+
给我们[留言](https://github.com/oi-contrib/VISLite/issues)告诉我们你希望快速扩展的功能,我们会优先你的建议考虑哦~
|
|
49
|
+
|
|
50
|
+
## 版权
|
|
51
|
+
|
|
52
|
+
MIT License
|
|
53
|
+
|
|
54
54
|
Copyright (c) [zxl20070701](https://zxl20070701.github.io/notebook/home.html) 走一步,再走一步
|
package/lib/Canvas/index.umd.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* VISLite JavaScript Library v0.
|
|
2
|
+
* VISLite JavaScript Library v0.3.0-alpha.0
|
|
3
3
|
* git+https://github.com/oi-contrib/VISLite.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright zxl20070701
|
|
@@ -81,7 +81,14 @@
|
|
|
81
81
|
painter.beginPath();
|
|
82
82
|
painter.translate(x, y);
|
|
83
83
|
painter.rotate(deg);
|
|
84
|
-
painter.font =
|
|
84
|
+
painter.font =
|
|
85
|
+
config.fontStyle +
|
|
86
|
+
" " +
|
|
87
|
+
config.fontWeight +
|
|
88
|
+
" " +
|
|
89
|
+
config.fontSize +
|
|
90
|
+
"px " +
|
|
91
|
+
config.fontFamily;
|
|
85
92
|
return painter;
|
|
86
93
|
};
|
|
87
94
|
var initArc = function (painter, config, cx, cy, r1, r2, beginDeg, deg) {
|
|
@@ -103,17 +110,21 @@
|
|
|
103
110
|
painter.beginPath();
|
|
104
111
|
painter.moveTo(begInnerX, begInnerY);
|
|
105
112
|
painter.arc(cx, cy, r1, beginA, endA, false);
|
|
106
|
-
if (config.arcEndCap
|
|
107
|
-
painter.lineTo(endOuterX, endOuterY);
|
|
108
|
-
else
|
|
113
|
+
if (config.arcEndCap == "round")
|
|
109
114
|
painter.arc((endInnerX + endOuterX) * 0.5, (endInnerY + endOuterY) * 0.5, r, endA - Math.PI, endA, true);
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
painter.lineTo(begInnerX, begInnerY);
|
|
115
|
+
else if (config.arcEndCap == "-round")
|
|
116
|
+
painter.arc((endInnerX + endOuterX) * 0.5, (endInnerY + endOuterY) * 0.5, r, endA - Math.PI, endA, false);
|
|
113
117
|
else
|
|
118
|
+
painter.lineTo(endOuterX, endOuterY);
|
|
119
|
+
painter.arc(cx, cy, r2, endA, beginA, true);
|
|
120
|
+
if (config.arcStartCap == "round")
|
|
114
121
|
painter.arc((begInnerX + begOuterX) * 0.5, (begInnerY + begOuterY) * 0.5, r, beginA, beginA - Math.PI, true);
|
|
122
|
+
else if (config.arcStartCap == "-round")
|
|
123
|
+
painter.arc((begInnerX + begOuterX) * 0.5, (begInnerY + begOuterY) * 0.5, r, beginA, beginA - Math.PI, false);
|
|
124
|
+
else
|
|
125
|
+
painter.lineTo(begInnerX, begInnerY);
|
|
115
126
|
});
|
|
116
|
-
if (config.arcStartCap ==
|
|
127
|
+
if (config.arcStartCap == "butt")
|
|
117
128
|
painter.closePath();
|
|
118
129
|
return painter;
|
|
119
130
|
};
|
|
@@ -186,6 +197,9 @@
|
|
|
186
197
|
this.painter.setLineDash(value);
|
|
187
198
|
}
|
|
188
199
|
else if (key in this.__specialConfig) {
|
|
200
|
+
if (key == 'fontSize') {
|
|
201
|
+
value = Math.round(value);
|
|
202
|
+
}
|
|
189
203
|
this.__specialConfig[key] = value;
|
|
190
204
|
}
|
|
191
205
|
else if (key in this.__initConfig) {
|
|
@@ -329,6 +343,12 @@
|
|
|
329
343
|
this.painter.restore();
|
|
330
344
|
return this;
|
|
331
345
|
};
|
|
346
|
+
Painter.prototype.clip = function () {
|
|
347
|
+
if (this.__region)
|
|
348
|
+
this.__region.clip();
|
|
349
|
+
this.painter.clip();
|
|
350
|
+
return this;
|
|
351
|
+
};
|
|
332
352
|
Painter.prototype.quadraticCurveTo = function (cpx, cpy, x, y) {
|
|
333
353
|
if (this.__region)
|
|
334
354
|
this.__region.quadraticCurveTo(cpx, cpy, x, y);
|
|
@@ -428,19 +448,46 @@
|
|
|
428
448
|
};
|
|
429
449
|
}
|
|
430
450
|
|
|
451
|
+
var linearGradient = function (painter, x0, y0, x1, y1) {
|
|
452
|
+
var gradient = painter.createLinearGradient(x0, y0, x1, y1);
|
|
453
|
+
var enhanceGradient = {
|
|
454
|
+
"value": function () {
|
|
455
|
+
return gradient;
|
|
456
|
+
},
|
|
457
|
+
"setColor": function (stop, color) {
|
|
458
|
+
gradient.addColorStop(stop, color);
|
|
459
|
+
return enhanceGradient;
|
|
460
|
+
}
|
|
461
|
+
};
|
|
462
|
+
return enhanceGradient;
|
|
463
|
+
};
|
|
464
|
+
var radialGradient = function (painter, cx, cy, r) {
|
|
465
|
+
var gradient = painter.createRadialGradient(cx, cy, 0, cx, cy, r);
|
|
466
|
+
var enhanceGradient = {
|
|
467
|
+
"value": function () {
|
|
468
|
+
return gradient;
|
|
469
|
+
},
|
|
470
|
+
"setColor": function (stop, color) {
|
|
471
|
+
gradient.addColorStop(stop, color);
|
|
472
|
+
return enhanceGradient;
|
|
473
|
+
}
|
|
474
|
+
};
|
|
475
|
+
return enhanceGradient;
|
|
476
|
+
};
|
|
477
|
+
|
|
431
478
|
var oldAttrName = {
|
|
432
479
|
"font-size": "fontSize",
|
|
433
480
|
"font-family": "fontFamily",
|
|
434
481
|
"font-weight": "fontWeight",
|
|
435
482
|
"font-style": "fontStyle",
|
|
436
483
|
"arc-start-cap": "arcStartCap",
|
|
437
|
-
"arc-end-cap": "arcEndCap"
|
|
484
|
+
"arc-end-cap": "arcEndCap",
|
|
438
485
|
};
|
|
439
486
|
var Canvas$1 = (function (_super) {
|
|
440
487
|
__extends(Canvas, _super);
|
|
441
488
|
function Canvas(ViewCanvas, RegionCanvas) {
|
|
442
489
|
var _this = _super.call(this, ViewCanvas, {}, new Painter(RegionCanvas, {
|
|
443
|
-
willReadFrequently: true
|
|
490
|
+
willReadFrequently: true,
|
|
444
491
|
})) || this;
|
|
445
492
|
_this.name = "Canvas";
|
|
446
493
|
_this.__regionList = {};
|
|
@@ -459,7 +506,8 @@
|
|
|
459
506
|
if (regionName) {
|
|
460
507
|
if (this.__regionList[regionName] == undefined) {
|
|
461
508
|
var tempColor = this.__regionAssemble();
|
|
462
|
-
this.__regionList[regionName] =
|
|
509
|
+
this.__regionList[regionName] =
|
|
510
|
+
"rgb(" + tempColor[0] + "," + tempColor[1] + "," + tempColor[2] + ")";
|
|
463
511
|
}
|
|
464
512
|
this.__region.useConfig("fillStyle", this.__regionList[regionName]) &&
|
|
465
513
|
this.__region.useConfig("strokeStyle", this.__regionList[regionName]);
|
|
@@ -477,7 +525,14 @@
|
|
|
477
525
|
var currentRGBA = imgData.data;
|
|
478
526
|
var doit = function () {
|
|
479
527
|
for (var key in _this.__regionList) {
|
|
480
|
-
if ("rgb(" +
|
|
528
|
+
if ("rgb(" +
|
|
529
|
+
currentRGBA[0] +
|
|
530
|
+
"," +
|
|
531
|
+
currentRGBA[1] +
|
|
532
|
+
"," +
|
|
533
|
+
currentRGBA[2] +
|
|
534
|
+
")" ==
|
|
535
|
+
_this.__regionList[key]) {
|
|
481
536
|
resolve(key);
|
|
482
537
|
break;
|
|
483
538
|
}
|
|
@@ -499,6 +554,24 @@
|
|
|
499
554
|
if (isRegion === void 0) { isRegion = false; }
|
|
500
555
|
return isRegion ? this.__region.painter : this.painter;
|
|
501
556
|
};
|
|
557
|
+
Canvas.prototype.createLinearGradient = function (x0, y0, x1, y1) {
|
|
558
|
+
return linearGradient(this.painter, x0, y0, x1, y1);
|
|
559
|
+
};
|
|
560
|
+
Canvas.prototype.createRadialGradient = function (cx, cy, r) {
|
|
561
|
+
return radialGradient(this.painter, cx, cy, r);
|
|
562
|
+
};
|
|
563
|
+
Canvas.prototype.getColor = function (x, y) {
|
|
564
|
+
var currentRGBA = this.painter.getImageData(x - 0.5, y - 0.5, 1, 1).data;
|
|
565
|
+
return ("rgba(" +
|
|
566
|
+
currentRGBA[0] +
|
|
567
|
+
"," +
|
|
568
|
+
currentRGBA[1] +
|
|
569
|
+
"," +
|
|
570
|
+
currentRGBA[2] +
|
|
571
|
+
"," +
|
|
572
|
+
currentRGBA[3] +
|
|
573
|
+
")");
|
|
574
|
+
};
|
|
502
575
|
return Canvas;
|
|
503
576
|
}(Painter));
|
|
504
577
|
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* VISLite JavaScript Library v0.
|
|
2
|
+
* VISLite JavaScript Library v0.3.0-alpha.0
|
|
3
3
|
* git+https://github.com/oi-contrib/VISLite.git
|
|
4
4
|
*
|
|
5
5
|
* Copyright zxl20070701
|
|
@@ -12,4 +12,4 @@
|
|
|
12
12
|
* alpha:内测版本,仅供开发人员提供测试环境而发布,后续的修改可能极具破坏性,非有明确了解前请勿直接用于项目中
|
|
13
13
|
* beta:外测版本,正式发布前的确认测试,或者新功能紧急发布,一般可以直接用于实际项目,因为即使后续发现了问题,直接使用正式版即可,不会有破坏性
|
|
14
14
|
*/
|
|
15
|
-
var t,i;t=this,i=function(){"use strict";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)};function i(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)}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)]},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,h){if(o>s){var _=o;o=s,s=_}return a%=2*Math.PI,h>=1.999999*Math.PI||h<=1.999999*-Math.PI?h=2*Math.PI:h%=2*Math.PI,function(t,i,n,r,o,s,a){i<0&&(t+=i,i*=-1);var h,_=[];h=e(0,0,t,o,0),_[0]=h[0],_[1]=h[1],h=e(0,0,i,h[0],h[1]),_[2]=h[0],_[3]=h[1],h=e(0,0,t,s,0),_[4]=h[0],_[5]=h[1],h=e(0,0,i,h[0],h[1]),_[6]=h[0],_[7]=h[1],a(t,t+i,_[0]+n,_[1]+r,_[4]+n,_[5]+r,_[2]+n,_[3]+r,_[6]+n,_[7]+r,.5*(s-o))}(a,h,n,r,o,s,(function(e,a,h,_,l,f,p,u,c,g,v){v<0&&(v=-v),t.beginPath(),t.moveTo(h,_),t.arc(n,r,o,e,a,!1),"round"!=i.arcEndCap?t.lineTo(c,g):t.arc(.5*(p+c),.5*(u+g),v,a-Math.PI,a,!0),t.arc(n,r,s,a,e,!0),"round"!=i.arcStartCap?t.lineTo(h,_):t.arc(.5*(h+l),.5*(_+f),v,e,e-Math.PI,!0)})),"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){return t.beginPath(),t.rect(i,e,n,r),t};function a(t,i,e,n,r){for(var o=0,s="",a=0;a<i.length;a++)t.measureText(s+i[a]).width>e?(r(s,((o+=1)-.5)*n),s=i[a]):a==i.length-1?(o+=1,r(s+i[a],(o-.5)*n)):s+=i[a];return o*n}var h=function(){function t(t,i,e){void 0===i&&(i={}),this.__region=null,this.__specialConfig={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt"},this.__initConfig={fillStyle:"black",strokeStyle:"black",lineWidth:1,textAlign:"left",textBaseline:"middle",lineDash:[],shadowBlur:0,shadowColor:"black"},this.painter=t.getContext("2d",i),this.__region=e,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),"lineDash"==t)this.painter.setLineDash&&this.painter.setLineDash(i);else if(t in this.__specialConfig)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.__region.fillText(t,i,e,r),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.__region.strokeText(t,i,e,r),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.__region.fullText(t,i,e,r),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 h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,r,o),this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var _=a(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){h.painter.fillText(t,0,i)}));return this.painter.restore(),_},t.prototype.strokeTexts=function(t,i,e,r,o,s){var h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,r,o),this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var _=a(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){h.painter.strokeText(t,0,i)}));return this.painter.restore(),_},t.prototype.fullTexts=function(t,i,e,r,o,s){var h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,r,o),this.painter.save(),n(this.painter,this.__specialConfig,i,e,s);var _=a(this.painter,t,r,this.__specialConfig.fontSize*o,(function(t,i){h.painter.fillText(t,0,i),h.painter.strokeText(t,0,i)}));return this.painter.restore(),_},t.prototype.beginPath=function(){return this.__region&&this.__region.beginPath(),this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&this.__region.closePath(),this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&this.__region.moveTo(t,i),this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&this.__region.lineTo(t,i),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.__region.arc(t,i,e,n,r),this.painter.arc(t,i,e,n,n+r,r<0),this},t.prototype.fill=function(){return this.__region&&this.__region.fill(),this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&this.__region.stroke(),this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&this.__region.full(),this.painter.fill(),this.painter.stroke(),this},t.prototype.save=function(){return this.__region&&this.__region.save(),this.painter.save(),this},t.prototype.restore=function(){return this.__region&&this.__region.restore(),this.painter.restore(),this},t.prototype.quadraticCurveTo=function(t,i,e,n){return this.__region&&this.__region.quadraticCurveTo(t,i,e,n),this.painter.quadraticCurveTo(t,i,e,n),this},t.prototype.bezierCurveTo=function(t,i,e,n,r,o){return this.__region&&this.__region.bezierCurveTo(t,i,e,n,r,o),this.painter.bezierCurveTo(t,i,e,n,r,o),this},t.prototype.clearRect=function(t,i,e,n){return this.__region&&this.__region.clearRect(t,i,e,n),this.painter.clearRect(t,i,e,n),this},t.prototype.fillArc=function(t,i,e,n,o,s){return this.__region&&this.__region.fillArc(t,i,e,n,o,s),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.__region.strokeArc(t,i,e,n,o,s),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.__region.fullArc(t,i,e,n,o,s),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.__region.fillCircle(t,i,e),o(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&this.__region.strokeCircle(t,i,e),o(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&this.__region.fullCircle(t,i,e),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.__region.fillRect(t,i,e,n),s(this.painter,t,i,e,n).fill(),this},t.prototype.strokeRect=function(t,i,e,n){return this.__region&&this.__region.strokeRect(t,i,e,n),s(this.painter,t,i,e,n).stroke(),this},t.prototype.fullRect=function(t,i,e,n){return this.__region&&this.__region.fullRect(t,i,e,n),s(this.painter,t,i,e,n),this.painter.fill(),this.painter.stroke(),this},t}(),_={"font-size":"fontSize","font-family":"fontFamily","font-weight":"fontWeight","font-style":"fontStyle","arc-start-cap":"arcStartCap","arc-end-cap":"arcEndCap"},l=function(t){function e(i,e){var n=t.call(this,i,{},new h(e,{willReadFrequently:!0}))||this;return n.name="Canvas",n.__regionList={},n.__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]<i){r[o]=+(r[o]+e).toFixed(7);break}o<n-1&&(r[o]=t)}return r}}(0,255,1,3),n.setRegion(""),n}return i(e,t),e.prototype.config=function(t){for(var i in t){var e=_[i]||i;this.useConfig(e,t[i])}return this},e.prototype.setRegion=function(t){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,r){var o=e.__region.painter.getImageData(t-.5,i-.5,1,1),s=o.data,a=function(){for(var t in e.__regionList)if("rgb("+s[0]+","+s[1]+","+s[2]+")"==e.__regionList[t]){n(t);break}n("")};s?a():o.then((function(t){s=t,a()}))}))},e.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region.painter:this.painter},e}(h);return function(t){function e(i){var e=this;if(!i)throw new Error("VISLite Canvas:The mount point requires an HTMLElement type but encountered null.");var n,r,o=i.clientWidth,s=i.clientHeight,a=i;a._vislite_canvas_?(n=a._vislite_canvas_[0],r=a._vislite_canvas_[1]):(n=document.createElement("canvas"),i.appendChild(n),r=document.createElement("canvas"),a._vislite_canvas_=[n,r],i.setAttribute("vislite","Canvas"));for(var h=0,_=[n,r];h<_.length;h++){var l=_[h];l.style.width=o+"px",l.setAttribute("width",o+""),l.style.height=s+"px",l.setAttribute("height",s+"")}return(e=t.call(this,n,r)||this).__canvas=n,e}return i(e,t),e.prototype.toDataURL=function(){var t=this;return new Promise((function(i){i(t.__canvas.toDataURL())}))},e}(l)},"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(t="undefined"!=typeof globalThis?globalThis:t||self).VISLite_Canvas=i();
|
|
15
|
+
var t,i;t=this,i=function(){"use strict";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)};function i(i,e){if("function"!=typeof e&&null!==e)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");function r(){this.constructor=i}t(i,e),i.prototype=null===e?Object.create(e):(r.prototype=e.prototype,new r)}var e=function(t,i,e,r,n){var o=Math.cos(e),s=Math.sin(e);return[+((r-t)*o-(n-i)*s+t).toFixed(7),+((r-t)*s+(n-i)*o+i).toFixed(7)]},r=function(t,i,e,r,n){return t.beginPath(),t.translate(e,r),t.rotate(n),t.font=i.fontStyle+" "+i.fontWeight+" "+i.fontSize+"px "+i.fontFamily,t},n=function(t,i,r,n,o,s,a,h){if(o>s){var l=o;o=s,s=l}return a%=2*Math.PI,h>=1.999999*Math.PI||h<=1.999999*-Math.PI?h=2*Math.PI:h%=2*Math.PI,function(t,i,r,n,o,s,a){i<0&&(t+=i,i*=-1);var h,l=[];h=e(0,0,t,o,0),l[0]=h[0],l[1]=h[1],h=e(0,0,i,h[0],h[1]),l[2]=h[0],l[3]=h[1],h=e(0,0,t,s,0),l[4]=h[0],l[5]=h[1],h=e(0,0,i,h[0],h[1]),l[6]=h[0],l[7]=h[1],a(t,t+i,l[0]+r,l[1]+n,l[4]+r,l[5]+n,l[2]+r,l[3]+n,l[6]+r,l[7]+n,.5*(s-o))}(a,h,r,n,o,s,(function(e,a,h,l,_,p,u,f,c,g,v){v<0&&(v=-v),t.beginPath(),t.moveTo(h,l),t.arc(r,n,o,e,a,!1),"round"==i.arcEndCap?t.arc(.5*(u+c),.5*(f+g),v,a-Math.PI,a,!0):"-round"==i.arcEndCap?t.arc(.5*(u+c),.5*(f+g),v,a-Math.PI,a,!1):t.lineTo(c,g),t.arc(r,n,s,a,e,!0),"round"==i.arcStartCap?t.arc(.5*(h+_),.5*(l+p),v,e,e-Math.PI,!0):"-round"==i.arcStartCap?t.arc(.5*(h+_),.5*(l+p),v,e,e-Math.PI,!1):t.lineTo(h,l)})),"butt"==i.arcStartCap&&t.closePath(),t},o=function(t,i,e,r){return t.beginPath(),t.moveTo(i+r,e),t.arc(i,e,r,0,2*Math.PI),t},s=function(t,i,e,r,n){return t.beginPath(),t.rect(i,e,r,n),t};function a(t,i,e,r,n){for(var o=0,s="",a=0;a<i.length;a++)t.measureText(s+i[a]).width>e?(n(s,((o+=1)-.5)*r),s=i[a]):a==i.length-1?(o+=1,n(s+i[a],(o-.5)*r)):s+=i[a];return o*r}var h=function(){function t(t,i,e){void 0===i&&(i={}),this.__region=null,this.__specialConfig={fontSize:16,fontFamily:"sans-serif",fontWeight:400,fontStyle:"normal",arcStartCap:"butt",arcEndCap:"butt"},this.__initConfig={fillStyle:"black",strokeStyle:"black",lineWidth:1,textAlign:"left",textBaseline:"middle",lineDash:[],shadowBlur:0,shadowColor:"black"},this.painter=t.getContext("2d",i),this.__region=e,this.painter.textBaseline="middle",this.painter.textAlign="left"}return t.prototype.useConfig=function(t,i){if(this.__region&&["fillStyle","strokeStyle","shadowBlur","shadowColor"].indexOf(t)<0&&this.__region.useConfig(t,i),"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,n){return void 0===n&&(n=0),this.__region&&this.__region.fillText(t,i,e,n),this.painter.save(),r(this.painter,this.__specialConfig,i,e,n).fillText(t,0,0),this.painter.restore(),this},t.prototype.strokeText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&this.__region.strokeText(t,i,e,n),this.painter.save(),r(this.painter,this.__specialConfig,i,e,n).strokeText(t,0,0),this.painter.restore(),this},t.prototype.fullText=function(t,i,e,n){return void 0===n&&(n=0),this.__region&&this.__region.fullText(t,i,e,n),this.painter.save(),r(this.painter,this.__specialConfig,i,e,n),this.painter.fillText(t,0,0),this.painter.strokeText(t,0,0),this.painter.restore(),this},t.prototype.fillTexts=function(t,i,e,n,o,s){var h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,n,o),this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){h.painter.fillText(t,0,i)}));return this.painter.restore(),l},t.prototype.strokeTexts=function(t,i,e,n,o,s){var h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,n,o),this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){h.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.fullTexts=function(t,i,e,n,o,s){var h=this;void 0===o&&(o=1.2),void 0===s&&(s=0),this.__region&&this.__region.fillTexts(t,i,e,n,o),this.painter.save(),r(this.painter,this.__specialConfig,i,e,s);var l=a(this.painter,t,n,this.__specialConfig.fontSize*o,(function(t,i){h.painter.fillText(t,0,i),h.painter.strokeText(t,0,i)}));return this.painter.restore(),l},t.prototype.beginPath=function(){return this.__region&&this.__region.beginPath(),this.painter.beginPath(),this},t.prototype.closePath=function(){return this.__region&&this.__region.closePath(),this.painter.closePath(),this},t.prototype.moveTo=function(t,i){return this.__region&&this.__region.moveTo(t,i),this.painter.moveTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.lineTo=function(t,i){return this.__region&&this.__region.lineTo(t,i),this.painter.lineTo(Math.round(t)+.5,Math.round(i)+.5),this},t.prototype.arc=function(t,i,e,r,n){return this.__region&&this.__region.arc(t,i,e,r,n),this.painter.arc(t,i,e,r,r+n,n<0),this},t.prototype.fill=function(){return this.__region&&this.__region.fill(),this.painter.fill(),this},t.prototype.stroke=function(){return this.__region&&this.__region.stroke(),this.painter.stroke(),this},t.prototype.full=function(){return this.__region&&this.__region.full(),this.painter.fill(),this.painter.stroke(),this},t.prototype.save=function(){return this.__region&&this.__region.save(),this.painter.save(),this},t.prototype.restore=function(){return this.__region&&this.__region.restore(),this.painter.restore(),this},t.prototype.clip=function(){return this.__region&&this.__region.clip(),this.painter.clip(),this},t.prototype.quadraticCurveTo=function(t,i,e,r){return this.__region&&this.__region.quadraticCurveTo(t,i,e,r),this.painter.quadraticCurveTo(t,i,e,r),this},t.prototype.bezierCurveTo=function(t,i,e,r,n,o){return this.__region&&this.__region.bezierCurveTo(t,i,e,r,n,o),this.painter.bezierCurveTo(t,i,e,r,n,o),this},t.prototype.clearRect=function(t,i,e,r){return this.__region&&this.__region.clearRect(t,i,e,r),this.painter.clearRect(t,i,e,r),this},t.prototype.fillArc=function(t,i,e,r,o,s){return this.__region&&this.__region.fillArc(t,i,e,r,o,s),n(this.painter,this.__specialConfig,t,i,e,r,o,s).fill(),this},t.prototype.strokeArc=function(t,i,e,r,o,s){return this.__region&&this.__region.strokeArc(t,i,e,r,o,s),n(this.painter,this.__specialConfig,t,i,e,r,o,s).stroke(),this},t.prototype.fullArc=function(t,i,e,r,o,s){return this.__region&&this.__region.fullArc(t,i,e,r,o,s),n(this.painter,this.__specialConfig,t,i,e,r,o,s),this.painter.fill(),this.painter.stroke(),this},t.prototype.fillCircle=function(t,i,e){return this.__region&&this.__region.fillCircle(t,i,e),o(this.painter,t,i,e).fill(),this},t.prototype.strokeCircle=function(t,i,e){return this.__region&&this.__region.strokeCircle(t,i,e),o(this.painter,t,i,e).stroke(),this},t.prototype.fullCircle=function(t,i,e){return this.__region&&this.__region.fullCircle(t,i,e),o(this.painter,t,i,e),this.painter.fill(),this.painter.stroke(),this},t.prototype.fillRect=function(t,i,e,r){return this.__region&&this.__region.fillRect(t,i,e,r),s(this.painter,t,i,e,r).fill(),this},t.prototype.strokeRect=function(t,i,e,r){return this.__region&&this.__region.strokeRect(t,i,e,r),s(this.painter,t,i,e,r).stroke(),this},t.prototype.fullRect=function(t,i,e,r){return this.__region&&this.__region.fullRect(t,i,e,r),s(this.painter,t,i,e,r),this.painter.fill(),this.painter.stroke(),this},t}(),l={"font-size":"fontSize","font-family":"fontFamily","font-weight":"fontWeight","font-style":"fontStyle","arc-start-cap":"arcStartCap","arc-end-cap":"arcEndCap"},_=function(t){function e(i,e){var r=t.call(this,i,{},new h(e,{willReadFrequently:!0}))||this;return r.name="Canvas",r.__regionList={},r.__regionAssemble=function(t,i,e,r){for(var n=[],o=0;o<r;o++)n[o]=t;return function(){for(var o=0;o<r;o++){if(n[o]<i){n[o]=+(n[o]+e).toFixed(7);break}o<r-1&&(n[o]=t)}return n}}(0,255,1,3),r.setRegion(""),r}return i(e,t),e.prototype.config=function(t){for(var i in t){var e=l[i]||i;this.useConfig(e,t[i])}return this},e.prototype.setRegion=function(t){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(r,n){var o=e.__region.painter.getImageData(t-.5,i-.5,1,1),s=o.data,a=function(){for(var t in e.__regionList)if("rgb("+s[0]+","+s[1]+","+s[2]+")"==e.__regionList[t]){r(t);break}r("")};s?a():o.then((function(t){s=t,a()}))}))},e.prototype.getContext=function(t){return void 0===t&&(t=!1),t?this.__region.painter:this.painter},e.prototype.createLinearGradient=function(t,i,e,r){return function(t,i,e,r,n){var o=t.createLinearGradient(i,e,r,n),s={value:function(){return o},setColor:function(t,i){return o.addColorStop(t,i),s}};return s}(this.painter,t,i,e,r)},e.prototype.createRadialGradient=function(t,i,e){return function(t,i,e,r){var n=t.createRadialGradient(i,e,0,i,e,r),o={value:function(){return n},setColor:function(t,i){return n.addColorStop(t,i),o}};return o}(this.painter,t,i,e)},e.prototype.getColor=function(t,i){var e=this.painter.getImageData(t-.5,i-.5,1,1).data;return"rgba("+e[0]+","+e[1]+","+e[2]+","+e[3]+")"},e}(h);return function(t){function e(i){var e=this;if(!i)throw new Error("VISLite Canvas:The mount point requires an HTMLElement type but encountered null.");var r,n,o=i.clientWidth,s=i.clientHeight,a=i;a._vislite_canvas_?(r=a._vislite_canvas_[0],n=a._vislite_canvas_[1]):(r=document.createElement("canvas"),i.appendChild(r),n=document.createElement("canvas"),a._vislite_canvas_=[r,n],i.setAttribute("vislite","Canvas"));for(var h=0,l=[r,n];h<l.length;h++){var _=l[h];_.style.width=o+"px",_.setAttribute("width",o+""),_.style.height=s+"px",_.setAttribute("height",s+"")}return(e=t.call(this,r,n)||this).__canvas=r,e}return i(e,t),e.prototype.toDataURL=function(){var t=this;return new Promise((function(i){i(t.__canvas.toDataURL())}))},e}(_)},"object"==typeof exports&&"undefined"!=typeof module?module.exports=i():"function"==typeof define&&define.amd?define(i):(t="undefined"!=typeof globalThis?globalThis:t||self).VISLite_Canvas=i();
|
package/lib/Eoap/index.umd.js
CHANGED
package/lib/Hermite/index.umd.js
CHANGED
package/lib/Matrix4/index.umd.js
CHANGED