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,14 +1,14 @@
1
- export default interface CardinalType {
2
-
3
- /**
4
- * 设置点的位置:
5
- * @param points 参数格式:[[x1, y1], [x2, y2], ... ],至少两个点
6
- */
7
- setP(points: number[][]): this
8
-
9
- /**
10
- * 根据x值返回y值:
11
- */
12
- use(x: number): number
13
-
1
+ export default interface CardinalType {
2
+
3
+ /**
4
+ * 设置点的位置:
5
+ * @param points 参数格式:[[x1, y1], [x2, y2], ... ],至少两个点
6
+ */
7
+ setP(points: number[][]): this
8
+
9
+ /**
10
+ * 根据x值返回y值:
11
+ */
12
+ use(x: number): number
13
+
14
14
  }
@@ -0,0 +1,41 @@
1
+ import GeometryResultType from './GeometryResult'
2
+ import GeometryOptionType from './GeometryOption'
3
+
4
+ export default interface GeometryType {
5
+
6
+ /**
7
+ * 配置对象
8
+ */
9
+ config(option: GeometryOptionType): this
10
+
11
+ /**
12
+ * 圆柱体
13
+ * @param x
14
+ * @param y
15
+ * @param z
16
+ * @param radius
17
+ * @param height
18
+ */
19
+ cylinder(x: number, y: number, z: number, radius: number, height: number): Array<GeometryResultType>
20
+
21
+ /**
22
+ * 棱柱体
23
+ * @param x
24
+ * @param y
25
+ * @param z
26
+ * @param radius
27
+ * @param height
28
+ * @param num
29
+ */
30
+ prism(x: number, y: number, z: number, radius: number, height: number, num: number): Array<GeometryResultType>
31
+
32
+ /**
33
+ * 球体
34
+ * @param cx
35
+ * @param cy
36
+ * @param cz
37
+ * @param radius
38
+ */
39
+ sphere(cx: number, cy: number, cz: number, radius: number): Array<GeometryResultType>
40
+
41
+ }
@@ -0,0 +1,12 @@
1
+ export default interface GeometryOptionType {
2
+
3
+ /**
4
+ * 精度
5
+ */
6
+ precision?: number
7
+
8
+ /**
9
+ * 是否需要法向量
10
+ */
11
+ normal?: boolean
12
+ }
@@ -0,0 +1,19 @@
1
+ import { geometryType } from './Object3D'
2
+
3
+ export default interface GeometryResultType {
4
+
5
+ /**
6
+ * 点数据(法向量如果有也包含其中)
7
+ */
8
+ points: number[]
9
+
10
+ /**
11
+ * 点个数
12
+ */
13
+ length: number
14
+
15
+ /**
16
+ * 画笔类型
17
+ */
18
+ method: geometryType
19
+ }
@@ -1,15 +1,15 @@
1
- export default interface GradientType {
2
-
3
- /**
4
- * 设置程度颜色
5
- * @param stop 程度
6
- * @param color 颜色
7
- */
8
- setColor(stop: number, color: string): this
9
-
10
- /**
11
- * 返回渐变色值
12
- */
13
- value(): CanvasGradient
14
-
1
+ export default interface GradientType {
2
+
3
+ /**
4
+ * 设置程度颜色
5
+ * @param stop 程度
6
+ * @param color 颜色
7
+ */
8
+ setColor(stop: number, color: string): this
9
+
10
+ /**
11
+ * 返回渐变色值
12
+ */
13
+ value(): CanvasGradient
14
+
15
15
  }
@@ -1,19 +1,19 @@
1
- export default interface HermiteType {
2
-
3
- /**
4
- * 设置点的位置和斜率:
5
- * @param x1 左边点的位置
6
- * @param y1
7
- * @param x2 右边点的位置
8
- * @param y2
9
- * @param s1 两个点的斜率
10
- * @param s2
11
- */
12
- setP(x1: number, y1: number, x2: number, y2: number, s1: number, s2: number): this
13
-
14
- /**
15
- * 根据x值返回y值:
16
- */
17
- use(x: number): number
18
-
1
+ export default interface HermiteType {
2
+
3
+ /**
4
+ * 设置点的位置和斜率:
5
+ * @param x1 左边点的位置
6
+ * @param y1
7
+ * @param x2 右边点的位置
8
+ * @param y2
9
+ * @param s1 两个点的斜率
10
+ * @param s2
11
+ */
12
+ setP(x1: number, y1: number, x2: number, y2: number, s1: number, s2: number): this
13
+
14
+ /**
15
+ * 根据x值返回y值:
16
+ */
17
+ use(x: number): number
18
+
19
19
  }
package/types/Map.d.ts CHANGED
@@ -3,8 +3,8 @@ export default interface MapType {
3
3
  /**
4
4
  * 返回该点的绘图坐标(特别需要注意,计算出来的位置是偏离中心点的距离)
5
5
  * @param λ 经纬度
6
- * @param φ
6
+ * @param φ
7
7
  */
8
- use(λ: number, φ: number): number[]
8
+ use(λ: number, φ: number): [number, number, number]
9
9
 
10
10
  }
@@ -7,7 +7,7 @@ export default interface Matrix4Type {
7
7
 
8
8
  /**
9
9
  * 两个矩阵相乘
10
- * @param newMatrix4
10
+ * @param newMatrix4
11
11
  * @param flag 可选,表示相乘位置,默认false,表示左乘
12
12
  */
13
13
  multiply(newMatrix4: number[], flag?: boolean): this
@@ -15,7 +15,7 @@ export default interface Matrix4Type {
15
15
  /**
16
16
  * 把变换矩阵作用在具体的点上
17
17
  */
18
- use(x: number, y: number, z?: number, w?: number): number[]
18
+ use(x: number, y: number, z?: number, w?: number): [number, number, number, number]
19
19
 
20
20
  /**
21
21
  * 沿着向量(a, b, c)方向移动距离dis
@@ -32,9 +32,9 @@ export default interface Matrix4Type {
32
32
  /**
33
33
  * 围绕射线(a1, b1, c1) -> (a2, b2, c2)旋转deg度
34
34
  * (方向由右手法则确定)
35
- *
35
+ *
36
36
  * a1、b1、c1、a2、b2和c2这6个值在设置的时候,不是一定需要全部设置,还有以下可选:
37
- *
37
+ *
38
38
  * 1)只设置了a1和b1,表示在xoy平面围绕(a1, b1)旋转
39
39
  * 2)设置三个点(设置不足六个点都认为只设置了三个点),表示围绕从原点出发的射线旋转
40
40
  */
@@ -1,115 +1,115 @@
1
- import Matrix4Type from './Matrix4'
2
-
3
- export type geometryType = "LINES" | "INE_STRIP" | "LINE_LOOP" | "TRIANGLES" | "TRIANGLE_STRIP" | "TRIANGLE_FAN"
4
-
5
- export interface meshType {
6
-
7
- // 形状
8
- geometry: {
9
- attributes: {
10
-
11
- // 点坐标
12
- position: {
13
- array: number[] | Float32Array
14
- count: number
15
- itemSize: number
16
- }
17
-
18
- // 法向量
19
- normal?: {
20
- array: number[] | Float32Array
21
- count: number
22
- itemSize: number
23
- }
24
-
25
- // 纹理坐标
26
- uv?: {
27
- array: number[] | Float32Array
28
- count: number
29
- itemSize: number
30
- }
31
-
32
- }
33
-
34
- // 索引
35
- index?: {
36
- array: number[] | Uint8Array
37
- count: number
38
- itemSize: number
39
- }
40
-
41
- // 线、还是三角形
42
- type: geometryType
43
- }
44
-
45
- // 材质
46
- material: {
47
-
48
- // 单一的颜色
49
- color?: {
50
- r: number
51
- g: number
52
- b: number
53
- alpha: number
54
- }
55
-
56
- // 多颜色
57
- colors?: {
58
- array: number[] | Float32Array
59
- count: number
60
- itemSize: number
61
- }
62
-
63
- // 立方体纹理
64
- cube?: {
65
- left?: {
66
- image: {
67
- value?: TexImageSource
68
- }
69
- },
70
- right?: {
71
- image: {
72
- value?: TexImageSource
73
- }
74
- }
75
- near?: {
76
- image: {
77
- value?: TexImageSource
78
- }
79
- }
80
- far?: {
81
- image: {
82
- value?: TexImageSource
83
- }
84
- }
85
- top?: {
86
- image: {
87
- value?: TexImageSource
88
- }
89
- }
90
- bottom?: {
91
- image: {
92
- value?: TexImageSource
93
- }
94
- }
95
- }
96
-
97
- // 二维纹理
98
- image?: {
99
- value?: TexImageSource
100
- }
101
-
102
- }
103
- }
104
-
105
- export default interface Object3D {
106
-
107
- // 区域名称,不设置或设置为空字符串,表示此区域无需记录
108
- region?: string
109
-
110
- // 变换矩阵
111
- matrix?: Matrix4Type
112
-
113
- // 图形
114
- mesh: meshType[]
1
+ import Matrix4Type from './Matrix4'
2
+
3
+ export type geometryType = "LINES" | "INE_STRIP" | "LINE_LOOP" | "TRIANGLES" | "TRIANGLE_STRIP" | "TRIANGLE_FAN"
4
+
5
+ export interface meshType {
6
+
7
+ // 形状
8
+ geometry: {
9
+ attributes: {
10
+
11
+ // 点坐标
12
+ position: {
13
+ array: number[] | Float32Array
14
+ count: number
15
+ itemSize: number
16
+ }
17
+
18
+ // 法向量
19
+ normal?: {
20
+ array: number[] | Float32Array
21
+ count: number
22
+ itemSize: number
23
+ }
24
+
25
+ // 纹理坐标
26
+ uv?: {
27
+ array: number[] | Float32Array
28
+ count: number
29
+ itemSize: number
30
+ }
31
+
32
+ }
33
+
34
+ // 索引
35
+ index?: {
36
+ array: number[] | Uint8Array
37
+ count: number
38
+ itemSize: number
39
+ }
40
+
41
+ // 线、还是三角形
42
+ type: geometryType
43
+ }
44
+
45
+ // 材质
46
+ material: {
47
+
48
+ // 单一的颜色
49
+ color?: {
50
+ r: number
51
+ g: number
52
+ b: number
53
+ alpha: number
54
+ }
55
+
56
+ // 多颜色
57
+ colors?: {
58
+ array: number[] | Float32Array
59
+ count: number
60
+ itemSize: number
61
+ }
62
+
63
+ // 立方体纹理
64
+ cube?: {
65
+ left?: {
66
+ image: {
67
+ value?: TexImageSource
68
+ }
69
+ },
70
+ right?: {
71
+ image: {
72
+ value?: TexImageSource
73
+ }
74
+ }
75
+ near?: {
76
+ image: {
77
+ value?: TexImageSource
78
+ }
79
+ }
80
+ far?: {
81
+ image: {
82
+ value?: TexImageSource
83
+ }
84
+ }
85
+ top?: {
86
+ image: {
87
+ value?: TexImageSource
88
+ }
89
+ }
90
+ bottom?: {
91
+ image: {
92
+ value?: TexImageSource
93
+ }
94
+ }
95
+ }
96
+
97
+ // 二维纹理
98
+ image?: {
99
+ value?: TexImageSource
100
+ }
101
+
102
+ }
103
+ }
104
+
105
+ export default interface Object3D {
106
+
107
+ // 区域名称,不设置或设置为空字符串,表示此区域无需记录
108
+ region?: string
109
+
110
+ // 变换矩阵
111
+ matrix?: Matrix4Type
112
+
113
+ // 图形
114
+ mesh: meshType[]
115
115
  }
package/types/SVG.d.ts CHANGED
@@ -65,14 +65,14 @@ export default interface SVGType {
65
65
  fullText(text: any, x: number, y: number, deg?: number): this
66
66
 
67
67
  /**
68
- * 绘制一个实心的圆弧
69
- * @param cx 圆弧的圆心x坐标
70
- * @param cy 圆弧的圆心y坐标
71
- * @param r1 圆弧的内半径
72
- * @param r2 圆弧的外半径
73
- * @param beginDeg 开始弧度
74
- * @param deg 跨越弧度
75
- */
68
+ * 绘制一个实心的圆弧
69
+ * @param cx 圆弧的圆心x坐标
70
+ * @param cy 圆弧的圆心y坐标
71
+ * @param r1 圆弧的内半径
72
+ * @param r2 圆弧的外半径
73
+ * @param beginDeg 开始弧度
74
+ * @param deg 跨越弧度
75
+ */
76
76
  fillArc(cx: number, cy: number, r1: number, r2: number, beginDeg: number, deg: number): this
77
77
 
78
78
  /**
@@ -98,11 +98,11 @@ export default interface SVGType {
98
98
  fullArc(cx: number, cy: number, r1: number, r2: number, beginDeg: number, deg: number): this
99
99
 
100
100
  /**
101
- * 绘制一个实心的圆
102
- * @param cx 圆心x坐标
103
- * @param cy 圆心y坐标
104
- * @param r 圆的半径
105
- */
101
+ * 绘制一个实心的圆
102
+ * @param cx 圆心x坐标
103
+ * @param cy 圆心y坐标
104
+ * @param r 圆的半径
105
+ */
106
106
  fillCircle(cx: number, cy: number, r: number): this
107
107
 
108
108
  /**
@@ -208,4 +208,9 @@ export default interface SVGType {
208
208
  */
209
209
  full(): this
210
210
 
211
+ /**
212
+ * 绑定事件
213
+ */
214
+ bind(eventType: string, callback: (event: Event, target: SVGElement) => void): this
215
+
211
216
  }
@@ -1,61 +1,77 @@
1
- import { arcCapType, textAlignType, textBaselineType } from './painterConfig'
2
-
3
- export default interface SVGConfigType {
4
-
5
- /**
6
- * 填充色或图案,默认"#000"
7
- */
8
- fillStyle?: string
9
-
10
- /**
11
- * 轮廓色或图案,默认"#000"
12
- */
13
- strokeStyle?: string
14
-
15
- /**
16
- * 线条宽度,默认1(单位px)
17
- */
18
- lineWidth?: number
19
-
20
- /**
21
- * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
22
- */
23
- textAlign?: textAlignType
24
-
25
- /**
26
- * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
27
- */
28
- textBaseline?: textBaselineType
29
-
30
- /**
31
- * 设置线条虚线,默认为[]表示使用实线绘制
32
- *
33
- * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
34
- */
35
- lineDash?: Array<number>
36
-
37
- /**
38
- * 文字大小,默认16
39
- */
40
- "fontSize"?: number
41
- "font-size"?: number // 向下兼容
42
-
43
- /**
44
- * 字体,默认"sans-serif"
45
- */
46
- "fontFamily"?: string
47
- "font-family"?: string // 向下兼容
48
-
49
- /**
50
- * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
51
- */
52
- "arcStartCap"?: arcCapType
53
- "arc-start-cap"?: string // 向下兼容
54
-
55
- /**
56
- * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
57
- */
58
- "arcEndCap"?: arcCapType
59
- "arc-end-cap"?: string // 向下兼容
60
-
1
+ import { arcCapType, textAlignType, textBaselineType } from './painterConfig'
2
+
3
+ export default interface SVGConfigType {
4
+
5
+ /**
6
+ * 填充色或图案,默认"#000"
7
+ */
8
+ fillStyle?: string
9
+
10
+ /**
11
+ * 轮廓色或图案,默认"#000"
12
+ */
13
+ strokeStyle?: string
14
+
15
+ /**
16
+ * 线条宽度,默认1(单位px)
17
+ */
18
+ lineWidth?: number
19
+
20
+ /**
21
+ * 文字水平对齐方式,默认"left"左对齐(还有"center"居中和"right"右对齐)
22
+ */
23
+ textAlign?: textAlignType
24
+
25
+ /**
26
+ * 文字垂直对齐方式,默认"middle"垂直居中(还有"top"上对齐和"bottom"下对齐)
27
+ */
28
+ textBaseline?: textBaselineType
29
+
30
+ /**
31
+ * 设置线条虚线,默认为[]表示使用实线绘制
32
+ *
33
+ * 值应该是一个数组,格式:[实线长,虚线长,实线长 ...],数组长度任意,会自动循环
34
+ */
35
+ lineDash?: Array<number>
36
+
37
+ /**
38
+ * 文字大小,默认16
39
+ */
40
+ "fontSize"?: number
41
+
42
+ /**
43
+ * 已废弃,向下兼容,请用 fontSize 代替
44
+ */
45
+ "font-size"?: number // 向下兼容
46
+
47
+ /**
48
+ * 字体,默认"sans-serif"
49
+ */
50
+ "fontFamily"?: string
51
+
52
+ /**
53
+ * 已废弃,向下兼容,请用 fontFamily 代替
54
+ */
55
+ "font-family"?: string // 向下兼容
56
+
57
+ /**
58
+ * 圆弧开始端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
59
+ */
60
+ "arcStartCap"?: arcCapType
61
+
62
+ /**
63
+ * 已废弃,向下兼容,请用 arcStartCap 代替
64
+ */
65
+ "arc-start-cap"?: string // 向下兼容
66
+
67
+ /**
68
+ * 圆弧结束端闭合方式,默认"butt"直线闭合(还有"round"圆帽闭合,"-round"反圆帽闭合)
69
+ */
70
+ "arcEndCap"?: arcCapType
71
+
72
+ /**
73
+ * 已废弃,向下兼容,请用 arcEndCap 代替
74
+ */
75
+ "arc-end-cap"?: string // 向下兼容
76
+
61
77
  }
@@ -1,7 +1,7 @@
1
- import Object3D from './Object3D'
2
- import Matrix4Type from './Matrix4'
3
-
4
- export default interface Scene3D {
5
- children: Object3D[]
6
- matrix: Matrix4Type
1
+ import Object3D from './Object3D'
2
+ import Matrix4Type from './Matrix4'
3
+
4
+ export default interface Scene3D {
5
+ children: Object3D[]
6
+ matrix: Matrix4Type
7
7
  }