vislite 0.4.1 → 0.5.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.
Files changed (180) hide show
  1. package/.editorconfig +18 -18
  2. package/AUTHORS.txt +6 -6
  3. package/CHANGELOG +16 -0
  4. package/LICENSE +20 -20
  5. package/README.md +69 -69
  6. package/lib/Buffer/index.umd.js +3 -3
  7. package/lib/Buffer/index.umd.min.js +3 -3
  8. package/lib/Canvas/index.umd.js +3 -3
  9. package/lib/Canvas/index.umd.min.js +3 -3
  10. package/lib/Cardinal/index.umd.js +3 -3
  11. package/lib/Cardinal/index.umd.min.js +3 -3
  12. package/lib/Eoap/index.umd.js +3 -3
  13. package/lib/Eoap/index.umd.min.js +3 -3
  14. package/lib/Geometry/index.umd.js +205 -0
  15. package/lib/Geometry/index.umd.min.js +11 -0
  16. package/lib/Hermite/index.umd.js +3 -3
  17. package/lib/Hermite/index.umd.min.js +3 -3
  18. package/lib/Matrix4/index.umd.js +3 -3
  19. package/lib/Matrix4/index.umd.min.js +3 -3
  20. package/lib/Mercator/index.umd.js +5 -4
  21. package/lib/Mercator/index.umd.min.js +4 -4
  22. package/lib/OralCanvas/index.es.js +3 -3
  23. package/lib/OralCanvas/index.es.min.js +3 -3
  24. package/lib/OralWebGL/index.es.js +11 -11
  25. package/lib/OralWebGL/index.es.min.js +4 -4
  26. package/lib/SVG/index.umd.js +10 -4
  27. package/lib/SVG/index.umd.min.js +4 -4
  28. package/lib/Shader/index.umd.js +11 -11
  29. package/lib/Shader/index.umd.min.js +4 -4
  30. package/lib/Texture/index.umd.js +3 -3
  31. package/lib/Texture/index.umd.min.js +3 -3
  32. package/lib/TreeLayout/index.umd.js +8 -5
  33. package/lib/TreeLayout/index.umd.min.js +4 -4
  34. package/lib/WebGL/index.umd.js +11 -11
  35. package/lib/WebGL/index.umd.min.js +4 -4
  36. package/lib/animation/index.umd.js +3 -3
  37. package/lib/animation/index.umd.min.js +3 -3
  38. package/lib/formatColor/index.umd.js +3 -3
  39. package/lib/formatColor/index.umd.min.js +3 -3
  40. package/lib/getLoopColors/index.umd.js +3 -3
  41. package/lib/getLoopColors/index.umd.min.js +3 -3
  42. package/lib/getWebGLContext/index.umd.js +3 -3
  43. package/lib/getWebGLContext/index.umd.min.js +3 -3
  44. package/lib/index.umd.js +166 -16
  45. package/lib/index.umd.min.js +4 -4
  46. package/lib/resizeObserver/index.umd.js +3 -3
  47. package/lib/resizeObserver/index.umd.min.js +3 -3
  48. package/lib/rotate/index.umd.js +3 -3
  49. package/lib/rotate/index.umd.min.js +3 -3
  50. package/lib/ruler/index.umd.js +3 -3
  51. package/lib/ruler/index.umd.min.js +3 -3
  52. package/lib/throttle/index.umd.js +3 -3
  53. package/lib/throttle/index.umd.min.js +3 -3
  54. package/lib/viewHandler/index.umd.js +3 -3
  55. package/lib/viewHandler/index.umd.min.js +3 -3
  56. package/miniprogram/ui-canvas/index.js +107 -107
  57. package/miniprogram/ui-canvas/index.json +4 -4
  58. package/miniprogram/ui-canvas/index.wxml +4 -4
  59. package/miniprogram/ui-canvas/index.wxss +5 -5
  60. package/package/Buffer/index.ts +2 -2
  61. package/package/Canvas/index.ts +2 -2
  62. package/package/Cardinal/index.ts +2 -2
  63. package/package/Eoap/index.ts +2 -2
  64. package/package/Geometry/index.ts +3 -0
  65. package/package/Hermite/index.ts +2 -2
  66. package/package/Matrix4/index.ts +2 -2
  67. package/package/Mercator/index.ts +2 -2
  68. package/package/OralCanvas/index.ts +2 -2
  69. package/package/OralWebGL/index.ts +2 -2
  70. package/package/SVG/index.ts +2 -2
  71. package/package/Shader/index.ts +39 -39
  72. package/package/Texture/index.ts +2 -2
  73. package/package/TreeLayout/index.ts +2 -2
  74. package/package/WebGL/index.ts +2 -2
  75. package/package/animation/index.ts +2 -2
  76. package/package/formatColor/index.ts +2 -2
  77. package/package/getLoopColors/index.ts +2 -2
  78. package/package/getWebGLContext/index.ts +39 -39
  79. package/package/index.ts +6 -1
  80. package/package/resizeObserver/index.ts +2 -2
  81. package/package/rotate/index.ts +2 -2
  82. package/package/ruler/index.ts +2 -2
  83. package/package/throttle/index.ts +2 -2
  84. package/package/viewHandler/index.ts +2 -2
  85. package/package.json +3 -1
  86. package/src/Canvas.ts +67 -67
  87. package/src/Eoap.ts +1 -1
  88. package/src/Geometry.ts +83 -0
  89. package/src/Matrix4/index.ts +2 -2
  90. package/src/Matrix4/move.ts +12 -12
  91. package/src/Matrix4/rotate.ts +15 -15
  92. package/src/Matrix4/scale.ts +11 -11
  93. package/src/Matrix4/transform.ts +64 -64
  94. package/src/Mercator.ts +3 -2
  95. package/src/SVG.ts +24 -24
  96. package/src/TreeLayout/index.ts +4 -3
  97. package/src/WebGL.ts +66 -66
  98. package/src/animation.ts +98 -98
  99. package/src/common/assemble.ts +22 -22
  100. package/src/common/canvas/arc.ts +50 -50
  101. package/src/common/canvas/config.ts +158 -158
  102. package/src/common/canvas/gradient.ts +29 -29
  103. package/src/common/canvas/index.ts +168 -168
  104. package/src/common/canvas/painter.ts +426 -426
  105. package/src/common/canvas/texts.ts +18 -18
  106. package/src/common/geometry/prism-horizontal.ts +33 -0
  107. package/src/common/geometry/prism-vertical.ts +40 -0
  108. package/src/common/geometry/sphere-fragment.ts +39 -0
  109. package/src/common/geometry/tool/circle.ts +12 -0
  110. package/src/common/mergeOption.ts +6 -6
  111. package/src/common/setStyle.ts +5 -5
  112. package/src/common/svg/config.ts +174 -174
  113. package/src/common/svg/index.ts +9 -1
  114. package/src/common/svg/tool.ts +44 -44
  115. package/src/common/tree/index.ts +25 -25
  116. package/src/common/tree/toInnerTree.ts +56 -56
  117. package/src/common/tree/toPlainTree.ts +131 -131
  118. package/src/common/webgl/buffer.ts +79 -79
  119. package/src/common/webgl/doDraw.ts +108 -108
  120. package/src/common/webgl/getColorFactory.ts +26 -26
  121. package/src/common/webgl/getShader.ts +48 -48
  122. package/src/common/webgl/getTexture.ts +11 -11
  123. package/src/common/webgl/getWebGLContext.ts +27 -27
  124. package/src/common/webgl/index.ts +223 -223
  125. package/src/common/webgl/shader.ts +75 -75
  126. package/src/common/webgl/texture.ts +96 -96
  127. package/src/formatColor.ts +44 -44
  128. package/src/getLoopColors.ts +42 -42
  129. package/src/interpolation/Cardinal.ts +110 -110
  130. package/src/interpolation/Hermite.ts +65 -65
  131. package/src/resizeObserver.ts +36 -36
  132. package/src/rotate.ts +1 -1
  133. package/src/ruler.ts +188 -188
  134. package/src/shader/fsColor.c +7 -7
  135. package/src/shader/fsColors.c +7 -7
  136. package/src/shader/fsCube.c +8 -8
  137. package/src/shader/fsImage.c +8 -8
  138. package/src/shader/vsColor.c +17 -17
  139. package/src/shader/vsColors.c +13 -13
  140. package/src/shader/vsCube.c +13 -13
  141. package/src/shader/vsImage.c +13 -13
  142. package/src/throttle.ts +51 -51
  143. package/src/viewHandler.ts +158 -158
  144. package/types/Buffer.d.ts +23 -23
  145. package/types/Canvas.d.ts +300 -300
  146. package/types/CanvasConfig.d.ts +24 -0
  147. package/types/CanvasOption.d.ts +7 -7
  148. package/types/Cardinal.d.ts +13 -13
  149. package/types/Geometry.d.ts +41 -0
  150. package/types/GeometryOption.d.ts +12 -0
  151. package/types/GeometryResult.d.ts +19 -0
  152. package/types/Gradient.d.ts +14 -14
  153. package/types/Hermite.d.ts +18 -18
  154. package/types/Map.d.ts +2 -2
  155. package/types/Matrix4.d.ts +4 -4
  156. package/types/Object3D.d.ts +114 -114
  157. package/types/SVG.d.ts +18 -13
  158. package/types/SVGConfig.d.ts +76 -60
  159. package/types/Scene3D.d.ts +6 -6
  160. package/types/Shader.d.ts +21 -21
  161. package/types/Texture.d.ts +16 -16
  162. package/types/Tree.d.ts +69 -69
  163. package/types/TreeConfig.d.ts +24 -24
  164. package/types/TreeLayout.d.ts +8 -2
  165. package/types/TreeOption.d.ts +48 -48
  166. package/types/WebGL.d.ts +38 -38
  167. package/types/WebGLOption.d.ts +7 -7
  168. package/types/animation.d.ts +6 -6
  169. package/types/formatColor.d.ts +2 -2
  170. package/types/getLoopColors.d.ts +2 -2
  171. package/types/getWebGLContext.d.ts +2 -2
  172. package/types/index.d.ts +15 -1
  173. package/types/painterConfig.d.ts +2 -2
  174. package/types/resizeObserver.d.ts +2 -2
  175. package/types/rotate.d.ts +1 -1
  176. package/types/ruler.d.ts +7 -7
  177. package/types/throttle.d.ts +4 -4
  178. package/types/throttleOption.d.ts +21 -21
  179. package/types/viewHandler.d.ts +13 -13
  180. package/uni-app/ui-canvas.vue +222 -222
@@ -1,107 +1,107 @@
1
- import OralCanvas from "../../lib/OralCanvas/index.es.js";
2
-
3
- let dpr = wx.getSystemInfoSync().pixelRatio;
4
-
5
- Component({
6
- properties: {
7
- width: {
8
- type: Number,
9
- default: 300
10
- },
11
- height: {
12
- type: Number,
13
- default: 150
14
- },
15
- region: {
16
- type: Boolean,
17
- default: true
18
- },
19
- touchstart: {
20
- type: Function,
21
- default: () => { }
22
- }
23
- },
24
- data: {
25
- help: {}
26
- },
27
- lifetimes: {
28
- ready() {
29
-
30
- }
31
- },
32
- methods: {
33
- fetch() {
34
- return new Promise((resolve, reject) => {
35
-
36
- let getCanvasContext = (idName, doback) => {
37
- if (idName != 'region' || this.data.region) {
38
- const query = wx.createSelectorQuery().in(this);
39
- query.select('#' + idName)
40
- .fields({ node: true, size: true })
41
- .exec((res) => {
42
- const canvas = res[0].node;
43
- const ctx = canvas.getContext('2d');
44
-
45
- canvas.width = res[0].width * (idName == "region" ? 1 : dpr);
46
- canvas.height = res[0].height * (idName == "region" ? 1 : dpr);
47
-
48
- if (idName != "region") {
49
- ctx.scale(dpr, dpr);
50
- }
51
-
52
- doback(ctx);
53
- });
54
- } else {
55
- doback(null);
56
- }
57
- };
58
-
59
- getCanvasContext("painter", painter => {
60
- getCanvasContext("region", region => {
61
- this.data.help.instance = new OralCanvas({
62
- getContext() {
63
- return painter;
64
- }
65
- }, this.data.region ? {
66
- getContext() {
67
- return region;
68
- }
69
- } : null);
70
-
71
- this.data.help.instance.toDataURL = () => {
72
- return new Promise((resolveUrl) => {
73
- wx.canvasToTempFilePath({
74
- canvasId: "painter",
75
- success: function (e) {
76
- resolveUrl(e.tempFilePath);
77
- },
78
- }, this);
79
- })
80
- };
81
- resolve(this.data.help.instance);
82
- });
83
- });
84
-
85
- });
86
- },
87
- doit(event, doback) {
88
- let x = event.touches[0].x;
89
- let y = event.touches[0].y;
90
-
91
- this.data.help.instance.getRegion(x, y).then((regionName) => {
92
- // 兼容旧语法
93
- if (doback) doback(regionName);
94
-
95
- this.triggerEvent('dotouchstart', {
96
- name: regionName,
97
- x: x,
98
- y: y
99
- })
100
- });
101
- },
102
- doitstart(event) {
103
- this.doit(event, this.data.touchstart);
104
- }
105
- }
106
-
107
- });
1
+ import OralCanvas from "../../lib/OralCanvas/index.es.js";
2
+
3
+ let dpr = wx.getSystemInfoSync().pixelRatio;
4
+
5
+ Component({
6
+ properties: {
7
+ width: {
8
+ type: Number,
9
+ default: 300
10
+ },
11
+ height: {
12
+ type: Number,
13
+ default: 150
14
+ },
15
+ region: {
16
+ type: Boolean,
17
+ default: true
18
+ },
19
+ touchstart: {
20
+ type: Function,
21
+ default: () => { }
22
+ }
23
+ },
24
+ data: {
25
+ help: {}
26
+ },
27
+ lifetimes: {
28
+ ready() {
29
+
30
+ }
31
+ },
32
+ methods: {
33
+ fetch() {
34
+ return new Promise((resolve, reject) => {
35
+
36
+ let getCanvasContext = (idName, doback) => {
37
+ if (idName != 'region' || this.data.region) {
38
+ const query = wx.createSelectorQuery().in(this);
39
+ query.select('#' + idName)
40
+ .fields({ node: true, size: true })
41
+ .exec((res) => {
42
+ const canvas = res[0].node;
43
+ const ctx = canvas.getContext('2d');
44
+
45
+ canvas.width = res[0].width * (idName == "region" ? 1 : dpr);
46
+ canvas.height = res[0].height * (idName == "region" ? 1 : dpr);
47
+
48
+ if (idName != "region") {
49
+ ctx.scale(dpr, dpr);
50
+ }
51
+
52
+ doback(ctx);
53
+ });
54
+ } else {
55
+ doback(null);
56
+ }
57
+ };
58
+
59
+ getCanvasContext("painter", painter => {
60
+ getCanvasContext("region", region => {
61
+ this.data.help.instance = new OralCanvas({
62
+ getContext() {
63
+ return painter;
64
+ }
65
+ }, this.data.region ? {
66
+ getContext() {
67
+ return region;
68
+ }
69
+ } : null);
70
+
71
+ this.data.help.instance.toDataURL = () => {
72
+ return new Promise((resolveUrl) => {
73
+ wx.canvasToTempFilePath({
74
+ canvasId: "painter",
75
+ success: function (e) {
76
+ resolveUrl(e.tempFilePath);
77
+ },
78
+ }, this);
79
+ })
80
+ };
81
+ resolve(this.data.help.instance);
82
+ });
83
+ });
84
+
85
+ });
86
+ },
87
+ doit(event, doback) {
88
+ let x = event.touches[0].x;
89
+ let y = event.touches[0].y;
90
+
91
+ this.data.help.instance.getRegion(x, y).then((regionName) => {
92
+ // 兼容旧语法
93
+ if (doback) doback(regionName);
94
+
95
+ this.triggerEvent('dotouchstart', {
96
+ name: regionName,
97
+ x: x,
98
+ y: y
99
+ })
100
+ });
101
+ },
102
+ doitstart(event) {
103
+ this.doit(event, this.data.touchstart);
104
+ }
105
+ }
106
+
107
+ });
@@ -1,4 +1,4 @@
1
- {
2
- "usingComponents": {},
3
- "component": true
4
- }
1
+ {
2
+ "usingComponents": {},
3
+ "component": true
4
+ }
@@ -1,4 +1,4 @@
1
- <view>
2
- <canvas type="2d" id="painter" style='width:{{width}}px;height:{{height}}px;' bindtouchstart="doitstart"></canvas>
3
- <canvas wx:if="{{region}}" type="2d" id="region" style='width:{{width}}px;height:{{height}}px;' class="region"></canvas>
4
- </view>
1
+ <view>
2
+ <canvas type="2d" id="painter" style='width:{{width}}px;height:{{height}}px;' bindtouchstart="doitstart"></canvas>
3
+ <canvas wx:if="{{region}}" type="2d" id="region" style='width:{{width}}px;height:{{height}}px;' class="region"></canvas>
4
+ </view>
@@ -1,5 +1,5 @@
1
- /* 辅助的区域不应该可以看见 */
2
- .region {
3
- position: fixed;
4
- left: 50000px;
5
- }
1
+ /* 辅助的区域不应该可以看见 */
2
+ .region {
3
+ position: fixed;
4
+ left: 50000px;
5
+ }
@@ -1,3 +1,3 @@
1
- import Buffer from '../../src/common/webgl/buffer'
2
-
1
+ import Buffer from '../../src/common/webgl/buffer'
2
+
3
3
  export default Buffer
@@ -1,3 +1,3 @@
1
- import Canvas from "../../src/Canvas"
2
-
1
+ import Canvas from "../../src/Canvas"
2
+
3
3
  export default Canvas
@@ -1,3 +1,3 @@
1
- import Cardinal from "../../src/interpolation/Cardinal"
2
-
1
+ import Cardinal from "../../src/interpolation/Cardinal"
2
+
3
3
  export default Cardinal
@@ -1,3 +1,3 @@
1
- import Eoap from "../../src/Eoap"
2
-
1
+ import Eoap from "../../src/Eoap"
2
+
3
3
  export default Eoap
@@ -0,0 +1,3 @@
1
+ import Geometry from "../../src/Geometry"
2
+
3
+ export default Geometry
@@ -1,3 +1,3 @@
1
- import Hermite from "../../src/interpolation/Hermite"
2
-
1
+ import Hermite from "../../src/interpolation/Hermite"
2
+
3
3
  export default Hermite
@@ -1,3 +1,3 @@
1
- import Matrix4 from "../../src/Matrix4/index"
2
-
1
+ import Matrix4 from "../../src/Matrix4/index"
2
+
3
3
  export default Matrix4
@@ -1,3 +1,3 @@
1
- import Mercator from "../../src/Mercator"
2
-
1
+ import Mercator from "../../src/Mercator"
2
+
3
3
  export default Mercator
@@ -1,3 +1,3 @@
1
- import _Canvas from "../../src/common/canvas/index"
2
-
1
+ import _Canvas from "../../src/common/canvas/index"
2
+
3
3
  export default _Canvas
@@ -1,3 +1,3 @@
1
- import _WebGL from "../../src/common/webgl/index"
2
-
1
+ import _WebGL from "../../src/common/webgl/index"
2
+
3
3
  export default _WebGL
@@ -1,3 +1,3 @@
1
- import SVG from "../../src/SVG"
2
-
1
+ import SVG from "../../src/SVG"
2
+
3
3
  export default SVG
@@ -1,40 +1,40 @@
1
- import type ShaderType from '../../types/Shader'
2
-
3
- import OralShader from '../../src/common/webgl/shader'
4
-
5
- import vsColor from '../../src/shader/vsColor.c'
6
- import vsColors from '../../src/shader/vsColors.c'
7
- import vsImage from '../../src/shader/vsImage.c'
8
- import vsCube from '../../src/shader/vsCube.c'
9
-
10
- import fsColor from '../../src/shader/fsColor.c'
11
- import fsColors from '../../src/shader/fsColors.c'
12
- import fsImage from '../../src/shader/fsImage.c'
13
- import fsCube from '../../src/shader/fsCube.c'
14
-
15
- class Shader extends OralShader implements ShaderType {
16
-
17
- compile(vshaderSource: string, fshaderSource: string): this
18
- compile(shaderName: string): this
19
- compile(arg1: string, arg2?: string) {
20
- if (arg2) {
21
- super.compile(arg1, arg2)
22
- } else {
23
- super.compile({
24
- "color": vsColor,
25
- "colors": vsColors,
26
- "image": vsImage,
27
- "cube": vsCube
28
- }[arg1], {
29
- "color": fsColor,
30
- "colors": fsColors,
31
- "image": fsImage,
32
- "cube": fsCube
33
- }[arg1])
34
- }
35
- return this
36
- }
37
-
38
- }
39
-
1
+ import type ShaderType from '../../types/Shader'
2
+
3
+ import OralShader from '../../src/common/webgl/shader'
4
+
5
+ import vsColor from '../../src/shader/vsColor.c'
6
+ import vsColors from '../../src/shader/vsColors.c'
7
+ import vsImage from '../../src/shader/vsImage.c'
8
+ import vsCube from '../../src/shader/vsCube.c'
9
+
10
+ import fsColor from '../../src/shader/fsColor.c'
11
+ import fsColors from '../../src/shader/fsColors.c'
12
+ import fsImage from '../../src/shader/fsImage.c'
13
+ import fsCube from '../../src/shader/fsCube.c'
14
+
15
+ class Shader extends OralShader implements ShaderType {
16
+
17
+ compile(vshaderSource: string, fshaderSource: string): this
18
+ compile(shaderName: string): this
19
+ compile(arg1: string, arg2?: string) {
20
+ if (arg2) {
21
+ super.compile(arg1, arg2)
22
+ } else {
23
+ super.compile({
24
+ "color": vsColor,
25
+ "colors": vsColors,
26
+ "image": vsImage,
27
+ "cube": vsCube
28
+ }[arg1], {
29
+ "color": fsColor,
30
+ "colors": fsColors,
31
+ "image": fsImage,
32
+ "cube": fsCube
33
+ }[arg1])
34
+ }
35
+ return this
36
+ }
37
+
38
+ }
39
+
40
40
  export default Shader
@@ -1,3 +1,3 @@
1
- import Texture from '../../src/common/webgl/texture'
2
-
1
+ import Texture from '../../src/common/webgl/texture'
2
+
3
3
  export default Texture
@@ -1,3 +1,3 @@
1
- import TreeLayout from "../../src/TreeLayout/index"
2
-
1
+ import TreeLayout from "../../src/TreeLayout/index"
2
+
3
3
  export default TreeLayout
@@ -1,3 +1,3 @@
1
- import WebGL from "../../src/WebGL"
2
-
1
+ import WebGL from "../../src/WebGL"
2
+
3
3
  export default WebGL
@@ -1,3 +1,3 @@
1
- import animation from "../../src/animation"
2
-
1
+ import animation from "../../src/animation"
2
+
3
3
  export default animation
@@ -1,3 +1,3 @@
1
- import formatColor from "../../src/formatColor"
2
-
1
+ import formatColor from "../../src/formatColor"
2
+
3
3
  export default formatColor
@@ -1,3 +1,3 @@
1
- import getLoopColors from "../../src/getLoopColors"
2
-
1
+ import getLoopColors from "../../src/getLoopColors"
2
+
3
3
  export default getLoopColors
@@ -1,40 +1,40 @@
1
- import getWebGLContext from "../../src/common/webgl/getWebGLContext"
2
-
3
- export default (el: HTMLElement | null, scale: number = 1) => {
4
- if (!el) {
5
- throw new Error("VISLite getWebGLContext:The mount point requires an HTMLElement type but encountered null.")
6
- }
7
-
8
- let width = el.clientWidth, height = el.clientHeight
9
-
10
- let ViewCanvas: HTMLCanvasElement
11
-
12
- let _el = el as any
13
-
14
- // 如果已经初始化过了
15
- if (_el._vislite_canvas_) {
16
- ViewCanvas = _el._vislite_canvas_
17
- }
18
-
19
- // 否则就初始化
20
- else {
21
-
22
- ViewCanvas = document.createElement('canvas')
23
- el.appendChild(ViewCanvas)
24
-
25
- _el._vislite_canvas_ = ViewCanvas
26
-
27
- el.setAttribute('vislite', 'WebGL')
28
-
29
- }
30
-
31
- // 设置画布大小
32
-
33
- ViewCanvas.style.width = width + "px"
34
- ViewCanvas.setAttribute('width', width + "")
35
-
36
- ViewCanvas.style.height = height + "px"
37
- ViewCanvas.setAttribute('height', height + "")
38
-
39
- return getWebGLContext(ViewCanvas, scale)
1
+ import getWebGLContext from "../../src/common/webgl/getWebGLContext"
2
+
3
+ export default (el: HTMLElement | null, scale: number = 1) => {
4
+ if (!el) {
5
+ throw new Error("VISLite getWebGLContext:The mount point requires an HTMLElement type but encountered null.")
6
+ }
7
+
8
+ let width = el.clientWidth, height = el.clientHeight
9
+
10
+ let ViewCanvas: HTMLCanvasElement
11
+
12
+ let _el = el as any
13
+
14
+ // 如果已经初始化过了
15
+ if (_el._vislite_canvas_) {
16
+ ViewCanvas = _el._vislite_canvas_
17
+ }
18
+
19
+ // 否则就初始化
20
+ else {
21
+
22
+ ViewCanvas = document.createElement('canvas')
23
+ el.appendChild(ViewCanvas)
24
+
25
+ _el._vislite_canvas_ = ViewCanvas
26
+
27
+ el.setAttribute('vislite', 'WebGL')
28
+
29
+ }
30
+
31
+ // 设置画布大小
32
+
33
+ ViewCanvas.style.width = width + "px"
34
+ ViewCanvas.setAttribute('width', width + "")
35
+
36
+ ViewCanvas.style.height = height + "px"
37
+ ViewCanvas.setAttribute('height', height + "")
38
+
39
+ return getWebGLContext(ViewCanvas, scale)
40
40
  }
package/package/index.ts CHANGED
@@ -27,6 +27,8 @@ import throttle from "./throttle/index"
27
27
 
28
28
  import TreeLayout from "./TreeLayout/index"
29
29
 
30
+ import Geometry from "./Geometry/index"
31
+
30
32
  export default {
31
33
 
32
34
  // 插值
@@ -64,5 +66,8 @@ export default {
64
66
  throttle,
65
67
 
66
68
  // 布局
67
- TreeLayout
69
+ TreeLayout,
70
+
71
+ // 几何&模型数据
72
+ Geometry
68
73
  }
@@ -1,3 +1,3 @@
1
- import resizeObserver from "../../src/resizeObserver"
2
-
1
+ import resizeObserver from "../../src/resizeObserver"
2
+
3
3
  export default resizeObserver
@@ -1,3 +1,3 @@
1
- import rotate from "../../src/rotate"
2
-
1
+ import rotate from "../../src/rotate"
2
+
3
3
  export default rotate
@@ -1,3 +1,3 @@
1
- import ruler from "../../src/ruler"
2
-
1
+ import ruler from "../../src/ruler"
2
+
3
3
  export default ruler
@@ -1,3 +1,3 @@
1
- import throttle from "../../src/throttle"
2
-
1
+ import throttle from "../../src/throttle"
2
+
3
3
  export default throttle
@@ -1,3 +1,3 @@
1
- import viewHandler from "../../src/viewHandler"
2
-
1
+ import viewHandler from "../../src/viewHandler"
2
+
3
3
  export default viewHandler
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vislite",
3
- "version": "0.4.1",
3
+ "version": "0.5.0",
4
4
  "description": "灵活、快速、简单的数据可视化交互式跨端前端库",
5
5
  "main": "./lib/index.umd.min.js",
6
6
  "typings": "./types/index.d.ts",
@@ -26,8 +26,10 @@
26
26
  "miniprogram",
27
27
  "image2d",
28
28
  "image3d",
29
+ "oi-contrib",
29
30
  "vislite",
30
31
  "d3",
32
+ "zxl20070701",
31
33
  "three",
32
34
  "echarts",
33
35
  "datav",