@wcardinal/wcardinal-ui 0.393.0 → 0.395.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/dist/types/wcardinal/ui/shape/e-shape-uploaded.d.ts +5 -6
  2. package/dist/types/wcardinal/ui/shape/variant/build-text.d.ts +2 -0
  3. package/dist/types/wcardinal/ui/shape/variant/builder-bar.d.ts +5 -5
  4. package/dist/types/wcardinal/ui/shape/variant/builder-base.d.ts +6 -6
  5. package/dist/types/wcardinal/ui/shape/variant/builder-circle.d.ts +5 -5
  6. package/dist/types/wcardinal/ui/shape/variant/builder-image-sdf.d.ts +5 -5
  7. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-any.d.ts +3 -3
  8. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-circles.d.ts +5 -5
  9. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.d.ts +4 -4
  10. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangles.d.ts +4 -4
  11. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.d.ts +4 -4
  12. package/dist/types/wcardinal/ui/shape/variant/builder-line-of-triangles.d.ts +4 -4
  13. package/dist/types/wcardinal/ui/shape/variant/builder-line.d.ts +6 -6
  14. package/dist/types/wcardinal/ui/shape/variant/builder-marker-base.d.ts +2 -2
  15. package/dist/types/wcardinal/ui/shape/variant/builder-marker-circle.d.ts +5 -5
  16. package/dist/types/wcardinal/ui/shape/variant/builder-marker-rectangle.d.ts +4 -4
  17. package/dist/types/wcardinal/ui/shape/variant/builder-marker-triangle.d.ts +4 -4
  18. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-pivoted.d.ts +4 -4
  19. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-rounded.d.ts +4 -4
  20. package/dist/types/wcardinal/ui/shape/variant/builder-rectangle.d.ts +4 -4
  21. package/dist/types/wcardinal/ui/shape/variant/builder-semicircle.d.ts +5 -5
  22. package/dist/types/wcardinal/ui/shape/variant/builder-text.d.ts +8 -8
  23. package/dist/types/wcardinal/ui/shape/variant/builder-triangle-rounded.d.ts +4 -4
  24. package/dist/types/wcardinal/ui/shape/variant/builder-triangle.d.ts +4 -4
  25. package/dist/types/wcardinal/ui/shape/variant/builder.d.ts +35 -3
  26. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.d.ts +0 -2
  27. package/dist/types/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.d.ts +0 -2
  28. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.d.ts +0 -2
  29. package/dist/types/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.d.ts +0 -2
  30. package/dist/wcardinal/ui/d-base-background-mesh-geometry.js +5 -5
  31. package/dist/wcardinal/ui/d-base-background-mesh-geometry.js.map +1 -1
  32. package/dist/wcardinal/ui/d-base-border-mesh-geometry.js +60 -37
  33. package/dist/wcardinal/ui/d-base-border-mesh-geometry.js.map +1 -1
  34. package/dist/wcardinal/ui/d-base-outline-snippet.js +1 -1
  35. package/dist/wcardinal/ui/d-base-outline-snippet.js.map +1 -1
  36. package/dist/wcardinal/ui/d-diagram-canvas.js +2 -2
  37. package/dist/wcardinal/ui/d-diagram-canvas.js.map +1 -1
  38. package/dist/wcardinal/ui/d-table-data-list-selection.js +2 -2
  39. package/dist/wcardinal/ui/d-table-data-list-selection.js.map +1 -1
  40. package/dist/wcardinal/ui/shape/e-shape-container.js +2 -2
  41. package/dist/wcardinal/ui/shape/e-shape-container.js.map +1 -1
  42. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js +4 -3
  43. package/dist/wcardinal/ui/shape/e-shape-runtime-impl.js.map +1 -1
  44. package/dist/wcardinal/ui/shape/e-shape-uploaded.js.map +1 -1
  45. package/dist/wcardinal/ui/shape/variant/build-text.js +5 -2
  46. package/dist/wcardinal/ui/shape/variant/build-text.js.map +1 -1
  47. package/dist/wcardinal/ui/shape/variant/builder-bar.js +14 -5
  48. package/dist/wcardinal/ui/shape/variant/builder-bar.js.map +1 -1
  49. package/dist/wcardinal/ui/shape/variant/builder-base.js +23 -17
  50. package/dist/wcardinal/ui/shape/variant/builder-base.js.map +1 -1
  51. package/dist/wcardinal/ui/shape/variant/builder-circle.js +10 -2
  52. package/dist/wcardinal/ui/shape/variant/builder-circle.js.map +1 -1
  53. package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js +14 -2
  54. package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js.map +1 -1
  55. package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js +4 -1
  56. package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js.map +1 -1
  57. package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js +11 -2
  58. package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js.map +1 -1
  59. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js +20 -12
  60. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js.map +1 -1
  61. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js +14 -10
  62. package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js.map +1 -1
  63. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js +20 -12
  64. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js.map +1 -1
  65. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js +13 -7
  66. package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js.map +1 -1
  67. package/dist/wcardinal/ui/shape/variant/builder-line.js +17 -7
  68. package/dist/wcardinal/ui/shape/variant/builder-line.js.map +1 -1
  69. package/dist/wcardinal/ui/shape/variant/builder-marker-base.js +4 -1
  70. package/dist/wcardinal/ui/shape/variant/builder-marker-base.js.map +1 -1
  71. package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js +14 -2
  72. package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js.map +1 -1
  73. package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js +12 -4
  74. package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js.map +1 -1
  75. package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js +11 -3
  76. package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js.map +1 -1
  77. package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js +8 -4
  78. package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js.map +1 -1
  79. package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js +14 -6
  80. package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js.map +1 -1
  81. package/dist/wcardinal/ui/shape/variant/builder-rectangle.js +8 -4
  82. package/dist/wcardinal/ui/shape/variant/builder-rectangle.js.map +1 -1
  83. package/dist/wcardinal/ui/shape/variant/builder-semicircle.js +10 -2
  84. package/dist/wcardinal/ui/shape/variant/builder-semicircle.js.map +1 -1
  85. package/dist/wcardinal/ui/shape/variant/builder-text.js +41 -29
  86. package/dist/wcardinal/ui/shape/variant/builder-text.js.map +1 -1
  87. package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js +14 -6
  88. package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js.map +1 -1
  89. package/dist/wcardinal/ui/shape/variant/builder-triangle.js +7 -3
  90. package/dist/wcardinal/ui/shape/variant/builder-triangle.js.map +1 -1
  91. package/dist/wcardinal/ui/shape/variant/builder.js +16 -1
  92. package/dist/wcardinal/ui/shape/variant/builder.js.map +1 -1
  93. package/dist/wcardinal/ui/shape/variant/create-bar-uploaded.js +3 -3
  94. package/dist/wcardinal/ui/shape/variant/create-bar-uploaded.js.map +1 -1
  95. package/dist/wcardinal/ui/shape/variant/create-circle-uploaded.js +3 -3
  96. package/dist/wcardinal/ui/shape/variant/create-circle-uploaded.js.map +1 -1
  97. package/dist/wcardinal/ui/shape/variant/create-group-uploaded.js +3 -3
  98. package/dist/wcardinal/ui/shape/variant/create-group-uploaded.js.map +1 -1
  99. package/dist/wcardinal/ui/shape/variant/create-image-sdf-uploaded.js +3 -3
  100. package/dist/wcardinal/ui/shape/variant/create-image-sdf-uploaded.js.map +1 -1
  101. package/dist/wcardinal/ui/shape/variant/create-label-uploaded.js +3 -3
  102. package/dist/wcardinal/ui/shape/variant/create-label-uploaded.js.map +1 -1
  103. package/dist/wcardinal/ui/shape/variant/create-line-of-any-uploaded.js +3 -3
  104. package/dist/wcardinal/ui/shape/variant/create-line-of-any-uploaded.js.map +1 -1
  105. package/dist/wcardinal/ui/shape/variant/create-line-uploaded.js +3 -3
  106. package/dist/wcardinal/ui/shape/variant/create-line-uploaded.js.map +1 -1
  107. package/dist/wcardinal/ui/shape/variant/create-rectangle-pivoted-uploaded.js +3 -3
  108. package/dist/wcardinal/ui/shape/variant/create-rectangle-pivoted-uploaded.js.map +1 -1
  109. package/dist/wcardinal/ui/shape/variant/create-rectangle-rounded-uploaded.js +3 -3
  110. package/dist/wcardinal/ui/shape/variant/create-rectangle-rounded-uploaded.js.map +1 -1
  111. package/dist/wcardinal/ui/shape/variant/create-rectangle-uploaded.js +3 -3
  112. package/dist/wcardinal/ui/shape/variant/create-rectangle-uploaded.js.map +1 -1
  113. package/dist/wcardinal/ui/shape/variant/create-semicircle-uploaded.js +3 -3
  114. package/dist/wcardinal/ui/shape/variant/create-semicircle-uploaded.js.map +1 -1
  115. package/dist/wcardinal/ui/shape/variant/create-triangle-rounded-uploaded.js +3 -3
  116. package/dist/wcardinal/ui/shape/variant/create-triangle-rounded-uploaded.js.map +1 -1
  117. package/dist/wcardinal/ui/shape/variant/create-triangle-uploaded.js +3 -3
  118. package/dist/wcardinal/ui/shape/variant/create-triangle-uploaded.js.map +1 -1
  119. package/dist/wcardinal/ui/shape/variant/e-shape-base.js +6 -6
  120. package/dist/wcardinal/ui/shape/variant/e-shape-base.js.map +1 -1
  121. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js +1 -1
  122. package/dist/wcardinal/ui/theme/dark/d-theme-dark-button-base.js.map +1 -1
  123. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js +0 -4
  124. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-off.js.map +1 -1
  125. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js +0 -4
  126. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input-boolean-button-on.js.map +1 -1
  127. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js +1 -1
  128. package/dist/wcardinal/ui/theme/dark/d-theme-dark-input.js.map +1 -1
  129. package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js +1 -1
  130. package/dist/wcardinal/ui/theme/white/d-theme-white-button-base.js.map +1 -1
  131. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js +0 -4
  132. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-off.js.map +1 -1
  133. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js +0 -4
  134. package/dist/wcardinal/ui/theme/white/d-theme-white-input-boolean-button-on.js.map +1 -1
  135. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js +1 -1
  136. package/dist/wcardinal/ui/theme/white/d-theme-white-input.js.map +1 -1
  137. package/dist/wcardinal-ui-theme-dark-en-us.js +3 -9
  138. package/dist/wcardinal-ui-theme-dark-en-us.min.js +2 -2
  139. package/dist/wcardinal-ui-theme-dark-en-us.min.js.map +1 -1
  140. package/dist/wcardinal-ui-theme-dark-ja-jp.js +3 -9
  141. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +2 -2
  142. package/dist/wcardinal-ui-theme-dark-ja-jp.min.js.map +1 -1
  143. package/dist/wcardinal-ui-theme-dark.js +3 -9
  144. package/dist/wcardinal-ui-theme-dark.min.js +2 -2
  145. package/dist/wcardinal-ui-theme-white-en-us.js +3 -9
  146. package/dist/wcardinal-ui-theme-white-en-us.min.js +2 -2
  147. package/dist/wcardinal-ui-theme-white-en-us.min.js.map +1 -1
  148. package/dist/wcardinal-ui-theme-white-ja-jp.js +3 -9
  149. package/dist/wcardinal-ui-theme-white-ja-jp.min.js +2 -2
  150. package/dist/wcardinal-ui-theme-white-ja-jp.min.js.map +1 -1
  151. package/dist/wcardinal-ui-theme-white.js +3 -9
  152. package/dist/wcardinal-ui-theme-white.min.js +2 -2
  153. package/dist/wcardinal-ui.cjs.js +441 -264
  154. package/dist/wcardinal-ui.js +437 -248
  155. package/dist/wcardinal-ui.min.js +2 -2
  156. package/dist/wcardinal-ui.min.js.map +1 -1
  157. package/package.json +1 -1
@@ -4,7 +4,8 @@
4
4
  */
5
5
  import { Texture } from "pixi.js";
6
6
  import { buildColor } from "./build-color";
7
- import { buildTextClipping, buildTextIndex, buildTextStep, buildTextVertex, TEXT_FMIN, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
7
+ import { buildTextClipping, buildTextIndex, buildTextStep, buildTextVertex, TEXT_FMIN, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
8
+ import { BuilderFlag } from "./builder";
8
9
  import { toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
9
10
  var BuilderText = /** @class */ (function () {
10
11
  function BuilderText(vertexOffset, indexOffset, vertexCount, indexCount) {
@@ -12,32 +13,33 @@ var BuilderText = /** @class */ (function () {
12
13
  this.indexOffset = indexOffset;
13
14
  this.vertexCount = vertexCount;
14
15
  this.indexCount = indexCount;
15
- this.sizeX = NaN;
16
- this.sizeY = NaN;
17
- this.transformLocalId = NaN;
16
+ this.inited = BuilderFlag.NONE;
17
+ this.sizeX = 0;
18
+ this.sizeY = 0;
19
+ this.transformLocalId = 0;
18
20
  this.scaleX = 1;
19
21
  this.scaleY = 1;
20
- this.size = NaN;
22
+ this.size = 0;
21
23
  this.family = "auto";
22
24
  this.value = "";
23
25
  this.texture = null;
24
- this.textureTransformId = NaN;
25
- this.color = NaN;
26
- this.alpha = NaN;
27
- this.weight = NaN;
28
- this.style = NaN;
29
- this.alignHorizontal = NaN;
30
- this.alignVertical = NaN;
31
- this.offsetHorizontal = NaN;
32
- this.offsetVertical = NaN;
33
- this.outlineWidth = NaN;
34
- this.outlineColor = NaN;
35
- this.outlineAlpha = NaN;
36
- this.spacingHorizontal = NaN;
37
- this.spacingVertical = NaN;
38
- this.direction = NaN;
39
- this.paddingHorizontal = NaN;
40
- this.paddingVertical = NaN;
26
+ this.textureTransformId = 0;
27
+ this.color = 0;
28
+ this.alpha = 0;
29
+ this.weight = 0;
30
+ this.style = 0;
31
+ this.alignHorizontal = 0;
32
+ this.alignVertical = 0;
33
+ this.offsetHorizontal = 0;
34
+ this.offsetVertical = 0;
35
+ this.outlineWidth = 0;
36
+ this.outlineColor = 0;
37
+ this.outlineAlpha = 0;
38
+ this.spacingHorizontal = 0;
39
+ this.spacingVertical = 0;
40
+ this.direction = 0;
41
+ this.paddingHorizontal = 0;
42
+ this.paddingVertical = 0;
41
43
  this.clipping = false;
42
44
  this.fitting = false;
43
45
  }
@@ -52,9 +54,10 @@ var BuilderText = /** @class */ (function () {
52
54
  buffer.updateIndices();
53
55
  buildTextIndex(buffer.indices, voffset, this.indexOffset, this.indexCount);
54
56
  }
57
+ this.inited |= BuilderFlag.CLIPPING_AND_INDEX;
55
58
  };
56
59
  BuilderText.prototype.isCompatible = function (shape) {
57
- return toTextBufferCount(shape) * TEXT_VERTEX_COUNT === this.vertexCount;
60
+ return toTextBufferCount(shape) << TEXT_VERTEX_COUNT_SHIFT === this.vertexCount;
58
61
  };
59
62
  BuilderText.prototype.update = function (buffer, shape) {
60
63
  var vcount = this.vertexCount;
@@ -108,7 +111,9 @@ var BuilderText = /** @class */ (function () {
108
111
  var isClippingChanged = this.clipping !== textClipping;
109
112
  var isFittingChanged = this.fitting !== textFitting;
110
113
  var isTextureChanged = textTexture !== this.texture || textTextureTransformId !== this.textureTransformId;
111
- if (isSizeChanged ||
114
+ var isNotInited = !(this.inited & BuilderFlag.VERTEX);
115
+ if (isNotInited ||
116
+ isSizeChanged ||
112
117
  isTransformChanged ||
113
118
  isCharChanged ||
114
119
  isCharSizeChanged ||
@@ -120,6 +125,7 @@ var BuilderText = /** @class */ (function () {
120
125
  isClippingChanged ||
121
126
  isFittingChanged ||
122
127
  isTextureChanged) {
128
+ this.inited |= BuilderFlag.VERTEX;
123
129
  this.size = textSize;
124
130
  this.family = textFamily;
125
131
  this.value = textValue;
@@ -138,8 +144,8 @@ var BuilderText = /** @class */ (function () {
138
144
  this.texture = textTexture;
139
145
  this.textureTransformId = textTextureTransformId;
140
146
  if (isCharSizeChanged || isFittingChanged || (textFitting && isSizeChanged)) {
141
- // Invalidate the text weight to update the text steps.
142
- this.weight = NaN;
147
+ // Invalidate the step buffer.
148
+ this.inited &= ~BuilderFlag.STEP;
143
149
  }
144
150
  // Vertices & UVs
145
151
  buffer.updateVertices();
@@ -157,7 +163,9 @@ var BuilderText = /** @class */ (function () {
157
163
  var text = shape.text;
158
164
  var color = text.color;
159
165
  var alpha = shape.visible && text.enable ? text.alpha : 0;
160
- if (color !== this.color || alpha !== this.alpha) {
166
+ var isNotInited = !(this.inited & BuilderFlag.COLOR_FILL);
167
+ if (isNotInited || color !== this.color || alpha !== this.alpha) {
168
+ this.inited |= BuilderFlag.COLOR_FILL;
161
169
  this.color = color;
162
170
  this.alpha = alpha;
163
171
  buffer.updateColorFills();
@@ -169,7 +177,9 @@ var BuilderText = /** @class */ (function () {
169
177
  var outline = text.outline;
170
178
  var color = outline.color;
171
179
  var alpha = shape.visible && text.enable ? outline.alpha : 0;
172
- if (color !== this.outlineColor || alpha !== this.outlineAlpha) {
180
+ var isNotInited = !(this.inited & BuilderFlag.COLOR_STROKE);
181
+ if (isNotInited || color !== this.outlineColor || alpha !== this.outlineAlpha) {
182
+ this.inited |= BuilderFlag.COLOR_STROKE;
173
183
  this.outlineColor = color;
174
184
  this.outlineAlpha = alpha;
175
185
  buffer.updateColorStrokes();
@@ -192,7 +202,9 @@ var BuilderText = /** @class */ (function () {
192
202
  }
193
203
  var isScaleChanged = TEXT_FMIN < Math.abs(this.scaleX - scaleX) ||
194
204
  TEXT_FMIN < Math.abs(this.scaleY - scaleY);
195
- if (isWeightChanged || isOutlineWidthChanged || isScaleChanged) {
205
+ var isNotInited = !(this.inited & BuilderFlag.STEP);
206
+ if (isNotInited || isWeightChanged || isOutlineWidthChanged || isScaleChanged) {
207
+ this.inited |= BuilderFlag.STEP;
196
208
  this.weight = textWeight;
197
209
  this.outlineWidth = textOutlineWidth;
198
210
  this.scaleX = scaleX;
@@ -1 +1 @@
1
- {"version":3,"file":"builder-text.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-text.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Texture } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeBufferUnitBuilder } from \"../e-shape-buffer-unit-builder\";\nimport { EShapeTextAtlas } from \"../e-shape-text\";\nimport { buildColor } from \"./build-color\";\nimport {\n\tbuildTextClipping,\n\tbuildTextIndex,\n\tbuildTextStep,\n\tbuildTextVertex,\n\tTEXT_FMIN,\n\tTEXT_VERTEX_COUNT,\n\ttoTextBufferCount\n} from \"./build-text\";\nimport { Builder } from \"./builder\";\nimport { toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderText implements Builder {\n\treadonly vertexOffset: number;\n\treadonly indexOffset: number;\n\treadonly vertexCount: number;\n\treadonly indexCount: number;\n\n\tprotected sizeX: number;\n\tprotected sizeY: number;\n\tprotected transformLocalId: number;\n\tprotected scaleX: number;\n\tprotected scaleY: number;\n\n\tprotected texture: Texture | null;\n\tprotected textureTransformId: number;\n\tprotected value: string;\n\tprotected family: string;\n\tprotected size: number;\n\tprotected color: number;\n\tprotected alpha: number;\n\tprotected weight: number;\n\tprotected style: number;\n\tprotected alignHorizontal: number;\n\tprotected alignVertical: number;\n\tprotected offsetHorizontal: number;\n\tprotected offsetVertical: number;\n\tprotected outlineWidth: number;\n\tprotected outlineColor: number;\n\tprotected outlineAlpha: number;\n\tprotected spacingHorizontal: number;\n\tprotected spacingVertical: number;\n\tprotected direction: number;\n\tprotected paddingHorizontal: number;\n\tprotected paddingVertical: number;\n\tprotected clipping: boolean;\n\tprotected fitting: boolean;\n\n\tconstructor(\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tthis.vertexOffset = vertexOffset;\n\t\tthis.indexOffset = indexOffset;\n\t\tthis.vertexCount = vertexCount;\n\t\tthis.indexCount = indexCount;\n\n\t\tthis.sizeX = NaN;\n\t\tthis.sizeY = NaN;\n\n\t\tthis.transformLocalId = NaN;\n\n\t\tthis.scaleX = 1;\n\t\tthis.scaleY = 1;\n\n\t\tthis.size = NaN;\n\t\tthis.family = \"auto\";\n\t\tthis.value = \"\";\n\t\tthis.texture = null;\n\t\tthis.textureTransformId = NaN;\n\t\tthis.color = NaN;\n\t\tthis.alpha = NaN;\n\t\tthis.weight = NaN;\n\t\tthis.style = NaN;\n\t\tthis.alignHorizontal = NaN;\n\t\tthis.alignVertical = NaN;\n\t\tthis.offsetHorizontal = NaN;\n\t\tthis.offsetVertical = NaN;\n\t\tthis.outlineWidth = NaN;\n\t\tthis.outlineColor = NaN;\n\t\tthis.outlineAlpha = NaN;\n\t\tthis.spacingHorizontal = NaN;\n\t\tthis.spacingVertical = NaN;\n\t\tthis.direction = NaN;\n\t\tthis.paddingHorizontal = NaN;\n\t\tthis.paddingVertical = NaN;\n\t\tthis.clipping = false;\n\t\tthis.fitting = false;\n\t}\n\n\tinit(buffer: EShapeBuffer): void {\n\t\tconst vcount = this.vertexCount;\n\t\tif (0 < vcount) {\n\t\t\t// Clippings\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tbuffer.updateClippings();\n\t\t\tbuildTextClipping(buffer.clippings, voffset, vcount);\n\n\t\t\t// Indices\n\t\t\tbuffer.updateIndices();\n\t\t\tbuildTextIndex(buffer.indices, voffset, this.indexOffset, this.indexCount);\n\t\t}\n\t}\n\n\tisCompatible(shape: EShape): boolean {\n\t\treturn toTextBufferCount(shape) * TEXT_VERTEX_COUNT === this.vertexCount;\n\t}\n\n\tupdate(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst vcount = this.vertexCount;\n\t\tif (0 < vcount) {\n\t\t\tconst textAtlas = shape.text.atlas;\n\t\t\tif (textAtlas != null) {\n\t\t\t\tthis.updateVertex(buffer, shape, textAtlas);\n\t\t\t\tthis.updateColorFill(buffer, shape);\n\t\t\t\tthis.updateColorStroke(buffer, shape);\n\t\t\t\tthis.updateStep(buffer, shape);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateVertex(buffer: EShapeBuffer, shape: EShape, textAtlas: EShapeTextAtlas): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst text = shape.text;\n\t\tconst textSize = text.size;\n\t\tconst textFamily = text.family;\n\t\tconst textValue = text.value;\n\t\tconst textStyle = text.style;\n\t\tconst textAlignHorizontal = text.align.horizontal;\n\t\tconst textAlignVertical = text.align.vertical;\n\t\tconst textOffsetHorizontal = text.offset.horizontal;\n\t\tconst textOffsetVertical = text.offset.vertical;\n\t\tconst textSpacingHorizontal = text.spacing.horizontal;\n\t\tconst textSpacingVertical = text.spacing.vertical;\n\t\tconst textDirection = text.direction;\n\t\tconst textPaddingHorizontal = text.padding.horizontal;\n\t\tconst textPaddingVertical = text.padding.vertical;\n\t\tconst textClipping = text.clipping;\n\t\tconst textFitting = text.fitting;\n\t\tconst textTexture = text.texture || Texture.WHITE;\n\t\tconst textTextureTransformId = toTextureTransformId(textTexture);\n\n\t\tconst isCharChanged = textValue !== this.value || textFamily !== this.family;\n\t\tconst isCharSizeChanged = textSize !== this.size;\n\t\tconst isCharStyleChanged = textStyle !== this.style;\n\t\tconst isCharAlignChanged =\n\t\t\ttextAlignHorizontal !== this.alignHorizontal ||\n\t\t\ttextAlignVertical !== this.alignVertical;\n\t\tconst isCharOffsetChanged =\n\t\t\ttextOffsetHorizontal !== this.offsetHorizontal ||\n\t\t\ttextOffsetVertical !== this.offsetVertical;\n\t\tconst isCharSpacingChanged =\n\t\t\ttextSpacingHorizontal !== this.spacingHorizontal ||\n\t\t\ttextSpacingVertical !== this.spacingVertical ||\n\t\t\ttextPaddingHorizontal !== this.paddingHorizontal ||\n\t\t\ttextPaddingVertical !== this.paddingVertical;\n\t\tconst isCharDirectionChanged = textDirection !== this.direction;\n\t\tconst isClippingChanged = this.clipping !== textClipping;\n\t\tconst isFittingChanged = this.fitting !== textFitting;\n\t\tconst isTextureChanged =\n\t\t\ttextTexture !== this.texture || textTextureTransformId !== this.textureTransformId;\n\n\t\tif (\n\t\t\tisSizeChanged ||\n\t\t\tisTransformChanged ||\n\t\t\tisCharChanged ||\n\t\t\tisCharSizeChanged ||\n\t\t\tisCharStyleChanged ||\n\t\t\tisCharAlignChanged ||\n\t\t\tisCharOffsetChanged ||\n\t\t\tisCharSpacingChanged ||\n\t\t\tisCharDirectionChanged ||\n\t\t\tisClippingChanged ||\n\t\t\tisFittingChanged ||\n\t\t\tisTextureChanged\n\t\t) {\n\t\t\tthis.size = textSize;\n\t\t\tthis.family = textFamily;\n\t\t\tthis.value = textValue;\n\t\t\tthis.style = textStyle;\n\t\t\tthis.alignHorizontal = textAlignHorizontal;\n\t\t\tthis.alignVertical = textAlignVertical;\n\t\t\tthis.offsetHorizontal = textOffsetHorizontal;\n\t\t\tthis.offsetVertical = textOffsetVertical;\n\t\t\tthis.spacingHorizontal = textSpacingHorizontal;\n\t\t\tthis.spacingVertical = textSpacingVertical;\n\t\t\tthis.direction = textDirection;\n\t\t\tthis.paddingHorizontal = textPaddingHorizontal;\n\t\t\tthis.paddingVertical = textPaddingVertical;\n\t\t\tthis.clipping = textClipping;\n\t\t\tthis.fitting = textFitting;\n\t\t\tthis.texture = textTexture;\n\t\t\tthis.textureTransformId = textTextureTransformId;\n\n\t\t\tif (isCharSizeChanged || isFittingChanged || (textFitting && isSizeChanged)) {\n\t\t\t\t// Invalidate the text weight to update the text steps.\n\t\t\t\tthis.weight = NaN;\n\t\t\t}\n\n\t\t\t// Vertices & UVs\n\t\t\tbuffer.updateVertices();\n\t\t\tbuffer.updateUvs();\n\t\t\tconst shapeSize = shape.size;\n\t\t\tlet textWorld = text.world;\n\t\t\tif (textWorld == null) {\n\t\t\t\ttextWorld = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0];\n\t\t\t\ttext.world = textWorld;\n\t\t\t}\n\t\t\tbuildTextVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tbuffer.uvs,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tshapeSize.x,\n\t\t\t\tshapeSize.y,\n\t\t\t\ttextAtlas,\n\t\t\t\ttextSize,\n\t\t\t\ttextValue,\n\t\t\t\ttextStyle,\n\t\t\t\ttextAlignHorizontal,\n\t\t\t\ttextAlignVertical,\n\t\t\t\ttextOffsetHorizontal,\n\t\t\t\ttextOffsetVertical,\n\t\t\t\ttextSpacingHorizontal,\n\t\t\t\ttextSpacingVertical,\n\t\t\t\ttextDirection,\n\t\t\t\ttextPaddingHorizontal,\n\t\t\t\ttextPaddingVertical,\n\t\t\t\ttextClipping,\n\t\t\t\ttextFitting,\n\t\t\t\ttextWorld,\n\t\t\t\ttoTextureUvs(textTexture),\n\t\t\t\tshape.transform.internalTransform\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected updateColorFill(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\t\tconst color = text.color;\n\t\tconst alpha = shape.visible && text.enable ? text.alpha : 0;\n\t\tif (color !== this.color || alpha !== this.alpha) {\n\t\t\tthis.color = color;\n\t\t\tthis.alpha = alpha;\n\t\t\tbuffer.updateColorFills();\n\n\t\t\tbuildColor(color, alpha, this.vertexOffset, this.vertexCount, buffer.colorFills);\n\t\t}\n\t}\n\n\tprotected updateColorStroke(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\t\tconst outline = text.outline;\n\t\tconst color = outline.color;\n\t\tconst alpha = shape.visible && text.enable ? outline.alpha : 0;\n\t\tif (color !== this.outlineColor || alpha !== this.outlineAlpha) {\n\t\t\tthis.outlineColor = color;\n\t\t\tthis.outlineAlpha = alpha;\n\t\t\tbuffer.updateColorStrokes();\n\n\t\t\tbuildColor(color, alpha, this.vertexOffset, this.vertexCount, buffer.colorStrokes);\n\t\t}\n\t}\n\n\tprotected updateStep(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\n\t\tconst textOutline = text.outline;\n\t\tconst textOutlineWidth = textOutline.enable ? textOutline.width : 0;\n\t\tconst isOutlineWidthChanged = textOutlineWidth !== this.outlineWidth;\n\n\t\tconst textWeight = text.weight;\n\t\tconst isWeightChanged = textWeight !== this.weight;\n\n\t\tlet scaleX = 1;\n\t\tlet scaleY = 1;\n\t\tconst textWorld = text.world;\n\t\tif (textWorld != null) {\n\t\t\tscaleX = textWorld[8];\n\t\t\tscaleY = textWorld[9];\n\t\t}\n\t\tconst isScaleChanged =\n\t\t\tTEXT_FMIN < Math.abs(this.scaleX - scaleX) ||\n\t\t\tTEXT_FMIN < Math.abs(this.scaleY - scaleY);\n\n\t\tif (isWeightChanged || isOutlineWidthChanged || isScaleChanged) {\n\t\t\tthis.weight = textWeight;\n\t\t\tthis.outlineWidth = textOutlineWidth;\n\t\t\tthis.scaleX = scaleX;\n\t\t\tthis.scaleY = scaleY;\n\n\t\t\tbuffer.updateSteps();\n\t\t\tbuildTextStep(\n\t\t\t\tbuffer.steps,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\ttext.atlas,\n\t\t\t\ttext.size,\n\t\t\t\ttextOutlineWidth,\n\t\t\t\ttextWeight,\n\t\t\t\tthis.scaleX,\n\t\t\t\tthis.scaleY\n\t\t\t);\n\t\t}\n\t}\n\n\tbuildUnit(builder: EShapeBufferUnitBuilder): void {\n\t\tif (0 < this.vertexCount) {\n\t\t\tconst textTexture = this.texture || Texture.WHITE;\n\t\t\tconst textBaseTexture = textTexture.baseTexture;\n\t\t\tif (textBaseTexture !== builder.baseTexture) {\n\t\t\t\tbuilder.baseTexture = textBaseTexture;\n\t\t\t\tbuilder.push(textTexture, this.indexOffset);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"builder-text.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-text.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Texture } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport { EShapeBufferUnitBuilder } from \"../e-shape-buffer-unit-builder\";\nimport { EShapeTextAtlas } from \"../e-shape-text\";\nimport { buildColor } from \"./build-color\";\nimport {\n\tbuildTextClipping,\n\tbuildTextIndex,\n\tbuildTextStep,\n\tbuildTextVertex,\n\tTEXT_FMIN,\n\tTEXT_VERTEX_COUNT_SHIFT,\n\ttoTextBufferCount\n} from \"./build-text\";\nimport { Builder, BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderText implements Builder {\n\treadonly vertexOffset: number;\n\treadonly indexOffset: number;\n\treadonly vertexCount: number;\n\treadonly indexCount: number;\n\n\tprotected inited: BuilderFlag;\n\n\tprotected sizeX: number;\n\tprotected sizeY: number;\n\tprotected transformLocalId: number;\n\tprotected scaleX: number;\n\tprotected scaleY: number;\n\n\tprotected texture: Texture | null;\n\tprotected textureTransformId: number;\n\tprotected value: string;\n\tprotected family: string;\n\tprotected size: number;\n\tprotected color: number;\n\tprotected alpha: number;\n\tprotected weight: number;\n\tprotected style: number;\n\tprotected alignHorizontal: number;\n\tprotected alignVertical: number;\n\tprotected offsetHorizontal: number;\n\tprotected offsetVertical: number;\n\tprotected outlineWidth: number;\n\tprotected outlineColor: number;\n\tprotected outlineAlpha: number;\n\tprotected spacingHorizontal: number;\n\tprotected spacingVertical: number;\n\tprotected direction: number;\n\tprotected paddingHorizontal: number;\n\tprotected paddingVertical: number;\n\tprotected clipping: boolean;\n\tprotected fitting: boolean;\n\n\tconstructor(\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tthis.vertexOffset = vertexOffset;\n\t\tthis.indexOffset = indexOffset;\n\t\tthis.vertexCount = vertexCount;\n\t\tthis.indexCount = indexCount;\n\n\t\tthis.inited = BuilderFlag.NONE;\n\n\t\tthis.sizeX = 0;\n\t\tthis.sizeY = 0;\n\n\t\tthis.transformLocalId = 0;\n\n\t\tthis.scaleX = 1;\n\t\tthis.scaleY = 1;\n\n\t\tthis.size = 0;\n\t\tthis.family = \"auto\";\n\t\tthis.value = \"\";\n\t\tthis.texture = null;\n\t\tthis.textureTransformId = 0;\n\t\tthis.color = 0;\n\t\tthis.alpha = 0;\n\t\tthis.weight = 0;\n\t\tthis.style = 0;\n\t\tthis.alignHorizontal = 0;\n\t\tthis.alignVertical = 0;\n\t\tthis.offsetHorizontal = 0;\n\t\tthis.offsetVertical = 0;\n\t\tthis.outlineWidth = 0;\n\t\tthis.outlineColor = 0;\n\t\tthis.outlineAlpha = 0;\n\t\tthis.spacingHorizontal = 0;\n\t\tthis.spacingVertical = 0;\n\t\tthis.direction = 0;\n\t\tthis.paddingHorizontal = 0;\n\t\tthis.paddingVertical = 0;\n\t\tthis.clipping = false;\n\t\tthis.fitting = false;\n\t}\n\n\tinit(buffer: BuilderBuffer): void {\n\t\tconst vcount = this.vertexCount;\n\t\tif (0 < vcount) {\n\t\t\t// Clippings\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tbuffer.updateClippings();\n\t\t\tbuildTextClipping(buffer.clippings, voffset, vcount);\n\n\t\t\t// Indices\n\t\t\tbuffer.updateIndices();\n\t\t\tbuildTextIndex(buffer.indices, voffset, this.indexOffset, this.indexCount);\n\t\t}\n\t\tthis.inited |= BuilderFlag.CLIPPING_AND_INDEX;\n\t}\n\n\tisCompatible(shape: EShape): boolean {\n\t\treturn toTextBufferCount(shape) << TEXT_VERTEX_COUNT_SHIFT === this.vertexCount;\n\t}\n\n\tupdate(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst vcount = this.vertexCount;\n\t\tif (0 < vcount) {\n\t\t\tconst textAtlas = shape.text.atlas;\n\t\t\tif (textAtlas != null) {\n\t\t\t\tthis.updateVertex(buffer, shape, textAtlas);\n\t\t\t\tthis.updateColorFill(buffer, shape);\n\t\t\t\tthis.updateColorStroke(buffer, shape);\n\t\t\t\tthis.updateStep(buffer, shape);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateVertex(buffer: BuilderBuffer, shape: EShape, textAtlas: EShapeTextAtlas): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst text = shape.text;\n\t\tconst textSize = text.size;\n\t\tconst textFamily = text.family;\n\t\tconst textValue = text.value;\n\t\tconst textStyle = text.style;\n\t\tconst textAlignHorizontal = text.align.horizontal;\n\t\tconst textAlignVertical = text.align.vertical;\n\t\tconst textOffsetHorizontal = text.offset.horizontal;\n\t\tconst textOffsetVertical = text.offset.vertical;\n\t\tconst textSpacingHorizontal = text.spacing.horizontal;\n\t\tconst textSpacingVertical = text.spacing.vertical;\n\t\tconst textDirection = text.direction;\n\t\tconst textPaddingHorizontal = text.padding.horizontal;\n\t\tconst textPaddingVertical = text.padding.vertical;\n\t\tconst textClipping = text.clipping;\n\t\tconst textFitting = text.fitting;\n\t\tconst textTexture = text.texture || Texture.WHITE;\n\t\tconst textTextureTransformId = toTextureTransformId(textTexture);\n\n\t\tconst isCharChanged = textValue !== this.value || textFamily !== this.family;\n\t\tconst isCharSizeChanged = textSize !== this.size;\n\t\tconst isCharStyleChanged = textStyle !== this.style;\n\t\tconst isCharAlignChanged =\n\t\t\ttextAlignHorizontal !== this.alignHorizontal ||\n\t\t\ttextAlignVertical !== this.alignVertical;\n\t\tconst isCharOffsetChanged =\n\t\t\ttextOffsetHorizontal !== this.offsetHorizontal ||\n\t\t\ttextOffsetVertical !== this.offsetVertical;\n\t\tconst isCharSpacingChanged =\n\t\t\ttextSpacingHorizontal !== this.spacingHorizontal ||\n\t\t\ttextSpacingVertical !== this.spacingVertical ||\n\t\t\ttextPaddingHorizontal !== this.paddingHorizontal ||\n\t\t\ttextPaddingVertical !== this.paddingVertical;\n\t\tconst isCharDirectionChanged = textDirection !== this.direction;\n\t\tconst isClippingChanged = this.clipping !== textClipping;\n\t\tconst isFittingChanged = this.fitting !== textFitting;\n\t\tconst isTextureChanged =\n\t\t\ttextTexture !== this.texture || textTextureTransformId !== this.textureTransformId;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX);\n\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\tisSizeChanged ||\n\t\t\tisTransformChanged ||\n\t\t\tisCharChanged ||\n\t\t\tisCharSizeChanged ||\n\t\t\tisCharStyleChanged ||\n\t\t\tisCharAlignChanged ||\n\t\t\tisCharOffsetChanged ||\n\t\t\tisCharSpacingChanged ||\n\t\t\tisCharDirectionChanged ||\n\t\t\tisClippingChanged ||\n\t\t\tisFittingChanged ||\n\t\t\tisTextureChanged\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.VERTEX;\n\t\t\tthis.size = textSize;\n\t\t\tthis.family = textFamily;\n\t\t\tthis.value = textValue;\n\t\t\tthis.style = textStyle;\n\t\t\tthis.alignHorizontal = textAlignHorizontal;\n\t\t\tthis.alignVertical = textAlignVertical;\n\t\t\tthis.offsetHorizontal = textOffsetHorizontal;\n\t\t\tthis.offsetVertical = textOffsetVertical;\n\t\t\tthis.spacingHorizontal = textSpacingHorizontal;\n\t\t\tthis.spacingVertical = textSpacingVertical;\n\t\t\tthis.direction = textDirection;\n\t\t\tthis.paddingHorizontal = textPaddingHorizontal;\n\t\t\tthis.paddingVertical = textPaddingVertical;\n\t\t\tthis.clipping = textClipping;\n\t\t\tthis.fitting = textFitting;\n\t\t\tthis.texture = textTexture;\n\t\t\tthis.textureTransformId = textTextureTransformId;\n\n\t\t\tif (isCharSizeChanged || isFittingChanged || (textFitting && isSizeChanged)) {\n\t\t\t\t// Invalidate the step buffer.\n\t\t\t\tthis.inited &= ~BuilderFlag.STEP;\n\t\t\t}\n\n\t\t\t// Vertices & UVs\n\t\t\tbuffer.updateVertices();\n\t\t\tbuffer.updateUvs();\n\t\t\tconst shapeSize = shape.size;\n\t\t\tlet textWorld = text.world;\n\t\t\tif (textWorld == null) {\n\t\t\t\ttextWorld = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0];\n\t\t\t\ttext.world = textWorld;\n\t\t\t}\n\t\t\tbuildTextVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tbuffer.uvs,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tshapeSize.x,\n\t\t\t\tshapeSize.y,\n\t\t\t\ttextAtlas,\n\t\t\t\ttextSize,\n\t\t\t\ttextValue,\n\t\t\t\ttextStyle,\n\t\t\t\ttextAlignHorizontal,\n\t\t\t\ttextAlignVertical,\n\t\t\t\ttextOffsetHorizontal,\n\t\t\t\ttextOffsetVertical,\n\t\t\t\ttextSpacingHorizontal,\n\t\t\t\ttextSpacingVertical,\n\t\t\t\ttextDirection,\n\t\t\t\ttextPaddingHorizontal,\n\t\t\t\ttextPaddingVertical,\n\t\t\t\ttextClipping,\n\t\t\t\ttextFitting,\n\t\t\t\ttextWorld,\n\t\t\t\ttoTextureUvs(textTexture),\n\t\t\t\tshape.transform.internalTransform\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected updateColorFill(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\t\tconst color = text.color;\n\t\tconst alpha = shape.visible && text.enable ? text.alpha : 0;\n\t\tconst isNotInited = !(this.inited & BuilderFlag.COLOR_FILL);\n\t\tif (isNotInited || color !== this.color || alpha !== this.alpha) {\n\t\t\tthis.inited |= BuilderFlag.COLOR_FILL;\n\t\t\tthis.color = color;\n\t\t\tthis.alpha = alpha;\n\t\t\tbuffer.updateColorFills();\n\n\t\t\tbuildColor(color, alpha, this.vertexOffset, this.vertexCount, buffer.colorFills);\n\t\t}\n\t}\n\n\tprotected updateColorStroke(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\t\tconst outline = text.outline;\n\t\tconst color = outline.color;\n\t\tconst alpha = shape.visible && text.enable ? outline.alpha : 0;\n\t\tconst isNotInited = !(this.inited & BuilderFlag.COLOR_STROKE);\n\t\tif (isNotInited || color !== this.outlineColor || alpha !== this.outlineAlpha) {\n\t\t\tthis.inited |= BuilderFlag.COLOR_STROKE;\n\t\t\tthis.outlineColor = color;\n\t\t\tthis.outlineAlpha = alpha;\n\t\t\tbuffer.updateColorStrokes();\n\n\t\t\tbuildColor(color, alpha, this.vertexOffset, this.vertexCount, buffer.colorStrokes);\n\t\t}\n\t}\n\n\tprotected updateStep(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst text = shape.text;\n\n\t\tconst textOutline = text.outline;\n\t\tconst textOutlineWidth = textOutline.enable ? textOutline.width : 0;\n\t\tconst isOutlineWidthChanged = textOutlineWidth !== this.outlineWidth;\n\n\t\tconst textWeight = text.weight;\n\t\tconst isWeightChanged = textWeight !== this.weight;\n\n\t\tlet scaleX = 1;\n\t\tlet scaleY = 1;\n\t\tconst textWorld = text.world;\n\t\tif (textWorld != null) {\n\t\t\tscaleX = textWorld[8];\n\t\t\tscaleY = textWorld[9];\n\t\t}\n\t\tconst isScaleChanged =\n\t\t\tTEXT_FMIN < Math.abs(this.scaleX - scaleX) ||\n\t\t\tTEXT_FMIN < Math.abs(this.scaleY - scaleY);\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.STEP);\n\n\t\tif (isNotInited || isWeightChanged || isOutlineWidthChanged || isScaleChanged) {\n\t\t\tthis.inited |= BuilderFlag.STEP;\n\t\t\tthis.weight = textWeight;\n\t\t\tthis.outlineWidth = textOutlineWidth;\n\t\t\tthis.scaleX = scaleX;\n\t\t\tthis.scaleY = scaleY;\n\n\t\t\tbuffer.updateSteps();\n\t\t\tbuildTextStep(\n\t\t\t\tbuffer.steps,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\ttext.atlas,\n\t\t\t\ttext.size,\n\t\t\t\ttextOutlineWidth,\n\t\t\t\ttextWeight,\n\t\t\t\tthis.scaleX,\n\t\t\t\tthis.scaleY\n\t\t\t);\n\t\t}\n\t}\n\n\tbuildUnit(builder: EShapeBufferUnitBuilder): void {\n\t\tif (0 < this.vertexCount) {\n\t\t\tconst textTexture = this.texture || Texture.WHITE;\n\t\t\tconst textBaseTexture = textTexture.baseTexture;\n\t\t\tif (textBaseTexture !== builder.baseTexture) {\n\t\t\t\tbuilder.baseTexture = textBaseTexture;\n\t\t\t\tbuilder.push(textTexture, this.indexOffset);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -4,19 +4,21 @@
4
4
  */
5
5
  import { __extends } from "tslib";
6
6
  import { buildTriangleRoundedClipping, buildTriangleRoundedIndex, buildTriangleRoundedStep, buildTriangleRoundedUv, buildTriangleRoundedVertex, TRIANGLE_ROUNDED_WORLD_SIZE } from "./build-triangle-rounded";
7
+ import { BuilderFlag } from "./builder";
7
8
  import { BuilderBase } from "./builder-base";
8
9
  import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
9
10
  var BuilderTriangleRounded = /** @class */ (function (_super) {
10
11
  __extends(BuilderTriangleRounded, _super);
11
12
  function BuilderTriangleRounded(vertexOffset, indexOffset, vertexCount, indexCount) {
12
13
  var _this = _super.call(this, vertexOffset, indexOffset, vertexCount, indexCount) || this;
13
- _this.radius = NaN;
14
- _this.corner = NaN;
14
+ _this.radius = 0;
15
+ _this.corner = 0;
15
16
  return _this;
16
17
  }
17
18
  BuilderTriangleRounded.prototype.init = function (buffer) {
18
19
  buffer.updateIndices();
19
20
  buildTriangleRoundedIndex(buffer.indices, this.vertexOffset, this.indexOffset);
21
+ this.inited |= BuilderFlag.INDEX;
20
22
  };
21
23
  BuilderTriangleRounded.prototype.update = function (buffer, shape) {
22
24
  this.updateVertexClippingStepAndUv(buffer, shape);
@@ -45,7 +47,13 @@ var BuilderTriangleRounded = /** @class */ (function (_super) {
45
47
  var textureTransformId = toTextureTransformId(texture);
46
48
  var isTextureChanged = texture !== this.texture || textureTransformId !== this.textureTransformId;
47
49
  var isVertexChanged = isSizeChanged || isRadiusChanged || isStrokeChanged;
48
- if (isVertexChanged || isTransformChanged || isCornerChanged || isTextureChanged) {
50
+ var isNotInited = !(this.inited & BuilderFlag.VERTEX_CLIPPING_STEP_AND_UV);
51
+ if (isNotInited ||
52
+ isVertexChanged ||
53
+ isTransformChanged ||
54
+ isCornerChanged ||
55
+ isTextureChanged) {
56
+ this.inited |= BuilderFlag.VERTEX_CLIPPING_STEP_AND_UV;
49
57
  this.sizeX = sizeX;
50
58
  this.sizeY = sizeY;
51
59
  this.radius = radius;
@@ -59,15 +67,15 @@ var BuilderTriangleRounded = /** @class */ (function (_super) {
59
67
  var voffset = this.vertexOffset;
60
68
  buffer.updateVertices();
61
69
  buildTriangleRoundedVertex(buffer.vertices, voffset, 0, 0, sizeX, sizeY, strokeAlign, strokeWidth, radius, shape.transform.internalTransform, TRIANGLE_ROUNDED_WORLD_SIZE);
62
- if (isRadiusChanged || isCornerChanged) {
70
+ if (isNotInited || isRadiusChanged || isCornerChanged) {
63
71
  buffer.updateClippings();
64
72
  buildTriangleRoundedClipping(buffer.clippings, voffset, corner, radius);
65
73
  }
66
- if (isVertexChanged || isTransformChanged || isCornerChanged) {
74
+ if (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {
67
75
  buffer.updateSteps();
68
76
  buildTriangleRoundedStep(buffer.steps, buffer.clippings, voffset, strokeWidth, strokeStyle, shape.radius, TRIANGLE_ROUNDED_WORLD_SIZE);
69
77
  }
70
- if (isVertexChanged || isTextureChanged) {
78
+ if (isNotInited || isVertexChanged || isTextureChanged) {
71
79
  buffer.updateUvs();
72
80
  buildTriangleRoundedUv(buffer.uvs, voffset, toTextureUvs(texture), radius, TRIANGLE_ROUNDED_WORLD_SIZE);
73
81
  }
@@ -1 +1 @@
1
- {"version":3,"file":"builder-triangle-rounded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-triangle-rounded.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport {\n\tbuildTriangleRoundedClipping,\n\tbuildTriangleRoundedIndex,\n\tbuildTriangleRoundedStep,\n\tbuildTriangleRoundedUv,\n\tbuildTriangleRoundedVertex,\n\tTRIANGLE_ROUNDED_WORLD_SIZE\n} from \"./build-triangle-rounded\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderTriangleRounded extends BuilderBase {\n\tprotected radius: number;\n\tprotected corner: EShapeCorner;\n\n\tconstructor(\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tsuper(vertexOffset, indexOffset, vertexCount, indexCount);\n\t\tthis.radius = NaN;\n\t\tthis.corner = NaN;\n\t}\n\n\tinit(buffer: EShapeBuffer): void {\n\t\tbuffer.updateIndices();\n\t\tbuildTriangleRoundedIndex(buffer.indices, this.vertexOffset, this.indexOffset);\n\t}\n\n\tupdate(buffer: EShapeBuffer, shape: EShape): void {\n\t\tthis.updateVertexClippingStepAndUv(buffer, shape);\n\t\tthis.updateColorFill(buffer, shape);\n\t\tthis.updateColorStroke(buffer, shape);\n\t}\n\n\tprotected updateVertexClippingStepAndUv(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst radius = shape.radius;\n\t\tconst isRadiusChanged = radius !== this.radius;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst stroke = shape.stroke;\n\t\tconst strokeAlign = stroke.align;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeStyle = stroke.style;\n\t\tconst isStrokeChanged =\n\t\t\tthis.strokeAlign !== strokeAlign ||\n\t\t\tthis.strokeWidth !== strokeWidth ||\n\t\t\tthis.strokeStyle !== strokeStyle;\n\n\t\tconst corner = shape.corner;\n\t\tconst isCornerChanged = corner !== this.corner;\n\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isTextureChanged =\n\t\t\ttexture !== this.texture || textureTransformId !== this.textureTransformId;\n\n\t\tconst isVertexChanged = isSizeChanged || isRadiusChanged || isStrokeChanged;\n\n\t\tif (isVertexChanged || isTransformChanged || isCornerChanged || isTextureChanged) {\n\t\t\tthis.sizeX = sizeX;\n\t\t\tthis.sizeY = sizeY;\n\t\t\tthis.radius = radius;\n\t\t\tthis.transformLocalId = transformLocalId;\n\t\t\tthis.strokeAlign = strokeAlign;\n\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\tthis.corner = corner;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tconst voffset = this.vertexOffset;\n\n\t\t\tbuffer.updateVertices();\n\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tvoffset,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tsizeX,\n\t\t\t\tsizeY,\n\t\t\t\tstrokeAlign,\n\t\t\t\tstrokeWidth,\n\t\t\t\tradius,\n\t\t\t\tshape.transform.internalTransform,\n\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t);\n\n\t\t\tif (isRadiusChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateClippings();\n\t\t\t\tbuildTriangleRoundedClipping(buffer.clippings, voffset, corner, radius);\n\t\t\t}\n\n\t\t\tif (isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tbuffer.clippings,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tshape.radius,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\tbuffer.uvs,\n\t\t\t\t\tvoffset,\n\t\t\t\t\ttoTextureUvs(texture),\n\t\t\t\t\tradius,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"builder-triangle-rounded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-triangle-rounded.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeCorner } from \"../e-shape-corner\";\nimport {\n\tbuildTriangleRoundedClipping,\n\tbuildTriangleRoundedIndex,\n\tbuildTriangleRoundedStep,\n\tbuildTriangleRoundedUv,\n\tbuildTriangleRoundedVertex,\n\tTRIANGLE_ROUNDED_WORLD_SIZE\n} from \"./build-triangle-rounded\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderTriangleRounded extends BuilderBase {\n\tprotected radius: number;\n\tprotected corner: EShapeCorner;\n\n\tconstructor(\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tsuper(vertexOffset, indexOffset, vertexCount, indexCount);\n\t\tthis.radius = 0;\n\t\tthis.corner = 0;\n\t}\n\n\tinit(buffer: BuilderBuffer): void {\n\t\tbuffer.updateIndices();\n\t\tbuildTriangleRoundedIndex(buffer.indices, this.vertexOffset, this.indexOffset);\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\tupdate(buffer: BuilderBuffer, shape: EShape): void {\n\t\tthis.updateVertexClippingStepAndUv(buffer, shape);\n\t\tthis.updateColorFill(buffer, shape);\n\t\tthis.updateColorStroke(buffer, shape);\n\t}\n\n\tprotected updateVertexClippingStepAndUv(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst radius = shape.radius;\n\t\tconst isRadiusChanged = radius !== this.radius;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst stroke = shape.stroke;\n\t\tconst strokeAlign = stroke.align;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeStyle = stroke.style;\n\t\tconst isStrokeChanged =\n\t\t\tthis.strokeAlign !== strokeAlign ||\n\t\t\tthis.strokeWidth !== strokeWidth ||\n\t\t\tthis.strokeStyle !== strokeStyle;\n\n\t\tconst corner = shape.corner;\n\t\tconst isCornerChanged = corner !== this.corner;\n\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isTextureChanged =\n\t\t\ttexture !== this.texture || textureTransformId !== this.textureTransformId;\n\n\t\tconst isVertexChanged = isSizeChanged || isRadiusChanged || isStrokeChanged;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_CLIPPING_STEP_AND_UV);\n\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\tisVertexChanged ||\n\t\t\tisTransformChanged ||\n\t\t\tisCornerChanged ||\n\t\t\tisTextureChanged\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.VERTEX_CLIPPING_STEP_AND_UV;\n\t\t\tthis.sizeX = sizeX;\n\t\t\tthis.sizeY = sizeY;\n\t\t\tthis.radius = radius;\n\t\t\tthis.transformLocalId = transformLocalId;\n\t\t\tthis.strokeAlign = strokeAlign;\n\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\tthis.corner = corner;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tconst voffset = this.vertexOffset;\n\n\t\t\tbuffer.updateVertices();\n\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tvoffset,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tsizeX,\n\t\t\t\tsizeY,\n\t\t\t\tstrokeAlign,\n\t\t\t\tstrokeWidth,\n\t\t\t\tradius,\n\t\t\t\tshape.transform.internalTransform,\n\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t);\n\n\t\t\tif (isNotInited || isRadiusChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateClippings();\n\t\t\t\tbuildTriangleRoundedClipping(buffer.clippings, voffset, corner, radius);\n\t\t\t}\n\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tbuffer.clippings,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tshape.radius,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\tbuffer.uvs,\n\t\t\t\t\tvoffset,\n\t\t\t\t\ttoTextureUvs(texture),\n\t\t\t\t\tradius,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -4,6 +4,7 @@
4
4
  */
5
5
  import { __extends } from "tslib";
6
6
  import { buildTriangleClipping, buildTriangleIndex, buildTriangleStep, buildTriangleUv, buildTriangleVertex, TRIANGLE_VERTEX_COUNT, TRIANGLE_WORLD_SIZE } from "./build-triangle";
7
+ import { BuilderFlag } from "./builder";
7
8
  import { BuilderBase } from "./builder-base";
8
9
  import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
9
10
  var BuilderTriangle = /** @class */ (function (_super) {
@@ -16,6 +17,7 @@ var BuilderTriangle = /** @class */ (function (_super) {
16
17
  buffer.updateIndices();
17
18
  buildTriangleClipping(buffer.clippings, this.vertexOffset);
18
19
  buildTriangleIndex(buffer.indices, this.vertexOffset, this.indexOffset);
20
+ this.inited |= BuilderFlag.CLIPPING_AND_INDEX;
19
21
  };
20
22
  BuilderTriangle.prototype.update = function (buffer, shape) {
21
23
  this.updateVertexStepAndUv(buffer, shape);
@@ -40,7 +42,9 @@ var BuilderTriangle = /** @class */ (function (_super) {
40
42
  var textureTransformId = toTextureTransformId(texture);
41
43
  var isTextureChanged = texture !== this.texture || textureTransformId !== this.textureTransformId;
42
44
  var isVertexChanged = isSizeChanged || isStrokeChanged;
43
- if (isVertexChanged || isTransformChanged || isTextureChanged) {
45
+ var isNotInited = !(this.inited & BuilderFlag.VERTEX_STEP_AND_UV);
46
+ if (isNotInited || isVertexChanged || isTransformChanged || isTextureChanged) {
47
+ this.inited |= BuilderFlag.VERTEX_STEP_AND_UV;
44
48
  this.sizeX = sizeX;
45
49
  this.sizeY = sizeY;
46
50
  this.transformLocalId = transformLocalId;
@@ -52,11 +56,11 @@ var BuilderTriangle = /** @class */ (function (_super) {
52
56
  var voffset = this.vertexOffset;
53
57
  buffer.updateVertices();
54
58
  buildTriangleVertex(buffer.vertices, voffset, 0, 0, sizeX, sizeY, strokeAlign, strokeWidth, shape.transform.internalTransform, TRIANGLE_WORLD_SIZE);
55
- if (isVertexChanged || isTransformChanged) {
59
+ if (isNotInited || isVertexChanged || isTransformChanged) {
56
60
  buffer.updateSteps();
57
61
  buildTriangleStep(buffer.steps, buffer.clippings, voffset, TRIANGLE_VERTEX_COUNT, strokeWidth, strokeStyle, TRIANGLE_WORLD_SIZE);
58
62
  }
59
- if (isVertexChanged || isTextureChanged) {
63
+ if (isNotInited || isVertexChanged || isTextureChanged) {
60
64
  buffer.updateUvs();
61
65
  buildTriangleUv(buffer.uvs, toTextureUvs(texture), voffset, TRIANGLE_WORLD_SIZE);
62
66
  }
@@ -1 +1 @@
1
- {"version":3,"file":"builder-triangle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-triangle.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport {\n\tbuildTriangleClipping,\n\tbuildTriangleIndex,\n\tbuildTriangleStep,\n\tbuildTriangleUv,\n\tbuildTriangleVertex,\n\tTRIANGLE_VERTEX_COUNT,\n\tTRIANGLE_WORLD_SIZE\n} from \"./build-triangle\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderTriangle extends BuilderBase {\n\tinit(buffer: EShapeBuffer): void {\n\t\tbuffer.updateClippings();\n\t\tbuffer.updateIndices();\n\t\tbuildTriangleClipping(buffer.clippings, this.vertexOffset);\n\t\tbuildTriangleIndex(buffer.indices, this.vertexOffset, this.indexOffset);\n\t}\n\n\tupdate(buffer: EShapeBuffer, shape: EShape): void {\n\t\tthis.updateVertexStepAndUv(buffer, shape);\n\t\tthis.updateColorFill(buffer, shape);\n\t\tthis.updateColorStroke(buffer, shape);\n\t}\n\n\tprotected updateVertexStepAndUv(buffer: EShapeBuffer, shape: EShape): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst stroke = shape.stroke;\n\t\tconst strokeAlign = stroke.align;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeStyle = stroke.style;\n\t\tconst isStrokeChanged =\n\t\t\tthis.strokeAlign !== strokeAlign ||\n\t\t\tthis.strokeWidth !== strokeWidth ||\n\t\t\tthis.strokeStyle !== strokeStyle;\n\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isTextureChanged =\n\t\t\ttexture !== this.texture || textureTransformId !== this.textureTransformId;\n\n\t\tconst isVertexChanged = isSizeChanged || isStrokeChanged;\n\n\t\tif (isVertexChanged || isTransformChanged || isTextureChanged) {\n\t\t\tthis.sizeX = sizeX;\n\t\t\tthis.sizeY = sizeY;\n\t\t\tthis.transformLocalId = transformLocalId;\n\t\t\tthis.strokeAlign = strokeAlign;\n\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tconst voffset = this.vertexOffset;\n\n\t\t\tbuffer.updateVertices();\n\t\t\tbuildTriangleVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tvoffset,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tsizeX,\n\t\t\t\tsizeY,\n\t\t\t\tstrokeAlign,\n\t\t\t\tstrokeWidth,\n\t\t\t\tshape.transform.internalTransform,\n\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t);\n\n\t\t\tif (isVertexChanged || isTransformChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tbuildTriangleStep(\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tbuffer.clippings,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t\tbuildTriangleUv(buffer.uvs, toTextureUvs(texture), voffset, TRIANGLE_WORLD_SIZE);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
1
+ {"version":3,"file":"builder-triangle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-triangle.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport {\n\tbuildTriangleClipping,\n\tbuildTriangleIndex,\n\tbuildTriangleStep,\n\tbuildTriangleUv,\n\tbuildTriangleVertex,\n\tTRIANGLE_VERTEX_COUNT,\n\tTRIANGLE_WORLD_SIZE\n} from \"./build-triangle\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderTriangle extends BuilderBase {\n\tinit(buffer: BuilderBuffer): void {\n\t\tbuffer.updateClippings();\n\t\tbuffer.updateIndices();\n\t\tbuildTriangleClipping(buffer.clippings, this.vertexOffset);\n\t\tbuildTriangleIndex(buffer.indices, this.vertexOffset, this.indexOffset);\n\t\tthis.inited |= BuilderFlag.CLIPPING_AND_INDEX;\n\t}\n\n\tupdate(buffer: BuilderBuffer, shape: EShape): void {\n\t\tthis.updateVertexStepAndUv(buffer, shape);\n\t\tthis.updateColorFill(buffer, shape);\n\t\tthis.updateColorStroke(buffer, shape);\n\t}\n\n\tprotected updateVertexStepAndUv(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst size = shape.size;\n\t\tconst sizeX = size.x;\n\t\tconst sizeY = size.y;\n\t\tconst isSizeChanged = sizeX !== this.sizeX || sizeY !== this.sizeY;\n\n\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\tconst stroke = shape.stroke;\n\t\tconst strokeAlign = stroke.align;\n\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\tconst strokeStyle = stroke.style;\n\t\tconst isStrokeChanged =\n\t\t\tthis.strokeAlign !== strokeAlign ||\n\t\t\tthis.strokeWidth !== strokeWidth ||\n\t\t\tthis.strokeStyle !== strokeStyle;\n\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isTextureChanged =\n\t\t\ttexture !== this.texture || textureTransformId !== this.textureTransformId;\n\n\t\tconst isVertexChanged = isSizeChanged || isStrokeChanged;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_STEP_AND_UV);\n\n\t\tif (isNotInited || isVertexChanged || isTransformChanged || isTextureChanged) {\n\t\t\tthis.inited |= BuilderFlag.VERTEX_STEP_AND_UV;\n\t\t\tthis.sizeX = sizeX;\n\t\t\tthis.sizeY = sizeY;\n\t\t\tthis.transformLocalId = transformLocalId;\n\t\t\tthis.strokeAlign = strokeAlign;\n\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tconst voffset = this.vertexOffset;\n\n\t\t\tbuffer.updateVertices();\n\t\t\tbuildTriangleVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tvoffset,\n\t\t\t\t0,\n\t\t\t\t0,\n\t\t\t\tsizeX,\n\t\t\t\tsizeY,\n\t\t\t\tstrokeAlign,\n\t\t\t\tstrokeWidth,\n\t\t\t\tshape.transform.internalTransform,\n\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t);\n\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tbuildTriangleStep(\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tbuffer.clippings,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t);\n\t\t\t}\n\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t\tbuildTriangleUv(buffer.uvs, toTextureUvs(texture), voffset, TRIANGLE_WORLD_SIZE);\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
@@ -2,5 +2,20 @@
2
2
  * Copyright (C) 2019 Toshiba Corporation
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
- export {};
5
+ export var BuilderFlag = {
6
+ NONE: 0,
7
+ VERTEX: 1,
8
+ CLIPPING: 2,
9
+ STEP: 4,
10
+ COLOR_FILL: 8,
11
+ COLOR_STROKE: 16,
12
+ UV: 32,
13
+ INDEX: 64,
14
+ VERTEX_AND_STEP: 5,
15
+ VERTEX_STEP_AND_UV: 37,
16
+ VERTEX_STEP_AND_COLOR_FILL: 13,
17
+ VERTEX_CLIPPING_STEP_AND_UV: 39,
18
+ CLIPPING_AND_INDEX: 66,
19
+ ALL: 127
20
+ };
6
21
  //# sourceMappingURL=builder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder.ts"],"names":[],"mappings":"AAAA;;;GAGG","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeBufferUnitBuilder } from \"../e-shape-buffer-unit-builder\";\n\nexport interface Builder {\n\treadonly vertexOffset: number;\n\treadonly indexOffset: number;\n\treadonly vertexCount: number;\n\treadonly indexCount: number;\n\n\tinit(buffer: EShapeBuffer): void;\n\tisCompatible(shape: EShape): boolean;\n\tupdate(buffer: EShapeBuffer, shape: EShape): void;\n\tbuildUnit(builder: EShapeBufferUnitBuilder): void;\n}\n"]}
1
+ {"version":3,"file":"builder.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAKH,MAAM,CAAC,IAAM,WAAW,GAAG;IAC1B,IAAI,EAAE,CAAC;IACP,MAAM,EAAE,CAAC;IACT,QAAQ,EAAE,CAAC;IACX,IAAI,EAAE,CAAC;IACP,UAAU,EAAE,CAAC;IACb,YAAY,EAAE,EAAE;IAChB,EAAE,EAAE,EAAE;IACN,KAAK,EAAE,EAAE;IAET,eAAe,EAAE,CAAC;IAClB,kBAAkB,EAAE,EAAE;IACtB,0BAA0B,EAAE,EAAE;IAC9B,2BAA2B,EAAE,EAAE;IAE/B,kBAAkB,EAAE,EAAE;IAEtB,GAAG,EAAE,GAAG;CACC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBufferUnitBuilder } from \"../e-shape-buffer-unit-builder\";\n\nexport const BuilderFlag = {\n\tNONE: 0,\n\tVERTEX: 1,\n\tCLIPPING: 2,\n\tSTEP: 4,\n\tCOLOR_FILL: 8,\n\tCOLOR_STROKE: 16,\n\tUV: 32,\n\tINDEX: 64,\n\n\tVERTEX_AND_STEP: 5,\n\tVERTEX_STEP_AND_UV: 37,\n\tVERTEX_STEP_AND_COLOR_FILL: 13,\n\tVERTEX_CLIPPING_STEP_AND_UV: 39,\n\n\tCLIPPING_AND_INDEX: 66,\n\n\tALL: 127\n} as const;\n\nexport type BuilderFlag = number;\n\nexport interface BuilderBuffer {\n\treadonly vertices: Float32Array;\n\treadonly clippings: Float32Array;\n\treadonly steps: Float32Array;\n\treadonly colorFills: Float32Array;\n\treadonly colorStrokes: Float32Array;\n\treadonly uvs: Float32Array;\n\treadonly indices: Uint16Array | Uint32Array;\n\n\tupdateVertices(): void;\n\tupdateClippings(): void;\n\tupdateSteps(): void;\n\tupdateColorFills(): void;\n\tupdateColorStrokes(): void;\n\tupdateUvs(): void;\n\tupdateIndices(): void;\n}\n\nexport interface Builder {\n\treadonly vertexOffset: number;\n\treadonly indexOffset: number;\n\treadonly vertexCount: number;\n\treadonly indexCount: number;\n\n\tinit(buffer: BuilderBuffer): void;\n\tisCompatible(shape: EShape): boolean;\n\tupdate(buffer: BuilderBuffer, shape: EShape): void;\n\tbuildUnit(builder: EShapeBufferUnitBuilder): void;\n}\n"]}
@@ -4,13 +4,13 @@
4
4
  */
5
5
  import { EShapeUploadedImpl } from "../e-shape-uploaded";
6
6
  import { BAR_INDEX_COUNT, BAR_VERTEX_COUNT } from "./build-bar";
7
- import { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
7
+ import { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
8
8
  import { BuilderBar } from "./builder-bar";
9
9
  import { BuilderText } from "./builder-text";
10
10
  export var createBarUploaded = function (buffer, shape, voffset, ioffset, antialiasWeight) {
11
11
  var tcount = toTextBufferCount(shape);
12
- var tvcount = tcount * TEXT_VERTEX_COUNT;
13
- var ticount = tcount * TEXT_INDEX_COUNT;
12
+ var tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;
13
+ var ticount = tcount << TEXT_INDEX_COUNT_SHIFT;
14
14
  var vcount = BAR_VERTEX_COUNT + tvcount;
15
15
  var icount = BAR_INDEX_COUNT + ticount;
16
16
  if (buffer.check(voffset, ioffset, vcount, icount)) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-bar-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-bar-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAChC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,GAAG,iBAAiB,CAAC;IAC3C,IAAM,OAAO,GAAG,MAAM,GAAG,gBAAgB,CAAC;IAC1C,IAAM,MAAM,GAAG,gBAAgB,GAAG,OAAO,CAAC;IAC1C,IAAM,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC;IACzC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;YAChC,IAAI,WAAW,CAAC,OAAO,GAAG,gBAAgB,EAAE,OAAO,GAAG,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC;SACxF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { BAR_INDEX_COUNT, BAR_VERTEX_COUNT } from \"./build-bar\";\nimport { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from \"./build-text\";\nimport { BuilderBar } from \"./builder-bar\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createBarUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount * TEXT_VERTEX_COUNT;\n\tconst ticount = tcount * TEXT_INDEX_COUNT;\n\tconst vcount = BAR_VERTEX_COUNT + tvcount;\n\tconst icount = BAR_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderBar(voffset, ioffset),\n\t\t\tnew BuilderText(voffset + BAR_VERTEX_COUNT, ioffset + BAR_INDEX_COUNT, tvcount, ticount)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
1
+ {"version":3,"file":"create-bar-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-bar-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAChE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,iBAAiB,GAAG,UAChC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,IAAI,uBAAuB,CAAC;IAClD,IAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,CAAC;IACjD,IAAM,MAAM,GAAG,gBAAgB,GAAG,OAAO,CAAC;IAC1C,IAAM,MAAM,GAAG,eAAe,GAAG,OAAO,CAAC;IACzC,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,UAAU,CAAC,OAAO,EAAE,OAAO,CAAC;YAChC,IAAI,WAAW,CAAC,OAAO,GAAG,gBAAgB,EAAE,OAAO,GAAG,eAAe,EAAE,OAAO,EAAE,OAAO,CAAC;SACxF,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { BAR_INDEX_COUNT, BAR_VERTEX_COUNT } from \"./build-bar\";\nimport { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from \"./build-text\";\nimport { BuilderBar } from \"./builder-bar\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createBarUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;\n\tconst ticount = tcount << TEXT_INDEX_COUNT_SHIFT;\n\tconst vcount = BAR_VERTEX_COUNT + tvcount;\n\tconst icount = BAR_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderBar(voffset, ioffset),\n\t\t\tnew BuilderText(voffset + BAR_VERTEX_COUNT, ioffset + BAR_INDEX_COUNT, tvcount, ticount)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
@@ -4,13 +4,13 @@
4
4
  */
5
5
  import { EShapeUploadedImpl } from "../e-shape-uploaded";
6
6
  import { CIRCLE_INDEX_COUNT, CIRCLE_VERTEX_COUNT } from "./build-circle";
7
- import { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
7
+ import { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
8
8
  import { BuilderCircle } from "./builder-circle";
9
9
  import { BuilderText } from "./builder-text";
10
10
  export var createCircleUploaded = function (buffer, shape, voffset, ioffset, antialiasWeight) {
11
11
  var tcount = toTextBufferCount(shape);
12
- var tvcount = tcount * TEXT_VERTEX_COUNT;
13
- var ticount = tcount * TEXT_INDEX_COUNT;
12
+ var tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;
13
+ var ticount = tcount << TEXT_INDEX_COUNT_SHIFT;
14
14
  var vcount = CIRCLE_VERTEX_COUNT + tvcount;
15
15
  var icount = CIRCLE_INDEX_COUNT + ticount;
16
16
  if (buffer.check(voffset, ioffset, vcount, icount)) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-circle-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-circle-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,oBAAoB,GAAG,UACnC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,GAAG,iBAAiB,CAAC;IAC3C,IAAM,OAAO,GAAG,MAAM,GAAG,gBAAgB,CAAC;IAC1C,IAAM,MAAM,GAAG,mBAAmB,GAAG,OAAO,CAAC;IAC7C,IAAM,MAAM,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC;YACnC,IAAI,WAAW,CACd,OAAO,GAAG,mBAAmB,EAC7B,OAAO,GAAG,kBAAkB,EAC5B,OAAO,EACP,OAAO,CACP;SACD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { CIRCLE_INDEX_COUNT, CIRCLE_VERTEX_COUNT } from \"./build-circle\";\nimport { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from \"./build-text\";\nimport { BuilderCircle } from \"./builder-circle\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createCircleUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount * TEXT_VERTEX_COUNT;\n\tconst ticount = tcount * TEXT_INDEX_COUNT;\n\tconst vcount = CIRCLE_VERTEX_COUNT + tvcount;\n\tconst icount = CIRCLE_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderCircle(voffset, ioffset),\n\t\t\tnew BuilderText(\n\t\t\t\tvoffset + CIRCLE_VERTEX_COUNT,\n\t\t\t\tioffset + CIRCLE_INDEX_COUNT,\n\t\t\t\ttvcount,\n\t\t\t\tticount\n\t\t\t)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
1
+ {"version":3,"file":"create-circle-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-circle-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,oBAAoB,GAAG,UACnC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,IAAI,uBAAuB,CAAC;IAClD,IAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,CAAC;IACjD,IAAM,MAAM,GAAG,mBAAmB,GAAG,OAAO,CAAC;IAC7C,IAAM,MAAM,GAAG,kBAAkB,GAAG,OAAO,CAAC;IAC5C,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,aAAa,CAAC,OAAO,EAAE,OAAO,CAAC;YACnC,IAAI,WAAW,CACd,OAAO,GAAG,mBAAmB,EAC7B,OAAO,GAAG,kBAAkB,EAC5B,OAAO,EACP,OAAO,CACP;SACD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { CIRCLE_INDEX_COUNT, CIRCLE_VERTEX_COUNT } from \"./build-circle\";\nimport { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from \"./build-text\";\nimport { BuilderCircle } from \"./builder-circle\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createCircleUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;\n\tconst ticount = tcount << TEXT_INDEX_COUNT_SHIFT;\n\tconst vcount = CIRCLE_VERTEX_COUNT + tvcount;\n\tconst icount = CIRCLE_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderCircle(voffset, ioffset),\n\t\t\tnew BuilderText(\n\t\t\t\tvoffset + CIRCLE_VERTEX_COUNT,\n\t\t\t\tioffset + CIRCLE_INDEX_COUNT,\n\t\t\t\ttvcount,\n\t\t\t\tticount\n\t\t\t)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
@@ -3,12 +3,12 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { EShapeUploadedImpl } from "../e-shape-uploaded";
6
- import { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
6
+ import { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
7
7
  import { BuilderText } from "./builder-text";
8
8
  export var createGroupUploaded = function (buffer, shape, voffset, ioffset) {
9
9
  var tcount = toTextBufferCount(shape);
10
- var tvcount = tcount * TEXT_VERTEX_COUNT;
11
- var ticount = tcount * TEXT_INDEX_COUNT;
10
+ var tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;
11
+ var ticount = tcount << TEXT_INDEX_COUNT_SHIFT;
12
12
  var vcount = tvcount;
13
13
  var icount = ticount;
14
14
  if (buffer.check(voffset, ioffset, vcount, icount)) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-group-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-group-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAClC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe;IAEf,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,GAAG,iBAAiB,CAAC;IAC3C,IAAM,OAAO,GAAG,MAAM,GAAG,gBAAgB,CAAC;IAC1C,IAAM,MAAM,GAAG,OAAO,CAAC;IACvB,IAAM,MAAM,GAAG,OAAO,CAAC;IACvB,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;SACnD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from \"./build-text\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createGroupUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount * TEXT_VERTEX_COUNT;\n\tconst ticount = tcount * TEXT_INDEX_COUNT;\n\tconst vcount = tvcount;\n\tconst icount = ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderText(voffset, ioffset, tvcount, ticount)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
1
+ {"version":3,"file":"create-group-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-group-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,mBAAmB,GAAG,UAClC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe;IAEf,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,IAAI,uBAAuB,CAAC;IAClD,IAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,CAAC;IACjD,IAAM,MAAM,GAAG,OAAO,CAAC;IACvB,IAAM,MAAM,GAAG,OAAO,CAAC;IACvB,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC;SACnD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from \"./build-text\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createGroupUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;\n\tconst ticount = tcount << TEXT_INDEX_COUNT_SHIFT;\n\tconst vcount = tvcount;\n\tconst icount = ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderText(voffset, ioffset, tvcount, ticount)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
@@ -4,13 +4,13 @@
4
4
  */
5
5
  import { EShapeUploadedImpl } from "../e-shape-uploaded";
6
6
  import { IMAGE_SDF_INDEX_COUNT, IMAGE_SDF_VERTEX_COUNT } from "./build-image-sdf";
7
- import { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
7
+ import { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
8
8
  import { BuilderImageSdf } from "./builder-image-sdf";
9
9
  import { BuilderText } from "./builder-text";
10
10
  export var createImageSdfUploaded = function (buffer, shape, voffset, ioffset, antialiasWeight) {
11
11
  var tcount = toTextBufferCount(shape);
12
- var tvcount = tcount * TEXT_VERTEX_COUNT;
13
- var ticount = tcount * TEXT_INDEX_COUNT;
12
+ var tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;
13
+ var ticount = tcount << TEXT_INDEX_COUNT_SHIFT;
14
14
  var vcount = IMAGE_SDF_VERTEX_COUNT + tvcount;
15
15
  var icount = IMAGE_SDF_INDEX_COUNT + ticount;
16
16
  if (buffer.check(voffset, ioffset, vcount, icount)) {
@@ -1 +1 @@
1
- {"version":3,"file":"create-image-sdf-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-image-sdf-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,sBAAsB,GAAG,UACrC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,GAAG,iBAAiB,CAAC;IAC3C,IAAM,OAAO,GAAG,MAAM,GAAG,gBAAgB,CAAC;IAC1C,IAAM,MAAM,GAAG,sBAAsB,GAAG,OAAO,CAAC;IAChD,IAAM,MAAM,GAAG,qBAAqB,GAAG,OAAO,CAAC;IAC/C,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC;YACrC,IAAI,WAAW,CACd,OAAO,GAAG,sBAAsB,EAChC,OAAO,GAAG,qBAAqB,EAC/B,OAAO,EACP,OAAO,CACP;SACD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { IMAGE_SDF_INDEX_COUNT, IMAGE_SDF_VERTEX_COUNT } from \"./build-image-sdf\";\nimport { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from \"./build-text\";\nimport { BuilderImageSdf } from \"./builder-image-sdf\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createImageSdfUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount * TEXT_VERTEX_COUNT;\n\tconst ticount = tcount * TEXT_INDEX_COUNT;\n\tconst vcount = IMAGE_SDF_VERTEX_COUNT + tvcount;\n\tconst icount = IMAGE_SDF_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderImageSdf(voffset, ioffset),\n\t\t\tnew BuilderText(\n\t\t\t\tvoffset + IMAGE_SDF_VERTEX_COUNT,\n\t\t\t\tioffset + IMAGE_SDF_INDEX_COUNT,\n\t\t\t\ttvcount,\n\t\t\t\tticount\n\t\t\t)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
1
+ {"version":3,"file":"create-image-sdf-uploaded.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/create-image-sdf-uploaded.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAkB,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,mBAAmB,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAClG,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,CAAC,IAAM,sBAAsB,GAAG,UACrC,MAAoB,EACpB,KAAa,EACb,OAAe,EACf,OAAe,EACf,eAAuB;IAEvB,IAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;IACxC,IAAM,OAAO,GAAG,MAAM,IAAI,uBAAuB,CAAC;IAClD,IAAM,OAAO,GAAG,MAAM,IAAI,sBAAsB,CAAC;IACjD,IAAM,MAAM,GAAG,sBAAsB,GAAG,OAAO,CAAC;IAChD,IAAM,MAAM,GAAG,qBAAqB,GAAG,OAAO,CAAC;IAC/C,IAAI,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE;QACnD,OAAO,IAAI,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE;YACvE,IAAI,eAAe,CAAC,OAAO,EAAE,OAAO,CAAC;YACrC,IAAI,WAAW,CACd,OAAO,GAAG,sBAAsB,EAChC,OAAO,GAAG,qBAAqB,EAC/B,OAAO,EACP,OAAO,CACP;SACD,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACf;IACD,OAAO,IAAI,CAAC;AACb,CAAC,CAAC","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapeBuffer } from \"../e-shape-buffer\";\nimport { EShapeUploaded, EShapeUploadedImpl } from \"../e-shape-uploaded\";\nimport { IMAGE_SDF_INDEX_COUNT, IMAGE_SDF_VERTEX_COUNT } from \"./build-image-sdf\";\nimport { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from \"./build-text\";\nimport { BuilderImageSdf } from \"./builder-image-sdf\";\nimport { BuilderText } from \"./builder-text\";\n\nexport const createImageSdfUploaded = (\n\tbuffer: EShapeBuffer,\n\tshape: EShape,\n\tvoffset: number,\n\tioffset: number,\n\tantialiasWeight: number\n): EShapeUploaded | null => {\n\tconst tcount = toTextBufferCount(shape);\n\tconst tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;\n\tconst ticount = tcount << TEXT_INDEX_COUNT_SHIFT;\n\tconst vcount = IMAGE_SDF_VERTEX_COUNT + tvcount;\n\tconst icount = IMAGE_SDF_INDEX_COUNT + ticount;\n\tif (buffer.check(voffset, ioffset, vcount, icount)) {\n\t\treturn new EShapeUploadedImpl(buffer, voffset, ioffset, vcount, icount, [\n\t\t\tnew BuilderImageSdf(voffset, ioffset),\n\t\t\tnew BuilderText(\n\t\t\t\tvoffset + IMAGE_SDF_VERTEX_COUNT,\n\t\t\t\tioffset + IMAGE_SDF_INDEX_COUNT,\n\t\t\t\ttvcount,\n\t\t\t\tticount\n\t\t\t)\n\t\t]).init(shape);\n\t}\n\treturn null;\n};\n"]}
@@ -3,13 +3,13 @@
3
3
  * SPDX-License-Identifier: Apache-2.0
4
4
  */
5
5
  import { EShapeUploadedImpl } from "../e-shape-uploaded";
6
- import { TEXT_INDEX_COUNT, TEXT_VERTEX_COUNT, toTextBufferCount } from "./build-text";
6
+ import { TEXT_INDEX_COUNT_SHIFT, TEXT_VERTEX_COUNT_SHIFT, toTextBufferCount } from "./build-text";
7
7
  import { BuilderLabel } from "./builder-label";
8
8
  import { BuilderText } from "./builder-text";
9
9
  export var createLabelUploaded = function (buffer, shape, voffset, ioffset, antialiasWeight) {
10
10
  var tcount = toTextBufferCount(shape);
11
- var tvcount = tcount * TEXT_VERTEX_COUNT;
12
- var ticount = tcount * TEXT_INDEX_COUNT;
11
+ var tvcount = tcount << TEXT_VERTEX_COUNT_SHIFT;
12
+ var ticount = tcount << TEXT_INDEX_COUNT_SHIFT;
13
13
  var vcount = tvcount;
14
14
  var icount = ticount;
15
15
  if (buffer.check(voffset, ioffset, vcount, icount)) {