@next2d/webgl 1.18.12 → 3.0.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 (611) hide show
  1. package/README.md +206 -5
  2. package/package.json +11 -18
  3. package/src/AtlasManager/service/AtlasManagerCreateNodeService.d.ts +12 -0
  4. package/src/AtlasManager/service/AtlasManagerCreateNodeService.js +41 -0
  5. package/src/AtlasManager/service/AtlasManagerRemoveNodeService.d.ts +11 -0
  6. package/src/AtlasManager/service/AtlasManagerRemoveNodeService.js +17 -0
  7. package/src/AtlasManager/usecase/AtlasManagerResetUseCase.d.ts +9 -0
  8. package/src/AtlasManager/usecase/AtlasManagerResetUseCase.js +19 -0
  9. package/src/AtlasManager.d.ts +16 -0
  10. package/src/AtlasManager.js +59 -0
  11. package/src/BezierConverter/service/BezierConverterSplit2CubicService.d.ts +19 -0
  12. package/src/BezierConverter/service/BezierConverterSplit2CubicService.js +41 -0
  13. package/src/BezierConverter/service/BezierConverterSplit2QuadService.d.ts +18 -0
  14. package/src/BezierConverter/service/BezierConverterSplit2QuadService.js +31 -0
  15. package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.d.ts +18 -0
  16. package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.js +193 -0
  17. package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.d.ts +17 -0
  18. package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.js +29 -0
  19. package/src/BezierConverter.d.ts +96 -0
  20. package/src/BezierConverter.js +166 -0
  21. package/src/Bitmap.d.ts +8 -0
  22. package/src/Bitmap.js +8 -0
  23. package/src/Blend/service/BlendAddService.d.ts +9 -0
  24. package/src/Blend/service/BlendAddService.js +16 -0
  25. package/src/Blend/service/BlendAlphaService.d.ts +9 -0
  26. package/src/Blend/service/BlendAlphaService.js +16 -0
  27. package/src/Blend/service/BlendEraseService.d.ts +9 -0
  28. package/src/Blend/service/BlendEraseService.js +16 -0
  29. package/src/Blend/service/BlendOneZeroService.d.ts +9 -0
  30. package/src/Blend/service/BlendOneZeroService.js +16 -0
  31. package/src/Blend/service/BlendResetService.d.ts +9 -0
  32. package/src/Blend/service/BlendResetService.js +16 -0
  33. package/src/Blend/service/BlendScreenService.d.ts +9 -0
  34. package/src/Blend/service/BlendScreenService.js +16 -0
  35. package/src/Blend/service/BlendSourceAtopService.d.ts +9 -0
  36. package/src/Blend/service/BlendSourceAtopService.js +16 -0
  37. package/src/Blend/service/BlendSourceInService.d.ts +9 -0
  38. package/src/Blend/service/BlendSourceInService.js +16 -0
  39. package/src/Blend/usecase/BlendBootUseCase.d.ts +9 -0
  40. package/src/Blend/usecase/BlendBootUseCase.js +14 -0
  41. package/src/Blend/usecase/BlendDrawFilterToMainUseCase.d.ts +14 -0
  42. package/src/Blend/usecase/BlendDrawFilterToMainUseCase.js +79 -0
  43. package/src/Blend/usecase/BlendOperationUseCase.d.ts +11 -0
  44. package/src/Blend/usecase/BlendOperationUseCase.js +37 -0
  45. package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.d.ts +9 -0
  46. package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.js +13 -0
  47. package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.d.ts +9 -0
  48. package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.js +24 -0
  49. package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.d.ts +16 -0
  50. package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.js +149 -0
  51. package/src/Blend.d.ts +5 -0
  52. package/src/Blend.js +8 -0
  53. package/src/ColorBufferObject/service/ColorBufferObjectCreateService.d.ts +10 -0
  54. package/src/ColorBufferObject/service/ColorBufferObjectCreateService.js +27 -0
  55. package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.d.ts +10 -0
  56. package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.js +24 -0
  57. package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.d.ts +11 -0
  58. package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.js +28 -0
  59. package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.d.ts +12 -0
  60. package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.js +32 -0
  61. package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.d.ts +11 -0
  62. package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.js +19 -0
  63. package/src/ColorBufferObject.d.ts +9 -0
  64. package/src/ColorBufferObject.js +8 -0
  65. package/src/Context/service/ContextBeginNodeRenderingService.d.ts +13 -0
  66. package/src/Context/service/ContextBeginNodeRenderingService.js +22 -0
  67. package/src/Context/service/ContextCreateImageBitmapService.d.ts +11 -0
  68. package/src/Context/service/ContextCreateImageBitmapService.js +78 -0
  69. package/src/Context/service/ContextEndNodeRenderingService.d.ts +9 -0
  70. package/src/Context/service/ContextEndNodeRenderingService.js +12 -0
  71. package/src/Context/service/ContextFillBackgroundColorService.d.ts +13 -0
  72. package/src/Context/service/ContextFillBackgroundColorService.js +18 -0
  73. package/src/Context/service/ContextResetService.d.ts +11 -0
  74. package/src/Context/service/ContextResetService.js +14 -0
  75. package/src/Context/service/ContextResetStyleService.d.ts +11 -0
  76. package/src/Context/service/ContextResetStyleService.js +13 -0
  77. package/src/Context/service/ContextRestoreService.d.ts +11 -0
  78. package/src/Context/service/ContextRestoreService.js +23 -0
  79. package/src/Context/service/ContextSaveService.d.ts +11 -0
  80. package/src/Context/service/ContextSaveService.js +13 -0
  81. package/src/Context/service/ContextSetTransformService.d.ts +16 -0
  82. package/src/Context/service/ContextSetTransformService.js +23 -0
  83. package/src/Context/service/ContextTransformService.d.ts +17 -0
  84. package/src/Context/service/ContextTransformService.js +29 -0
  85. package/src/Context/service/ContextUpdateBackgroundColorService.d.ts +15 -0
  86. package/src/Context/service/ContextUpdateBackgroundColorService.js +20 -0
  87. package/src/Context/service/ContextUpdateTransferBoundsService.d.ts +11 -0
  88. package/src/Context/service/ContextUpdateTransferBoundsService.js +21 -0
  89. package/src/Context/service/ContextUseGridService.d.ts +10 -0
  90. package/src/Context/service/ContextUseGridService.js +14 -0
  91. package/src/Context/usecase/ContextApplyFilterUseCase.d.ts +21 -0
  92. package/src/Context/usecase/ContextApplyFilterUseCase.js +206 -0
  93. package/src/Context/usecase/ContextBindUseCase.d.ts +13 -0
  94. package/src/Context/usecase/ContextBindUseCase.js +42 -0
  95. package/src/Context/usecase/ContextBitmapFillUseCase.d.ts +15 -0
  96. package/src/Context/usecase/ContextBitmapFillUseCase.js +31 -0
  97. package/src/Context/usecase/ContextBitmapStrokeUseCase.d.ts +15 -0
  98. package/src/Context/usecase/ContextBitmapStrokeUseCase.js +31 -0
  99. package/src/Context/usecase/ContextClearRectUseCase.d.ts +13 -0
  100. package/src/Context/usecase/ContextClearRectUseCase.js +20 -0
  101. package/src/Context/usecase/ContextClipUseCase.d.ts +9 -0
  102. package/src/Context/usecase/ContextClipUseCase.js +66 -0
  103. package/src/Context/usecase/ContextContainerBeginLayerUseCase.d.ts +18 -0
  104. package/src/Context/usecase/ContextContainerBeginLayerUseCase.js +31 -0
  105. package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.d.ts +16 -0
  106. package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.js +36 -0
  107. package/src/Context/usecase/ContextContainerEndLayerUseCase.d.ts +18 -0
  108. package/src/Context/usecase/ContextContainerEndLayerUseCase.js +171 -0
  109. package/src/Context/usecase/ContextDrawElementUseCase.d.ts +12 -0
  110. package/src/Context/usecase/ContextDrawElementUseCase.js +26 -0
  111. package/src/Context/usecase/ContextDrawFillUseCase.d.ts +9 -0
  112. package/src/Context/usecase/ContextDrawFillUseCase.js +73 -0
  113. package/src/Context/usecase/ContextDrawPixelsUseCase.d.ts +12 -0
  114. package/src/Context/usecase/ContextDrawPixelsUseCase.js +26 -0
  115. package/src/Context/usecase/ContextFillUseCase.d.ts +10 -0
  116. package/src/Context/usecase/ContextFillUseCase.js +23 -0
  117. package/src/Context/usecase/ContextGradientFillUseCase.d.ts +15 -0
  118. package/src/Context/usecase/ContextGradientFillUseCase.js +34 -0
  119. package/src/Context/usecase/ContextGradientStrokeUseCase.d.ts +15 -0
  120. package/src/Context/usecase/ContextGradientStrokeUseCase.js +34 -0
  121. package/src/Context/usecase/ContextLinearGradientFillUseCase.d.ts +14 -0
  122. package/src/Context/usecase/ContextLinearGradientFillUseCase.js +58 -0
  123. package/src/Context/usecase/ContextNormalFillUseCase.d.ts +14 -0
  124. package/src/Context/usecase/ContextNormalFillUseCase.js +40 -0
  125. package/src/Context/usecase/ContextPatternBitmapFillUseCase.d.ts +14 -0
  126. package/src/Context/usecase/ContextPatternBitmapFillUseCase.js +54 -0
  127. package/src/Context/usecase/ContextRadialGradientFillUseCase.d.ts +14 -0
  128. package/src/Context/usecase/ContextRadialGradientFillUseCase.js +61 -0
  129. package/src/Context/usecase/ContextResizeUseCase.d.ts +14 -0
  130. package/src/Context/usecase/ContextResizeUseCase.js +43 -0
  131. package/src/Context/usecase/ContextStrokeUseCase.d.ts +9 -0
  132. package/src/Context/usecase/ContextStrokeUseCase.js +22 -0
  133. package/src/Context.d.ts +76 -0
  134. package/src/Context.js +388 -0
  135. package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.d.ts +22 -0
  136. package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.js +105 -0
  137. package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.d.ts +37 -0
  138. package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.js +108 -0
  139. package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.d.ts +16 -0
  140. package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.js +134 -0
  141. package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.d.ts +13 -0
  142. package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.js +24 -0
  143. package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.d.ts +12 -0
  144. package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.js +38 -0
  145. package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.d.ts +20 -0
  146. package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.js +49 -0
  147. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.d.ts +23 -0
  148. package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.js +53 -0
  149. package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.d.ts +23 -0
  150. package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.js +84 -0
  151. package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.d.ts +20 -0
  152. package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.js +51 -0
  153. package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.d.ts +23 -0
  154. package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.js +105 -0
  155. package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.d.ts +23 -0
  156. package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.js +81 -0
  157. package/src/Filter.d.ts +45 -0
  158. package/src/Filter.js +53 -0
  159. package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.d.ts +11 -0
  160. package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.js +35 -0
  161. package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.d.ts +10 -0
  162. package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.js +26 -0
  163. package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.d.ts +9 -0
  164. package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.js +31 -0
  165. package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.d.ts +9 -0
  166. package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.js +24 -0
  167. package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.d.ts +9 -0
  168. package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.js +17 -0
  169. package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.d.ts +13 -0
  170. package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.js +41 -0
  171. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.d.ts +14 -0
  172. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.js +41 -0
  173. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.d.ts +12 -0
  174. package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.js +36 -0
  175. package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.d.ts +12 -0
  176. package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.js +30 -0
  177. package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.d.ts +11 -0
  178. package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.js +25 -0
  179. package/src/FrameBufferManager.d.ts +18 -0
  180. package/src/FrameBufferManager.js +38 -0
  181. package/src/Gradient.d.ts +8 -0
  182. package/src/Gradient.js +8 -0
  183. package/src/Grid.d.ts +14 -0
  184. package/src/Grid.js +16 -0
  185. package/src/Mask/service/MaskBeginMaskService.d.ts +9 -0
  186. package/src/Mask/service/MaskBeginMaskService.js +27 -0
  187. package/src/Mask/service/MaskEndMaskService.d.ts +9 -0
  188. package/src/Mask/service/MaskEndMaskService.js +26 -0
  189. package/src/Mask/service/MaskSetMaskBoundsService.d.ts +13 -0
  190. package/src/Mask/service/MaskSetMaskBoundsService.js +26 -0
  191. package/src/Mask/service/MaskUnionMaskService.d.ts +9 -0
  192. package/src/Mask/service/MaskUnionMaskService.js +32 -0
  193. package/src/Mask/usecase/MaskBindUseCase.d.ts +10 -0
  194. package/src/Mask/usecase/MaskBindUseCase.js +25 -0
  195. package/src/Mask/usecase/MaskLeaveMaskUseCase.d.ts +9 -0
  196. package/src/Mask/usecase/MaskLeaveMaskUseCase.js +53 -0
  197. package/src/Mask.d.ts +29 -0
  198. package/src/Mask.js +42 -0
  199. package/src/Mesh/service/MeshCalculateNormalVectorService.d.ts +13 -0
  200. package/src/Mesh/service/MeshCalculateNormalVectorService.js +18 -0
  201. package/src/Mesh/service/MeshCalculateNormalizeBezierService.d.ts +11 -0
  202. package/src/Mesh/service/MeshCalculateNormalizeBezierService.js +15 -0
  203. package/src/Mesh/service/MeshFillGenerateService.d.ts +23 -0
  204. package/src/Mesh/service/MeshFillGenerateService.js +197 -0
  205. package/src/Mesh/service/MeshFindOverlappingPathsService.d.ts +14 -0
  206. package/src/Mesh/service/MeshFindOverlappingPathsService.js +32 -0
  207. package/src/Mesh/service/MeshGenerateCalculateRoundCapService.d.ts +13 -0
  208. package/src/Mesh/service/MeshGenerateCalculateRoundCapService.js +51 -0
  209. package/src/Mesh/service/MeshGenerateCalculateSquareCapService.d.ts +13 -0
  210. package/src/Mesh/service/MeshGenerateCalculateSquareCapService.js +64 -0
  211. package/src/Mesh/service/MeshGetQuadraticBezierPointService.d.ts +14 -0
  212. package/src/Mesh/service/MeshGetQuadraticBezierPointService.js +18 -0
  213. package/src/Mesh/service/MeshGetQuadraticBezierTangentService.d.ts +14 -0
  214. package/src/Mesh/service/MeshGetQuadraticBezierTangentService.js +18 -0
  215. package/src/Mesh/service/MeshIsPointInsideRectangleService.d.ts +12 -0
  216. package/src/Mesh/service/MeshIsPointInsideRectangleService.js +38 -0
  217. package/src/Mesh/service/MeshLerpService.d.ts +13 -0
  218. package/src/Mesh/service/MeshLerpService.js +17 -0
  219. package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.d.ts +14 -0
  220. package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.js +35 -0
  221. package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.d.ts +15 -0
  222. package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.js +51 -0
  223. package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.d.ts +14 -0
  224. package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.js +42 -0
  225. package/src/Mesh/usecase/MeshFillGenerateUseCase.d.ts +12 -0
  226. package/src/Mesh/usecase/MeshFillGenerateUseCase.js +44 -0
  227. package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.d.ts +15 -0
  228. package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.js +52 -0
  229. package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.d.ts +17 -0
  230. package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.js +84 -0
  231. package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.d.ts +15 -0
  232. package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.js +63 -0
  233. package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.d.ts +12 -0
  234. package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.js +124 -0
  235. package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.d.ts +14 -0
  236. package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.js +32 -0
  237. package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.d.ts +14 -0
  238. package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.js +28 -0
  239. package/src/Mesh/usecase/MeshStrokeGenerateUseCase.d.ts +12 -0
  240. package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +29 -0
  241. package/src/Mesh.d.ts +74 -0
  242. package/src/Mesh.js +126 -0
  243. package/src/PathCommand/service/PathCommandBeginPathService.d.ts +9 -0
  244. package/src/PathCommand/service/PathCommandBeginPathService.js +16 -0
  245. package/src/PathCommand/service/PathCommandCreateRectVerticesService.d.ts +14 -0
  246. package/src/PathCommand/service/PathCommandCreateRectVerticesService.js +16 -0
  247. package/src/PathCommand/service/PathCommandEqualsToLastPointService.d.ts +11 -0
  248. package/src/PathCommand/service/PathCommandEqualsToLastPointService.js +17 -0
  249. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.d.ts +9 -0
  250. package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.js +18 -0
  251. package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.d.ts +12 -0
  252. package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.js +15 -0
  253. package/src/PathCommand/usecase/PathCommandArcUseCase.d.ts +12 -0
  254. package/src/PathCommand/usecase/PathCommandArcUseCase.js +20 -0
  255. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.d.ts +15 -0
  256. package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.js +38 -0
  257. package/src/PathCommand/usecase/PathCommandClosePathUseCase.d.ts +9 -0
  258. package/src/PathCommand/usecase/PathCommandClosePathUseCase.js +22 -0
  259. package/src/PathCommand/usecase/PathCommandLineToUseCase.d.ts +11 -0
  260. package/src/PathCommand/usecase/PathCommandLineToUseCase.js +26 -0
  261. package/src/PathCommand/usecase/PathCommandMoveToUseCase.d.ts +13 -0
  262. package/src/PathCommand/usecase/PathCommandMoveToUseCase.js +31 -0
  263. package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.d.ts +13 -0
  264. package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.js +26 -0
  265. package/src/PathCommand.d.ts +27 -0
  266. package/src/PathCommand.js +46 -0
  267. package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.d.ts +1 -0
  268. package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceBlurFilter.js +5 -18
  269. package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.d.ts +1 -0
  270. package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceColorMatrixFilter.js +4 -16
  271. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.d.ts +1 -0
  272. package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.js +62 -0
  273. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.d.ts +1 -0
  274. package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.js +89 -0
  275. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.d.ts +1 -0
  276. package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.js +174 -0
  277. package/src/Shader/Fragment/FragmentShaderLibrary.d.ts +2 -0
  278. package/src/Shader/Fragment/FragmentShaderLibrary.js +20 -0
  279. package/src/Shader/Fragment/FragmentShaderSource.d.ts +5 -0
  280. package/src/Shader/Fragment/FragmentShaderSource.js +76 -0
  281. package/src/Shader/Fragment/FragmentShaderSourceBlend.d.ts +1 -0
  282. package/src/Shader/Fragment/FragmentShaderSourceBlend.js +198 -0
  283. package/src/Shader/Fragment/FragmentShaderSourceGradient.d.ts +1 -0
  284. package/src/Shader/Fragment/FragmentShaderSourceGradient.js +68 -0
  285. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.d.ts +1 -0
  286. package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.js +42 -0
  287. package/src/Shader/Fragment/FragmentShaderSourceTexture.d.ts +2 -0
  288. package/src/Shader/Fragment/FragmentShaderSourceTexture.js +48 -0
  289. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.d.ts +16 -0
  290. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.js +30 -0
  291. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.d.ts +15 -0
  292. package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.js +29 -0
  293. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.d.ts +13 -0
  294. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.js +37 -0
  295. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.d.ts +16 -0
  296. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.js +51 -0
  297. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.d.ts +13 -0
  298. package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.js +20 -0
  299. package/src/Shader/GradientLUTGenerator.d.ts +59 -0
  300. package/src/Shader/GradientLUTGenerator.js +97 -0
  301. package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.d.ts +11 -0
  302. package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.js +20 -0
  303. package/src/Shader/ShaderInstancedManager.d.ts +6 -0
  304. package/src/Shader/ShaderInstancedManager.js +17 -0
  305. package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.d.ts +11 -0
  306. package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.js +23 -0
  307. package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.d.ts +12 -0
  308. package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.js +39 -0
  309. package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.d.ts +12 -0
  310. package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.js +62 -0
  311. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.d.ts +14 -0
  312. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.js +85 -0
  313. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.d.ts +35 -0
  314. package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.js +94 -0
  315. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.d.ts +11 -0
  316. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.js +14 -0
  317. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.d.ts +19 -0
  318. package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.js +33 -0
  319. package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.d.ts +16 -0
  320. package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.js +30 -0
  321. package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.d.ts +12 -0
  322. package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.js +35 -0
  323. package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.d.ts +21 -0
  324. package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.js +42 -0
  325. package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.d.ts +24 -0
  326. package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.js +44 -0
  327. package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.d.ts +12 -0
  328. package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.js +55 -0
  329. package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.d.ts +17 -0
  330. package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.js +97 -0
  331. package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.d.ts +11 -0
  332. package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.js +54 -0
  333. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.d.ts +13 -0
  334. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.js +29 -0
  335. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.d.ts +13 -0
  336. package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.js +38 -0
  337. package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.d.ts +13 -0
  338. package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.js +25 -0
  339. package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.d.ts +11 -0
  340. package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.js +25 -0
  341. package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.d.ts +11 -0
  342. package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.js +21 -0
  343. package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.d.ts +13 -0
  344. package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.js +24 -0
  345. package/src/Shader/ShaderManager.d.ts +10 -0
  346. package/src/Shader/ShaderManager.js +51 -0
  347. package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.d.ts +12 -0
  348. package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.js +26 -0
  349. package/src/Shader/Variants/BitmapVariants.d.ts +9 -0
  350. package/src/Shader/Variants/BitmapVariants.js +8 -0
  351. package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.d.ts +13 -0
  352. package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.js +23 -0
  353. package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.d.ts +10 -0
  354. package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.js +21 -0
  355. package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.d.ts +11 -0
  356. package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.js +22 -0
  357. package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.d.ts +10 -0
  358. package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.js +21 -0
  359. package/src/Shader/Variants/BlendVariants.d.ts +10 -0
  360. package/src/Shader/Variants/BlendVariants.js +8 -0
  361. package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.d.ts +18 -0
  362. package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.js +49 -0
  363. package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.d.ts +11 -0
  364. package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.js +22 -0
  365. package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.d.ts +10 -0
  366. package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.js +21 -0
  367. package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.d.ts +14 -0
  368. package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.js +30 -0
  369. package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.d.ts +13 -0
  370. package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.js +25 -0
  371. package/src/Shader/Variants/FilterVariants.d.ts +9 -0
  372. package/src/Shader/Variants/FilterVariants.js +8 -0
  373. package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.d.ts +13 -0
  374. package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.js +19 -0
  375. package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.d.ts +14 -0
  376. package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.js +28 -0
  377. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.d.ts +12 -0
  378. package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.js +29 -0
  379. package/src/Shader/Variants/GradientLUTVariants.d.ts +30 -0
  380. package/src/Shader/Variants/GradientLUTVariants.js +71 -0
  381. package/src/Shader/Variants/GradientVariants.d.ts +9 -0
  382. package/src/Shader/Variants/GradientVariants.js +8 -0
  383. package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.d.ts +11 -0
  384. package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.js +22 -0
  385. package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.d.ts +10 -0
  386. package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.js +21 -0
  387. package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.d.ts +11 -0
  388. package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.js +22 -0
  389. package/src/Shader/Variants/ShapeVariants.d.ts +9 -0
  390. package/src/Shader/Variants/ShapeVariants.js +8 -0
  391. package/src/Shader/Vertex/VertexShaderLibrary.d.ts +2 -0
  392. package/{dist/shader/vertex → src/Shader/Vertex}/VertexShaderLibrary.js +15 -42
  393. package/src/Shader/Vertex/VertexShaderSource.d.ts +5 -0
  394. package/src/Shader/Vertex/VertexShaderSource.js +116 -0
  395. package/src/Shader/Vertex/VertexShaderSourceFill.d.ts +11 -0
  396. package/src/Shader/Vertex/VertexShaderSourceFill.js +101 -0
  397. package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.d.ts +1 -0
  398. package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.js +8 -0
  399. package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.d.ts +1 -0
  400. package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.js +8 -0
  401. package/src/Stencil/service/StencilResetService.d.ts +9 -0
  402. package/src/Stencil/service/StencilResetService.js +14 -0
  403. package/src/Stencil/service/StencilSetFillModeService.d.ts +1 -0
  404. package/src/Stencil/service/StencilSetFillModeService.js +13 -0
  405. package/src/Stencil/service/StencilSetMaskModeService.d.ts +1 -0
  406. package/src/Stencil/service/StencilSetMaskModeService.js +14 -0
  407. package/src/Stencil.d.ts +9 -0
  408. package/src/Stencil.js +17 -0
  409. package/src/StencilBufferObject/service/StencilBufferObjectCreateService.d.ts +10 -0
  410. package/src/StencilBufferObject/service/StencilBufferObjectCreateService.js +24 -0
  411. package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.d.ts +11 -0
  412. package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.js +23 -0
  413. package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.d.ts +13 -0
  414. package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.js +36 -0
  415. package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.d.ts +12 -0
  416. package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.js +27 -0
  417. package/src/StencilBufferObject.d.ts +9 -0
  418. package/src/StencilBufferObject.js +8 -0
  419. package/src/TextureManager/service/TextureManagerBindService.d.ts +14 -0
  420. package/src/TextureManager/service/TextureManagerBindService.js +33 -0
  421. package/src/TextureManager/service/TextureManagerCreateTextureObjectService.d.ts +12 -0
  422. package/src/TextureManager/service/TextureManagerCreateTextureObjectService.js +26 -0
  423. package/src/TextureManager/service/TextureManagerInitializeBindService.d.ts +12 -0
  424. package/src/TextureManager/service/TextureManagerInitializeBindService.js +25 -0
  425. package/src/TextureManager/usecase/TextureManagerBind012UseCase.d.ts +14 -0
  426. package/src/TextureManager/usecase/TextureManagerBind012UseCase.js +19 -0
  427. package/src/TextureManager/usecase/TextureManagerBind01UseCase.d.ts +13 -0
  428. package/src/TextureManager/usecase/TextureManagerBind01UseCase.js +18 -0
  429. package/src/TextureManager/usecase/TextureManagerBind02UseCase.d.ts +13 -0
  430. package/src/TextureManager/usecase/TextureManagerBind02UseCase.js +18 -0
  431. package/src/TextureManager/usecase/TextureManagerBind0UseCase.d.ts +12 -0
  432. package/src/TextureManager/usecase/TextureManagerBind0UseCase.js +17 -0
  433. package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.d.ts +10 -0
  434. package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.js +25 -0
  435. package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.d.ts +14 -0
  436. package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.js +19 -0
  437. package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.d.ts +14 -0
  438. package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.js +19 -0
  439. package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.d.ts +14 -0
  440. package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.js +49 -0
  441. package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.d.ts +14 -0
  442. package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.js +19 -0
  443. package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.d.ts +11 -0
  444. package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.js +13 -0
  445. package/src/TextureManager.d.ts +25 -0
  446. package/src/TextureManager.js +26 -0
  447. package/src/VertexArrayObject/service/VertexArrayObjectBindService.d.ts +11 -0
  448. package/src/VertexArrayObject/service/VertexArrayObjectBindService.js +26 -0
  449. package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.d.ts +10 -0
  450. package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.js +17 -0
  451. package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.d.ts +11 -0
  452. package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.js +16 -0
  453. package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.d.ts +9 -0
  454. package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.js +29 -0
  455. package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.d.ts +10 -0
  456. package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.js +27 -0
  457. package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.d.ts +10 -0
  458. package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.js +18 -0
  459. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.d.ts +12 -0
  460. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.js +27 -0
  461. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.d.ts +10 -0
  462. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.js +53 -0
  463. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.d.ts +10 -0
  464. package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.js +24 -0
  465. package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.d.ts +10 -0
  466. package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.js +33 -0
  467. package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.d.ts +12 -0
  468. package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.js +34 -0
  469. package/src/VertexArrayObject.d.ts +71 -0
  470. package/src/VertexArrayObject.js +87 -0
  471. package/src/WebGLUtil.d.ts +34 -0
  472. package/src/WebGLUtil.js +175 -0
  473. package/src/index.d.ts +1 -0
  474. package/src/index.js +1 -0
  475. package/src/interface/IAttachmentObject.d.ts +14 -0
  476. package/src/interface/IBlendMode.d.ts +1 -0
  477. package/{dist/interface/BoundsImpl.d.ts → src/interface/IBounds.d.ts} +1 -1
  478. package/{dist/interface/ClipObjectImpl.d.ts → src/interface/IClipObject.d.ts} +1 -1
  479. package/src/interface/IColorBufferObject.d.ts +9 -0
  480. package/src/interface/ICubicConverterReturnObject.d.ts +4 -0
  481. package/src/interface/IFillMesh.d.ts +4 -0
  482. package/src/interface/IFillType.d.ts +1 -0
  483. package/src/interface/IGradientType.d.ts +1 -0
  484. package/{dist/interface/GridImpl.d.ts → src/interface/IGrid.d.ts} +1 -1
  485. package/src/interface/IInterpolationMethod.d.ts +1 -0
  486. package/src/interface/IJointStyle.d.ts +1 -0
  487. package/src/interface/IPath.d.ts +1 -0
  488. package/{dist/interface/PointImpl.d.ts → src/interface/IPoint.d.ts} +1 -1
  489. package/src/interface/IProgramObject.d.ts +4 -0
  490. package/src/interface/ISpreadMethod.d.ts +1 -0
  491. package/src/interface/IStencilBufferObject.d.ts +8 -0
  492. package/src/interface/IStrokeVertexArrayObject.d.ts +6 -0
  493. package/src/interface/IStrokeVertexArrayObject.js +1 -0
  494. package/src/interface/ITextureObject.d.ts +8 -0
  495. package/src/interface/ITextureObject.js +1 -0
  496. package/{dist/interface/UniformDataImpl.d.ts → src/interface/IUniformData.d.ts} +1 -1
  497. package/src/interface/IUniformData.js +1 -0
  498. package/src/interface/IVertexArrayObject.d.ts +6 -0
  499. package/src/interface/IVertexArrayObject.js +1 -0
  500. package/dist/BezierConverter.d.ts +0 -59
  501. package/dist/BezierConverter.js +0 -106
  502. package/dist/CanvasGradientToWebGL.d.ts +0 -96
  503. package/dist/CanvasGradientToWebGL.js +0 -181
  504. package/dist/CanvasPatternToWebGL.d.ts +0 -31
  505. package/dist/CanvasPatternToWebGL.js +0 -50
  506. package/dist/CanvasToWebGLContext.d.ts +0 -650
  507. package/dist/CanvasToWebGLContext.js +0 -1600
  508. package/dist/CanvasToWebGLContextBlend.d.ts +0 -175
  509. package/dist/CanvasToWebGLContextBlend.js +0 -483
  510. package/dist/CanvasToWebGLContextGrid.d.ts +0 -74
  511. package/dist/CanvasToWebGLContextGrid.js +0 -283
  512. package/dist/CanvasToWebGLContextMask.d.ts +0 -107
  513. package/dist/CanvasToWebGLContextMask.js +0 -411
  514. package/dist/CanvasToWebGLContextPath.d.ts +0 -111
  515. package/dist/CanvasToWebGLContextPath.js +0 -210
  516. package/dist/CanvasToWebGLContextStyle.d.ts +0 -78
  517. package/dist/CanvasToWebGLContextStyle.js +0 -137
  518. package/dist/ColorBufferPool.d.ts +0 -58
  519. package/dist/ColorBufferPool.js +0 -134
  520. package/dist/Const.d.ts +0 -12
  521. package/dist/Const.js +0 -14
  522. package/dist/FrameBufferManager.d.ts +0 -174
  523. package/dist/FrameBufferManager.js +0 -467
  524. package/dist/StencilBufferPool.d.ts +0 -56
  525. package/dist/StencilBufferPool.js +0 -142
  526. package/dist/TextureManager.d.ts +0 -180
  527. package/dist/TextureManager.js +0 -531
  528. package/dist/VertexArrayObjectManager.d.ts +0 -115
  529. package/dist/VertexArrayObjectManager.js +0 -328
  530. package/dist/WebGLFillMeshGenerator.d.ts +0 -31
  531. package/dist/WebGLFillMeshGenerator.js +0 -101
  532. package/dist/WebGLStrokeMeshGenerator.d.ts +0 -183
  533. package/dist/WebGLStrokeMeshGenerator.js +0 -504
  534. package/dist/index.d.ts +0 -6
  535. package/dist/index.js +0 -6
  536. package/dist/interface/AttachmentImpl.d.ts +0 -11
  537. package/dist/interface/BlendModeImpl.d.ts +0 -1
  538. package/dist/interface/CachePositionImpl.d.ts +0 -11
  539. package/dist/interface/CapsStyleImpl.d.ts +0 -1
  540. package/dist/interface/FillMeshImpl.d.ts +0 -5
  541. package/dist/interface/GradientTypeImpl.d.ts +0 -1
  542. package/dist/interface/IndexRangeImpl.d.ts +0 -4
  543. package/dist/interface/InterpolationMethodImpl.d.ts +0 -1
  544. package/dist/interface/JointStyleImpl.d.ts +0 -1
  545. package/dist/interface/SpreadMethodImpl.d.ts +0 -1
  546. package/dist/interface/StrokeMethImpl.d.ts +0 -4
  547. package/dist/interface/VerticesImpl.d.ts +0 -1
  548. package/dist/shader/CanvasToWebGLShader.d.ts +0 -99
  549. package/dist/shader/CanvasToWebGLShader.js +0 -213
  550. package/dist/shader/CanvasToWebGLShaderList.d.ts +0 -70
  551. package/dist/shader/CanvasToWebGLShaderList.js +0 -109
  552. package/dist/shader/GradientLUTGenerator.d.ts +0 -36
  553. package/dist/shader/GradientLUTGenerator.js +0 -130
  554. package/dist/shader/WebGLShaderInstance.d.ts +0 -30
  555. package/dist/shader/WebGLShaderInstance.js +0 -48
  556. package/dist/shader/WebGLShaderUniform.d.ts +0 -52
  557. package/dist/shader/WebGLShaderUniform.js +0 -159
  558. package/dist/shader/fragment/FragmentShaderLibrary.d.ts +0 -24
  559. package/dist/shader/fragment/FragmentShaderLibrary.js +0 -44
  560. package/dist/shader/fragment/FragmentShaderSource.d.ts +0 -29
  561. package/dist/shader/fragment/FragmentShaderSource.js +0 -99
  562. package/dist/shader/fragment/FragmentShaderSourceBlend.d.ts +0 -75
  563. package/dist/shader/fragment/FragmentShaderSourceBlend.js +0 -384
  564. package/dist/shader/fragment/FragmentShaderSourceGradient.d.ts +0 -44
  565. package/dist/shader/fragment/FragmentShaderSourceGradient.js +0 -114
  566. package/dist/shader/fragment/FragmentShaderSourceGradientLUT.d.ts +0 -14
  567. package/dist/shader/fragment/FragmentShaderSourceGradientLUT.js +0 -58
  568. package/dist/shader/fragment/FragmentShaderSourceTexture.d.ts +0 -18
  569. package/dist/shader/fragment/FragmentShaderSourceTexture.js +0 -68
  570. package/dist/shader/fragment/filter/FragmentShaderSourceBlurFilter.d.ts +0 -12
  571. package/dist/shader/fragment/filter/FragmentShaderSourceColorMatrixFilter.d.ts +0 -11
  572. package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.d.ts +0 -16
  573. package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.js +0 -80
  574. package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.d.ts +0 -15
  575. package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.js +0 -106
  576. package/dist/shader/fragment/filter/FragmentShaderSourceFilter.d.ts +0 -112
  577. package/dist/shader/fragment/filter/FragmentShaderSourceFilter.js +0 -275
  578. package/dist/shader/variants/BlendShaderVariantCollection.d.ts +0 -159
  579. package/dist/shader/variants/BlendShaderVariantCollection.js +0 -376
  580. package/dist/shader/variants/FilterShaderVariantCollection.d.ts +0 -150
  581. package/dist/shader/variants/FilterShaderVariantCollection.js +0 -395
  582. package/dist/shader/variants/GradientLUTShaderVariantCollection.d.ts +0 -49
  583. package/dist/shader/variants/GradientLUTShaderVariantCollection.js +0 -107
  584. package/dist/shader/variants/GradientShapeShaderVariantCollection.d.ts +0 -61
  585. package/dist/shader/variants/GradientShapeShaderVariantCollection.js +0 -196
  586. package/dist/shader/variants/ShapeShaderVariantCollection.d.ts +0 -117
  587. package/dist/shader/variants/ShapeShaderVariantCollection.js +0 -427
  588. package/dist/shader/vertex/VertexShaderLibrary.d.ts +0 -18
  589. package/dist/shader/vertex/VertexShaderSource.d.ts +0 -35
  590. package/dist/shader/vertex/VertexShaderSource.js +0 -164
  591. package/dist/shader/vertex/VertexShaderSourceFill.d.ts +0 -45
  592. package/dist/shader/vertex/VertexShaderSourceFill.js +0 -116
  593. package/dist/shader/vertex/VertexShaderSourceStroke.d.ts +0 -27
  594. package/dist/shader/vertex/VertexShaderSourceStroke.js +0 -149
  595. /package/{dist/interface/AttachmentImpl.js → src/interface/IAttachmentObject.js} +0 -0
  596. /package/{dist/interface/BlendModeImpl.js → src/interface/IBlendMode.js} +0 -0
  597. /package/{dist/interface/BoundsImpl.js → src/interface/IBounds.js} +0 -0
  598. /package/{dist/interface/CachePositionImpl.js → src/interface/IClipObject.js} +0 -0
  599. /package/{dist/interface/CapsStyleImpl.js → src/interface/IColorBufferObject.js} +0 -0
  600. /package/{dist/interface/ClipObjectImpl.js → src/interface/ICubicConverterReturnObject.js} +0 -0
  601. /package/{dist/interface/FillMeshImpl.js → src/interface/IFillMesh.js} +0 -0
  602. /package/{dist/interface/GradientTypeImpl.js → src/interface/IFillType.js} +0 -0
  603. /package/{dist/interface/GridImpl.js → src/interface/IGradientType.js} +0 -0
  604. /package/{dist/interface/IndexRangeImpl.js → src/interface/IGrid.js} +0 -0
  605. /package/{dist/interface/InterpolationMethodImpl.js → src/interface/IInterpolationMethod.js} +0 -0
  606. /package/{dist/interface/JointStyleImpl.js → src/interface/IJointStyle.js} +0 -0
  607. /package/{dist/interface/PointImpl.js → src/interface/IPath.js} +0 -0
  608. /package/{dist/interface/SpreadMethodImpl.js → src/interface/IPoint.js} +0 -0
  609. /package/{dist/interface/StrokeMethImpl.js → src/interface/IProgramObject.js} +0 -0
  610. /package/{dist/interface/UniformDataImpl.js → src/interface/ISpreadMethod.js} +0 -0
  611. /package/{dist/interface/VerticesImpl.js → src/interface/IStencilBufferObject.js} +0 -0
@@ -0,0 +1,36 @@
1
+ import { execute as textureManagerGetTextureUseCase } from "../../TextureManager/usecase/TextureManagerGetTextureUseCase";
2
+ import { execute as frameBufferManagerTransferAtlasTextureService } from "../../FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService";
3
+ import { $drawBitmapFramebuffer, $readBitmapFramebuffer, $readFrameBuffer } from "../../FrameBufferManager";
4
+ import { $gl } from "../../WebGLUtil";
5
+ import { $activeAtlasIndex, $setActiveAtlasIndex, $getAtlasTextureObject } from "../../AtlasManager";
6
+ /**
7
+ * @description アトラスフレームバッファからテクスチャを取得します。
8
+ * Get a texture from the atlas frame buffer.
9
+ *
10
+ * @param {Node} node
11
+ * @return {ITextureObject}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export const execute = (node) => {
16
+ // 指定されたindexのフレームバッファの描画をアトラステクスチャに転送
17
+ const activeIndex = $activeAtlasIndex;
18
+ $setActiveAtlasIndex(node.index);
19
+ frameBufferManagerTransferAtlasTextureService();
20
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, $readBitmapFramebuffer);
21
+ const atlasTextureObject = $getAtlasTextureObject();
22
+ $gl.framebufferTexture2D($gl.FRAMEBUFFER, $gl.COLOR_ATTACHMENT0, $gl.TEXTURE_2D, atlasTextureObject.resource, 0);
23
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, $drawBitmapFramebuffer);
24
+ const textureObject = textureManagerGetTextureUseCase(node.w, node.h);
25
+ $gl.framebufferTexture2D($gl.FRAMEBUFFER, $gl.COLOR_ATTACHMENT0, $gl.TEXTURE_2D, textureObject.resource, 0);
26
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, null);
27
+ $gl.bindFramebuffer($gl.READ_FRAMEBUFFER, $readBitmapFramebuffer);
28
+ $gl.bindFramebuffer($gl.DRAW_FRAMEBUFFER, $drawBitmapFramebuffer);
29
+ // execute
30
+ $gl.blitFramebuffer(node.x, node.y, node.x + node.w, node.y + node.h, 0, 0, node.w, node.h, $gl.COLOR_BUFFER_BIT, $gl.NEAREST);
31
+ // restore
32
+ $setActiveAtlasIndex(activeIndex);
33
+ $gl.bindFramebuffer($gl.READ_FRAMEBUFFER, $readFrameBuffer);
34
+ $gl.bindFramebuffer($gl.FRAMEBUFFER, $readFrameBuffer);
35
+ return textureObject;
36
+ };
@@ -0,0 +1,12 @@
1
+ import type { IAttachmentObject } from "../../interface/IAttachmentObject";
2
+ /**
3
+ * @description 各オブジェクトを再利用するためにプールを行い、アタッチメントオブジェクトは初期化してプールに戻す
4
+ * Pool each object for reuse, and initialize and return the attachment object to the pool
5
+ *
6
+ * @param {IAttachmentObject} attachment_object
7
+ * @param {boolean} [release_texture=true]
8
+ * @return {void}
9
+ * @method
10
+ * @protected
11
+ */
12
+ export declare const execute: (attachment_object: IAttachmentObject, release_texture?: boolean) => void;
@@ -0,0 +1,30 @@
1
+ import { execute as colorBufferObjectReleaseColorBufferObjectUseCase } from "../../ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase";
2
+ import { execute as textureManagerReleaseTextureObjectUseCase } from "../../TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase";
3
+ import { execute as stencilBufferObjectReleaseColorBufferObjectUseCase } from "../../StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService";
4
+ import { $objectPool } from "../../FrameBufferManager";
5
+ /**
6
+ * @description 各オブジェクトを再利用するためにプールを行い、アタッチメントオブジェクトは初期化してプールに戻す
7
+ * Pool each object for reuse, and initialize and return the attachment object to the pool
8
+ *
9
+ * @param {IAttachmentObject} attachment_object
10
+ * @param {boolean} [release_texture=true]
11
+ * @return {void}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export const execute = (attachment_object, release_texture = true) => {
16
+ if (attachment_object.msaa) {
17
+ colorBufferObjectReleaseColorBufferObjectUseCase(attachment_object.color);
18
+ attachment_object.color = null;
19
+ attachment_object.stencil = null;
20
+ }
21
+ else {
22
+ if (release_texture) {
23
+ textureManagerReleaseTextureObjectUseCase(attachment_object.texture);
24
+ }
25
+ attachment_object.texture = null;
26
+ stencilBufferObjectReleaseColorBufferObjectUseCase(attachment_object.stencil);
27
+ attachment_object.stencil = null;
28
+ }
29
+ $objectPool.push(attachment_object);
30
+ };
@@ -0,0 +1,11 @@
1
+ import type { ITextureObject } from "../../interface/ITextureObject";
2
+ /**
3
+ * @description メインのアタッチメントオブジェクトをメインキャンバスに転送します。
4
+ * Transfer the main attachment object to the main canvas.
5
+ *
6
+ * @param {ITextureObject} texture_object
7
+ * @return {void}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (texture_object: ITextureObject) => void;
@@ -0,0 +1,25 @@
1
+ import { execute as textureManagerBind0UseCase } from "../../TextureManager/usecase/TextureManagerBind0UseCase";
2
+ import { execute as variantsBlendTextureShaderService } from "../../Shader/Variants/Blend/service/VariantsBlendTextureShaderService";
3
+ import { execute as shaderManagerSetTextureUniformService } from "../../Shader/ShaderManager/service/ShaderManagerSetTextureUniformService";
4
+ import { execute as shaderManagerDrawTextureUseCase } from "../../Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase";
5
+ import { execute as blendOneZeroService } from "../../Blend/service/BlendOneZeroService";
6
+ import { execute as blendResetService } from "../../Blend/service/BlendResetService";
7
+ /**
8
+ * @description メインのアタッチメントオブジェクトをメインキャンバスに転送します。
9
+ * Transfer the main attachment object to the main canvas.
10
+ *
11
+ * @param {ITextureObject} texture_object
12
+ * @return {void}
13
+ * @method
14
+ * @protected
15
+ */
16
+ export const execute = (texture_object) => {
17
+ // ブレンドするテクスチャをバインド
18
+ textureManagerBind0UseCase(texture_object);
19
+ blendOneZeroService();
20
+ // blend用のシェーダーを取得
21
+ const shaderManager = variantsBlendTextureShaderService();
22
+ shaderManagerSetTextureUniformService(shaderManager, texture_object.width, texture_object.height);
23
+ shaderManagerDrawTextureUseCase(shaderManager);
24
+ blendResetService();
25
+ };
@@ -0,0 +1,18 @@
1
+ import type { IAttachmentObject } from "./interface/IAttachmentObject";
2
+ import type { ITextureObject } from "./interface/ITextureObject";
3
+ export declare const $objectPool: IAttachmentObject[];
4
+ export declare let $readFrameBuffer: WebGLFramebuffer;
5
+ export declare const $setReadFrameBuffer: (gl: WebGL2RenderingContext) => void;
6
+ export declare let $drawFrameBuffer: WebGLFramebuffer | null;
7
+ export declare const $setDrawFrameBuffer: (gl: WebGL2RenderingContext) => void;
8
+ export declare let $atlasFrameBuffer: WebGLFramebuffer | null;
9
+ export declare const $setAtlasFrameBuffer: (gl: WebGL2RenderingContext, texture_object: ITextureObject) => void;
10
+ export declare let $currentAttachment: IAttachmentObject | null;
11
+ export declare const $setCurrentAttachment: (attachment_object: IAttachmentObject | null) => void;
12
+ export declare let $isFramebufferBound: boolean;
13
+ export declare const $setFramebufferBound: (state: boolean) => void;
14
+ export declare let $readBitmapFramebuffer: WebGLFramebuffer | null;
15
+ export declare let $drawBitmapFramebuffer: WebGLFramebuffer | null;
16
+ export declare let $pixelFrameBuffer: WebGLFramebuffer | null;
17
+ export declare let $pixelBufferObject: WebGLBuffer | null;
18
+ export declare const $setBitmapFrameBuffer: (gl: WebGL2RenderingContext) => void;
@@ -0,0 +1,38 @@
1
+ export const $objectPool = [];
2
+ export let $readFrameBuffer;
3
+ export const $setReadFrameBuffer = (gl) => {
4
+ $readFrameBuffer = gl.createFramebuffer();
5
+ };
6
+ export let $drawFrameBuffer = null;
7
+ export const $setDrawFrameBuffer = (gl) => {
8
+ $drawFrameBuffer = gl.createFramebuffer();
9
+ };
10
+ export let $atlasFrameBuffer = null;
11
+ export const $setAtlasFrameBuffer = (gl, texture_object) => {
12
+ $atlasFrameBuffer = gl.createFramebuffer();
13
+ gl.bindFramebuffer(gl.FRAMEBUFFER, $atlasFrameBuffer);
14
+ gl.framebufferTexture2D(gl.FRAMEBUFFER, gl.COLOR_ATTACHMENT0, gl.TEXTURE_2D, texture_object.resource, 0);
15
+ gl.bindFramebuffer(gl.FRAMEBUFFER, null);
16
+ gl.bindFramebuffer(gl.DRAW_FRAMEBUFFER, $atlasFrameBuffer);
17
+ };
18
+ export let $currentAttachment = null;
19
+ export const $setCurrentAttachment = (attachment_object) => {
20
+ $currentAttachment = attachment_object;
21
+ };
22
+ export let $isFramebufferBound = false;
23
+ export const $setFramebufferBound = (state) => {
24
+ $isFramebufferBound = state;
25
+ };
26
+ export let $readBitmapFramebuffer = null;
27
+ export let $drawBitmapFramebuffer = null;
28
+ export let $pixelFrameBuffer = null;
29
+ export let $pixelBufferObject = null;
30
+ export const $setBitmapFrameBuffer = (gl) => {
31
+ // blitFramebuffer
32
+ $drawBitmapFramebuffer = gl.createFramebuffer();
33
+ $readBitmapFramebuffer = gl.createFramebuffer();
34
+ // PBO
35
+ $pixelFrameBuffer = gl.createFramebuffer();
36
+ $pixelBufferObject = gl.createBuffer();
37
+ gl.bindBuffer(gl.PIXEL_PACK_BUFFER, $pixelBufferObject);
38
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @description グラデーションの設定データ
3
+ * Gradient setting data
4
+ *
5
+ * @type {Array<number | number[] | Float32Array>}
6
+ * @protected
7
+ */
8
+ export declare const $gradientData: Array<number | number[] | Float32Array>;
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @description グラデーションの設定データ
3
+ * Gradient setting data
4
+ *
5
+ * @type {Array<number | number[] | Float32Array>}
6
+ * @protected
7
+ */
8
+ export const $gradientData = [];
package/src/Grid.d.ts ADDED
@@ -0,0 +1,14 @@
1
+ /**
2
+ * @type {Map}
3
+ * @private
4
+ */
5
+ export declare const $gridDataMap: Map<number, Float32Array | null>;
6
+ /**
7
+ * @description グリッド情報を初期化
8
+ * Initialize grid information
9
+ *
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export declare const $terminateGrid: () => void;
package/src/Grid.js ADDED
@@ -0,0 +1,16 @@
1
+ /**
2
+ * @type {Map}
3
+ * @private
4
+ */
5
+ export const $gridDataMap = new Map();
6
+ /**
7
+ * @description グリッド情報を初期化
8
+ * Initialize grid information
9
+ *
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export const $terminateGrid = () => {
15
+ $gridDataMap.clear();
16
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @description マスク描画の開始準備
3
+ * Prepare to start drawing the mask
4
+ *
5
+ * @return {void}
6
+ * @method
7
+ * @protected
8
+ */
9
+ export declare const execute: () => void;
@@ -0,0 +1,27 @@
1
+ import { $isMaskDrawing, $setMaskDrawing, $clipLevels } from "../../Mask";
2
+ import { $gl, $context, $enableStencilTest } from "../../WebGLUtil";
3
+ /**
4
+ * @description マスク描画の開始準備
5
+ * Prepare to start drawing the mask
6
+ *
7
+ * @return {void}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export const execute = () => {
12
+ const currentAttachmentObject = $context.currentAttachmentObject;
13
+ if (!currentAttachmentObject) {
14
+ return;
15
+ }
16
+ currentAttachmentObject.mask = true;
17
+ currentAttachmentObject.clipLevel++;
18
+ $clipLevels.set(currentAttachmentObject.clipLevel, currentAttachmentObject.clipLevel);
19
+ if (!$isMaskDrawing()) {
20
+ $setMaskDrawing(true);
21
+ $enableStencilTest();
22
+ $gl.enable($gl.SAMPLE_ALPHA_TO_COVERAGE);
23
+ $gl.stencilFunc($gl.ALWAYS, 0, 0xff);
24
+ $gl.stencilOp($gl.ZERO, $gl.INVERT, $gl.INVERT);
25
+ $gl.colorMask(false, false, false, false);
26
+ }
27
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @description マスクの描画を終了
3
+ * End mask drawing
4
+ *
5
+ * @return {void}
6
+ * @method
7
+ * @protected
8
+ */
9
+ export declare const execute: () => void;
@@ -0,0 +1,26 @@
1
+ import { $gl, $context, $disableScissorTest } from "../../WebGLUtil";
2
+ /**
3
+ * @description マスクの描画を終了
4
+ * End mask drawing
5
+ *
6
+ * @return {void}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export const execute = () => {
11
+ const currentAttachmentObject = $context.currentAttachmentObject;
12
+ if (!currentAttachmentObject) {
13
+ return;
14
+ }
15
+ const clipLevel = currentAttachmentObject.clipLevel;
16
+ let mask = 0;
17
+ for (let idx = 0; idx < clipLevel; ++idx) {
18
+ mask |= (1 << clipLevel - idx) - 1;
19
+ }
20
+ $gl.stencilMask(0xff);
21
+ $gl.stencilFunc($gl.EQUAL, mask & 0xff, mask);
22
+ $gl.stencilOp($gl.KEEP, $gl.KEEP, $gl.KEEP);
23
+ $gl.colorMask(true, true, true, true);
24
+ $gl.disable($gl.SAMPLE_ALPHA_TO_COVERAGE);
25
+ $disableScissorTest();
26
+ };
@@ -0,0 +1,13 @@
1
+ /**
2
+ * @description マスクの描画範囲をセット
3
+ * Set the drawing range of the mask.
4
+ *
5
+ * @param {number} x_min
6
+ * @param {number} y_min
7
+ * @param {number} x_max
8
+ * @param {number} y_max
9
+ * @return {void}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export declare const execute: (x_min: number, y_min: number, x_max: number, y_max: number) => void;
@@ -0,0 +1,26 @@
1
+ import { $clipBounds } from "../../Mask";
2
+ import { $gl, $context, $getFloat32Array4, $enableScissorTest } from "../../WebGLUtil";
3
+ /**
4
+ * @description マスクの描画範囲をセット
5
+ * Set the drawing range of the mask.
6
+ *
7
+ * @param {number} x_min
8
+ * @param {number} y_min
9
+ * @param {number} x_max
10
+ * @param {number} y_max
11
+ * @return {void}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export const execute = (x_min, y_min, x_max, y_max) => {
16
+ const currentAttachmentObject = $context.currentAttachmentObject;
17
+ if (!currentAttachmentObject) {
18
+ return;
19
+ }
20
+ // レベルと描画範囲をセット
21
+ $clipBounds.set(currentAttachmentObject.clipLevel, $getFloat32Array4(x_min, y_min, x_max, y_max));
22
+ const width = Math.ceil(Math.abs(x_max - x_min));
23
+ const height = Math.ceil(Math.abs(y_max - y_min));
24
+ $enableScissorTest();
25
+ $gl.scissor(x_min, currentAttachmentObject.height - y_min - height, width, height);
26
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @description マスクの合成処理
3
+ * Mask synthesis processing
4
+ *
5
+ * @return {void}
6
+ * @method
7
+ * @protected
8
+ */
9
+ export declare const execute: () => void;
@@ -0,0 +1,32 @@
1
+ import { execute as shaderManagerFillUseCase } from "../../Shader/ShaderManager/usecase/ShaderManagerFillUseCase";
2
+ import { execute as variantsShapeRectShaderService } from "../../Shader/Variants/Shape/service/VariantsShapeRectShaderService";
3
+ import { $getRectVertexArrayObject } from "../../VertexArrayObject";
4
+ import { $gl, $context } from "../../WebGLUtil";
5
+ /**
6
+ * @description マスクの合成処理
7
+ * Mask synthesis processing
8
+ *
9
+ * @return {void}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export const execute = () => {
14
+ const currentAttachmentObject = $context.currentAttachmentObject;
15
+ if (!currentAttachmentObject) {
16
+ return;
17
+ }
18
+ // レベル以上のステンシルバッファをマージ
19
+ const mask = 1 << currentAttachmentObject.clipLevel - 1;
20
+ $gl.stencilMask(~mask - 1);
21
+ $gl.stencilFunc($gl.LEQUAL, mask, 0xff);
22
+ $gl.stencilOp($gl.ZERO, $gl.REPLACE, $gl.REPLACE);
23
+ shaderManagerFillUseCase(variantsShapeRectShaderService(), $getRectVertexArrayObject(), 0, 6);
24
+ // レベル以上のステンシルバッファをクリア
25
+ $gl.stencilMask(1 << currentAttachmentObject.clipLevel);
26
+ $gl.stencilFunc($gl.ALWAYS, 0, 0xff);
27
+ $gl.stencilOp($gl.REPLACE, $gl.REPLACE, $gl.REPLACE);
28
+ shaderManagerFillUseCase(variantsShapeRectShaderService(), $getRectVertexArrayObject(), 0, 6);
29
+ // base mask setting
30
+ $gl.stencilMask(0xff);
31
+ $gl.stencilOp($gl.ZERO, $gl.INVERT, $gl.INVERT);
32
+ };
@@ -0,0 +1,10 @@
1
+ /**
2
+ * @description マスクOn/Offに合わせたバインド処理
3
+ * Binding process according to mask On/Off
4
+ *
5
+ * @param {boolean} mask
6
+ * @return {void}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export declare const execute: (mask: boolean) => void;
@@ -0,0 +1,25 @@
1
+ import { execute as maskEndMaskService } from "../service/MaskEndMaskService";
2
+ import { $enableStencilTest, $disableStencilTest, $disableScissorTest } from "../../WebGLUtil";
3
+ import { $isMaskDrawing, $setMaskDrawing } from "../../Mask";
4
+ /**
5
+ * @description マスクOn/Offに合わせたバインド処理
6
+ * Binding process according to mask On/Off
7
+ *
8
+ * @param {boolean} mask
9
+ * @return {void}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export const execute = (mask) => {
14
+ if (!mask && $isMaskDrawing()) {
15
+ $setMaskDrawing(false);
16
+ $disableStencilTest();
17
+ $disableScissorTest();
18
+ }
19
+ else if (mask && !$isMaskDrawing()) {
20
+ $setMaskDrawing(true);
21
+ // キャッシュ作成後は、マスクの状態を復元する
22
+ $enableStencilTest();
23
+ maskEndMaskService();
24
+ }
25
+ };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @description マスクの終了処理
3
+ * End mask processing
4
+ *
5
+ * @return {void}
6
+ * @method
7
+ * @protected
8
+ */
9
+ export declare const execute: () => void;
@@ -0,0 +1,53 @@
1
+ import { execute as maskEndMaskService } from "../service/MaskEndMaskService";
2
+ import { execute as shaderManagerFillUseCase } from "../../Shader/ShaderManager/usecase/ShaderManagerFillUseCase";
3
+ import { execute as variantsShapeRectShaderService } from "../../Shader/Variants/Shape/service/VariantsShapeRectShaderService";
4
+ import { $getRectVertexArrayObject } from "../../VertexArrayObject";
5
+ import { $setMaskDrawing, $clipBounds, $clipLevels } from "../../Mask";
6
+ import { $gl, $context, $poolFloat32Array4, $enableScissorTest, $disableScissorTest, $disableStencilTest } from "../../WebGLUtil";
7
+ /**
8
+ * @description マスクの終了処理
9
+ * End mask processing
10
+ *
11
+ * @return {void}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export const execute = () => {
16
+ const currentAttachmentObject = $context.currentAttachmentObject;
17
+ if (!currentAttachmentObject) {
18
+ return;
19
+ }
20
+ const clipLevel = currentAttachmentObject.clipLevel;
21
+ const bounds = $clipBounds.get(clipLevel);
22
+ const xMin = bounds[0];
23
+ const yMin = bounds[1];
24
+ const xMax = bounds[2];
25
+ const yMax = bounds[3];
26
+ // レベルと描画範囲を削除
27
+ $clipBounds.delete(clipLevel);
28
+ $clipLevels.delete(clipLevel);
29
+ $poolFloat32Array4(bounds);
30
+ const width = Math.ceil(Math.abs(xMax - xMin));
31
+ const height = Math.ceil(Math.abs(yMax - yMin));
32
+ $enableScissorTest();
33
+ $gl.scissor(xMin, currentAttachmentObject.height - yMin - height, width, height);
34
+ // 単体のマスクであれば終了
35
+ --currentAttachmentObject.clipLevel;
36
+ if (!currentAttachmentObject.clipLevel) {
37
+ currentAttachmentObject.mask = false;
38
+ $setMaskDrawing(false);
39
+ $gl.clear($gl.STENCIL_BUFFER_BIT);
40
+ $disableStencilTest();
41
+ $disableScissorTest();
42
+ $clipLevels.clear();
43
+ $clipBounds.clear();
44
+ return;
45
+ }
46
+ // 上位レベルのステンシルバッファをクリア
47
+ $gl.stencilMask(1 << currentAttachmentObject.clipLevel);
48
+ $gl.stencilFunc($gl.ALWAYS, 0, 0xff);
49
+ $gl.stencilOp($gl.REPLACE, $gl.REPLACE, $gl.REPLACE);
50
+ $gl.colorMask(false, false, false, false);
51
+ shaderManagerFillUseCase(variantsShapeRectShaderService(), $getRectVertexArrayObject(), 0, 6);
52
+ maskEndMaskService();
53
+ };
package/src/Mask.d.ts ADDED
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @description マスク描画の状態をセット
3
+ * Set the state of mask drawing
4
+ *
5
+ * @param {boolean} state
6
+ * @return {void}
7
+ * @method
8
+ * @public
9
+ */
10
+ export declare const $setMaskDrawing: (state: boolean) => void;
11
+ /**
12
+ * @description マスク描画中かどうかを返却
13
+ * Returns whether the mask is being drawn
14
+ *
15
+ * @return {boolean}
16
+ * @method
17
+ * @public
18
+ */
19
+ export declare const $isMaskDrawing: () => boolean;
20
+ /**
21
+ * @type {Map<number, Float32Array>}
22
+ * @private
23
+ */
24
+ export declare const $clipBounds: Map<number, Float32Array>;
25
+ /**
26
+ * @type {Map<number, number>}
27
+ * @private
28
+ */
29
+ export declare const $clipLevels: Map<number, number>;
package/src/Mask.js ADDED
@@ -0,0 +1,42 @@
1
+ /**
2
+ * @description マスク描画中かどうか
3
+ * Whether the mask is being drawn
4
+ *
5
+ * @type {boolean}
6
+ * @default false
7
+ * @private
8
+ */
9
+ let $maskDrawingState = false;
10
+ /**
11
+ * @description マスク描画の状態をセット
12
+ * Set the state of mask drawing
13
+ *
14
+ * @param {boolean} state
15
+ * @return {void}
16
+ * @method
17
+ * @public
18
+ */
19
+ export const $setMaskDrawing = (state) => {
20
+ $maskDrawingState = state;
21
+ };
22
+ /**
23
+ * @description マスク描画中かどうかを返却
24
+ * Returns whether the mask is being drawn
25
+ *
26
+ * @return {boolean}
27
+ * @method
28
+ * @public
29
+ */
30
+ export const $isMaskDrawing = () => {
31
+ return $maskDrawingState;
32
+ };
33
+ /**
34
+ * @type {Map<number, Float32Array>}
35
+ * @private
36
+ */
37
+ export const $clipBounds = new Map();
38
+ /**
39
+ * @type {Map<number, number>}
40
+ * @private
41
+ */
42
+ export const $clipLevels = new Map();
@@ -0,0 +1,13 @@
1
+ import type { IPoint } from "../../interface/IPoint";
2
+ /**
3
+ * @description 直線の法線ベクトルを計算
4
+ * Calculate the normal vector of a line
5
+ *
6
+ * @param {number} x
7
+ * @param {number} y
8
+ * @param {number} thickness
9
+ * @return {IPoint}
10
+ * @method
11
+ * @protected
12
+ */
13
+ export declare const execute: (x: number, y: number, thickness: number) => IPoint;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @description 直線の法線ベクトルを計算
3
+ * Calculate the normal vector of a line
4
+ *
5
+ * @param {number} x
6
+ * @param {number} y
7
+ * @param {number} thickness
8
+ * @return {IPoint}
9
+ * @method
10
+ * @protected
11
+ */
12
+ export const execute = (x, y, thickness) => {
13
+ const magnitude = Math.sqrt(x * x + y * y);
14
+ return {
15
+ "x": -(y / magnitude) * thickness,
16
+ "y": x / magnitude * thickness
17
+ };
18
+ };
@@ -0,0 +1,11 @@
1
+ import type { IPoint } from "../../interface/IPoint";
2
+ /**
3
+ * @description ベクトルの正規化を行う
4
+ * Normalize the vector
5
+ *
6
+ * @param {IPoint} point
7
+ * @return {IPoint}
8
+ * @method
9
+ * @protected
10
+ */
11
+ export declare const execute: (point: IPoint) => IPoint;
@@ -0,0 +1,15 @@
1
+ /**
2
+ * @description ベクトルの正規化を行う
3
+ * Normalize the vector
4
+ *
5
+ * @param {IPoint} point
6
+ * @return {IPoint}
7
+ * @method
8
+ * @protected
9
+ */
10
+ export const execute = (point) => {
11
+ const length = Math.sqrt(point.x * point.x + point.y * point.y);
12
+ return length === 0
13
+ ? { "x": 0, "y": 0 }
14
+ : { "x": point.x / length, "y": point.y / length };
15
+ };
@@ -0,0 +1,23 @@
1
+ import type { IPath } from "../../interface/IPath";
2
+ /**
3
+ * @description 塗りのメッシュを生成する
4
+ * Generate a fill mesh
5
+ *
6
+ * @param {IPath} vertex
7
+ * @param {Float32Array} buffer
8
+ * @param {number} index
9
+ * @param {number} a
10
+ * @param {number} b
11
+ * @param {number} c
12
+ * @param {number} d
13
+ * @param {number} tx
14
+ * @param {number} ty
15
+ * @param {number} red
16
+ * @param {number} green
17
+ * @param {number} blue
18
+ * @param {number} alpha
19
+ * @return {number}
20
+ * @method
21
+ * @protected
22
+ */
23
+ export declare const execute: (vertex: IPath, buffer: Float32Array, index: number, a: number, b: number, c: number, d: number, tx: number, ty: number, red: number, green: number, blue: number, alpha: number) => number;