@wcardinal/wcardinal-ui 0.408.0 → 0.409.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/types/wcardinal/ui/shape/e-shape-buffer.d.ts +3 -9
- package/dist/types/wcardinal/ui/shape/e-shape-container.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/build-bar.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/build-circle.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/build-color.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/build-image-sdf.d.ts +0 -1
- package/dist/types/wcardinal/ui/shape/variant/build-line-of-any.d.ts +17 -1
- package/dist/types/wcardinal/ui/shape/variant/build-line.d.ts +2 -3
- package/dist/types/wcardinal/ui/shape/variant/build-null.d.ts +0 -1
- package/dist/types/wcardinal/ui/shape/variant/build-rectangle-rounded.d.ts +2 -3
- package/dist/types/wcardinal/ui/shape/variant/build-rectangle.d.ts +4 -5
- package/dist/types/wcardinal/ui/shape/variant/build-semicircle.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/build-text.d.ts +0 -1
- package/dist/types/wcardinal/ui/shape/variant/build-triangle-rounded.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/build-triangle.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/builder-bar.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-base.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/builder-line-of-any.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-line-of-rectangles.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-line.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/builder-marker-base.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-marker-rectangle.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-pivoted.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-rectangle-rounded.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-rectangle.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder-text.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/builder-triangle-rounded.d.ts +1 -1
- package/dist/types/wcardinal/ui/shape/variant/builder.d.ts +9 -18
- package/dist/types/wcardinal/ui/shape/variant/index.d.ts +0 -1
- package/dist/types/wcardinal/ui/shape/variant/to-dash.d.ts +1 -2
- package/dist/types/wcardinal/ui/shape/variant/to-normal-packed.d.ts +1 -0
- package/dist/types/wcardinal/ui/shape/variant/to-normal.d.ts +1 -0
- package/dist/types/wcardinal/ui/shape/variant/to-packed.d.ts +2 -0
- package/dist/types/wcardinal/ui/shape/variant/to-vector-length.d.ts +1 -0
- package/dist/types/wcardinal/ui/shape/variant/to-vector.d.ts +1 -0
- package/dist/wcardinal/ui/shape/e-shape-buffer.js +10 -30
- package/dist/wcardinal/ui/shape/e-shape-buffer.js.map +1 -1
- package/dist/wcardinal/ui/shape/e-shape-container.js +1 -1
- package/dist/wcardinal/ui/shape/e-shape-container.js.map +1 -1
- package/dist/wcardinal/ui/shape/e-shape-renderer.js +4 -5
- package/dist/wcardinal/ui/shape/e-shape-renderer.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-bar.js +37 -63
- package/dist/wcardinal/ui/shape/variant/build-bar.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-circle.js +63 -40
- package/dist/wcardinal/ui/shape/variant/build-circle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-color.js +8 -11
- package/dist/wcardinal/ui/shape/variant/build-color.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-image-sdf.js +30 -37
- package/dist/wcardinal/ui/shape/variant/build-image-sdf.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-line-of-any.js +244 -25
- package/dist/wcardinal/ui/shape/variant/build-line-of-any.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-line.js +149 -129
- package/dist/wcardinal/ui/shape/variant/build-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-null.js +0 -7
- package/dist/wcardinal/ui/shape/variant/build-null.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-rectangle-rounded.js +917 -849
- package/dist/wcardinal/ui/shape/variant/build-rectangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-rectangle.js +279 -353
- package/dist/wcardinal/ui/shape/variant/build-rectangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-semicircle.js +45 -31
- package/dist/wcardinal/ui/shape/variant/build-semicircle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-text.js +6 -13
- package/dist/wcardinal/ui/shape/variant/build-text.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-triangle-rounded.js +255 -128
- package/dist/wcardinal/ui/shape/variant/build-triangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/build-triangle.js +55 -35
- package/dist/wcardinal/ui/shape/variant/build-triangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-bar.js +8 -11
- package/dist/wcardinal/ui/shape/variant/builder-bar.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-base.js +18 -22
- package/dist/wcardinal/ui/shape/variant/builder-base.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-circle.js +4 -7
- package/dist/wcardinal/ui/shape/variant/builder-circle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js +3 -6
- package/dist/wcardinal/ui/shape/variant/builder-image-sdf.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js +13 -17
- package/dist/wcardinal/ui/shape/variant/builder-line-of-any.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js +5 -12
- package/dist/wcardinal/ui/shape/variant/builder-line-of-circles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js +10 -26
- package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js +9 -25
- package/dist/wcardinal/ui/shape/variant/builder-line-of-rectangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js +9 -25
- package/dist/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js +5 -12
- package/dist/wcardinal/ui/shape/variant/builder-line-of-triangles.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-line.js +13 -27
- package/dist/wcardinal/ui/shape/variant/builder-line.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-marker-base.js +27 -19
- package/dist/wcardinal/ui/shape/variant/builder-marker-base.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js +4 -7
- package/dist/wcardinal/ui/shape/variant/builder-marker-circle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js +7 -13
- package/dist/wcardinal/ui/shape/variant/builder-marker-rectangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js +4 -7
- package/dist/wcardinal/ui/shape/variant/builder-marker-triangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js +7 -13
- package/dist/wcardinal/ui/shape/variant/builder-rectangle-pivoted.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js +6 -12
- package/dist/wcardinal/ui/shape/variant/builder-rectangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-rectangle.js +7 -13
- package/dist/wcardinal/ui/shape/variant/builder-rectangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-semicircle.js +4 -7
- package/dist/wcardinal/ui/shape/variant/builder-semicircle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-text.js +19 -28
- package/dist/wcardinal/ui/shape/variant/builder-text.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js +7 -12
- package/dist/wcardinal/ui/shape/variant/builder-triangle-rounded.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder-triangle.js +4 -7
- package/dist/wcardinal/ui/shape/variant/builder-triangle.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/builder.js +18 -14
- package/dist/wcardinal/ui/shape/variant/builder.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/index.js +0 -1
- package/dist/wcardinal/ui/shape/variant/index.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/to-dash.js +8 -9
- package/dist/wcardinal/ui/shape/variant/to-dash.js.map +1 -1
- package/dist/wcardinal/ui/shape/variant/to-normal-packed.js +7 -0
- package/dist/wcardinal/ui/shape/variant/to-normal-packed.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-normal.js +15 -0
- package/dist/wcardinal/ui/shape/variant/to-normal.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-packed.js +7 -0
- package/dist/wcardinal/ui/shape/variant/to-packed.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-vector-length.js +4 -0
- package/dist/wcardinal/ui/shape/variant/to-vector-length.js.map +1 -0
- package/dist/wcardinal/ui/shape/variant/to-vector.js +6 -0
- package/dist/wcardinal/ui/shape/variant/to-vector.js.map +1 -0
- package/dist/wcardinal-ui-theme-dark-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-dark-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-dark-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-dark.js +1 -1
- package/dist/wcardinal-ui-theme-dark.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.js +1 -1
- package/dist/wcardinal-ui-theme-white-en-us.min.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.js +1 -1
- package/dist/wcardinal-ui-theme-white-ja-jp.min.js +1 -1
- package/dist/wcardinal-ui-theme-white.js +1 -1
- package/dist/wcardinal-ui-theme-white.min.js +1 -1
- package/dist/wcardinal-ui.cjs.js +2306 -2094
- package/dist/wcardinal-ui.js +2302 -2090
- package/dist/wcardinal-ui.min.js +2 -2
- package/dist/wcardinal-ui.min.js.map +1 -1
- package/package.json +1 -1
- package/dist/types/wcardinal/ui/shape/variant/copy-clipping.d.ts +0 -1
- package/dist/wcardinal/ui/shape/variant/copy-clipping.js +0 -20
- package/dist/wcardinal/ui/shape/variant/copy-clipping.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-line-of-triangle-roundeds.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.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 { buildNullClipping, buildNullStep, buildNullUv, buildNullVertex } from \"./build-null\";\nimport {\n\tbuildTriangleRoundedClipping,\n\tbuildTriangleRoundedIndex,\n\tbuildTriangleRoundedStep,\n\tbuildTriangleRoundedUv,\n\tbuildTriangleRoundedVertex,\n\tTRIANGLE_ROUNDED_INDEX_COUNT,\n\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\tTRIANGLE_ROUNDED_WORLD_SIZE\n} from \"./build-triangle-rounded\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderLineOfAny } from \"./builder-line-of-any\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\nimport { copyClipping } from \"./copy-clipping\";\nimport { copyIndex } from \"./copy-index\";\nimport { copyStep } from \"./copy-step\";\nimport { copyUvs } from \"./copy-uv\";\nimport { copyVertex } from \"./copy-vertex\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsImpl } from \"./e-shape-line-of-any-points-impl\";\n\nexport class BuilderLineOfTriangleRoundeds extends BuilderLineOfAny {\n\tprotected radius: number;\n\tprotected corner: EShapeCorner;\n\n\tconstructor(\n\t\tbuffer: BuilderBuffer,\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number,\n\t\tpointCountReserved: number,\n\t\tvcountPerPoint: number,\n\t\ticountPerPoint: number\n\t) {\n\t\tsuper(\n\t\t\tbuffer,\n\t\t\tvertexOffset,\n\t\t\tindexOffset,\n\t\t\tvertexCount,\n\t\t\tindexCount,\n\t\t\tpointCountReserved,\n\t\t\tvcountPerPoint,\n\t\t\ticountPerPoint\n\t\t);\n\t\tthis.radius = 0;\n\t\tthis.corner = 0;\n\t}\n\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tconst voffset = this.vertexOffset;\n\t\tconst ioffset = this.indexOffset;\n\t\tconst pointCountReserved = this.pointCountReserved;\n\t\tif (0 < pointCountReserved) {\n\t\t\tbuildTriangleRoundedIndex(buffer.indices, voffset, ioffset);\n\t\t\tcopyIndex(\n\t\t\t\tbuffer.indices,\n\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\t\t\t\tioffset,\n\t\t\t\tTRIANGLE_ROUNDED_INDEX_COUNT,\n\t\t\t\tpointCountReserved\n\t\t\t);\n\t\t}\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points instanceof EShapeLineOfAnyPointsImpl) {\n\t\t\tconst buffer = this.buffer;\n\t\t\tthis.updateVertexClippingStepAndUv(buffer, shape, points);\n\t\t\tthis.updateLineOfAnyColorFill(buffer, shape, points, TRIANGLE_ROUNDED_VERTEX_COUNT);\n\t\t\tthis.updateLineOfAnyColorStroke(buffer, shape, points, TRIANGLE_ROUNDED_VERTEX_COUNT);\n\t\t}\n\t}\n\n\tprotected updateVertexClippingStepAndUv(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tpoints: EShapeLineOfAnyPoints\n\t): void {\n\t\tconst pointId = points.id;\n\t\tconst pointOffset = points.offset;\n\t\tconst pointOffsetId = pointOffset.id;\n\t\tconst isPointChanged = pointId !== this.pointId || pointOffsetId !== this.pointOffsetId;\n\n\t\tconst pointSize = points.size;\n\t\tconst pointSizeId = pointSize.id;\n\t\tconst isPointSizeChanged = pointSizeId !== this.pointSizeId;\n\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 = this.corner !== 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 =\n\t\t\tisPointChanged ||\n\t\t\tisPointSizeChanged ||\n\t\t\tisSizeChanged ||\n\t\t\tisRadiusChanged ||\n\t\t\tisStrokeChanged;\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.pointId = pointId;\n\t\t\tconst formatted = points.formatted;\n\t\t\tthis.pointCount = formatted.length;\n\t\t\tthis.pointOffsetId = pointOffsetId;\n\t\t\tthis.pointSizeId = pointSizeId;\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\t// Buffer\n\t\t\tbuffer.updateVertices();\n\t\t\tif (isNotInited || isVertexChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateClippings();\n\t\t\t}\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t}\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t}\n\t\t\tconst pointCount = this.pointCount;\n\t\t\tconst pointsValues = formatted.values;\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tconst vertices = buffer.vertices;\n\t\t\tconst clippings = buffer.clippings;\n\t\t\tconst steps = buffer.steps;\n\t\t\tconst uvs = buffer.uvs;\n\t\t\tconst internalTransform = shape.transform.internalTransform;\n\t\t\tconst textureUvs = toTextureUvs(texture);\n\t\t\tif (0 < pointCount && pointSize.isStaticX() && pointSize.isStaticY()) {\n\t\t\t\tconst pointSizeX = pointSize.getX(0);\n\t\t\t\tconst pointSizeY = pointSize.getY(0);\n\n\t\t\t\t// Vertices\n\t\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tvoffset,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tpointSizeX,\n\t\t\t\t\tpointSizeY,\n\t\t\t\t\tstrokeAlign,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tradius,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t\tcopyVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\t\t\t\t\tpointCount,\n\t\t\t\t\tpointsValues,\n\t\t\t\t\tpointOffset\n\t\t\t\t);\n\n\t\t\t\t// Clippings\n\t\t\t\tif (isNotInited || isVertexChanged || isCornerChanged) {\n\t\t\t\t\tbuildTriangleRoundedClipping(clippings, voffset, corner, radius);\n\t\t\t\t\tcopyClipping(clippings, voffset, TRIANGLE_ROUNDED_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\n\t\t\t\t// Steps\n\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\t\tsteps,\n\t\t\t\t\t\tclippings,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyStep(steps, voffset, TRIANGLE_ROUNDED_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\n\t\t\t\t// UVs\n\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\t\tuvs,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\ttextureUvs,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyUvs(uvs, voffset, TRIANGLE_ROUNDED_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < pointCount; ++i) {\n\t\t\t\t\tconst ip = i << 1;\n\t\t\t\t\tconst px = pointsValues[ip] + pointOffset.getX(i);\n\t\t\t\t\tconst py = pointsValues[ip + 1] + pointOffset.getY(i);\n\t\t\t\t\tconst pointSizeX = pointSize.getX(i);\n\t\t\t\t\tconst pointSizeY = pointSize.getY(i);\n\n\t\t\t\t\tconst iv = voffset + i * TRIANGLE_ROUNDED_VERTEX_COUNT;\n\n\t\t\t\t\t// Vertices\n\t\t\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\t\t\tvertices,\n\t\t\t\t\t\tiv,\n\t\t\t\t\t\tpx,\n\t\t\t\t\t\tpy,\n\t\t\t\t\t\tpointSizeX,\n\t\t\t\t\t\tpointSizeY,\n\t\t\t\t\t\tstrokeAlign,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tinternalTransform,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\n\t\t\t\t\t// Clippings\n\t\t\t\t\tif (isNotInited || isVertexChanged || isCornerChanged) {\n\t\t\t\t\t\tbuildTriangleRoundedClipping(clippings, iv, corner, radius);\n\t\t\t\t\t}\n\n\t\t\t\t\t// Steps\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\t\t\tsteps,\n\t\t\t\t\t\t\tclippings,\n\t\t\t\t\t\t\tiv,\n\t\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// UVs\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\t\t\tuvs,\n\t\t\t\t\t\t\tiv,\n\t\t\t\t\t\t\ttextureUvs,\n\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Fill the rest\n\t\t\tconst pointCountReserved = this.pointCountReserved;\n\t\t\tconst voffsetReserved = voffset + pointCount * TRIANGLE_ROUNDED_VERTEX_COUNT;\n\t\t\tconst vcountReserved =\n\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT * (pointCountReserved - pointCount);\n\t\t\tbuildNullVertex(vertices, voffsetReserved, vcountReserved);\n\t\t\tbuildNullStep(steps, voffsetReserved, vcountReserved);\n\t\t\tbuildNullClipping(clippings, voffsetReserved, vcountReserved);\n\t\t\tbuildNullUv(uvs, voffsetReserved, vcountReserved);\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"builder-line-of-triangle-roundeds.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line-of-triangle-roundeds.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 { buildNullStep, buildNullUv, buildNullVertex } from \"./build-null\";\nimport {\n\tbuildTriangleRoundedIndex,\n\tbuildTriangleRoundedStep,\n\tbuildTriangleRoundedUv,\n\tbuildTriangleRoundedVertex,\n\tTRIANGLE_ROUNDED_INDEX_COUNT,\n\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\tTRIANGLE_ROUNDED_WORLD_SIZE\n} from \"./build-triangle-rounded\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderLineOfAny } from \"./builder-line-of-any\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\nimport { copyIndex } from \"./copy-index\";\nimport { copyStep } from \"./copy-step\";\nimport { copyUvs } from \"./copy-uv\";\nimport { copyVertex } from \"./copy-vertex\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsImpl } from \"./e-shape-line-of-any-points-impl\";\n\nexport class BuilderLineOfTriangleRoundeds extends BuilderLineOfAny {\n\tprotected radius: number;\n\tprotected corner: EShapeCorner;\n\n\tconstructor(\n\t\tbuffer: BuilderBuffer,\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number,\n\t\tpointCountReserved: number,\n\t\tvcountPerPoint: number,\n\t\ticountPerPoint: number\n\t) {\n\t\tsuper(\n\t\t\tbuffer,\n\t\t\tvertexOffset,\n\t\t\tindexOffset,\n\t\t\tvertexCount,\n\t\t\tindexCount,\n\t\t\tpointCountReserved,\n\t\t\tvcountPerPoint,\n\t\t\ticountPerPoint\n\t\t);\n\t\tthis.radius = 0;\n\t\tthis.corner = 0;\n\t}\n\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tconst voffset = this.vertexOffset;\n\t\tconst ioffset = this.indexOffset;\n\t\tconst pointCountReserved = this.pointCountReserved;\n\t\tif (0 < pointCountReserved) {\n\t\t\tbuildTriangleRoundedIndex(buffer.indices, voffset, ioffset);\n\t\t\tcopyIndex(\n\t\t\t\tbuffer.indices,\n\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\t\t\t\tioffset,\n\t\t\t\tTRIANGLE_ROUNDED_INDEX_COUNT,\n\t\t\t\tpointCountReserved\n\t\t\t);\n\t\t}\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points instanceof EShapeLineOfAnyPointsImpl) {\n\t\t\tconst buffer = this.buffer;\n\t\t\tthis.updateVertexStepAndUv(buffer, shape, points);\n\t\t\tthis.updateLineOfAnyColor(buffer, shape, points, TRIANGLE_ROUNDED_VERTEX_COUNT);\n\t\t}\n\t}\n\n\tprotected updateVertexStepAndUv(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tpoints: EShapeLineOfAnyPoints\n\t): void {\n\t\tconst pointId = points.id;\n\t\tconst pointOffset = points.offset;\n\t\tconst pointOffsetId = pointOffset.id;\n\t\tconst isPointChanged = pointId !== this.pointId || pointOffsetId !== this.pointOffsetId;\n\n\t\tconst pointSize = points.size;\n\t\tconst pointSizeId = pointSize.id;\n\t\tconst isPointSizeChanged = pointSizeId !== this.pointSizeId;\n\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 = this.corner !== 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 =\n\t\t\tisPointChanged ||\n\t\t\tisPointSizeChanged ||\n\t\t\tisSizeChanged ||\n\t\t\tisRadiusChanged ||\n\t\t\tisStrokeChanged;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_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_STEP_AND_UV;\n\t\t\tthis.pointId = pointId;\n\t\t\tconst formatted = points.formatted;\n\t\t\tthis.pointCount = formatted.length;\n\t\t\tthis.pointOffsetId = pointOffsetId;\n\t\t\tthis.pointSizeId = pointSizeId;\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\t// Buffer\n\t\t\tbuffer.updateVertices();\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t}\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t}\n\t\t\tconst pointCount = this.pointCount;\n\t\t\tconst pointsValues = formatted.values;\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tconst vertices = buffer.vertices;\n\t\t\tconst steps = buffer.steps;\n\t\t\tconst uvs = buffer.uvs;\n\t\t\tconst internalTransform = shape.transform.internalTransform;\n\t\t\tconst textureUvs = toTextureUvs(texture);\n\t\t\tif (0 < pointCount && pointSize.isStaticX() && pointSize.isStaticY()) {\n\t\t\t\tconst pointSizeX = pointSize.getX(0);\n\t\t\t\tconst pointSizeY = pointSize.getY(0);\n\n\t\t\t\t// Vertices\n\t\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tvoffset,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tpointSizeX,\n\t\t\t\t\tpointSizeY,\n\t\t\t\t\tstrokeAlign,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tradius,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t);\n\t\t\t\tcopyVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT,\n\t\t\t\t\tpointCount,\n\t\t\t\t\tpointsValues,\n\t\t\t\t\tpointOffset\n\t\t\t\t);\n\n\t\t\t\t// Steps\n\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\t\tsteps,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\tcorner,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyStep(steps, voffset, TRIANGLE_ROUNDED_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\n\t\t\t\t// UVs\n\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\t\tuvs,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\ttextureUvs,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyUvs(uvs, voffset, TRIANGLE_ROUNDED_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < pointCount; ++i) {\n\t\t\t\t\tconst ip = i << 1;\n\t\t\t\t\tconst px = pointsValues[ip] + pointOffset.getX(i);\n\t\t\t\t\tconst py = pointsValues[ip + 1] + pointOffset.getY(i);\n\t\t\t\t\tconst pointSizeX = pointSize.getX(i);\n\t\t\t\t\tconst pointSizeY = pointSize.getY(i);\n\n\t\t\t\t\tconst iv = voffset + i * TRIANGLE_ROUNDED_VERTEX_COUNT;\n\n\t\t\t\t\t// Vertices\n\t\t\t\t\tbuildTriangleRoundedVertex(\n\t\t\t\t\t\tvertices,\n\t\t\t\t\t\tiv,\n\t\t\t\t\t\tpx,\n\t\t\t\t\t\tpy,\n\t\t\t\t\t\tpointSizeX,\n\t\t\t\t\t\tpointSizeY,\n\t\t\t\t\t\tstrokeAlign,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tradius,\n\t\t\t\t\t\tinternalTransform,\n\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t);\n\n\t\t\t\t\t// Steps\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged || isCornerChanged) {\n\t\t\t\t\t\tbuildTriangleRoundedStep(\n\t\t\t\t\t\t\tsteps,\n\t\t\t\t\t\t\tiv,\n\t\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\t\tcorner,\n\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\n\t\t\t\t\t// UVs\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\t\tbuildTriangleRoundedUv(\n\t\t\t\t\t\t\tuvs,\n\t\t\t\t\t\t\tiv,\n\t\t\t\t\t\t\ttextureUvs,\n\t\t\t\t\t\t\tradius,\n\t\t\t\t\t\t\tTRIANGLE_ROUNDED_WORLD_SIZE\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Fill the rest\n\t\t\tconst pointCountReserved = this.pointCountReserved;\n\t\t\tconst voffsetReserved = voffset + pointCount * TRIANGLE_ROUNDED_VERTEX_COUNT;\n\t\t\tconst vcountReserved =\n\t\t\t\tTRIANGLE_ROUNDED_VERTEX_COUNT * (pointCountReserved - pointCount);\n\t\t\tbuildNullVertex(vertices, voffsetReserved, vcountReserved);\n\t\t\tbuildNullStep(steps, voffsetReserved, vcountReserved);\n\t\t\tbuildNullUv(uvs, voffsetReserved, vcountReserved);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -4,11 +4,10 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { buildNullStep, buildNullUv, buildNullVertex } from "./build-null";
|
|
7
|
-
import {
|
|
7
|
+
import { buildTriangleIndex, buildTriangleStep, buildTriangleUv, buildTriangleVertex, TRIANGLE_INDEX_COUNT, TRIANGLE_VERTEX_COUNT, TRIANGLE_WORLD_SIZE } from "./build-triangle";
|
|
8
8
|
import { BuilderFlag } from "./builder";
|
|
9
9
|
import { BuilderLineOfAny } from "./builder-line-of-any";
|
|
10
10
|
import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
|
|
11
|
-
import { copyClipping } from "./copy-clipping";
|
|
12
11
|
import { copyIndex } from "./copy-index";
|
|
13
12
|
import { copyStep } from "./copy-step";
|
|
14
13
|
import { copyUvs } from "./copy-uv";
|
|
@@ -21,28 +20,23 @@ var BuilderLineOfTriangles = /** @class */ (function (_super) {
|
|
|
21
20
|
}
|
|
22
21
|
BuilderLineOfTriangles.prototype.init = function () {
|
|
23
22
|
var buffer = this.buffer;
|
|
24
|
-
buffer.updateClippings();
|
|
25
23
|
buffer.updateIndices();
|
|
26
|
-
var clippings = buffer.clippings;
|
|
27
24
|
var indices = buffer.indices;
|
|
28
25
|
var voffset = this.vertexOffset;
|
|
29
26
|
var ioffset = this.indexOffset;
|
|
30
27
|
var pointCountReserved = this.pointCountReserved;
|
|
31
28
|
if (0 < pointCountReserved) {
|
|
32
|
-
buildTriangleClipping(clippings, voffset);
|
|
33
|
-
copyClipping(clippings, voffset, TRIANGLE_VERTEX_COUNT, pointCountReserved);
|
|
34
29
|
buildTriangleIndex(indices, voffset, ioffset);
|
|
35
30
|
copyIndex(indices, TRIANGLE_VERTEX_COUNT, ioffset, TRIANGLE_INDEX_COUNT, pointCountReserved);
|
|
36
31
|
}
|
|
37
|
-
this.inited |= BuilderFlag.
|
|
32
|
+
this.inited |= BuilderFlag.INDEX;
|
|
38
33
|
};
|
|
39
34
|
BuilderLineOfTriangles.prototype.update = function (shape) {
|
|
40
35
|
var points = shape.points;
|
|
41
36
|
if (points instanceof EShapeLineOfAnyPointsImpl) {
|
|
42
37
|
var buffer = this.buffer;
|
|
43
38
|
this.updateVertexStepAndUvs(buffer, shape, points);
|
|
44
|
-
this.
|
|
45
|
-
this.updateLineOfAnyColorStroke(buffer, shape, points, TRIANGLE_VERTEX_COUNT);
|
|
39
|
+
this.updateLineOfAnyColor(buffer, shape, points, TRIANGLE_VERTEX_COUNT);
|
|
46
40
|
}
|
|
47
41
|
};
|
|
48
42
|
BuilderLineOfTriangles.prototype.updateVertexStepAndUvs = function (buffer, shape, points) {
|
|
@@ -99,7 +93,6 @@ var BuilderLineOfTriangles = /** @class */ (function (_super) {
|
|
|
99
93
|
var voffset = this.vertexOffset;
|
|
100
94
|
var vertices = buffer.vertices;
|
|
101
95
|
var steps = buffer.steps;
|
|
102
|
-
var clippings = buffer.clippings;
|
|
103
96
|
var uvs = buffer.uvs;
|
|
104
97
|
var textureUvs = toTextureUvs(texture);
|
|
105
98
|
var internalTransform = shape.transform.internalTransform;
|
|
@@ -109,7 +102,7 @@ var BuilderLineOfTriangles = /** @class */ (function (_super) {
|
|
|
109
102
|
buildTriangleVertex(vertices, voffset, 0, 0, pointSizeX, pointSizeY, strokeAlign, strokeWidth, internalTransform, TRIANGLE_WORLD_SIZE);
|
|
110
103
|
copyVertex(vertices, internalTransform, voffset, TRIANGLE_VERTEX_COUNT, pointCount, pointsValues, pointOffset);
|
|
111
104
|
if (isNotInited || isVertexChanged || isTransformChanged) {
|
|
112
|
-
buildTriangleStep(steps,
|
|
105
|
+
buildTriangleStep(steps, voffset, strokeWidth, strokeStyle, TRIANGLE_WORLD_SIZE);
|
|
113
106
|
copyStep(steps, voffset, TRIANGLE_VERTEX_COUNT, pointCount);
|
|
114
107
|
}
|
|
115
108
|
if (isNotInited || isVertexChanged || isTextureChanged) {
|
|
@@ -127,7 +120,7 @@ var BuilderLineOfTriangles = /** @class */ (function (_super) {
|
|
|
127
120
|
var iv = voffset + i * TRIANGLE_VERTEX_COUNT;
|
|
128
121
|
buildTriangleVertex(vertices, iv, px, py, pointSizeX, pointSizeY, strokeAlign, strokeWidth, internalTransform, TRIANGLE_WORLD_SIZE);
|
|
129
122
|
if (isNotInited || isVertexChanged || isTransformChanged) {
|
|
130
|
-
buildTriangleStep(steps,
|
|
123
|
+
buildTriangleStep(steps, iv, strokeWidth, strokeStyle, TRIANGLE_WORLD_SIZE);
|
|
131
124
|
}
|
|
132
125
|
if (isNotInited || isVertexChanged || isTextureChanged) {
|
|
133
126
|
buildTriangleUv(uvs, textureUvs, iv, TRIANGLE_WORLD_SIZE);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-line-of-triangles.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line-of-triangles.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 { buildNullStep, buildNullUv, buildNullVertex } from \"./build-null\";\nimport {\n\tbuildTriangleClipping,\n\tbuildTriangleIndex,\n\tbuildTriangleStep,\n\tbuildTriangleUv,\n\tbuildTriangleVertex,\n\tTRIANGLE_INDEX_COUNT,\n\tTRIANGLE_VERTEX_COUNT,\n\tTRIANGLE_WORLD_SIZE\n} from \"./build-triangle\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderLineOfAny } from \"./builder-line-of-any\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\nimport { copyClipping } from \"./copy-clipping\";\nimport { copyIndex } from \"./copy-index\";\nimport { copyStep } from \"./copy-step\";\nimport { copyUvs } from \"./copy-uv\";\nimport { copyVertex } from \"./copy-vertex\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsImpl } from \"./e-shape-line-of-any-points-impl\";\n\nexport class BuilderLineOfTriangles extends BuilderLineOfAny {\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateClippings();\n\t\tbuffer.updateIndices();\n\t\tconst clippings = buffer.clippings;\n\t\tconst indices = buffer.indices;\n\t\tconst voffset = this.vertexOffset;\n\t\tconst ioffset = this.indexOffset;\n\t\tconst pointCountReserved = this.pointCountReserved;\n\t\tif (0 < pointCountReserved) {\n\t\t\tbuildTriangleClipping(clippings, voffset);\n\t\t\tcopyClipping(clippings, voffset, TRIANGLE_VERTEX_COUNT, pointCountReserved);\n\t\t\tbuildTriangleIndex(indices, voffset, ioffset);\n\t\t\tcopyIndex(\n\t\t\t\tindices,\n\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\tioffset,\n\t\t\t\tTRIANGLE_INDEX_COUNT,\n\t\t\t\tpointCountReserved\n\t\t\t);\n\t\t}\n\t\tthis.inited |= BuilderFlag.CLIPPING_AND_INDEX;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points instanceof EShapeLineOfAnyPointsImpl) {\n\t\t\tconst buffer = this.buffer;\n\t\t\tthis.updateVertexStepAndUvs(buffer, shape, points);\n\t\t\tthis.updateLineOfAnyColorFill(buffer, shape, points, TRIANGLE_VERTEX_COUNT);\n\t\t\tthis.updateLineOfAnyColorStroke(buffer, shape, points, TRIANGLE_VERTEX_COUNT);\n\t\t}\n\t}\n\n\tprotected updateVertexStepAndUvs(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tpoints: EShapeLineOfAnyPoints\n\t): void {\n\t\tconst pointId = points.id;\n\t\tconst pointOffset = points.offset;\n\t\tconst pointOffsetId = pointOffset.id;\n\t\tconst isPointChanged = pointId !== this.pointId || pointOffsetId !== this.pointOffsetId;\n\n\t\tconst pointSize = points.size;\n\t\tconst pointSizeId = pointSize.id;\n\t\tconst isPointSizeChanged = pointSizeId !== this.pointSizeId;\n\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 =\n\t\t\tisPointChanged || isPointSizeChanged || 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.pointId = pointId;\n\t\t\tconst formatted = points.formatted;\n\t\t\tthis.pointCount = formatted.length;\n\t\t\tthis.pointOffsetId = pointOffsetId;\n\t\t\tthis.pointSizeId = pointSizeId;\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\t// Buffer\n\t\t\tbuffer.updateVertices();\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t}\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t}\n\n\t\t\tconst pointCount = this.pointCount;\n\t\t\tconst pointsValues = formatted.values;\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tconst vertices = buffer.vertices;\n\t\t\tconst steps = buffer.steps;\n\t\t\tconst clippings = buffer.clippings;\n\t\t\tconst uvs = buffer.uvs;\n\t\t\tconst textureUvs = toTextureUvs(texture);\n\t\t\tconst internalTransform = shape.transform.internalTransform;\n\t\t\tif (0 < pointCount && pointSize.isStaticX() && pointSize.isStaticY()) {\n\t\t\t\tconst pointSizeX = pointSize.getX(0);\n\t\t\t\tconst pointSizeY = pointSize.getY(0);\n\n\t\t\t\tbuildTriangleVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tvoffset,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tpointSizeX,\n\t\t\t\t\tpointSizeY,\n\t\t\t\t\tstrokeAlign,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t);\n\t\t\t\tcopyVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\tpointCount,\n\t\t\t\t\tpointsValues,\n\t\t\t\t\tpointOffset\n\t\t\t\t);\n\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\t\tbuildTriangleStep(\n\t\t\t\t\t\tsteps,\n\t\t\t\t\t\tclippings,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyStep(steps, voffset, TRIANGLE_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\tbuildTriangleUv(uvs, textureUvs, voffset, TRIANGLE_WORLD_SIZE);\n\t\t\t\t\tcopyUvs(uvs, voffset, TRIANGLE_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < pointCount; ++i) {\n\t\t\t\t\tconst ip = i << 1;\n\t\t\t\t\tconst px = pointsValues[ip] + pointOffset.getX(i);\n\t\t\t\t\tconst py = pointsValues[ip + 1] + pointOffset.getY(i);\n\t\t\t\t\tconst pointSizeX = pointSize.getX(i);\n\t\t\t\t\tconst pointSizeY = pointSize.getY(i);\n\t\t\t\t\tconst iv = voffset + i * TRIANGLE_VERTEX_COUNT;\n\n\t\t\t\t\tbuildTriangleVertex(\n\t\t\t\t\t\tvertices,\n\t\t\t\t\t\tiv,\n\t\t\t\t\t\tpx,\n\t\t\t\t\t\tpy,\n\t\t\t\t\t\tpointSizeX,\n\t\t\t\t\t\tpointSizeY,\n\t\t\t\t\t\tstrokeAlign,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tinternalTransform,\n\t\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\t\t\tbuildTriangleStep(\n\t\t\t\t\t\t\tsteps,\n\t\t\t\t\t\t\tclippings,\n\t\t\t\t\t\t\tiv,\n\t\t\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t\t\t);\n\t\t\t\t\t}\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\t\tbuildTriangleUv(uvs, textureUvs, iv, TRIANGLE_WORLD_SIZE);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Fill the rest\n\t\t\tconst pointCountReserved = this.pointCountReserved;\n\t\t\tconst voffsetReserved = voffset + pointCount * TRIANGLE_VERTEX_COUNT;\n\t\t\tconst vcountReserved = TRIANGLE_VERTEX_COUNT * (pointCountReserved - pointCount);\n\t\t\tbuildNullVertex(vertices, voffsetReserved, vcountReserved);\n\t\t\tbuildNullStep(steps, voffsetReserved, vcountReserved);\n\t\t\tbuildNullUv(uvs, voffsetReserved, vcountReserved);\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"builder-line-of-triangles.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line-of-triangles.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 { buildNullStep, buildNullUv, buildNullVertex } from \"./build-null\";\nimport {\n\tbuildTriangleIndex,\n\tbuildTriangleStep,\n\tbuildTriangleUv,\n\tbuildTriangleVertex,\n\tTRIANGLE_INDEX_COUNT,\n\tTRIANGLE_VERTEX_COUNT,\n\tTRIANGLE_WORLD_SIZE\n} from \"./build-triangle\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderLineOfAny } from \"./builder-line-of-any\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\nimport { copyIndex } from \"./copy-index\";\nimport { copyStep } from \"./copy-step\";\nimport { copyUvs } from \"./copy-uv\";\nimport { copyVertex } from \"./copy-vertex\";\nimport { EShapeLineOfAnyPoints } from \"./e-shape-line-of-any-points\";\nimport { EShapeLineOfAnyPointsImpl } from \"./e-shape-line-of-any-points-impl\";\n\nexport class BuilderLineOfTriangles extends BuilderLineOfAny {\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tconst indices = buffer.indices;\n\t\tconst voffset = this.vertexOffset;\n\t\tconst ioffset = this.indexOffset;\n\t\tconst pointCountReserved = this.pointCountReserved;\n\t\tif (0 < pointCountReserved) {\n\t\t\tbuildTriangleIndex(indices, voffset, ioffset);\n\t\t\tcopyIndex(\n\t\t\t\tindices,\n\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\tioffset,\n\t\t\t\tTRIANGLE_INDEX_COUNT,\n\t\t\t\tpointCountReserved\n\t\t\t);\n\t\t}\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points instanceof EShapeLineOfAnyPointsImpl) {\n\t\t\tconst buffer = this.buffer;\n\t\t\tthis.updateVertexStepAndUvs(buffer, shape, points);\n\t\t\tthis.updateLineOfAnyColor(buffer, shape, points, TRIANGLE_VERTEX_COUNT);\n\t\t}\n\t}\n\n\tprotected updateVertexStepAndUvs(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tpoints: EShapeLineOfAnyPoints\n\t): void {\n\t\tconst pointId = points.id;\n\t\tconst pointOffset = points.offset;\n\t\tconst pointOffsetId = pointOffset.id;\n\t\tconst isPointChanged = pointId !== this.pointId || pointOffsetId !== this.pointOffsetId;\n\n\t\tconst pointSize = points.size;\n\t\tconst pointSizeId = pointSize.id;\n\t\tconst isPointSizeChanged = pointSizeId !== this.pointSizeId;\n\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 =\n\t\t\tisPointChanged || isPointSizeChanged || 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.pointId = pointId;\n\t\t\tconst formatted = points.formatted;\n\t\t\tthis.pointCount = formatted.length;\n\t\t\tthis.pointOffsetId = pointOffsetId;\n\t\t\tthis.pointSizeId = pointSizeId;\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\t// Buffer\n\t\t\tbuffer.updateVertices();\n\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\tbuffer.updateSteps();\n\t\t\t}\n\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\tbuffer.updateUvs();\n\t\t\t}\n\n\t\t\tconst pointCount = this.pointCount;\n\t\t\tconst pointsValues = formatted.values;\n\t\t\tconst voffset = this.vertexOffset;\n\t\t\tconst vertices = buffer.vertices;\n\t\t\tconst steps = buffer.steps;\n\t\t\tconst uvs = buffer.uvs;\n\t\t\tconst textureUvs = toTextureUvs(texture);\n\t\t\tconst internalTransform = shape.transform.internalTransform;\n\t\t\tif (0 < pointCount && pointSize.isStaticX() && pointSize.isStaticY()) {\n\t\t\t\tconst pointSizeX = pointSize.getX(0);\n\t\t\t\tconst pointSizeY = pointSize.getY(0);\n\n\t\t\t\tbuildTriangleVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tvoffset,\n\t\t\t\t\t0,\n\t\t\t\t\t0,\n\t\t\t\t\tpointSizeX,\n\t\t\t\t\tpointSizeY,\n\t\t\t\t\tstrokeAlign,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t);\n\t\t\t\tcopyVertex(\n\t\t\t\t\tvertices,\n\t\t\t\t\tinternalTransform,\n\t\t\t\t\tvoffset,\n\t\t\t\t\tTRIANGLE_VERTEX_COUNT,\n\t\t\t\t\tpointCount,\n\t\t\t\t\tpointsValues,\n\t\t\t\t\tpointOffset\n\t\t\t\t);\n\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\t\tbuildTriangleStep(\n\t\t\t\t\t\tsteps,\n\t\t\t\t\t\tvoffset,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tstrokeStyle,\n\t\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tcopyStep(steps, voffset, TRIANGLE_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\tbuildTriangleUv(uvs, textureUvs, voffset, TRIANGLE_WORLD_SIZE);\n\t\t\t\t\tcopyUvs(uvs, voffset, TRIANGLE_VERTEX_COUNT, pointCount);\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor (let i = 0; i < pointCount; ++i) {\n\t\t\t\t\tconst ip = i << 1;\n\t\t\t\t\tconst px = pointsValues[ip] + pointOffset.getX(i);\n\t\t\t\t\tconst py = pointsValues[ip + 1] + pointOffset.getY(i);\n\t\t\t\t\tconst pointSizeX = pointSize.getX(i);\n\t\t\t\t\tconst pointSizeY = pointSize.getY(i);\n\t\t\t\t\tconst iv = voffset + i * TRIANGLE_VERTEX_COUNT;\n\n\t\t\t\t\tbuildTriangleVertex(\n\t\t\t\t\t\tvertices,\n\t\t\t\t\t\tiv,\n\t\t\t\t\t\tpx,\n\t\t\t\t\t\tpy,\n\t\t\t\t\t\tpointSizeX,\n\t\t\t\t\t\tpointSizeY,\n\t\t\t\t\t\tstrokeAlign,\n\t\t\t\t\t\tstrokeWidth,\n\t\t\t\t\t\tinternalTransform,\n\t\t\t\t\t\tTRIANGLE_WORLD_SIZE\n\t\t\t\t\t);\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTransformChanged) {\n\t\t\t\t\t\tbuildTriangleStep(steps, iv, strokeWidth, strokeStyle, TRIANGLE_WORLD_SIZE);\n\t\t\t\t\t}\n\t\t\t\t\tif (isNotInited || isVertexChanged || isTextureChanged) {\n\t\t\t\t\t\tbuildTriangleUv(uvs, textureUvs, iv, TRIANGLE_WORLD_SIZE);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Fill the rest\n\t\t\tconst pointCountReserved = this.pointCountReserved;\n\t\t\tconst voffsetReserved = voffset + pointCount * TRIANGLE_VERTEX_COUNT;\n\t\t\tconst vcountReserved = TRIANGLE_VERTEX_COUNT * (pointCountReserved - pointCount);\n\t\t\tbuildNullVertex(vertices, voffsetReserved, vcountReserved);\n\t\t\tbuildNullStep(steps, voffsetReserved, vcountReserved);\n\t\t\tbuildNullUv(uvs, voffsetReserved, vcountReserved);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { EShapePointsStyle } from "../e-shape-points-style";
|
|
7
|
-
import {
|
|
7
|
+
import { buildLineIndex, buildLineUv, buildLineVertexStep, toLineIndexCount, toLinePointCount, toLineVertexCount } from "./build-line";
|
|
8
8
|
import { BuilderFlag } from "./builder";
|
|
9
9
|
import { BuilderBase } from "./builder-base";
|
|
10
10
|
import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
|
|
@@ -57,44 +57,31 @@ var BuilderLine = /** @class */ (function (_super) {
|
|
|
57
57
|
};
|
|
58
58
|
BuilderLine.prototype.update = function (shape) {
|
|
59
59
|
var buffer = this.buffer;
|
|
60
|
-
this.
|
|
61
|
-
this.
|
|
62
|
-
this.updateColorStroke(buffer, shape);
|
|
60
|
+
this.updateLineVertexStep(buffer, shape);
|
|
61
|
+
this.updateColor(buffer, shape);
|
|
63
62
|
this.updateLineUv(buffer, shape);
|
|
64
63
|
};
|
|
65
|
-
BuilderLine.prototype.
|
|
66
|
-
var points = shape.points;
|
|
67
|
-
if (points) {
|
|
68
|
-
var formatted = points.formatted;
|
|
69
|
-
var pointCount = formatted.length;
|
|
70
|
-
var isNotInited = !(this.inited & BuilderFlag.CLIPPING);
|
|
71
|
-
if (isNotInited || this.pointCount !== pointCount) {
|
|
72
|
-
this.inited |= BuilderFlag.CLIPPING;
|
|
73
|
-
this.pointCount = pointCount;
|
|
74
|
-
// Invalidate the vertex buffer
|
|
75
|
-
this.inited &= ~BuilderFlag.VERTEX;
|
|
76
|
-
buffer.updateClippings();
|
|
77
|
-
buildLineClipping(buffer.clippings, this.vertexOffset, this.vertexCount, pointCount);
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
};
|
|
81
|
-
BuilderLine.prototype.updateLineVertexStepAndColorFill = function (buffer, shape) {
|
|
64
|
+
BuilderLine.prototype.updateLineVertexStep = function (buffer, shape) {
|
|
82
65
|
var points = shape.points;
|
|
83
66
|
if (points) {
|
|
84
67
|
var pointId = points.id;
|
|
85
68
|
var formatted = points.formatted;
|
|
69
|
+
var pointCount = formatted.length;
|
|
86
70
|
var pointsClosed = !!(formatted.style & EShapePointsStyle.CLOSED);
|
|
87
|
-
var isPointChanged = pointId !== this.pointId ||
|
|
71
|
+
var isPointChanged = pointId !== this.pointId ||
|
|
72
|
+
pointCount !== this.pointCount ||
|
|
73
|
+
pointsClosed !== this.pointsClosed;
|
|
88
74
|
var stroke = shape.stroke;
|
|
89
75
|
var strokeWidth = stroke.enable ? stroke.width : 0;
|
|
90
76
|
var strokeStyle = stroke.style;
|
|
91
77
|
var isStrokeWidthChanged = this.strokeWidth !== strokeWidth || this.strokeStyle !== strokeStyle;
|
|
92
78
|
var transformLocalId = toTransformLocalId(shape);
|
|
93
79
|
var isTransformChanged = this.transformLocalId !== transformLocalId;
|
|
94
|
-
var isNotInited = !(this.inited & BuilderFlag.
|
|
80
|
+
var isNotInited = !(this.inited & BuilderFlag.VERTEX_AND_STEP);
|
|
95
81
|
if (isNotInited || isPointChanged || isTransformChanged || isStrokeWidthChanged) {
|
|
96
|
-
this.inited |= BuilderFlag.
|
|
82
|
+
this.inited |= BuilderFlag.VERTEX_AND_STEP;
|
|
97
83
|
this.pointId = pointId;
|
|
84
|
+
this.pointCount = pointCount;
|
|
98
85
|
this.pointsClosed = pointsClosed;
|
|
99
86
|
this.strokeWidth = strokeWidth;
|
|
100
87
|
this.strokeStyle = strokeStyle;
|
|
@@ -105,8 +92,7 @@ var BuilderLine = /** @class */ (function (_super) {
|
|
|
105
92
|
}
|
|
106
93
|
buffer.updateVertices();
|
|
107
94
|
buffer.updateSteps();
|
|
108
|
-
buffer.
|
|
109
|
-
this.length = buildLineVertexStepAndColorFill(buffer.vertices, buffer.steps, buffer.colorFills, this.vertexOffset, this.vertexCount, this.pointCount, this.pointsClosed, formatted.values, formatted.segments, strokeWidth, strokeStyle, shape.transform.internalTransform);
|
|
95
|
+
this.length = buildLineVertexStep(buffer.vertices, buffer.steps, this.vertexOffset, this.vertexCount, this.pointCount, this.pointsClosed, formatted.values, formatted.segments, strokeWidth, strokeStyle, shape.transform.internalTransform);
|
|
110
96
|
}
|
|
111
97
|
}
|
|
112
98
|
};
|
|
@@ -121,7 +107,7 @@ var BuilderLine = /** @class */ (function (_super) {
|
|
|
121
107
|
this.texture = texture;
|
|
122
108
|
this.textureTransformId = textureTransformId;
|
|
123
109
|
buffer.updateUvs();
|
|
124
|
-
buildLineUv(buffer.uvs, buffer.
|
|
110
|
+
buildLineUv(buffer.uvs, buffer.steps, this.vertexOffset, this.vertexCount, toTextureUvs(texture), this.length);
|
|
125
111
|
}
|
|
126
112
|
};
|
|
127
113
|
return BuilderLine;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line.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 { EShapePointsStyle } from \"../e-shape-points-style\";\nimport {\n\tbuildLineClipping,\n\tbuildLineIndex,\n\tbuildLineUv,\n\tbuildLineVertexStepAndColorFill,\n\ttoLineIndexCount,\n\ttoLinePointCount,\n\ttoLineVertexCount\n} from \"./build-line\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderLine extends BuilderBase {\n\tprotected pointCount: number;\n\tprotected pointId: number;\n\tprotected pointsClosed: boolean;\n\tprotected length: number;\n\n\tconstructor(\n\t\tbuffer: BuilderBuffer,\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tsuper(buffer, vertexOffset, indexOffset, vertexCount, indexCount);\n\t\tthis.pointId = -1;\n\t\tthis.pointCount = 0;\n\t\tthis.pointsClosed = false;\n\t\tthis.length = 1;\n\t}\n\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tbuildLineIndex(buffer.indices, this.vertexOffset, this.indexOffset, this.indexCount);\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride reinit(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tvertexOffset: number,\n\t\tindexOffset: number\n\t): boolean {\n\t\tconst pointCount = toLinePointCount(shape.points);\n\t\tconst vertexCount = toLineVertexCount(pointCount, true);\n\t\tconst indexCount = toLineIndexCount(pointCount, true);\n\t\tif (\n\t\t\tthis.buffer !== buffer ||\n\t\t\tthis.vertexOffset !== vertexOffset ||\n\t\t\tthis.indexOffset !== indexOffset ||\n\t\t\tthis.vertexCount !== vertexCount ||\n\t\t\tthis.indexCount !== indexCount\n\t\t) {\n\t\t\tif (buffer.check(vertexOffset, indexOffset, vertexCount, indexCount)) {\n\t\t\t\tthis.inited = BuilderFlag.NONE;\n\t\t\t\tthis.buffer = buffer;\n\t\t\t\tthis.vertexOffset = vertexOffset;\n\t\t\t\tthis.indexOffset = indexOffset;\n\t\t\t\tthis.vertexCount = vertexCount;\n\t\t\t\tthis.indexCount = indexCount;\n\t\t\t\tthis.init();\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\toverride isCompatible(shape: EShape): boolean {\n\t\tconst vcount = toLineVertexCount(toLinePointCount(shape.points), true);\n\t\treturn vcount === this.vertexCount;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst buffer = this.buffer;\n\t\tthis.updateLineClipping(buffer, shape);\n\t\tthis.updateLineVertexStepAndColorFill(buffer, shape);\n\t\tthis.updateColorStroke(buffer, shape);\n\t\tthis.updateLineUv(buffer, shape);\n\t}\n\n\tprotected updateLineClipping(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points) {\n\t\t\tconst formatted = points.formatted;\n\t\t\tconst pointCount = formatted.length;\n\t\t\tconst isNotInited = !(this.inited & BuilderFlag.CLIPPING);\n\t\t\tif (isNotInited || this.pointCount !== pointCount) {\n\t\t\t\tthis.inited |= BuilderFlag.CLIPPING;\n\t\t\t\tthis.pointCount = pointCount;\n\n\t\t\t\t// Invalidate the vertex buffer\n\t\t\t\tthis.inited &= ~BuilderFlag.VERTEX;\n\n\t\t\t\tbuffer.updateClippings();\n\t\t\t\tbuildLineClipping(\n\t\t\t\t\tbuffer.clippings,\n\t\t\t\t\tthis.vertexOffset,\n\t\t\t\t\tthis.vertexCount,\n\t\t\t\t\tpointCount\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateLineVertexStepAndColorFill(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points) {\n\t\t\tconst pointId = points.id;\n\t\t\tconst formatted = points.formatted;\n\t\t\tconst pointsClosed = !!(formatted.style & EShapePointsStyle.CLOSED);\n\t\t\tconst isPointChanged = pointId !== this.pointId || pointsClosed !== this.pointsClosed;\n\n\t\t\tconst stroke = shape.stroke;\n\t\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\t\tconst strokeStyle = stroke.style;\n\t\t\tconst isStrokeWidthChanged =\n\t\t\t\tthis.strokeWidth !== strokeWidth || this.strokeStyle !== strokeStyle;\n\n\t\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_STEP_AND_COLOR_FILL);\n\n\t\t\tif (isNotInited || isPointChanged || isTransformChanged || isStrokeWidthChanged) {\n\t\t\t\tthis.inited |= BuilderFlag.VERTEX_STEP_AND_COLOR_FILL;\n\t\t\t\tthis.pointId = pointId;\n\t\t\t\tthis.pointsClosed = pointsClosed;\n\t\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\t\tthis.transformLocalId = transformLocalId;\n\n\t\t\t\tif (isPointChanged) {\n\t\t\t\t\t// Invalidate the UV buffer\n\t\t\t\t\tthis.inited &= ~BuilderFlag.UV;\n\t\t\t\t}\n\n\t\t\t\tbuffer.updateVertices();\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tbuffer.updateColorFills();\n\t\t\t\tthis.length = buildLineVertexStepAndColorFill(\n\t\t\t\t\tbuffer.vertices,\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tbuffer.colorFills,\n\t\t\t\t\tthis.vertexOffset,\n\t\t\t\t\tthis.vertexCount,\n\t\t\t\t\tthis.pointCount,\n\t\t\t\t\tthis.pointsClosed,\n\t\t\t\t\tformatted.values,\n\t\t\t\t\tformatted.segments,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tshape.transform.internalTransform\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateLineUv(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isNotInited = !(this.inited & BuilderFlag.UV);\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\ttexture !== this.texture ||\n\t\t\ttextureTransformId !== this.textureTransformId\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.UV;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tbuffer.updateUvs();\n\t\t\tbuildLineUv(\n\t\t\t\tbuffer.uvs,\n\t\t\t\tbuffer.colorFills,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\ttoTextureUvs(texture),\n\t\t\t\tthis.length\n\t\t\t);\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"builder-line.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-line.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 { EShapePointsStyle } from \"../e-shape-points-style\";\nimport {\n\tbuildLineIndex,\n\tbuildLineUv,\n\tbuildLineVertexStep,\n\ttoLineIndexCount,\n\ttoLinePointCount,\n\ttoLineVertexCount\n} from \"./build-line\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderBase } from \"./builder-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\n\nexport class BuilderLine extends BuilderBase {\n\tprotected pointCount: number;\n\tprotected pointId: number;\n\tprotected pointsClosed: boolean;\n\tprotected length: number;\n\n\tconstructor(\n\t\tbuffer: BuilderBuffer,\n\t\tvertexOffset: number,\n\t\tindexOffset: number,\n\t\tvertexCount: number,\n\t\tindexCount: number\n\t) {\n\t\tsuper(buffer, vertexOffset, indexOffset, vertexCount, indexCount);\n\t\tthis.pointId = -1;\n\t\tthis.pointCount = 0;\n\t\tthis.pointsClosed = false;\n\t\tthis.length = 1;\n\t}\n\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tbuildLineIndex(buffer.indices, this.vertexOffset, this.indexOffset, this.indexCount);\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride reinit(\n\t\tbuffer: BuilderBuffer,\n\t\tshape: EShape,\n\t\tvertexOffset: number,\n\t\tindexOffset: number\n\t): boolean {\n\t\tconst pointCount = toLinePointCount(shape.points);\n\t\tconst vertexCount = toLineVertexCount(pointCount, true);\n\t\tconst indexCount = toLineIndexCount(pointCount, true);\n\t\tif (\n\t\t\tthis.buffer !== buffer ||\n\t\t\tthis.vertexOffset !== vertexOffset ||\n\t\t\tthis.indexOffset !== indexOffset ||\n\t\t\tthis.vertexCount !== vertexCount ||\n\t\t\tthis.indexCount !== indexCount\n\t\t) {\n\t\t\tif (buffer.check(vertexOffset, indexOffset, vertexCount, indexCount)) {\n\t\t\t\tthis.inited = BuilderFlag.NONE;\n\t\t\t\tthis.buffer = buffer;\n\t\t\t\tthis.vertexOffset = vertexOffset;\n\t\t\t\tthis.indexOffset = indexOffset;\n\t\t\t\tthis.vertexCount = vertexCount;\n\t\t\t\tthis.indexCount = indexCount;\n\t\t\t\tthis.init();\n\t\t\t\treturn true;\n\t\t\t} else {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t} else {\n\t\t\treturn true;\n\t\t}\n\t}\n\n\toverride isCompatible(shape: EShape): boolean {\n\t\tconst vcount = toLineVertexCount(toLinePointCount(shape.points), true);\n\t\treturn vcount === this.vertexCount;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst buffer = this.buffer;\n\t\tthis.updateLineVertexStep(buffer, shape);\n\t\tthis.updateColor(buffer, shape);\n\t\tthis.updateLineUv(buffer, shape);\n\t}\n\n\tprotected updateLineVertexStep(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points) {\n\t\t\tconst pointId = points.id;\n\t\t\tconst formatted = points.formatted;\n\t\t\tconst pointCount = formatted.length;\n\t\t\tconst pointsClosed = !!(formatted.style & EShapePointsStyle.CLOSED);\n\t\t\tconst isPointChanged =\n\t\t\t\tpointId !== this.pointId ||\n\t\t\t\tpointCount !== this.pointCount ||\n\t\t\t\tpointsClosed !== this.pointsClosed;\n\n\t\t\tconst stroke = shape.stroke;\n\t\t\tconst strokeWidth = stroke.enable ? stroke.width : 0;\n\t\t\tconst strokeStyle = stroke.style;\n\t\t\tconst isStrokeWidthChanged =\n\t\t\t\tthis.strokeWidth !== strokeWidth || this.strokeStyle !== strokeStyle;\n\n\t\t\tconst transformLocalId = toTransformLocalId(shape);\n\t\t\tconst isTransformChanged = this.transformLocalId !== transformLocalId;\n\n\t\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_AND_STEP);\n\n\t\t\tif (isNotInited || isPointChanged || isTransformChanged || isStrokeWidthChanged) {\n\t\t\t\tthis.inited |= BuilderFlag.VERTEX_AND_STEP;\n\t\t\t\tthis.pointId = pointId;\n\t\t\t\tthis.pointCount = pointCount;\n\t\t\t\tthis.pointsClosed = pointsClosed;\n\t\t\t\tthis.strokeWidth = strokeWidth;\n\t\t\t\tthis.strokeStyle = strokeStyle;\n\t\t\t\tthis.transformLocalId = transformLocalId;\n\n\t\t\t\tif (isPointChanged) {\n\t\t\t\t\t// Invalidate the UV buffer\n\t\t\t\t\tthis.inited &= ~BuilderFlag.UV;\n\t\t\t\t}\n\n\t\t\t\tbuffer.updateVertices();\n\t\t\t\tbuffer.updateSteps();\n\t\t\t\tthis.length = buildLineVertexStep(\n\t\t\t\t\tbuffer.vertices,\n\t\t\t\t\tbuffer.steps,\n\t\t\t\t\tthis.vertexOffset,\n\t\t\t\t\tthis.vertexCount,\n\t\t\t\t\tthis.pointCount,\n\t\t\t\t\tthis.pointsClosed,\n\t\t\t\t\tformatted.values,\n\t\t\t\t\tformatted.segments,\n\t\t\t\t\tstrokeWidth,\n\t\t\t\t\tstrokeStyle,\n\t\t\t\t\tshape.transform.internalTransform\n\t\t\t\t);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected updateLineUv(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isNotInited = !(this.inited & BuilderFlag.UV);\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\ttexture !== this.texture ||\n\t\t\ttextureTransformId !== this.textureTransformId\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.UV;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tbuffer.updateUvs();\n\t\t\tbuildLineUv(\n\t\t\t\tbuffer.uvs,\n\t\t\t\tbuffer.steps,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\ttoTextureUvs(texture),\n\t\t\t\tthis.length\n\t\t\t);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -11,27 +11,35 @@ var BuilderMarkerBase = /** @class */ (function (_super) {
|
|
|
11
11
|
function BuilderMarkerBase() {
|
|
12
12
|
return _super !== null && _super.apply(this, arguments) || this;
|
|
13
13
|
}
|
|
14
|
-
BuilderMarkerBase.prototype.
|
|
14
|
+
BuilderMarkerBase.prototype.updateColor = function (buffer, shape) {
|
|
15
|
+
var colorFill = 0xffffff;
|
|
16
|
+
var alphaFill = 1;
|
|
15
17
|
var points = shape.points;
|
|
16
|
-
if (points
|
|
17
|
-
|
|
18
|
+
if (points != null) {
|
|
19
|
+
var container = points.getMarker();
|
|
20
|
+
if (container != null) {
|
|
21
|
+
var marker = this.toMarker(container);
|
|
22
|
+
var fill = marker.fill;
|
|
23
|
+
colorFill = fill.color;
|
|
24
|
+
alphaFill = shape.visible && fill.enable ? fill.alpha : 0;
|
|
25
|
+
}
|
|
18
26
|
}
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
this.
|
|
31
|
-
this.
|
|
32
|
-
this.
|
|
33
|
-
buffer.
|
|
34
|
-
buildColor(
|
|
27
|
+
var stroke = shape.stroke;
|
|
28
|
+
var colorStroke = stroke.color;
|
|
29
|
+
var alphaStroke = shape.visible && stroke.enable && 0 < stroke.width ? stroke.alpha : 0;
|
|
30
|
+
var isNotInited = !(this.inited & BuilderFlag.COLOR);
|
|
31
|
+
if (isNotInited ||
|
|
32
|
+
colorFill !== this.colorFill ||
|
|
33
|
+
alphaFill !== this.alphaFill ||
|
|
34
|
+
colorStroke !== this.colorStroke ||
|
|
35
|
+
alphaStroke !== this.alphaStroke) {
|
|
36
|
+
this.inited |= BuilderFlag.COLOR;
|
|
37
|
+
this.colorFill = colorFill;
|
|
38
|
+
this.alphaFill = alphaFill;
|
|
39
|
+
this.colorStroke = colorStroke;
|
|
40
|
+
this.alphaStroke = alphaStroke;
|
|
41
|
+
buffer.updateColors();
|
|
42
|
+
buildColor(colorFill, alphaFill, colorStroke, alphaStroke, this.vertexOffset, this.vertexCount, buffer.colors);
|
|
35
43
|
}
|
|
36
44
|
};
|
|
37
45
|
return BuilderMarkerBase;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-marker-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-marker-base.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAKH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAiB,WAAW,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;IAAgD,qCAAW;IAA3D;;
|
|
1
|
+
{"version":3,"file":"builder-marker-base.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-marker-base.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAKH,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAiB,WAAW,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAE7C;IAAgD,qCAAW;IAA3D;;IA8CA,CAAC;IA7CmB,uCAAW,GAA9B,UAA+B,MAAqB,EAAE,KAAa;QAClE,IAAI,SAAS,GAAG,QAAQ,CAAC;QACzB,IAAI,SAAS,GAAG,CAAC,CAAC;QAClB,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAI,MAAM,IAAI,IAAI,EAAE;YACnB,IAAM,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAC;YACrC,IAAI,SAAS,IAAI,IAAI,EAAE;gBACtB,IAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACxC,IAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;gBACzB,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC;gBACvB,SAAS,GAAG,KAAK,CAAC,OAAO,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;aAC1D;SACD;QACD,IAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;QAC5B,IAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC;QACjC,IAAM,WAAW,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1F,IAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;QACvD,IACC,WAAW;YACX,SAAS,KAAK,IAAI,CAAC,SAAS;YAC5B,SAAS,KAAK,IAAI,CAAC,SAAS;YAC5B,WAAW,KAAK,IAAI,CAAC,WAAW;YAChC,WAAW,KAAK,IAAI,CAAC,WAAW,EAC/B;YACD,IAAI,CAAC,MAAM,IAAI,WAAW,CAAC,KAAK,CAAC;YACjC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;YAC3B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;YAC/B,MAAM,CAAC,YAAY,EAAE,CAAC;YAEtB,UAAU,CACT,SAAS,EACT,SAAS,EACT,WAAW,EACX,WAAW,EACX,IAAI,CAAC,YAAY,EACjB,IAAI,CAAC,WAAW,EAChB,MAAM,CAAC,MAAM,CACb,CAAC;SACF;IACF,CAAC;IAGF,wBAAC;AAAD,CAAC,AA9CD,CAAgD,WAAW,GA8C1D","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { EShape } from \"../e-shape\";\nimport { EShapePointsMarker } from \"../e-shape-points-marker\";\nimport { EShapePointsMarkerContainer } from \"../e-shape-points-marker-container\";\nimport { buildColor } from \"./build-color\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\nimport { BuilderBase } from \"./builder-base\";\n\nexport abstract class BuilderMarkerBase extends BuilderBase {\n\tprotected override updateColor(buffer: BuilderBuffer, shape: EShape): void {\n\t\tlet colorFill = 0xffffff;\n\t\tlet alphaFill = 1;\n\t\tconst points = shape.points;\n\t\tif (points != null) {\n\t\t\tconst container = points.getMarker();\n\t\t\tif (container != null) {\n\t\t\t\tconst marker = this.toMarker(container);\n\t\t\t\tconst fill = marker.fill;\n\t\t\t\tcolorFill = fill.color;\n\t\t\t\talphaFill = shape.visible && fill.enable ? fill.alpha : 0;\n\t\t\t}\n\t\t}\n\t\tconst stroke = shape.stroke;\n\t\tconst colorStroke = stroke.color;\n\t\tconst alphaStroke = shape.visible && stroke.enable && 0 < stroke.width ? stroke.alpha : 0;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.COLOR);\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\tcolorFill !== this.colorFill ||\n\t\t\talphaFill !== this.alphaFill ||\n\t\t\tcolorStroke !== this.colorStroke ||\n\t\t\talphaStroke !== this.alphaStroke\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.COLOR;\n\t\t\tthis.colorFill = colorFill;\n\t\t\tthis.alphaFill = alphaFill;\n\t\t\tthis.colorStroke = colorStroke;\n\t\t\tthis.alphaStroke = alphaStroke;\n\t\t\tbuffer.updateColors();\n\n\t\t\tbuildColor(\n\t\t\t\tcolorFill,\n\t\t\t\talphaFill,\n\t\t\t\tcolorStroke,\n\t\t\t\talphaStroke,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tthis.vertexCount,\n\t\t\t\tbuffer.colors\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected abstract toMarker(container: EShapePointsMarkerContainer): EShapePointsMarker;\n}\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { Matrix } from "pixi.js";
|
|
7
|
-
import {
|
|
7
|
+
import { buildCircleIndex, buildCircleStep, buildCircleUv, buildCircleVertex, CIRCLE_INDEX_COUNT, CIRCLE_VERTEX_COUNT, CIRCLE_WORLD_SIZE } from "./build-circle";
|
|
8
8
|
import { BuilderMarkerBase } from "./builder-marker-base";
|
|
9
9
|
import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
|
|
10
10
|
import { BuilderFlag } from "./builder";
|
|
@@ -17,18 +17,15 @@ var BuilderMarkerCircle = /** @class */ (function (_super) {
|
|
|
17
17
|
}
|
|
18
18
|
BuilderMarkerCircle.prototype.init = function () {
|
|
19
19
|
var buffer = this.buffer;
|
|
20
|
-
buffer.updateClippings();
|
|
21
20
|
buffer.updateIndices();
|
|
22
21
|
var vertexOffset = this.vertexOffset;
|
|
23
|
-
buildCircleClipping(buffer.clippings, vertexOffset);
|
|
24
22
|
buildCircleIndex(buffer.indices, vertexOffset, this.indexOffset);
|
|
25
|
-
this.inited |= BuilderFlag.
|
|
23
|
+
this.inited |= BuilderFlag.INDEX;
|
|
26
24
|
};
|
|
27
25
|
BuilderMarkerCircle.prototype.update = function (shape) {
|
|
28
26
|
var buffer = this.buffer;
|
|
29
27
|
this.updateVertexAndStep(buffer, shape);
|
|
30
|
-
this.
|
|
31
|
-
this.updateColorStroke(buffer, shape);
|
|
28
|
+
this.updateColor(buffer, shape);
|
|
32
29
|
this.updateUv(buffer, shape);
|
|
33
30
|
};
|
|
34
31
|
BuilderMarkerCircle.prototype.updateVertexAndStep = function (buffer, shape) {
|
|
@@ -77,7 +74,7 @@ var BuilderMarkerCircle = /** @class */ (function (_super) {
|
|
|
77
74
|
buffer.updateVertices();
|
|
78
75
|
buffer.updateSteps();
|
|
79
76
|
buildCircleVertex(buffer.vertices, this.vertexOffset, 0, 0, sizeX, sizeY, strokeAlign, strokeWidth, internalTransform, CIRCLE_WORLD_SIZE);
|
|
80
|
-
buildCircleStep(buffer.steps,
|
|
77
|
+
buildCircleStep(buffer.steps, this.vertexOffset, strokeWidth, strokeStyle, CIRCLE_WORLD_SIZE);
|
|
81
78
|
}
|
|
82
79
|
};
|
|
83
80
|
BuilderMarkerCircle.prototype.updateUv = function (buffer, shape) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"builder-marker-circle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-marker-circle.ts"],"names":[],"mappings":"AAAA;;;GAGG;;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAEjC,OAAO,EACN,
|
|
1
|
+
{"version":3,"file":"builder-marker-circle.js","sourceRoot":"","sources":["../../../../../src/main/typescript/wcardinal/ui/shape/variant/builder-marker-circle.ts"],"names":[],"mappings":"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","sourcesContent":["/*\n * Copyright (C) 2019 Toshiba Corporation\n * SPDX-License-Identifier: Apache-2.0\n */\n\nimport { Matrix } from \"pixi.js\";\nimport { EShape } from \"../e-shape\";\nimport {\n\tbuildCircleIndex,\n\tbuildCircleStep,\n\tbuildCircleUv,\n\tbuildCircleVertex,\n\tCIRCLE_INDEX_COUNT,\n\tCIRCLE_VERTEX_COUNT,\n\tCIRCLE_WORLD_SIZE\n} from \"./build-circle\";\nimport { BuilderMarkerBase } from \"./builder-marker-base\";\nimport { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from \"./builders\";\nimport { BuilderBuffer, BuilderFlag } from \"./builder\";\n\nexport abstract class BuilderMarkerCircle extends BuilderMarkerBase {\n\tprotected static WORK?: Matrix;\n\tprotected pointId: number;\n\n\tconstructor(buffer: BuilderBuffer, vertexOffset: number, indexOffset: number) {\n\t\tsuper(buffer, vertexOffset, indexOffset, CIRCLE_VERTEX_COUNT, CIRCLE_INDEX_COUNT);\n\t\tthis.pointId = -1;\n\t}\n\n\toverride init(): void {\n\t\tconst buffer = this.buffer;\n\t\tbuffer.updateIndices();\n\t\tconst vertexOffset = this.vertexOffset;\n\t\tbuildCircleIndex(buffer.indices, vertexOffset, this.indexOffset);\n\t\tthis.inited |= BuilderFlag.INDEX;\n\t}\n\n\toverride update(shape: EShape): void {\n\t\tconst buffer = this.buffer;\n\t\tthis.updateVertexAndStep(buffer, shape);\n\t\tthis.updateColor(buffer, shape);\n\t\tthis.updateUv(buffer, shape);\n\t}\n\n\tprotected updateVertexAndStep(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst points = shape.points;\n\t\tif (points == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst container = points.getMarker();\n\t\tif (container == null) {\n\t\t\treturn;\n\t\t}\n\t\tconst marker = this.toMarker(container);\n\t\tconst size = marker.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 pointId = points.id;\n\t\tconst isPointChanged = pointId !== this.pointId;\n\n\t\tconst isNotInited = !(this.inited & BuilderFlag.VERTEX_AND_STEP);\n\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\tisSizeChanged ||\n\t\t\tisTransformChanged ||\n\t\t\tisStrokeChanged ||\n\t\t\tisPointChanged\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.VERTEX_AND_STEP;\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.pointId = pointId;\n\n\t\t\t// Buffer\n\t\t\tconst internalTransform = (BuilderMarkerCircle.WORK ??= new Matrix());\n\t\t\tinternalTransform.copyFrom(marker.transform).prepend(shape.transform.internalTransform);\n\t\t\tbuffer.updateVertices();\n\t\t\tbuffer.updateSteps();\n\t\t\tbuildCircleVertex(\n\t\t\t\tbuffer.vertices,\n\t\t\t\tthis.vertexOffset,\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\tinternalTransform,\n\t\t\t\tCIRCLE_WORLD_SIZE\n\t\t\t);\n\t\t\tbuildCircleStep(\n\t\t\t\tbuffer.steps,\n\t\t\t\tthis.vertexOffset,\n\t\t\t\tstrokeWidth,\n\t\t\t\tstrokeStyle,\n\t\t\t\tCIRCLE_WORLD_SIZE\n\t\t\t);\n\t\t}\n\t}\n\n\tprotected updateUv(buffer: BuilderBuffer, shape: EShape): void {\n\t\tconst texture = toTexture(shape);\n\t\tconst textureTransformId = toTextureTransformId(texture);\n\t\tconst isNotInited = !(this.inited & BuilderFlag.UV);\n\t\tif (\n\t\t\tisNotInited ||\n\t\t\ttexture !== this.texture ||\n\t\t\ttextureTransformId !== this.textureTransformId\n\t\t) {\n\t\t\tthis.inited |= BuilderFlag.UV;\n\t\t\tthis.texture = texture;\n\t\t\tthis.textureTransformId = textureTransformId;\n\n\t\t\tbuffer.updateUvs();\n\t\t\tconst textureUvs = toTextureUvs(texture);\n\t\t\tbuildCircleUv(buffer.uvs, this.vertexOffset, textureUvs);\n\t\t}\n\t}\n}\n"]}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { __extends } from "tslib";
|
|
6
6
|
import { Matrix } from "pixi.js";
|
|
7
|
-
import {
|
|
7
|
+
import { buildRectangleIndex, buildRectangleStep, buildRectangleUv, buildRectangleVertex, RECTANGLE_INDEX_COUNT, RECTANGLE_VERTEX_COUNT, RECTANGLE_WORLD_SIZE } from "./build-rectangle";
|
|
8
8
|
import { BuilderMarkerBase } from "./builder-marker-base";
|
|
9
9
|
import { toTexture, toTextureTransformId, toTextureUvs, toTransformLocalId } from "./builders";
|
|
10
10
|
import { BuilderFlag } from "./builder";
|
|
@@ -23,11 +23,10 @@ var BuilderMarkerRectangle = /** @class */ (function (_super) {
|
|
|
23
23
|
};
|
|
24
24
|
BuilderMarkerRectangle.prototype.update = function (shape) {
|
|
25
25
|
var buffer = this.buffer;
|
|
26
|
-
this.
|
|
27
|
-
this.
|
|
28
|
-
this.updateColorStroke(buffer, shape);
|
|
26
|
+
this.updateVertexStepAndUv(buffer, shape);
|
|
27
|
+
this.updateColor(buffer, shape);
|
|
29
28
|
};
|
|
30
|
-
BuilderMarkerRectangle.prototype.
|
|
29
|
+
BuilderMarkerRectangle.prototype.updateVertexStepAndUv = function (buffer, shape) {
|
|
31
30
|
var _a;
|
|
32
31
|
var points = shape.points;
|
|
33
32
|
if (points == null) {
|
|
@@ -59,13 +58,13 @@ var BuilderMarkerRectangle = /** @class */ (function (_super) {
|
|
|
59
58
|
var isVertexChanged = isSizeChanged || isStrokeChanged;
|
|
60
59
|
var pointId = points.id;
|
|
61
60
|
var isPointChanged = pointId !== this.pointId;
|
|
62
|
-
var isNotInited = !(this.inited & BuilderFlag.
|
|
61
|
+
var isNotInited = !(this.inited & BuilderFlag.VERTEX_STEP_AND_UV);
|
|
63
62
|
if (isNotInited ||
|
|
64
63
|
isVertexChanged ||
|
|
65
64
|
isTransformChanged ||
|
|
66
65
|
isTextureChanged ||
|
|
67
66
|
isPointChanged) {
|
|
68
|
-
this.inited |= BuilderFlag.
|
|
67
|
+
this.inited |= BuilderFlag.VERTEX_STEP_AND_UV;
|
|
69
68
|
this.sizeX = sizeX;
|
|
70
69
|
this.sizeY = sizeY;
|
|
71
70
|
this.transformLocalId = transformLocalId;
|
|
@@ -86,15 +85,10 @@ var BuilderMarkerRectangle = /** @class */ (function (_super) {
|
|
|
86
85
|
buffer.updateSteps();
|
|
87
86
|
buildRectangleStep(voffset, buffer.steps, strokeWidth, strokeSide, strokeStyle, RECTANGLE_WORLD_SIZE);
|
|
88
87
|
}
|
|
89
|
-
// Clippings
|
|
90
|
-
if (isNotInited || isVertexChanged) {
|
|
91
|
-
buffer.updateClippings();
|
|
92
|
-
buildRectangleClipping(buffer.clippings, voffset, RECTANGLE_WORLD_SIZE);
|
|
93
|
-
}
|
|
94
88
|
// UVs
|
|
95
89
|
if (isNotInited || isVertexChanged || isTextureChanged) {
|
|
96
90
|
buffer.updateUvs();
|
|
97
|
-
buildRectangleUv(buffer.uvs, voffset, toTextureUvs(texture)
|
|
91
|
+
buildRectangleUv(buffer.uvs, voffset, toTextureUvs(texture));
|
|
98
92
|
}
|
|
99
93
|
}
|
|
100
94
|
};
|