vislite 0.5.0 → 0.5.2-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.
Files changed (157) hide show
  1. package/.editorconfig +18 -18
  2. package/AUTHORS.txt +6 -6
  3. package/CHANGELOG +5 -0
  4. package/LICENSE +20 -20
  5. package/README.md +69 -69
  6. package/miniprogram/ui-canvas/index.js +107 -107
  7. package/miniprogram/ui-canvas/index.json +4 -4
  8. package/miniprogram/ui-canvas/index.wxml +4 -4
  9. package/miniprogram/ui-canvas/index.wxss +5 -5
  10. package/package/Buffer/index.ts +2 -2
  11. package/package/Canvas/index.ts +2 -2
  12. package/package/Cardinal/index.ts +2 -2
  13. package/package/Eoap/index.ts +2 -2
  14. package/package/Hermite/index.ts +2 -2
  15. package/package/Matrix4/index.ts +2 -2
  16. package/package/Mercator/index.ts +2 -2
  17. package/package/OralCanvas/index.ts +2 -2
  18. package/package/OralWebGL/index.ts +2 -2
  19. package/package/SVG/index.ts +2 -2
  20. package/package/Shader/index.ts +39 -39
  21. package/package/Texture/index.ts +2 -2
  22. package/package/TreeLayout/index.ts +2 -2
  23. package/package/WebGL/index.ts +2 -2
  24. package/package/animation/index.ts +2 -2
  25. package/package/formatColor/index.ts +2 -2
  26. package/package/getLoopColors/index.ts +2 -2
  27. package/package/getWebGLContext/index.ts +39 -39
  28. package/package/resizeObserver/index.ts +2 -2
  29. package/package/rotate/index.ts +2 -2
  30. package/package/ruler/index.ts +2 -2
  31. package/package/throttle/index.ts +2 -2
  32. package/package/viewHandler/index.ts +2 -2
  33. package/package.json +1 -1
  34. package/src/Canvas.ts +67 -67
  35. package/src/Matrix4/move.ts +12 -12
  36. package/src/Matrix4/rotate.ts +15 -15
  37. package/src/Matrix4/scale.ts +11 -11
  38. package/src/Matrix4/transform.ts +64 -64
  39. package/src/SVG.ts +24 -24
  40. package/src/WebGL.ts +66 -66
  41. package/src/animation.ts +98 -98
  42. package/src/common/assemble.ts +22 -22
  43. package/src/common/canvas/arc.ts +50 -50
  44. package/src/common/canvas/config.ts +158 -158
  45. package/src/common/canvas/gradient.ts +29 -29
  46. package/src/common/canvas/index.ts +168 -168
  47. package/src/common/canvas/painter.ts +426 -426
  48. package/src/common/canvas/texts.ts +18 -18
  49. package/src/common/mergeOption.ts +6 -6
  50. package/src/common/setStyle.ts +5 -5
  51. package/src/common/svg/config.ts +174 -174
  52. package/src/common/svg/tool.ts +44 -44
  53. package/src/common/tree/index.ts +25 -25
  54. package/src/common/tree/toInnerTree.ts +56 -56
  55. package/src/common/tree/toPlainTree.ts +131 -131
  56. package/src/common/webgl/buffer.ts +79 -79
  57. package/src/common/webgl/doDraw.ts +108 -108
  58. package/src/common/webgl/getColorFactory.ts +26 -26
  59. package/src/common/webgl/getShader.ts +48 -48
  60. package/src/common/webgl/getTexture.ts +11 -11
  61. package/src/common/webgl/getWebGLContext.ts +27 -27
  62. package/src/common/webgl/index.ts +223 -223
  63. package/src/common/webgl/shader.ts +75 -75
  64. package/src/common/webgl/texture.ts +96 -96
  65. package/src/formatColor.ts +44 -44
  66. package/src/getLoopColors.ts +42 -42
  67. package/src/interpolation/Cardinal.ts +110 -110
  68. package/src/interpolation/Hermite.ts +65 -65
  69. package/src/resizeObserver.ts +36 -36
  70. package/src/ruler.ts +188 -188
  71. package/src/shader/fsColor.c +7 -7
  72. package/src/shader/fsColors.c +7 -7
  73. package/src/shader/fsCube.c +8 -8
  74. package/src/shader/fsImage.c +8 -8
  75. package/src/shader/vsColor.c +17 -17
  76. package/src/shader/vsColors.c +13 -13
  77. package/src/shader/vsCube.c +13 -13
  78. package/src/shader/vsImage.c +13 -13
  79. package/src/throttle.ts +51 -51
  80. package/src/viewHandler.ts +158 -158
  81. package/types/Buffer.d.ts +23 -23
  82. package/types/Canvas.d.ts +300 -300
  83. package/types/CanvasOption.d.ts +7 -7
  84. package/types/Cardinal.d.ts +13 -13
  85. package/types/Gradient.d.ts +14 -14
  86. package/types/Hermite.d.ts +18 -18
  87. package/types/Object3D.d.ts +114 -114
  88. package/types/SVGConfig.d.ts +76 -76
  89. package/types/Scene3D.d.ts +6 -6
  90. package/types/Shader.d.ts +21 -21
  91. package/types/Texture.d.ts +16 -16
  92. package/types/Tree.d.ts +69 -69
  93. package/types/TreeConfig.d.ts +24 -24
  94. package/types/TreeOption.d.ts +48 -48
  95. package/types/WebGL.d.ts +38 -38
  96. package/types/WebGLOption.d.ts +7 -7
  97. package/types/animation.d.ts +6 -6
  98. package/types/formatColor.d.ts +2 -2
  99. package/types/getLoopColors.d.ts +2 -2
  100. package/types/getWebGLContext.d.ts +2 -2
  101. package/types/painterConfig.d.ts +2 -2
  102. package/types/resizeObserver.d.ts +2 -2
  103. package/types/ruler.d.ts +7 -7
  104. package/types/throttle.d.ts +4 -4
  105. package/types/throttleOption.d.ts +21 -21
  106. package/types/viewHandler.d.ts +13 -13
  107. package/uni-app/ui-canvas.vue +226 -222
  108. package/lib/Buffer/index.umd.js +0 -55
  109. package/lib/Buffer/index.umd.min.js +0 -11
  110. package/lib/Canvas/index.umd.js +0 -721
  111. package/lib/Canvas/index.umd.min.js +0 -11
  112. package/lib/Cardinal/index.umd.js +0 -112
  113. package/lib/Cardinal/index.umd.min.js +0 -11
  114. package/lib/Eoap/index.umd.js +0 -53
  115. package/lib/Eoap/index.umd.min.js +0 -11
  116. package/lib/Geometry/index.umd.js +0 -205
  117. package/lib/Geometry/index.umd.min.js +0 -11
  118. package/lib/Hermite/index.umd.js +0 -55
  119. package/lib/Hermite/index.umd.min.js +0 -11
  120. package/lib/Matrix4/index.umd.js +0 -146
  121. package/lib/Matrix4/index.umd.min.js +0 -11
  122. package/lib/Mercator/index.umd.js +0 -39
  123. package/lib/Mercator/index.umd.min.js +0 -11
  124. package/lib/OralCanvas/index.es.js +0 -657
  125. package/lib/OralCanvas/index.es.min.js +0 -11
  126. package/lib/OralWebGL/index.es.js +0 -611
  127. package/lib/OralWebGL/index.es.min.js +0 -11
  128. package/lib/SVG/index.umd.js +0 -475
  129. package/lib/SVG/index.umd.min.js +0 -11
  130. package/lib/Shader/index.umd.js +0 -134
  131. package/lib/Shader/index.umd.min.js +0 -11
  132. package/lib/Texture/index.umd.js +0 -72
  133. package/lib/Texture/index.umd.min.js +0 -11
  134. package/lib/TreeLayout/index.umd.js +0 -430
  135. package/lib/TreeLayout/index.umd.min.js +0 -11
  136. package/lib/WebGL/index.umd.js +0 -684
  137. package/lib/WebGL/index.umd.min.js +0 -11
  138. package/lib/animation/index.umd.js +0 -91
  139. package/lib/animation/index.umd.min.js +0 -11
  140. package/lib/formatColor/index.umd.js +0 -59
  141. package/lib/formatColor/index.umd.min.js +0 -11
  142. package/lib/getLoopColors/index.umd.js +0 -55
  143. package/lib/getLoopColors/index.umd.min.js +0 -11
  144. package/lib/getWebGLContext/index.umd.js +0 -65
  145. package/lib/getWebGLContext/index.umd.min.js +0 -11
  146. package/lib/index.umd.js +0 -2834
  147. package/lib/index.umd.min.js +0 -11
  148. package/lib/resizeObserver/index.umd.js +0 -48
  149. package/lib/resizeObserver/index.umd.min.js +0 -11
  150. package/lib/rotate/index.umd.js +0 -27
  151. package/lib/rotate/index.umd.min.js +0 -11
  152. package/lib/ruler/index.umd.js +0 -145
  153. package/lib/ruler/index.umd.min.js +0 -11
  154. package/lib/throttle/index.umd.js +0 -70
  155. package/lib/throttle/index.umd.min.js +0 -11
  156. package/lib/viewHandler/index.umd.js +0 -139
  157. package/lib/viewHandler/index.umd.min.js +0 -11
@@ -1,222 +1,226 @@
1
- <template>
2
- <view :class="cover || isH5 ? 'cover-view' : 'normal-view'">
3
- <view :class="'view-img view-' + uniqueid" @touchstart="doitstart">
4
- <image :style="{ width: width + 'px', height: height + 'px' }" :src="viewImg"></image>
5
- </view>
6
-
7
- <!-- #ifdef MP-ALIPAY -->
8
- <canvas class="painter" :id="'painter-' + uniqueid" @touchstart="doitstart"
9
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
10
- <canvas v-if="region" class="region" :id="'region-' + uniqueid"
11
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
12
- <!-- #endif -->
13
- <!-- #ifdef MP-WEIXIN -->
14
- <canvas class="painter" canvas-id="painter" @touchstart="doitstart"
15
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
16
- <canvas v-if="region" class="region" canvas-id="region"
17
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
18
- <!-- #endif -->
19
- <!-- #ifndef MP-WEIXIN||MP-ALIPAY -->
20
- <canvas class="painter" :canvas-id="'painter-' + uniqueid" @touchstart="doitstart"
21
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
22
- <canvas v-if="region" class="region" :canvas-id="'region-' + uniqueid"
23
- :style="{ width: width + 'px', height: height + 'px' }"></canvas>
24
- <!-- #endif -->
25
- </view>
26
- </template>
27
- <script>
28
- import OralCanvas from "../lib/OralCanvas/index.es.js";
29
- export default {
30
- data() {
31
- return {
32
- uniqueid: (Math.random() * 10000).toFixed(0),
33
- help: {},
34
- viewImg: "",
35
- // #ifdef H5
36
- isH5: true,
37
- // #endif
38
- // #ifndef H5
39
- isH5: false,
40
- // #endif
41
- };
42
- },
43
- props: {
44
- width: {
45
- type: Number,
46
- default: 300,
47
- },
48
- height: {
49
- type: Number,
50
- default: 150,
51
- },
52
- touchstart: {
53
- type: Function,
54
- default: () => { },
55
- },
56
- cover: {
57
- type: Boolean,
58
- default: true,
59
- },
60
- region: {
61
- type: Boolean,
62
- default: true,
63
- },
64
- },
65
- methods: {
66
- fetch() {
67
- let painter, region, painterid, regionid;
68
- // #ifdef MP-WEIXIN
69
- painter = uni.createCanvasContext("painter", this);
70
- if (this.region) region = uni.createCanvasContext("region", this);
71
- painterid = "painter";
72
- regionid = "region";
73
- // #endif
74
- // #ifndef MP-WEIXIN
75
- painter = uni.createCanvasContext("painter-" + this.uniqueid, this);
76
- if (this.region) region = uni.createCanvasContext("region-" + this.uniqueid, this);
77
- painterid = "painter-" + this.uniqueid;
78
- regionid = "region-" + this.uniqueid;
79
- // #endif
80
-
81
- let _this = this;
82
- this.help.instance = new OralCanvas(
83
- {
84
- getContext() {
85
- return painter;
86
- },
87
- },
88
- _this.region ? {
89
- getContext() {
90
- // #ifdef MP-ALIPAY
91
- let getImageData = region.getImageData;
92
- // #endif
93
- region.getImageData = (x, y, width, height) => {
94
- return new Promise((resolve, reject) => {
95
- let options = {
96
- x,
97
- y,
98
- width,
99
- height,
100
- canvasId: regionid,
101
- success: function success(res) {
102
- resolve(res.data);
103
- },
104
- fail: function fail(error) {
105
- reject(error);
106
- },
107
- };
108
-
109
- // #ifdef MP-ALIPAY
110
- getImageData(options, _this);
111
- // #endif
112
- // #ifndef MP-ALIPAY
113
- uni.canvasGetImageData(options, _this);
114
- // #endif
115
- });
116
- };
117
- return region;
118
- },
119
- } : null
120
- );
121
- this.help.instance.draw = (reserve = false, callback = () => { }) => {
122
- painter.draw(reserve, () => {
123
-
124
- // 如果不使用原生渲染
125
- if (!this.cover && !this.isH5) {
126
- uni.canvasToTempFilePath(
127
- {
128
- canvasId: painterid,
129
- success: (e) => {
130
- this.viewImg = e.tempFilePath;
131
- if (_this.region) region.draw(reserve);
132
- callback();
133
- },
134
- },
135
- this
136
- );
137
- } else {
138
- if (_this.region) region.draw(reserve);
139
- callback();
140
- }
141
- });
142
-
143
- };
144
- return new Promise((resolve, reject) => {
145
- this.help.instance.toDataURL = () => {
146
- return new Promise((resolveUrl) => {
147
- uni.canvasToTempFilePath(
148
- {
149
- canvasId: painterid,
150
- success: function (e) {
151
- resolveUrl(e.tempFilePath);
152
- },
153
- },
154
- this
155
- );
156
- });
157
- };
158
-
159
- resolve(this.help.instance);
160
- });
161
- },
162
- doit(event, doback) {
163
- let doRun = (x, y) => {
164
- this.help.instance.getRegion(x, y).then((regionName) => {
165
- // 兼容旧语法
166
- if (typeof doback == "function") doback(regionName);
167
-
168
- this.$emit("dotouchstart", {
169
- name: regionName,
170
- x: x,
171
- y: y,
172
- });
173
- });
174
- };
175
-
176
- if (this.cover || this.isH5) {
177
- let x = event.touches[0].x;
178
- let y = event.touches[0].y;
179
- doRun(x, y);
180
- } else {
181
- uni
182
- .createSelectorQuery()
183
- .selectViewport()
184
- .scrollOffset()
185
- .exec((ret) => {
186
- uni
187
- .createSelectorQuery()
188
- .in(this)
189
- .select(".view-" + this.uniqueid)
190
- .boundingClientRect((data) => {
191
- doRun(
192
- event.touches[0].pageX - data.left - ret[0].scrollLeft,
193
- event.touches[0].pageY - data.top - ret[0].scrollTop
194
- );
195
- })
196
- .exec();
197
- });
198
- }
199
- },
200
- doitstart(event) {
201
- this.doit(event, this.touchstart);
202
- },
203
- },
204
- };
205
- </script>
206
-
207
- <style lang="css" scoped>
208
- /* 辅助的区域不应该可以看见 */
209
- .region {
210
- position: fixed;
211
- left: 50000px;
212
- }
213
-
214
- .cover-view .view-img {
215
- display: none;
216
- }
217
-
218
- .normal-view .painter {
219
- position: fixed;
220
- left: 50000px;
221
- }
222
- </style>
1
+ <template>
2
+ <view :class="cover || isH5 ? 'cover-view' : 'normal-view'">
3
+ <view :class="'view-img view-' + uniqueid" @touchstart="doitstart">
4
+ <image :style="{ width: width + 'px', height: height + 'px' }" :src="viewImg"></image>
5
+ </view>
6
+
7
+ <!-- #ifdef MP-ALIPAY -->
8
+ <canvas class="painter" :id="'painter-' + uniqueid" @touchstart="doitstart"
9
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
10
+ <canvas v-if="region" class="region" :id="'region-' + uniqueid"
11
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
12
+ <!-- #endif -->
13
+ <!-- #ifdef MP-WEIXIN -->
14
+ <canvas class="painter" canvas-id="painter" @touchstart="doitstart"
15
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
16
+ <canvas v-if="region" class="region" canvas-id="region"
17
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
18
+ <!-- #endif -->
19
+ <!-- #ifndef MP-WEIXIN||MP-ALIPAY -->
20
+ <canvas class="painter" :canvas-id="'painter-' + uniqueid" @touchstart="doitstart"
21
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
22
+ <canvas v-if="region" class="region" :canvas-id="'region-' + uniqueid"
23
+ :style="{ width: width + 'px', height: height + 'px' }"></canvas>
24
+ <!-- #endif -->
25
+ </view>
26
+ </template>
27
+ <script>
28
+ import OralCanvas from "../lib/OralCanvas/index.es.js";
29
+ export default {
30
+ data() {
31
+ return {
32
+ uniqueid: (Math.random() * 10000).toFixed(0),
33
+ help: {},
34
+ viewImg: "",
35
+ // #ifdef H5
36
+ isH5: true,
37
+ // #endif
38
+ // #ifndef H5
39
+ isH5: false,
40
+ // #endif
41
+ };
42
+ },
43
+ props: {
44
+ width: {
45
+ type: Number,
46
+ default: 300,
47
+ },
48
+ height: {
49
+ type: Number,
50
+ default: 150,
51
+ },
52
+ touchstart: {
53
+ type: Function,
54
+ default: () => { },
55
+ },
56
+ cover: {
57
+ type: Boolean,
58
+ default: true,
59
+ },
60
+ region: {
61
+ type: Boolean,
62
+ default: true,
63
+ },
64
+ },
65
+ methods: {
66
+ fetch() {
67
+ let painter, region, painterid, regionid;
68
+ // #ifdef MP-WEIXIN
69
+ painter = uni.createCanvasContext("painter", this);
70
+ if (this.region) region = uni.createCanvasContext("region", this);
71
+ painterid = "painter";
72
+ regionid = "region";
73
+ // #endif
74
+ // #ifndef MP-WEIXIN
75
+ painter = uni.createCanvasContext("painter-" + this.uniqueid, this);
76
+ if (this.region) region = uni.createCanvasContext("region-" + this.uniqueid, this);
77
+ painterid = "painter-" + this.uniqueid;
78
+ regionid = "region-" + this.uniqueid;
79
+ // #endif
80
+
81
+ let _this = this;
82
+ this.help.instance = new OralCanvas(
83
+ {
84
+ getContext() {
85
+ return painter;
86
+ },
87
+ },
88
+ _this.region ? {
89
+ getContext() {
90
+ // #ifdef MP-ALIPAY
91
+ let getImageData = region.getImageData;
92
+ // #endif
93
+ region.getImageData = (x, y, width, height) => {
94
+ return new Promise((resolve, reject) => {
95
+ let options = {
96
+ x,
97
+ y,
98
+ width,
99
+ height,
100
+ canvasId: regionid,
101
+ success: function success(res) {
102
+ resolve(res.data);
103
+ },
104
+ fail: function fail(error) {
105
+ reject(error);
106
+ },
107
+ };
108
+
109
+ // #ifdef MP-ALIPAY
110
+ getImageData(options);
111
+ // #endif
112
+ // #ifndef MP-ALIPAY
113
+ uni.canvasGetImageData(options, _this);
114
+ // #endif
115
+ });
116
+ };
117
+ return region;
118
+ },
119
+ } : null
120
+ );
121
+ this.help.instance.draw = (reserve = false, callback = () => { }) => {
122
+ painter.draw(reserve, () => {
123
+
124
+ // 如果不使用原生渲染
125
+ if (!this.cover && !this.isH5) {
126
+ uni.canvasToTempFilePath(
127
+ {
128
+ canvasId: painterid,
129
+ success: (e) => {
130
+ this.viewImg = e.tempFilePath;
131
+ if (_this.region) region.draw(reserve);
132
+ callback();
133
+ },
134
+ }
135
+ // #ifndef MP-ALIPAY
136
+ , this
137
+ // #endif
138
+ );
139
+ } else {
140
+ if (_this.region) region.draw(reserve);
141
+ callback();
142
+ }
143
+ });
144
+
145
+ };
146
+ return new Promise((resolve, reject) => {
147
+ this.help.instance.toDataURL = () => {
148
+ return new Promise((resolveUrl) => {
149
+ uni.canvasToTempFilePath(
150
+ {
151
+ canvasId: painterid,
152
+ success: function (e) {
153
+ resolveUrl(e.tempFilePath);
154
+ },
155
+ }
156
+ // #ifndef MP-ALIPAY
157
+ , this
158
+ // #endif
159
+ );
160
+ });
161
+ };
162
+
163
+ resolve(this.help.instance);
164
+ });
165
+ },
166
+ doit(event, doback) {
167
+ let doRun = (x, y) => {
168
+ this.help.instance.getRegion(x, y).then((regionName) => {
169
+ // 兼容旧语法
170
+ if (typeof doback == "function") doback(regionName);
171
+
172
+ this.$emit("dotouchstart", {
173
+ name: regionName,
174
+ x: x,
175
+ y: y,
176
+ });
177
+ });
178
+ };
179
+
180
+ if (this.cover || this.isH5) {
181
+ let x = event.touches[0].x;
182
+ let y = event.touches[0].y;
183
+ doRun(x, y);
184
+ } else {
185
+ uni
186
+ .createSelectorQuery()
187
+ .selectViewport()
188
+ .scrollOffset()
189
+ .exec((ret) => {
190
+ uni
191
+ .createSelectorQuery()
192
+ .in(this)
193
+ .select(".view-" + this.uniqueid)
194
+ .boundingClientRect((data) => {
195
+ doRun(
196
+ event.touches[0].pageX - data.left - ret[0].scrollLeft,
197
+ event.touches[0].pageY - data.top - ret[0].scrollTop
198
+ );
199
+ })
200
+ .exec();
201
+ });
202
+ }
203
+ },
204
+ doitstart(event) {
205
+ this.doit(event, this.touchstart);
206
+ },
207
+ },
208
+ };
209
+ </script>
210
+
211
+ <style lang="css" scoped>
212
+ /* 辅助的区域不应该可以看见 */
213
+ .region {
214
+ position: fixed;
215
+ left: 50000px;
216
+ }
217
+
218
+ .cover-view .view-img {
219
+ display: none;
220
+ }
221
+
222
+ .normal-view .painter {
223
+ position: fixed;
224
+ left: 50000px;
225
+ }
226
+ </style>
@@ -1,55 +0,0 @@
1
- /*!
2
- * VISLite JavaScript Library v0.5.0
3
- * git+https://github.com/oi-contrib/VISLite.git
4
- *
5
- * Copyright zxl20070701
6
- * Released under the MIT license
7
- * https://zxl20070701.github.io/notebook/home.html
8
- *
9
- * Publish Date: Sat Sep 30 2023 19:14:04 GMT+0800 (中国标准时间)
10
- */
11
- (function (global, factory) {
12
- typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
13
- typeof define === 'function' && define.amd ? define(factory) :
14
- (global = typeof globalThis !== 'undefined' ? globalThis : global || self, global.VISLite_Buffer = factory());
15
- })(this, (function () { 'use strict';
16
-
17
- var newBuffer = function (painter) {
18
- return painter.createBuffer();
19
- };
20
- var writeBuffer = function (painter, data, isElement, usage) {
21
- var TYPE = isElement ? painter.ELEMENT_ARRAY_BUFFER : painter.ARRAY_BUFFER;
22
- painter.bufferData(TYPE, data, usage);
23
- };
24
- var useBuffer = function (painter, location, size, type, stride, offset, normalized) {
25
- painter.vertexAttribPointer(location, size, type, normalized, stride, offset);
26
- painter.enableVertexAttribArray(location);
27
- };
28
- var BufferObject = (function () {
29
- function BufferObject(painter, isElement) {
30
- if (isElement === void 0) { isElement = false; }
31
- this.__painter = painter;
32
- this.__isElement = isElement;
33
- this.__buffer = newBuffer(painter);
34
- this.__type = isElement ? painter.ELEMENT_ARRAY_BUFFER : painter.ARRAY_BUFFER;
35
- }
36
- BufferObject.prototype.use = function () {
37
- this.__painter.bindBuffer(this.__type, this.__buffer);
38
- return this;
39
- };
40
- BufferObject.prototype.write = function (data) {
41
- writeBuffer(this.__painter, data, this.__isElement, this.__painter.STATIC_DRAW);
42
- this.__fsize = data.BYTES_PER_ELEMENT;
43
- return this;
44
- };
45
- BufferObject.prototype.divide = function (location, size, stride, offset) {
46
- if (offset === void 0) { offset = 0; }
47
- useBuffer(this.__painter, location, size, this.__painter.FLOAT, stride * this.__fsize, offset * this.__fsize, false);
48
- return this;
49
- };
50
- return BufferObject;
51
- }());
52
-
53
- return BufferObject;
54
-
55
- }));
@@ -1,11 +0,0 @@
1
- /*!
2
- * VISLite JavaScript Library v0.5.0
3
- * git+https://github.com/oi-contrib/VISLite.git
4
- *
5
- * Copyright zxl20070701
6
- * Released under the MIT license
7
- * https://zxl20070701.github.io/notebook/home.html
8
- *
9
- * Publish Date: Sat Sep 30 2023 19:14:04 GMT+0800 (中国标准时间)
10
- */
11
- var t,e;t=this,e=function(){"use strict";return function(){function t(t,e){void 0===e&&(e=!1),this.__painter=t,this.__isElement=e,this.__buffer=function(t){return t.createBuffer()}(t),this.__type=e?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER}return t.prototype.use=function(){return this.__painter.bindBuffer(this.__type,this.__buffer),this},t.prototype.write=function(t){return function(t,e,i,n){var r=i?t.ELEMENT_ARRAY_BUFFER:t.ARRAY_BUFFER;t.bufferData(r,e,n)}(this.__painter,t,this.__isElement,this.__painter.STATIC_DRAW),this.__fsize=t.BYTES_PER_ELEMENT,this},t.prototype.divide=function(t,e,i,n){return void 0===n&&(n=0),function(t,e,i,n,r,_,f){t.vertexAttribPointer(e,i,n,f,r,_),t.enableVertexAttribArray(e)}(this.__painter,t,e,this.__painter.FLOAT,i*this.__fsize,n*this.__fsize,!1),this},t}()},"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).VISLite_Buffer=e();