@next2d/display 1.18.12 → 2.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 (405) hide show
  1. package/package.json +17 -28
  2. package/src/BitmapData/service/BitmapDataCanvasToBufferService.d.ts +10 -0
  3. package/src/BitmapData/service/BitmapDataCanvasToBufferService.js +22 -0
  4. package/src/BitmapData/service/BitmapDataImageToBufferService.d.ts +10 -0
  5. package/src/BitmapData/service/BitmapDataImageToBufferService.js +21 -0
  6. package/src/BitmapData.d.ts +71 -0
  7. package/src/BitmapData.js +133 -0
  8. package/{dist → src}/BlendMode.d.ts +4 -50
  9. package/{dist → src}/BlendMode.js +4 -58
  10. package/src/DisplayObject/service/DisplayObjectApplyChangesService.d.ts +11 -0
  11. package/src/DisplayObject/service/DisplayObjectApplyChangesService.js +16 -0
  12. package/src/DisplayObject/service/DisplayObjectBaseBuildService.d.ts +16 -0
  13. package/src/DisplayObject/service/DisplayObjectBaseBuildService.js +31 -0
  14. package/src/DisplayObject/service/DisplayObjectBlendToNumberService.d.ts +11 -0
  15. package/src/DisplayObject/service/DisplayObjectBlendToNumberService.js +45 -0
  16. package/src/DisplayObject/service/DisplayObjectBuildFilterService.d.ts +12 -0
  17. package/src/DisplayObject/service/DisplayObjectBuildFilterService.js +53 -0
  18. package/src/DisplayObject/service/DisplayObjectCalcBoundsMatrixService.d.ts +14 -0
  19. package/src/DisplayObject/service/DisplayObjectCalcBoundsMatrixService.js +31 -0
  20. package/src/DisplayObject/service/DisplayObjectDispatchAddedEventService.d.ts +11 -0
  21. package/src/DisplayObject/service/DisplayObjectDispatchAddedEventService.js +19 -0
  22. package/src/DisplayObject/service/DisplayObjectDispatchAddedToStageEventService.d.ts +11 -0
  23. package/src/DisplayObject/service/DisplayObjectDispatchAddedToStageEventService.js +21 -0
  24. package/src/DisplayObject/service/DisplayObjectDispatchRemovedEventService.d.ts +11 -0
  25. package/src/DisplayObject/service/DisplayObjectDispatchRemovedEventService.js +19 -0
  26. package/src/DisplayObject/service/DisplayObjectDispatchRemovedToStageEventService.d.ts +11 -0
  27. package/src/DisplayObject/service/DisplayObjectDispatchRemovedToStageEventService.js +27 -0
  28. package/src/DisplayObject/service/DisplayObjectGenerateHashService.d.ts +10 -0
  29. package/src/DisplayObject/service/DisplayObjectGenerateHashService.js +24 -0
  30. package/src/DisplayObject/service/DisplayObjectGetPlaceObjectService.d.ts +12 -0
  31. package/src/DisplayObject/service/DisplayObjectGetPlaceObjectService.js +41 -0
  32. package/src/DisplayObject/service/DisplayObjectGlobalToLocalService.d.ts +13 -0
  33. package/src/DisplayObject/service/DisplayObjectGlobalToLocalService.js +18 -0
  34. package/src/DisplayObject/service/DisplayObjectLocalToGlobalService.d.ts +13 -0
  35. package/src/DisplayObject/service/DisplayObjectLocalToGlobalService.js +17 -0
  36. package/src/DisplayObject/service/DisplayObjectRemoveService.d.ts +11 -0
  37. package/src/DisplayObject/service/DisplayObjectRemoveService.js +16 -0
  38. package/src/DisplayObject/usecase/DisplayObjectConcatenatedMatrixUseCase.d.ts +12 -0
  39. package/src/DisplayObject/usecase/DisplayObjectConcatenatedMatrixUseCase.js +25 -0
  40. package/src/DisplayObject/usecase/DisplayObjectGetAlphaUseCase.d.ts +11 -0
  41. package/src/DisplayObject/usecase/DisplayObjectGetAlphaUseCase.js +24 -0
  42. package/src/DisplayObject/usecase/DisplayObjectGetBlendModeUseCase.d.ts +12 -0
  43. package/src/DisplayObject/usecase/DisplayObjectGetBlendModeUseCase.js +19 -0
  44. package/src/DisplayObject/usecase/DisplayObjectGetBoundsUseCase.d.ts +13 -0
  45. package/src/DisplayObject/usecase/DisplayObjectGetBoundsUseCase.js +37 -0
  46. package/src/DisplayObject/usecase/DisplayObjectGetCalcBoundsUseCase.d.ts +11 -0
  47. package/src/DisplayObject/usecase/DisplayObjectGetCalcBoundsUseCase.js +28 -0
  48. package/src/DisplayObject/usecase/DisplayObjectGetColorTransformUseCase.d.ts +12 -0
  49. package/src/DisplayObject/usecase/DisplayObjectGetColorTransformUseCase.js +17 -0
  50. package/src/DisplayObject/usecase/DisplayObjectGetFiltersUseCase.d.ts +12 -0
  51. package/src/DisplayObject/usecase/DisplayObjectGetFiltersUseCase.js +25 -0
  52. package/src/DisplayObject/usecase/DisplayObjectGetHeightUseCase.d.ts +11 -0
  53. package/src/DisplayObject/usecase/DisplayObjectGetHeightUseCase.js +24 -0
  54. package/src/DisplayObject/usecase/DisplayObjectGetMatrixUseCase.d.ts +12 -0
  55. package/src/DisplayObject/usecase/DisplayObjectGetMatrixUseCase.js +17 -0
  56. package/src/DisplayObject/usecase/DisplayObjectGetRawBoundsUseCase.d.ts +11 -0
  57. package/src/DisplayObject/usecase/DisplayObjectGetRawBoundsUseCase.js +28 -0
  58. package/src/DisplayObject/usecase/DisplayObjectGetRawColorTransformUseCase.d.ts +11 -0
  59. package/src/DisplayObject/usecase/DisplayObjectGetRawColorTransformUseCase.js +25 -0
  60. package/src/DisplayObject/usecase/DisplayObjectGetRawMatrixUseCase.d.ts +12 -0
  61. package/src/DisplayObject/usecase/DisplayObjectGetRawMatrixUseCase.js +26 -0
  62. package/src/DisplayObject/usecase/DisplayObjectGetRotationUseCase.d.ts +11 -0
  63. package/src/DisplayObject/usecase/DisplayObjectGetRotationUseCase.js +23 -0
  64. package/src/DisplayObject/usecase/DisplayObjectGetScaleXUseCase.d.ts +11 -0
  65. package/src/DisplayObject/usecase/DisplayObjectGetScaleXUseCase.js +29 -0
  66. package/src/DisplayObject/usecase/DisplayObjectGetScaleYUseCase.d.ts +11 -0
  67. package/src/DisplayObject/usecase/DisplayObjectGetScaleYUseCase.js +29 -0
  68. package/src/DisplayObject/usecase/DisplayObjectGetWidthUseCase.d.ts +11 -0
  69. package/src/DisplayObject/usecase/DisplayObjectGetWidthUseCase.js +24 -0
  70. package/src/DisplayObject/usecase/DisplayObjectGetXUseCase.d.ts +11 -0
  71. package/src/DisplayObject/usecase/DisplayObjectGetXUseCase.js +16 -0
  72. package/src/DisplayObject/usecase/DisplayObjectGetYUseCase.d.ts +11 -0
  73. package/src/DisplayObject/usecase/DisplayObjectGetYUseCase.js +16 -0
  74. package/src/DisplayObject/usecase/DisplayObjectHitTestObjectUseCase.d.ts +10 -0
  75. package/src/DisplayObject/usecase/DisplayObjectHitTestObjectUseCase.js +35 -0
  76. package/src/DisplayObject/usecase/DisplayObjectHitTestPointUseCase.d.ts +14 -0
  77. package/src/DisplayObject/usecase/DisplayObjectHitTestPointUseCase.js +69 -0
  78. package/src/DisplayObject/usecase/DisplayObjectIsMaskReflectedInDisplayUseCase.d.ts +16 -0
  79. package/src/DisplayObject/usecase/DisplayObjectIsMaskReflectedInDisplayUseCase.js +59 -0
  80. package/src/DisplayObject/usecase/DisplayObjectSetAlphaUseCase.d.ts +12 -0
  81. package/src/DisplayObject/usecase/DisplayObjectSetAlphaUseCase.js +32 -0
  82. package/src/DisplayObject/usecase/DisplayObjectSetBlendModeUseCase.d.ts +13 -0
  83. package/src/DisplayObject/usecase/DisplayObjectSetBlendModeUseCase.js +18 -0
  84. package/src/DisplayObject/usecase/DisplayObjectSetFiltersUseCase.d.ts +13 -0
  85. package/src/DisplayObject/usecase/DisplayObjectSetFiltersUseCase.js +15 -0
  86. package/src/DisplayObject/usecase/DisplayObjectSetHeightUseCase.d.ts +12 -0
  87. package/src/DisplayObject/usecase/DisplayObjectSetHeightUseCase.js +30 -0
  88. package/src/DisplayObject/usecase/DisplayObjectSetRotationUseCase.d.ts +12 -0
  89. package/src/DisplayObject/usecase/DisplayObjectSetRotationUseCase.js +63 -0
  90. package/src/DisplayObject/usecase/DisplayObjectSetScaleXUseCase.d.ts +12 -0
  91. package/src/DisplayObject/usecase/DisplayObjectSetScaleXUseCase.js +48 -0
  92. package/src/DisplayObject/usecase/DisplayObjectSetScaleYUseCase.d.ts +12 -0
  93. package/src/DisplayObject/usecase/DisplayObjectSetScaleYUseCase.js +48 -0
  94. package/src/DisplayObject/usecase/DisplayObjectSetWidthUseCase.d.ts +12 -0
  95. package/src/DisplayObject/usecase/DisplayObjectSetWidthUseCase.js +30 -0
  96. package/src/DisplayObject/usecase/DisplayObjectSetXUseCase.d.ts +12 -0
  97. package/src/DisplayObject/usecase/DisplayObjectSetXUseCase.js +27 -0
  98. package/src/DisplayObject/usecase/DisplayObjectSetYUseCase.d.ts +12 -0
  99. package/src/DisplayObject/usecase/DisplayObjectSetYUseCase.js +27 -0
  100. package/src/DisplayObject.d.ts +706 -0
  101. package/src/DisplayObject.js +1094 -0
  102. package/src/DisplayObjectContainer/service/DisplayObjectContainerAddedToStageService.d.ts +11 -0
  103. package/src/DisplayObjectContainer/service/DisplayObjectContainerAddedToStageService.js +24 -0
  104. package/src/DisplayObjectContainer/service/DisplayObjectContainerAssignStageAndRootService.d.ts +11 -0
  105. package/src/DisplayObjectContainer/service/DisplayObjectContainerAssignStageAndRootService.js +26 -0
  106. package/src/DisplayObjectContainer/service/DisplayObjectContainerContainsService.d.ts +13 -0
  107. package/src/DisplayObjectContainer/service/DisplayObjectContainerContainsService.js +32 -0
  108. package/src/DisplayObjectContainer/service/DisplayObjectContainerGetChildAtService.d.ts +13 -0
  109. package/src/DisplayObjectContainer/service/DisplayObjectContainerGetChildAtService.js +14 -0
  110. package/src/DisplayObjectContainer/service/DisplayObjectContainerGetChildByNameService.d.ts +13 -0
  111. package/src/DisplayObjectContainer/service/DisplayObjectContainerGetChildByNameService.js +24 -0
  112. package/src/DisplayObjectContainer/service/DisplayObjectContainerRemovedToStageService.d.ts +12 -0
  113. package/src/DisplayObjectContainer/service/DisplayObjectContainerRemovedToStageService.js +24 -0
  114. package/src/DisplayObjectContainer/service/DisplayObjectContainerUnAssignStageAndRootService.d.ts +11 -0
  115. package/src/DisplayObjectContainer/service/DisplayObjectContainerUnAssignStageAndRootService.js +29 -0
  116. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerAddChildUseCase.d.ts +13 -0
  117. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerAddChildUseCase.js +53 -0
  118. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerAdvanceFrameUseCase.d.ts +11 -0
  119. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerAdvanceFrameUseCase.js +39 -0
  120. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerCalcBoundsMatrixUseCase.d.ts +11 -0
  121. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerCalcBoundsMatrixUseCase.js +62 -0
  122. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerGenerateClipQueueUseCase.d.ts +13 -0
  123. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerGenerateClipQueueUseCase.js +49 -0
  124. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerGenerateRenderQueueUseCase.d.ts +18 -0
  125. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerGenerateRenderQueueUseCase.js +163 -0
  126. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerMouseHitUseCase.d.ts +17 -0
  127. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerMouseHitUseCase.js +206 -0
  128. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerPrepareUseCase.d.ts +11 -0
  129. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerPrepareUseCase.js +32 -0
  130. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRawBoundsMatrixUseCase.d.ts +12 -0
  131. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRawBoundsMatrixUseCase.js +62 -0
  132. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildAtUseCase.d.ts +12 -0
  133. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildAtUseCase.js +19 -0
  134. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildUseCase.d.ts +13 -0
  135. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildUseCase.js +66 -0
  136. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildrenUseCase.d.ts +12 -0
  137. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerRemoveChildrenUseCase.js +25 -0
  138. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSetChildIndexUseCase.d.ts +14 -0
  139. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSetChildIndexUseCase.js +22 -0
  140. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSwapChildrenAtUseCase.d.ts +13 -0
  141. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSwapChildrenAtUseCase.js +23 -0
  142. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSwapChildrenUseCase.d.ts +14 -0
  143. package/src/DisplayObjectContainer/usecase/DisplayObjectContainerSwapChildrenUseCase.js +23 -0
  144. package/src/DisplayObjectContainer.d.ts +229 -0
  145. package/src/DisplayObjectContainer.js +317 -0
  146. package/src/DisplayObjectUtil.d.ts +288 -0
  147. package/src/DisplayObjectUtil.js +465 -0
  148. package/src/FrameLabel.d.ts +45 -0
  149. package/src/FrameLabel.js +59 -0
  150. package/src/Graphics/service/GraphicsCalcFillBoundsService.d.ts +13 -0
  151. package/src/Graphics/service/GraphicsCalcFillBoundsService.js +17 -0
  152. package/src/Graphics/service/GraphicsCalcLineBoundsService.d.ts +17 -0
  153. package/src/Graphics/service/GraphicsCalcLineBoundsService.js +58 -0
  154. package/src/Graphics/service/GraphicsDrawEllipseService.d.ts +15 -0
  155. package/src/Graphics/service/GraphicsDrawEllipseService.js +36 -0
  156. package/src/Graphics/service/GraphicsDrawRectService.d.ts +15 -0
  157. package/src/Graphics/service/GraphicsDrawRectService.js +28 -0
  158. package/src/Graphics/service/GraphicsDrawRoundRectService.d.ts +17 -0
  159. package/src/Graphics/service/GraphicsDrawRoundRectService.js +48 -0
  160. package/src/Graphics/service/GraphicsHitTestService.d.ts +13 -0
  161. package/src/Graphics/service/GraphicsHitTestService.js +73 -0
  162. package/src/Graphics/service/GraphicsMargePathService.d.ts +15 -0
  163. package/src/Graphics/service/GraphicsMargePathService.js +23 -0
  164. package/src/Graphics/service/GraphicsToNumberArrayService.d.ts +10 -0
  165. package/src/Graphics/service/GraphicsToNumberArrayService.js +242 -0
  166. package/src/Graphics/usecase/GraphicsCalcBoundsUseCase.d.ts +17 -0
  167. package/src/Graphics/usecase/GraphicsCalcBoundsUseCase.js +28 -0
  168. package/{dist → src}/Graphics.d.ts +240 -217
  169. package/src/Graphics.js +1224 -0
  170. package/{dist → src}/GraphicsBitmapFill.d.ts +4 -5
  171. package/{dist → src}/GraphicsBitmapFill.js +29 -6
  172. package/{dist → src}/GraphicsGradientFill.d.ts +12 -13
  173. package/{dist → src}/GraphicsGradientFill.js +68 -19
  174. package/src/InteractiveObject.d.ts +37 -0
  175. package/src/InteractiveObject.js +51 -0
  176. package/src/Loader/service/LoaderBuildService.d.ts +13 -0
  177. package/src/Loader/service/LoaderBuildService.js +46 -0
  178. package/src/Loader/service/LoaderLoadStartEventService.d.ts +12 -0
  179. package/src/Loader/service/LoaderLoadStartEventService.js +19 -0
  180. package/src/Loader/service/LoaderProgressEventService.d.ts +12 -0
  181. package/src/Loader/service/LoaderProgressEventService.js +16 -0
  182. package/src/Loader/usecase/LoaderLoadEndEventUseCase.d.ts +12 -0
  183. package/src/Loader/usecase/LoaderLoadEndEventUseCase.js +39 -0
  184. package/src/Loader/usecase/LoaderLoadJsonUseCase.d.ts +14 -0
  185. package/src/Loader/usecase/LoaderLoadJsonUseCase.js +33 -0
  186. package/src/Loader/usecase/LoaderLoadUseCase.d.ts +14 -0
  187. package/src/Loader/usecase/LoaderLoadUseCase.js +39 -0
  188. package/src/Loader/worker/ZlibInflateWorker.d.ts +2 -0
  189. package/src/Loader/worker/ZlibInflateWorker.js +20 -0
  190. package/src/Loader.d.ts +82 -0
  191. package/src/Loader.js +104 -0
  192. package/src/LoaderInfo.d.ts +68 -0
  193. package/src/LoaderInfo.js +96 -0
  194. package/src/LoopConfig.d.ts +61 -0
  195. package/src/LoopConfig.js +86 -0
  196. package/src/LoopType.d.ts +59 -0
  197. package/src/LoopType.js +69 -0
  198. package/src/MovieClip/service/MovieClipAddActionsService.d.ts +12 -0
  199. package/src/MovieClip/service/MovieClipAddActionsService.js +27 -0
  200. package/src/MovieClip/service/MovieClipAddFrameLabelService.d.ts +13 -0
  201. package/src/MovieClip/service/MovieClipAddFrameLabelService.js +16 -0
  202. package/src/MovieClip/service/MovieClipAddLabelsService.d.ts +13 -0
  203. package/src/MovieClip/service/MovieClipAddLabelsService.js +20 -0
  204. package/src/MovieClip/service/MovieClipBuildSoundsService.d.ts +15 -0
  205. package/src/MovieClip/service/MovieClipBuildSoundsService.js +47 -0
  206. package/src/MovieClip/service/MovieClipCurrentFrameLabelService.d.ts +12 -0
  207. package/src/MovieClip/service/MovieClipCurrentFrameLabelService.js +19 -0
  208. package/src/MovieClip/service/MovieClipCurrentLabelsService.d.ts +12 -0
  209. package/src/MovieClip/service/MovieClipCurrentLabelsService.js +14 -0
  210. package/src/MovieClip/service/MovieClipDispatchFrameLabelEventService.d.ts +13 -0
  211. package/src/MovieClip/service/MovieClipDispatchFrameLabelEventService.js +24 -0
  212. package/src/MovieClip/service/MovieClipGetChildrenService.d.ts +13 -0
  213. package/src/MovieClip/service/MovieClipGetChildrenService.js +133 -0
  214. package/src/MovieClip/service/MovieClipGetFrameForLabelService.d.ts +12 -0
  215. package/src/MovieClip/service/MovieClipGetFrameForLabelService.js +22 -0
  216. package/src/MovieClip/service/MovieClipSetActionService.d.ts +12 -0
  217. package/src/MovieClip/service/MovieClipSetActionService.js +21 -0
  218. package/src/MovieClip/service/MovieClipSetSoundsService.d.ts +13 -0
  219. package/src/MovieClip/service/MovieClipSetSoundsService.js +21 -0
  220. package/src/MovieClip/usecase/MovieClipAdvanceFrameUseCase.d.ts +11 -0
  221. package/src/MovieClip/usecase/MovieClipAdvanceFrameUseCase.js +36 -0
  222. package/src/MovieClip/usecase/MovieClipBuildDictionaryCharacterUseCase.d.ts +17 -0
  223. package/src/MovieClip/usecase/MovieClipBuildDictionaryCharacterUseCase.js +51 -0
  224. package/src/MovieClip/usecase/MovieClipBuildFromCharacterUseCase.d.ts +12 -0
  225. package/src/MovieClip/usecase/MovieClipBuildFromCharacterUseCase.js +33 -0
  226. package/src/MovieClip/usecase/MovieClipGoToFrameUseCase.d.ts +12 -0
  227. package/src/MovieClip/usecase/MovieClipGoToFrameUseCase.js +58 -0
  228. package/src/MovieClip/usecase/MovieClipGotoAndPlayUseCase.d.ts +12 -0
  229. package/src/MovieClip/usecase/MovieClipGotoAndPlayUseCase.js +15 -0
  230. package/src/MovieClip/usecase/MovieClipGotoAndStopUseCase.d.ts +12 -0
  231. package/src/MovieClip/usecase/MovieClipGotoAndStopUseCase.js +16 -0
  232. package/src/MovieClip/usecase/MovieClipNextFrameUseCase.d.ts +11 -0
  233. package/src/MovieClip/usecase/MovieClipNextFrameUseCase.js +17 -0
  234. package/src/MovieClip/usecase/MovieClipPrepareActionUseCase.d.ts +11 -0
  235. package/src/MovieClip/usecase/MovieClipPrepareActionUseCase.js +21 -0
  236. package/src/MovieClip/usecase/MovieClipPrepareSoundUseCase.d.ts +11 -0
  237. package/src/MovieClip/usecase/MovieClipPrepareSoundUseCase.js +18 -0
  238. package/src/MovieClip/usecase/MovieClipPrevFrameUseCase.d.ts +11 -0
  239. package/src/MovieClip/usecase/MovieClipPrevFrameUseCase.js +17 -0
  240. package/{dist → src}/MovieClip.d.ts +128 -167
  241. package/src/MovieClip.js +409 -0
  242. package/src/Shape/service/ShapeGetRawBoundsService.d.ts +10 -0
  243. package/src/Shape/service/ShapeGetRawBoundsService.js +13 -0
  244. package/src/Shape/usecase/ShapeBuildFromCharacterUseCase.d.ts +13 -0
  245. package/src/Shape/usecase/ShapeBuildFromCharacterUseCase.js +121 -0
  246. package/src/Shape/usecase/ShapeCalcBoundsMatrixUseCase.d.ts +12 -0
  247. package/src/Shape/usecase/ShapeCalcBoundsMatrixUseCase.js +30 -0
  248. package/src/Shape/usecase/ShapeClearBitmapBufferUseCase.d.ts +11 -0
  249. package/src/Shape/usecase/ShapeClearBitmapBufferUseCase.js +24 -0
  250. package/src/Shape/usecase/ShapeGenerateClipQueueUseCase.d.ts +12 -0
  251. package/src/Shape/usecase/ShapeGenerateClipQueueUseCase.js +30 -0
  252. package/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.d.ts +17 -0
  253. package/src/Shape/usecase/ShapeGenerateRenderQueueUseCase.js +241 -0
  254. package/src/Shape/usecase/ShapeHitTestUseCase.d.ts +15 -0
  255. package/src/Shape/usecase/ShapeHitTestUseCase.js +34 -0
  256. package/src/Shape/usecase/ShapeLoadSrcUseCase.d.ts +12 -0
  257. package/src/Shape/usecase/ShapeLoadSrcUseCase.js +32 -0
  258. package/src/Shape/usecase/ShapeSetBitmapBufferUseCase.d.ts +14 -0
  259. package/src/Shape/usecase/ShapeSetBitmapBufferUseCase.js +22 -0
  260. package/src/Shape.d.ts +153 -0
  261. package/src/Shape.js +235 -0
  262. package/src/Sprite/service/SpriteStartDragService.d.ts +14 -0
  263. package/src/Sprite/service/SpriteStartDragService.js +22 -0
  264. package/src/Sprite/service/SpriteStopDragService.d.ts +11 -0
  265. package/src/Sprite/service/SpriteStopDragService.js +17 -0
  266. package/src/Sprite.d.ts +126 -0
  267. package/src/Sprite.js +192 -0
  268. package/src/Stage/service/StageExecuteFrameActionsService.d.ts +9 -0
  269. package/src/Stage/service/StageExecuteFrameActionsService.js +34 -0
  270. package/src/Stage/service/StageExecuteFrameSoundsService.d.ts +9 -0
  271. package/src/Stage/service/StageExecuteFrameSoundsService.js +35 -0
  272. package/src/Stage/usecase/StageGenerateRenderQueueUseCase.d.ts +18 -0
  273. package/src/Stage/usecase/StageGenerateRenderQueueUseCase.js +42 -0
  274. package/src/Stage/usecase/StageReadyUseCase.d.ts +11 -0
  275. package/src/Stage/usecase/StageReadyUseCase.js +20 -0
  276. package/src/Stage/usecase/StageTickerUseCase.d.ts +9 -0
  277. package/src/Stage/usecase/StageTickerUseCase.js +20 -0
  278. package/src/Stage.d.ts +161 -0
  279. package/src/Stage.js +240 -0
  280. package/src/TextField/service/TextFieldGetRawBoundsService.d.ts +10 -0
  281. package/src/TextField/service/TextFieldGetRawBoundsService.js +12 -0
  282. package/src/TextField/usecase/TextFieldCalcBoundsMatrixUseCase.d.ts +12 -0
  283. package/src/TextField/usecase/TextFieldCalcBoundsMatrixUseCase.js +30 -0
  284. package/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.d.ts +17 -0
  285. package/src/TextField/usecase/TextFieldGenerateRenderQueueUseCase.js +200 -0
  286. package/src/TextField/usecase/TextFieldHitTestUseCase.d.ts +15 -0
  287. package/src/TextField/usecase/TextFieldHitTestUseCase.js +36 -0
  288. package/src/Video/service/VideoGetRawBoundsService.d.ts +11 -0
  289. package/src/Video/service/VideoGetRawBoundsService.js +13 -0
  290. package/src/Video/usecase/VideoCalcBoundsMatrixUseCase.d.ts +12 -0
  291. package/src/Video/usecase/VideoCalcBoundsMatrixUseCase.js +30 -0
  292. package/src/Video/usecase/VideoGenerateRenderQueueUseCase.d.ts +18 -0
  293. package/src/Video/usecase/VideoGenerateRenderQueueUseCase.js +177 -0
  294. package/src/Video/usecase/VideoHitTestUseCase.d.ts +15 -0
  295. package/src/Video/usecase/VideoHitTestUseCase.js +37 -0
  296. package/{dist → src}/index.d.ts +0 -3
  297. package/{dist → src}/index.js +0 -3
  298. package/src/interface/IAjaxEvent.d.ts +5 -0
  299. package/src/interface/IAjaxEvent.js +1 -0
  300. package/src/interface/IAjaxOption.d.ts +13 -0
  301. package/src/interface/IAjaxOption.js +1 -0
  302. package/src/interface/IAnimationToolData.d.ts +8 -0
  303. package/src/interface/IAnimationToolData.js +1 -0
  304. package/src/interface/IAnimationToolDataZlib.d.ts +4 -0
  305. package/src/interface/IAnimationToolDataZlib.js +1 -0
  306. package/src/interface/IBlendMode.d.ts +1 -0
  307. package/src/interface/IBlendMode.js +1 -0
  308. package/src/interface/IBounds.d.ts +6 -0
  309. package/src/interface/IBounds.js +1 -0
  310. package/src/interface/ICapsStyle.d.ts +1 -0
  311. package/src/interface/ICapsStyle.js +1 -0
  312. package/src/interface/ICharacter.d.ts +5 -0
  313. package/src/interface/ICharacter.js +1 -0
  314. package/src/interface/IColorStop.d.ts +7 -0
  315. package/src/interface/IColorStop.js +1 -0
  316. package/src/interface/IDictionaryTag.d.ts +8 -0
  317. package/src/interface/IDictionaryTag.js +1 -0
  318. package/src/interface/IDisplayObject.d.ts +2 -0
  319. package/src/interface/IDisplayObject.js +1 -0
  320. package/src/interface/IFilterArray.d.ts +2 -0
  321. package/src/interface/IFilterArray.js +1 -0
  322. package/src/interface/IGradientType.d.ts +1 -0
  323. package/src/interface/IGradientType.js +1 -0
  324. package/src/interface/IGrid.d.ts +6 -0
  325. package/src/interface/IGrid.js +1 -0
  326. package/src/interface/IInterpolationMethod.d.ts +1 -0
  327. package/src/interface/IInterpolationMethod.js +1 -0
  328. package/src/interface/IJointStyle.d.ts +1 -0
  329. package/src/interface/IJointStyle.js +1 -0
  330. package/src/interface/ILoaderInfoData.d.ts +7 -0
  331. package/src/interface/ILoaderInfoData.js +1 -0
  332. package/src/interface/ILoopConfig.d.ts +8 -0
  333. package/src/interface/ILoopConfig.js +1 -0
  334. package/src/interface/ILoopType.d.ts +1 -0
  335. package/src/interface/ILoopType.js +1 -0
  336. package/src/interface/IMovieClipActionObject.d.ts +5 -0
  337. package/src/interface/IMovieClipActionObject.js +1 -0
  338. package/src/interface/IMovieClipCharacter.d.ts +17 -0
  339. package/src/interface/IMovieClipCharacter.js +1 -0
  340. package/src/interface/IMovieClipLabelObject.d.ts +4 -0
  341. package/src/interface/IMovieClipLabelObject.js +1 -0
  342. package/src/interface/IMovieClipSoundObject.d.ts +5 -0
  343. package/src/interface/IMovieClipSoundObject.js +1 -0
  344. package/src/interface/IParent.d.ts +2 -0
  345. package/src/interface/IParent.js +1 -0
  346. package/src/interface/IPlaceObject.d.ts +14 -0
  347. package/src/interface/IPlaceObject.js +1 -0
  348. package/src/interface/IPlayerHitObject.d.ts +7 -0
  349. package/src/interface/IPlayerHitObject.js +1 -0
  350. package/src/interface/IShapeCharacter.d.ts +14 -0
  351. package/src/interface/IShapeCharacter.js +1 -0
  352. package/src/interface/ISoundCharacter.d.ts +4 -0
  353. package/src/interface/ISoundCharacter.js +1 -0
  354. package/src/interface/ISoundTag.d.ts +6 -0
  355. package/src/interface/ISoundTag.js +1 -0
  356. package/src/interface/ISpreadMethod.d.ts +1 -0
  357. package/src/interface/ISpreadMethod.js +1 -0
  358. package/src/interface/ISprite.d.ts +2 -0
  359. package/src/interface/ISprite.js +1 -0
  360. package/src/interface/IStageData.d.ts +6 -0
  361. package/src/interface/IStageData.js +1 -0
  362. package/src/interface/ISurfaceFilter.d.ts +6 -0
  363. package/src/interface/ISurfaceFilter.js +1 -0
  364. package/src/interface/ITextFieldCharacter.d.ts +26 -0
  365. package/src/interface/ITextFieldCharacter.js +1 -0
  366. package/src/interface/ITextFieldType.d.ts +1 -0
  367. package/src/interface/ITextFieldType.js +1 -0
  368. package/src/interface/ITextFormatAlign.d.ts +1 -0
  369. package/src/interface/ITextFormatAlign.js +1 -0
  370. package/src/interface/IURLLoaderDataFormat.d.ts +1 -0
  371. package/src/interface/IURLLoaderDataFormat.js +1 -0
  372. package/src/interface/IURLRequestHeader.d.ts +4 -0
  373. package/src/interface/IURLRequestHeader.js +1 -0
  374. package/src/interface/IURLRequestMethod.d.ts +1 -0
  375. package/src/interface/IURLRequestMethod.js +1 -0
  376. package/src/interface/IVideoCharacter.d.ts +11 -0
  377. package/src/interface/IVideoCharacter.js +1 -0
  378. package/dist/BitmapData.d.ts +0 -151
  379. package/dist/BitmapData.js +0 -417
  380. package/dist/DisplayObject.d.ts +0 -563
  381. package/dist/DisplayObject.js +0 -1791
  382. package/dist/DisplayObjectContainer.d.ts +0 -346
  383. package/dist/DisplayObjectContainer.js +0 -1612
  384. package/dist/FrameLabel.d.ts +0 -98
  385. package/dist/FrameLabel.js +0 -120
  386. package/dist/Graphics.js +0 -2304
  387. package/dist/InteractiveObject.d.ts +0 -32
  388. package/dist/InteractiveObject.js +0 -43
  389. package/dist/Loader.d.ts +0 -140
  390. package/dist/Loader.js +0 -319
  391. package/dist/LoaderInfo.d.ts +0 -120
  392. package/dist/LoaderInfo.js +0 -184
  393. package/dist/LoopConfig.d.ts +0 -108
  394. package/dist/LoopConfig.js +0 -156
  395. package/dist/LoopType.d.ts +0 -104
  396. package/dist/LoopType.js +0 -122
  397. package/dist/MovieClip.js +0 -934
  398. package/dist/Shape.d.ts +0 -162
  399. package/dist/Shape.js +0 -517
  400. package/dist/Sprite.d.ts +0 -158
  401. package/dist/Sprite.js +0 -258
  402. package/dist/Stage.d.ts +0 -164
  403. package/dist/Stage.js +0 -252
  404. package/dist/TextField.d.ts +0 -656
  405. package/dist/TextField.js +0 -2807
@@ -0,0 +1,30 @@
1
+ import { Matrix } from "@next2d/geom";
2
+ import { renderQueue } from "@next2d/render-queue";
3
+ import { $RENDERER_SHAPE_TYPE } from "../../DisplayObjectUtil";
4
+ import { execute as displayObjectGetRawMatrixUseCase } from "../../DisplayObject/usecase/DisplayObjectGetRawMatrixUseCase";
5
+ /**
6
+ * @description renderer workerに渡すShapeのマスク描画データを生成
7
+ * Generate mask drawing data of Shape to pass to renderer worker
8
+ *
9
+ * @param {Shape} shape
10
+ * @param {Float32Array} matrix
11
+ * @return {void}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export const execute = (shape, matrix) => {
16
+ // transformed matrix(tMatrix)
17
+ const rawMatrix = displayObjectGetRawMatrixUseCase(shape);
18
+ const tMatrix = rawMatrix
19
+ ? Matrix.multiply(matrix, rawMatrix)
20
+ : matrix;
21
+ if (tMatrix !== matrix) {
22
+ Matrix.release(tMatrix);
23
+ }
24
+ const hasGrid = rawMatrix && shape.scale9Grid
25
+ ? Math.abs(rawMatrix[1]) < 0.001 && Math.abs(rawMatrix[2]) < 0.0001
26
+ : false;
27
+ const buffer = shape.graphics.buffer;
28
+ renderQueue.push($RENDERER_SHAPE_TYPE, tMatrix[0], tMatrix[1], tMatrix[2], tMatrix[3], tMatrix[4], tMatrix[5], +hasGrid, buffer.length);
29
+ renderQueue.set(buffer);
30
+ };
@@ -0,0 +1,17 @@
1
+ import type { Shape } from "../../Shape";
2
+ /**
3
+ * @description renderer workerに渡すShapeの描画データを生成
4
+ * Generate drawing data of Shape to pass to renderer
5
+ *
6
+ * @param {Shape} shape
7
+ * @param {Float32Array} matrix
8
+ * @param {Float32Array} color_transform
9
+ * @param {number} renderer_width
10
+ * @param {number} renderer_height
11
+ * @param {number} point_x
12
+ * @param {number} point_y
13
+ * @return {void}
14
+ * @method
15
+ * @protected
16
+ */
17
+ export declare const execute: (shape: Shape, matrix: Float32Array, color_transform: Float32Array, renderer_width: number, renderer_height: number, point_x: number, point_y: number) => void;
@@ -0,0 +1,241 @@
1
+ import { renderQueue } from "@next2d/render-queue";
2
+ import { execute as displayObjectGetRawColorTransformUseCase } from "../../DisplayObject/usecase/DisplayObjectGetRawColorTransformUseCase";
3
+ import { execute as displayObjectGetRawMatrixUseCase } from "../../DisplayObject/usecase/DisplayObjectGetRawMatrixUseCase";
4
+ import { execute as displayObjectCalcBoundsMatrixService } from "../../DisplayObject/service/DisplayObjectCalcBoundsMatrixService";
5
+ import { execute as displayObjectGenerateHashService } from "../../DisplayObject/service/DisplayObjectGenerateHashService";
6
+ import { execute as displayObjectBlendToNumberService } from "../../DisplayObject/service/DisplayObjectBlendToNumberService";
7
+ import { stage } from "../../Stage";
8
+ import { $cacheStore } from "@next2d/cache";
9
+ import { $clamp, $RENDERER_SHAPE_TYPE, $getArray, $poolArray, $poolBoundsArray, $MATRIX_ARRAY_IDENTITY, $getFloat32Array6, $poolFloat32Array6, $getBoundsArray } from "../../DisplayObjectUtil";
10
+ import { ColorTransform, Matrix } from "@next2d/geom";
11
+ /**
12
+ * @description renderer workerに渡すShapeの描画データを生成
13
+ * Generate drawing data of Shape to pass to renderer
14
+ *
15
+ * @param {Shape} shape
16
+ * @param {Float32Array} matrix
17
+ * @param {Float32Array} color_transform
18
+ * @param {number} renderer_width
19
+ * @param {number} renderer_height
20
+ * @param {number} point_x
21
+ * @param {number} point_y
22
+ * @return {void}
23
+ * @method
24
+ * @protected
25
+ */
26
+ export const execute = (shape, matrix, color_transform, renderer_width, renderer_height, point_x, point_y) => {
27
+ if (!shape.visible) {
28
+ renderQueue.push(0);
29
+ return;
30
+ }
31
+ const graphics = shape.graphics;
32
+ const isDrawable = graphics.isDrawable;
33
+ if (!isDrawable && !shape.isBitmap) {
34
+ renderQueue.push(0);
35
+ return;
36
+ }
37
+ // transformed ColorTransform(tColorTransform)
38
+ const rawColor = displayObjectGetRawColorTransformUseCase(shape);
39
+ const tColorTransform = rawColor
40
+ ? ColorTransform.multiply(color_transform, rawColor)
41
+ : color_transform;
42
+ const alpha = $clamp(tColorTransform[3] + tColorTransform[7] / 255, 0, 1, 0);
43
+ if (!alpha) {
44
+ if (tColorTransform !== color_transform) {
45
+ ColorTransform.release(tColorTransform);
46
+ }
47
+ renderQueue.push(0);
48
+ return;
49
+ }
50
+ // transformed matrix(tMatrix)
51
+ const rawMatrix = displayObjectGetRawMatrixUseCase(shape);
52
+ const tMatrix = rawMatrix
53
+ ? Matrix.multiply(matrix, rawMatrix)
54
+ : matrix;
55
+ const bounds = displayObjectCalcBoundsMatrixService(graphics.xMin, graphics.yMin, graphics.xMax, graphics.yMax, tMatrix);
56
+ const xMin = bounds[0];
57
+ const yMin = bounds[1];
58
+ const xMax = bounds[2];
59
+ const yMax = bounds[3];
60
+ $poolBoundsArray(bounds);
61
+ const width = Math.ceil(Math.abs(xMax - xMin));
62
+ const height = Math.ceil(Math.abs(yMax - yMin));
63
+ switch (true) {
64
+ case width === 0:
65
+ case height === 0:
66
+ case width === -Infinity:
67
+ case height === -Infinity:
68
+ case width === Infinity:
69
+ case height === Infinity:
70
+ if (tColorTransform !== color_transform) {
71
+ ColorTransform.release(tColorTransform);
72
+ }
73
+ if (tMatrix !== matrix) {
74
+ Matrix.release(tMatrix);
75
+ }
76
+ $poolBoundsArray(bounds);
77
+ renderQueue.push(0);
78
+ return;
79
+ default:
80
+ break;
81
+ }
82
+ if (point_x > xMin + width
83
+ || point_y > yMin + height
84
+ || xMin > renderer_width
85
+ || yMin > renderer_height) {
86
+ if (tColorTransform !== color_transform) {
87
+ ColorTransform.release(tColorTransform);
88
+ }
89
+ if (tMatrix !== matrix) {
90
+ Matrix.release(tMatrix);
91
+ }
92
+ $poolBoundsArray(bounds);
93
+ renderQueue.push(0);
94
+ return;
95
+ }
96
+ const isGridEnabled = rawMatrix && shape.scale9Grid
97
+ ? Math.abs(rawMatrix[1]) < 0.001 && Math.abs(rawMatrix[2]) < 0.0001
98
+ : false;
99
+ if (!shape.uniqueKey) {
100
+ if (shape.characterId && shape.loaderInfo) {
101
+ const values = $getArray(shape.loaderInfo.id, shape.characterId);
102
+ shape.uniqueKey = `${displayObjectGenerateHashService(new Float32Array(values))}`;
103
+ $poolArray(values);
104
+ }
105
+ else {
106
+ shape.uniqueKey = shape.isBitmap
107
+ ? `${shape.instanceId}`
108
+ : `${displayObjectGenerateHashService(graphics.buffer)}`;
109
+ }
110
+ }
111
+ const xScale = Math.round(Math.sqrt(tMatrix[0] * tMatrix[0]
112
+ + tMatrix[1] * tMatrix[1]) * 10000) / 10000;
113
+ const yScale = Math.round(Math.sqrt(tMatrix[2] * tMatrix[2]
114
+ + tMatrix[3] * tMatrix[3]) * 10000) / 10000;
115
+ if (!shape.isBitmap
116
+ && !shape.cacheKey
117
+ || shape.cacheParams[0] !== xScale
118
+ || shape.cacheParams[1] !== yScale
119
+ || shape.cacheParams[2] !== tColorTransform[7]) {
120
+ shape.cacheKey = $cacheStore.generateKeys(xScale, yScale, tColorTransform[7]);
121
+ shape.cacheParams[0] = xScale;
122
+ shape.cacheParams[1] = yScale;
123
+ shape.cacheParams[2] = tColorTransform[7];
124
+ }
125
+ const cacheKey = shape.isBitmap
126
+ ? 0
127
+ : shape.cacheKey;
128
+ // rennder on
129
+ renderQueue.push(1, $RENDERER_SHAPE_TYPE, tMatrix[0], tMatrix[1], tMatrix[2], tMatrix[3], tMatrix[4], tMatrix[5], tColorTransform[0], tColorTransform[1], tColorTransform[2], tColorTransform[3], tColorTransform[4], tColorTransform[5], tColorTransform[6], tColorTransform[7], xMin, yMin, xMax, yMax, graphics.xMin, graphics.yMin, graphics.xMax, graphics.yMax, +isGridEnabled, +isDrawable, +shape.isBitmap, +shape.uniqueKey, cacheKey);
130
+ if (shape.$cache && !shape.$cache.has(shape.uniqueKey)) {
131
+ shape.$cache = null;
132
+ }
133
+ const cache = shape.$cache
134
+ ? shape.$cache.get(`${cacheKey}`)
135
+ : $cacheStore.get(shape.uniqueKey, `${cacheKey}`);
136
+ if (!cache) {
137
+ renderQueue.push(0);
138
+ if (isGridEnabled) {
139
+ const scale = stage.rendererScale;
140
+ const stageMatrix = $getFloat32Array6(scale, 0, 0, scale, 0, 0);
141
+ const pMatrix = Matrix.multiply(stageMatrix, rawMatrix ? rawMatrix : $MATRIX_ARRAY_IDENTITY);
142
+ $poolFloat32Array6(stageMatrix);
143
+ const rawData = shape.parent.concatenatedMatrix.rawData;
144
+ const aMatrix = $getFloat32Array6(rawData[0], rawData[1], rawData[2], rawData[3], rawData[4] * scale - xMin, rawData[5] * scale - yMin);
145
+ Matrix.release(rawData);
146
+ const apMatrix = Matrix.multiply(aMatrix, pMatrix);
147
+ const aOffsetX = apMatrix[4] - (tMatrix[4] - xMin);
148
+ const aOffsetY = apMatrix[5] - (tMatrix[5] - yMin);
149
+ $poolFloat32Array6(apMatrix);
150
+ const parentBounds = displayObjectCalcBoundsMatrixService(graphics.xMin, graphics.yMin, graphics.xMax, graphics.yMax, pMatrix);
151
+ const parentXMin = parentBounds[0];
152
+ const parentYMin = parentBounds[1];
153
+ const parentXMax = parentBounds[2];
154
+ const parentYMax = parentBounds[3];
155
+ $poolBoundsArray(parentBounds);
156
+ const parentWidth = Math.ceil(Math.abs(parentXMax - parentXMin));
157
+ const parentHeight = Math.ceil(Math.abs(parentYMax - parentYMin));
158
+ const scale9Grid = shape.scale9Grid;
159
+ const actualWidth = Math.abs(graphics.xMax - graphics.xMin);
160
+ const actualHeight = Math.abs(graphics.yMax - graphics.yMin);
161
+ // 等倍サイズでの正規化
162
+ const minXST = scale9Grid.width > 0 ? (scale9Grid.x - graphics.xMin) / actualWidth : 0.00001;
163
+ const minYST = scale9Grid.height > 0 ? (scale9Grid.y - graphics.yMin) / actualHeight : 0.00001;
164
+ const maxXST = scale9Grid.width > 0 ? (scale9Grid.x + scale9Grid.width - graphics.xMin) / actualWidth : 0.99999;
165
+ const maxYST = scale9Grid.height > 0 ? (scale9Grid.y + scale9Grid.height - graphics.yMin) / actualHeight : 0.99999;
166
+ // 現在サイズでの正規化
167
+ const sameWidth = Math.ceil(actualWidth * scale);
168
+ const sameHeight = Math.ceil(actualHeight * scale);
169
+ let minXPQ = sameWidth * minXST / parentWidth;
170
+ let minYPQ = sameHeight * minYST / parentHeight;
171
+ let maxXPQ = (parentWidth - sameWidth * (1 - maxXST)) / parentWidth;
172
+ let maxYPQ = (parentHeight - sameHeight * (1 - maxYST)) / parentHeight;
173
+ if (minXPQ >= maxXPQ) {
174
+ const m = minXST / (minXST + (1 - maxXST));
175
+ minXPQ = Math.max(m - 0.00001, 0);
176
+ maxXPQ = Math.min(m + 0.00001, 1);
177
+ }
178
+ if (minYPQ >= maxYPQ) {
179
+ const m = minYST / (minYST + (1 - maxYST));
180
+ minYPQ = Math.max(m - 0.00001, 0);
181
+ maxYPQ = Math.min(m + 0.00001, 1);
182
+ }
183
+ renderQueue.push(pMatrix[0], pMatrix[1], pMatrix[2], pMatrix[3], pMatrix[4], pMatrix[5], aMatrix[0], aMatrix[1], aMatrix[2], aMatrix[3], aMatrix[4] - aOffsetX, aMatrix[5] - aOffsetY, parentXMin, parentYMin, parentWidth, parentHeight, minXST, minYST, minXPQ, minYPQ, maxXST, maxYST, maxXPQ, maxYPQ);
184
+ $poolFloat32Array6(aMatrix);
185
+ $poolFloat32Array6(pMatrix);
186
+ }
187
+ const buffer = isDrawable || isGridEnabled
188
+ ? graphics.buffer
189
+ : shape.$bitmapBuffer;
190
+ renderQueue.push(buffer.length);
191
+ renderQueue.set(buffer);
192
+ $cacheStore.set(shape.uniqueKey, `${cacheKey}`, true);
193
+ if (shape.$cache) {
194
+ shape.$cache = null;
195
+ }
196
+ }
197
+ else {
198
+ if (!shape.$cache) {
199
+ shape.$cache = $cacheStore.getById(shape.uniqueKey);
200
+ shape.$cache.set(shape.uniqueKey, true);
201
+ }
202
+ renderQueue.push(1);
203
+ }
204
+ renderQueue.push(displayObjectBlendToNumberService(shape.blendMode));
205
+ if (shape.filters?.length) {
206
+ let updated = false;
207
+ const params = [];
208
+ const bounds = $getBoundsArray(0, 0, 0, 0);
209
+ for (let idx = 0; idx < shape.filters.length; idx++) {
210
+ const filter = shape.filters[idx];
211
+ if (!filter || !filter.canApplyFilter()) {
212
+ continue;
213
+ }
214
+ // フィルターが更新されたかをチェック
215
+ if (filter.$updated) {
216
+ updated = true;
217
+ }
218
+ filter.$updated = false;
219
+ filter.getBounds(bounds);
220
+ const buffer = filter.toNumberArray();
221
+ for (let idx = 0; idx < buffer.length; idx += 4096) {
222
+ params.push(...buffer.subarray(idx, idx + 4096));
223
+ }
224
+ }
225
+ const useFilfer = params.length > 0;
226
+ if (useFilfer) {
227
+ renderQueue.push(+useFilfer, +updated, bounds[0], bounds[1], bounds[2], bounds[3], params.length);
228
+ renderQueue.set(new Float32Array(params));
229
+ }
230
+ $poolBoundsArray(bounds);
231
+ }
232
+ else {
233
+ renderQueue.push(0);
234
+ }
235
+ if (tColorTransform !== color_transform) {
236
+ ColorTransform.release(tColorTransform);
237
+ }
238
+ if (tMatrix !== matrix) {
239
+ Matrix.release(tMatrix);
240
+ }
241
+ };
@@ -0,0 +1,15 @@
1
+ import type { IPlayerHitObject } from "../../interface/IPlayerHitObject";
2
+ import type { Shape } from "../../Shape";
3
+ /**
4
+ * @description Shape のヒット判定
5
+ * Hit judgment of Shape
6
+ *
7
+ * @param {Shape} shape
8
+ * @param {CanvasRenderingContext2D} hit_context
9
+ * @param {Float32Array} matrix
10
+ * @param {IPlayerHitObject} hit_object
11
+ * @return {boolean}
12
+ * @method
13
+ * @protected
14
+ */
15
+ export declare const execute: (shape: Shape, hit_context: CanvasRenderingContext2D, matrix: Float32Array, hit_object: IPlayerHitObject) => boolean;
@@ -0,0 +1,34 @@
1
+ import { Matrix } from "@next2d/geom";
2
+ import { execute as displayObjectGetRawMatrixUseCase } from "../../DisplayObject/usecase/DisplayObjectGetRawMatrixUseCase";
3
+ import { execute as graphicsHitTestService } from "../../Graphics/service/GraphicsHitTestService";
4
+ /**
5
+ * @description Shape のヒット判定
6
+ * Hit judgment of Shape
7
+ *
8
+ * @param {Shape} shape
9
+ * @param {CanvasRenderingContext2D} hit_context
10
+ * @param {Float32Array} matrix
11
+ * @param {IPlayerHitObject} hit_object
12
+ * @return {boolean}
13
+ * @method
14
+ * @protected
15
+ */
16
+ export const execute = (shape, hit_context, matrix, hit_object) => {
17
+ const graphics = shape.graphics;
18
+ const width = graphics.xMax - graphics.xMin;
19
+ const height = graphics.yMax - graphics.yMin;
20
+ if (width <= 0 || height <= 0) {
21
+ return false;
22
+ }
23
+ const rawMatrix = displayObjectGetRawMatrixUseCase(shape);
24
+ const tMatrix = rawMatrix
25
+ ? Matrix.multiply(matrix, rawMatrix)
26
+ : matrix;
27
+ hit_context.beginPath();
28
+ hit_context.setTransform(tMatrix[0], tMatrix[1], tMatrix[2], tMatrix[3], tMatrix[4], tMatrix[5]);
29
+ const hit = graphicsHitTestService(hit_context, graphics.buffer, hit_object);
30
+ if (tMatrix !== matrix) {
31
+ Matrix.release(tMatrix);
32
+ }
33
+ return hit;
34
+ };
@@ -0,0 +1,12 @@
1
+ import type { Shape } from "../../Shape";
2
+ /**
3
+ * @description 指定のURLを画像を読み込み、Shapeに設定
4
+ * Load the specified URL image and set it to Shape
5
+ *
6
+ * @param {Shape} shape
7
+ * @param {string} src
8
+ * @return {void}
9
+ * @method
10
+ * @protected
11
+ */
12
+ export declare const execute: (shape: Shape, src: string) => void;
@@ -0,0 +1,32 @@
1
+ import { $cacheStore } from "@next2d/cache";
2
+ import { Event } from "@next2d/events";
3
+ import { execute as shapeSetBitmapBufferUseCase } from "./ShapeSetBitmapBufferUseCase";
4
+ /**
5
+ * @description 指定のURLを画像を読み込み、Shapeに設定
6
+ * Load the specified URL image and set it to Shape
7
+ *
8
+ * @param {Shape} shape
9
+ * @param {string} src
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export const execute = (shape, src) => {
15
+ const image = new Image();
16
+ image.crossOrigin = "anonymous";
17
+ image.addEventListener("load", () => {
18
+ const width = image.width;
19
+ const height = image.height;
20
+ const canvas = $cacheStore.getCanvas();
21
+ canvas.width = width;
22
+ canvas.height = height;
23
+ const context = canvas.getContext("2d", { "willReadFrequently": true });
24
+ context.drawImage(image, 0, 0, width, height);
25
+ shapeSetBitmapBufferUseCase(shape, width, height, new Uint8Array(context.getImageData(0, 0, width, height).data));
26
+ $cacheStore.destroy(context);
27
+ if (shape.hasEventListener(Event.COMPLETE)) {
28
+ shape.dispatchEvent(new Event(Event.COMPLETE));
29
+ }
30
+ });
31
+ image.src = src;
32
+ };
@@ -0,0 +1,14 @@
1
+ import type { Shape } from "../../Shape";
2
+ /**
3
+ * @description BitmapBufferを設定
4
+ * Set BitmapBuffer
5
+ *
6
+ * @param {Shape} shape
7
+ * @param {number} width
8
+ * @param {number} height
9
+ * @param {Uint8Array} buffer
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export declare const execute: (shape: Shape, width: number, height: number, buffer: Uint8Array) => void;
@@ -0,0 +1,22 @@
1
+ import { execute as shapeClearBitmapBufferService } from "./ShapeClearBitmapBufferUseCase";
2
+ /**
3
+ * @description BitmapBufferを設定
4
+ * Set BitmapBuffer
5
+ *
6
+ * @param {Shape} shape
7
+ * @param {number} width
8
+ * @param {number} height
9
+ * @param {Uint8Array} buffer
10
+ * @return {void}
11
+ * @method
12
+ * @protected
13
+ */
14
+ export const execute = (shape, width, height, buffer) => {
15
+ shapeClearBitmapBufferService(shape);
16
+ shape.isBitmap = true;
17
+ shape.$bitmapBuffer = buffer;
18
+ shape.graphics.xMin = 0;
19
+ shape.graphics.yMin = 0;
20
+ shape.graphics.xMax = width;
21
+ shape.graphics.yMax = height;
22
+ };
package/src/Shape.d.ts ADDED
@@ -0,0 +1,153 @@
1
+ import type { ICharacter } from "./interface/ICharacter";
2
+ import type { LoaderInfo } from "./LoaderInfo";
3
+ import { DisplayObject } from "./DisplayObject";
4
+ import { Graphics } from "./Graphics";
5
+ import { BitmapData } from "./BitmapData";
6
+ /**
7
+ * @description Shape クラスは、ベクターグラフィックスを表示するための表示オブジェクトです。
8
+ * The Shape class is a display object for displaying vector graphics.
9
+ *
10
+ * @class
11
+ * @memberOf next2d.display
12
+ * @extends DisplayObject
13
+ */
14
+ export declare class Shape extends DisplayObject {
15
+ /**
16
+ * @type {Graphics}
17
+ * @default null
18
+ * @private
19
+ */
20
+ private _$graphics;
21
+ /**
22
+ * @type {string}
23
+ * @default ""
24
+ * @private
25
+ */
26
+ private _$src;
27
+ /**
28
+ * @description Shapeの機能を所持しているかを返却
29
+ * Returns whether the display object has Shape functionality.
30
+ *
31
+ * @type {boolean}
32
+ * @readonly
33
+ * @public
34
+ */
35
+ readonly isShape: boolean;
36
+ /**
37
+ * @description ビルドされたキャッシュキー
38
+ * Built cache key
39
+ *
40
+ * @type {number}
41
+ * @default 0
42
+ * @public
43
+ */
44
+ cacheKey: number;
45
+ /**
46
+ * @description キャッシュのビルドに利用されるパラメータ
47
+ * Parameters used to build the cache
48
+ *
49
+ * @type {number[]}
50
+ * @public
51
+ */
52
+ readonly cacheParams: number[];
53
+ /**
54
+ * @description ビットマップ描画の判定フラグ
55
+ * Bitmap drawing judgment flag
56
+ *
57
+ * @type {boolean}
58
+ * @default false
59
+ * @protected
60
+ */
61
+ isBitmap: boolean;
62
+ /**
63
+ * @description 画像RGBAのUint8Array
64
+ * Image RGBA Uint8Array
65
+ *
66
+ * @type {Uint8Array|null}
67
+ * @default null
68
+ * @protected
69
+ */
70
+ $bitmapBuffer: Uint8Array | null;
71
+ /**
72
+ * @constructor
73
+ * @public
74
+ */
75
+ constructor();
76
+ /**
77
+ * @description 指定されたクラスの空間名を返します。
78
+ * Returns the space name of the specified class.
79
+ *
80
+ * @return {string}
81
+ * @const
82
+ * @static
83
+ */
84
+ static get namespace(): string;
85
+ /**
86
+ * @description 指定されたオブジェクトの空間名を返します。
87
+ * Returns the space name of the specified object.
88
+ *
89
+ * @return {string}
90
+ * @const
91
+ * @public
92
+ */
93
+ get namespace(): string;
94
+ /**
95
+ * @description この Shape オブジェクトに描画されるベクターの描画コマンドを保持する Graphics オブジェクトです。
96
+ * The Graphics object that belongs to this Shape object, where vector drawing commands can occur.
97
+ *
98
+ * @member {Graphics}
99
+ * @readonly
100
+ * @public
101
+ */
102
+ get graphics(): Graphics;
103
+ /**
104
+ * @description 指定されたパスから画像を読み込み、Graphicsを生成します
105
+ * Reads images from the specified path and generates Graphics.
106
+ *
107
+ * @member {string}
108
+ * @readonly
109
+ * @public
110
+ */
111
+ get src(): string;
112
+ set src(src: string);
113
+ /**
114
+ * @description ビットマップデータを返します
115
+ * Returns the bitmap data.
116
+ *
117
+ * @return {BitmapData}
118
+ * @readonly
119
+ * @public
120
+ */
121
+ get bitmapData(): BitmapData;
122
+ /**
123
+ * @description ビットマップデータを解放します
124
+ * Releases bitmap data.
125
+ *
126
+ * @return {void}
127
+ * @method
128
+ * @public
129
+ */
130
+ clearBitmapBuffer(): void;
131
+ /**
132
+ * @description RGBAの画像データを設定します
133
+ * Sets the RGBA image data.
134
+ *
135
+ * @param {number} width
136
+ * @param {number} height
137
+ * @param {Uint8Array} buffer
138
+ * @method
139
+ * @public
140
+ */
141
+ setBitmapBuffer(width: number, height: number, buffer: Uint8Array): void;
142
+ /**
143
+ * @description character 情報を元に DisplayObject を構築
144
+ * Build DisplayObject based on character
145
+ *
146
+ * @param {ICharacter} character
147
+ * @param {LoaderInfo} [loader_info=null]
148
+ * @return {void}
149
+ * @method
150
+ * @protected
151
+ */
152
+ $sync(character: ICharacter, loader_info?: LoaderInfo | null): void;
153
+ }