@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.
- package/README.md +206 -5
- package/package.json +11 -18
- package/src/AtlasManager/service/AtlasManagerCreateNodeService.d.ts +12 -0
- package/src/AtlasManager/service/AtlasManagerCreateNodeService.js +41 -0
- package/src/AtlasManager/service/AtlasManagerRemoveNodeService.d.ts +11 -0
- package/src/AtlasManager/service/AtlasManagerRemoveNodeService.js +17 -0
- package/src/AtlasManager/usecase/AtlasManagerResetUseCase.d.ts +9 -0
- package/src/AtlasManager/usecase/AtlasManagerResetUseCase.js +19 -0
- package/src/AtlasManager.d.ts +16 -0
- package/src/AtlasManager.js +59 -0
- package/src/BezierConverter/service/BezierConverterSplit2CubicService.d.ts +19 -0
- package/src/BezierConverter/service/BezierConverterSplit2CubicService.js +41 -0
- package/src/BezierConverter/service/BezierConverterSplit2QuadService.d.ts +18 -0
- package/src/BezierConverter/service/BezierConverterSplit2QuadService.js +31 -0
- package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.d.ts +18 -0
- package/src/BezierConverter/usecase/BezierConverterAdaptiveCubicToQuadUseCase.js +193 -0
- package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.d.ts +17 -0
- package/src/BezierConverter/usecase/BezierConverterCubicToQuadUseCase.js +29 -0
- package/src/BezierConverter.d.ts +96 -0
- package/src/BezierConverter.js +166 -0
- package/src/Bitmap.d.ts +8 -0
- package/src/Bitmap.js +8 -0
- package/src/Blend/service/BlendAddService.d.ts +9 -0
- package/src/Blend/service/BlendAddService.js +16 -0
- package/src/Blend/service/BlendAlphaService.d.ts +9 -0
- package/src/Blend/service/BlendAlphaService.js +16 -0
- package/src/Blend/service/BlendEraseService.d.ts +9 -0
- package/src/Blend/service/BlendEraseService.js +16 -0
- package/src/Blend/service/BlendOneZeroService.d.ts +9 -0
- package/src/Blend/service/BlendOneZeroService.js +16 -0
- package/src/Blend/service/BlendResetService.d.ts +9 -0
- package/src/Blend/service/BlendResetService.js +16 -0
- package/src/Blend/service/BlendScreenService.d.ts +9 -0
- package/src/Blend/service/BlendScreenService.js +16 -0
- package/src/Blend/service/BlendSourceAtopService.d.ts +9 -0
- package/src/Blend/service/BlendSourceAtopService.js +16 -0
- package/src/Blend/service/BlendSourceInService.d.ts +9 -0
- package/src/Blend/service/BlendSourceInService.js +16 -0
- package/src/Blend/usecase/BlendBootUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlendBootUseCase.js +14 -0
- package/src/Blend/usecase/BlendDrawFilterToMainUseCase.d.ts +14 -0
- package/src/Blend/usecase/BlendDrawFilterToMainUseCase.js +79 -0
- package/src/Blend/usecase/BlendOperationUseCase.d.ts +11 -0
- package/src/Blend/usecase/BlendOperationUseCase.js +37 -0
- package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlnedClearArraysInstancedUseCase.js +13 -0
- package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.d.ts +9 -0
- package/src/Blend/usecase/BlnedDrawArraysInstancedUseCase.js +24 -0
- package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.d.ts +16 -0
- package/src/Blend/usecase/BlnedDrawDisplayObjectUseCase.js +149 -0
- package/src/Blend.d.ts +5 -0
- package/src/Blend.js +8 -0
- package/src/ColorBufferObject/service/ColorBufferObjectCreateService.d.ts +10 -0
- package/src/ColorBufferObject/service/ColorBufferObjectCreateService.js +27 -0
- package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.d.ts +10 -0
- package/src/ColorBufferObject/service/ColorBufferObjectMeguruBinarySearchService.js +24 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.d.ts +11 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectAcquireObjectUseCase.js +28 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.d.ts +12 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectGetColorBufferObjectUseCase.js +32 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.d.ts +11 -0
- package/src/ColorBufferObject/usecase/ColorBufferObjectReleaseColorBufferObjectUseCase.js +19 -0
- package/src/ColorBufferObject.d.ts +9 -0
- package/src/ColorBufferObject.js +8 -0
- package/src/Context/service/ContextBeginNodeRenderingService.d.ts +13 -0
- package/src/Context/service/ContextBeginNodeRenderingService.js +22 -0
- package/src/Context/service/ContextCreateImageBitmapService.d.ts +11 -0
- package/src/Context/service/ContextCreateImageBitmapService.js +78 -0
- package/src/Context/service/ContextEndNodeRenderingService.d.ts +9 -0
- package/src/Context/service/ContextEndNodeRenderingService.js +12 -0
- package/src/Context/service/ContextFillBackgroundColorService.d.ts +13 -0
- package/src/Context/service/ContextFillBackgroundColorService.js +18 -0
- package/src/Context/service/ContextResetService.d.ts +11 -0
- package/src/Context/service/ContextResetService.js +14 -0
- package/src/Context/service/ContextResetStyleService.d.ts +11 -0
- package/src/Context/service/ContextResetStyleService.js +13 -0
- package/src/Context/service/ContextRestoreService.d.ts +11 -0
- package/src/Context/service/ContextRestoreService.js +23 -0
- package/src/Context/service/ContextSaveService.d.ts +11 -0
- package/src/Context/service/ContextSaveService.js +13 -0
- package/src/Context/service/ContextSetTransformService.d.ts +16 -0
- package/src/Context/service/ContextSetTransformService.js +23 -0
- package/src/Context/service/ContextTransformService.d.ts +17 -0
- package/src/Context/service/ContextTransformService.js +29 -0
- package/src/Context/service/ContextUpdateBackgroundColorService.d.ts +15 -0
- package/src/Context/service/ContextUpdateBackgroundColorService.js +20 -0
- package/src/Context/service/ContextUpdateTransferBoundsService.d.ts +11 -0
- package/src/Context/service/ContextUpdateTransferBoundsService.js +21 -0
- package/src/Context/service/ContextUseGridService.d.ts +10 -0
- package/src/Context/service/ContextUseGridService.js +14 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.d.ts +21 -0
- package/src/Context/usecase/ContextApplyFilterUseCase.js +206 -0
- package/src/Context/usecase/ContextBindUseCase.d.ts +13 -0
- package/src/Context/usecase/ContextBindUseCase.js +42 -0
- package/src/Context/usecase/ContextBitmapFillUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextBitmapFillUseCase.js +31 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextBitmapStrokeUseCase.js +31 -0
- package/src/Context/usecase/ContextClearRectUseCase.d.ts +13 -0
- package/src/Context/usecase/ContextClearRectUseCase.js +20 -0
- package/src/Context/usecase/ContextClipUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextClipUseCase.js +66 -0
- package/src/Context/usecase/ContextContainerBeginLayerUseCase.d.ts +18 -0
- package/src/Context/usecase/ContextContainerBeginLayerUseCase.js +31 -0
- package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.d.ts +16 -0
- package/src/Context/usecase/ContextContainerDrawCachedFilterUseCase.js +36 -0
- package/src/Context/usecase/ContextContainerEndLayerUseCase.d.ts +18 -0
- package/src/Context/usecase/ContextContainerEndLayerUseCase.js +171 -0
- package/src/Context/usecase/ContextDrawElementUseCase.d.ts +12 -0
- package/src/Context/usecase/ContextDrawElementUseCase.js +26 -0
- package/src/Context/usecase/ContextDrawFillUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextDrawFillUseCase.js +73 -0
- package/src/Context/usecase/ContextDrawPixelsUseCase.d.ts +12 -0
- package/src/Context/usecase/ContextDrawPixelsUseCase.js +26 -0
- package/src/Context/usecase/ContextFillUseCase.d.ts +10 -0
- package/src/Context/usecase/ContextFillUseCase.js +23 -0
- package/src/Context/usecase/ContextGradientFillUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextGradientFillUseCase.js +34 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.d.ts +15 -0
- package/src/Context/usecase/ContextGradientStrokeUseCase.js +34 -0
- package/src/Context/usecase/ContextLinearGradientFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextLinearGradientFillUseCase.js +58 -0
- package/src/Context/usecase/ContextNormalFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextNormalFillUseCase.js +40 -0
- package/src/Context/usecase/ContextPatternBitmapFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextPatternBitmapFillUseCase.js +54 -0
- package/src/Context/usecase/ContextRadialGradientFillUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextRadialGradientFillUseCase.js +61 -0
- package/src/Context/usecase/ContextResizeUseCase.d.ts +14 -0
- package/src/Context/usecase/ContextResizeUseCase.js +43 -0
- package/src/Context/usecase/ContextStrokeUseCase.d.ts +9 -0
- package/src/Context/usecase/ContextStrokeUseCase.js +22 -0
- package/src/Context.d.ts +76 -0
- package/src/Context.js +388 -0
- package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.d.ts +22 -0
- package/src/Filter/BevelFilter/usecase/FilterApplyBevelFilterUseCase.js +105 -0
- package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.d.ts +37 -0
- package/src/Filter/BitmapFilter/usecase/FilterApplyBitmapFilterUseCase.js +108 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.d.ts +16 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyBlurFilterUseCase.js +134 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.d.ts +13 -0
- package/src/Filter/BlurFilter/usecase/FilterApplyDirectionalBlurFilterUseCase.js +24 -0
- package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.d.ts +12 -0
- package/src/Filter/ColorMatrixFilter/usecase/FilterApplyColorMatrixFilterUseCase.js +38 -0
- package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.d.ts +20 -0
- package/src/Filter/ConvolutionFilter/usecase/FilterApplyConvolutionFilterUseCase.js +49 -0
- package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.d.ts +23 -0
- package/src/Filter/DisplacementMapFilter/usecase/FilterApplyDisplacementMapFilterUseCase.js +53 -0
- package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.d.ts +23 -0
- package/src/Filter/DropShadowFilter/usecase/FilterApplyDropShadowFilterUseCase.js +84 -0
- package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.d.ts +20 -0
- package/src/Filter/GlowFilter/usecase/FilterApplyGlowFilterUseCase.js +51 -0
- package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.d.ts +23 -0
- package/src/Filter/GradientBevelFilter/usecase/FilterApplyGradientBevelFilterUseCase.js +105 -0
- package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.d.ts +23 -0
- package/src/Filter/GradientGlowFilter/usecase/FilterApplyGradientGlowFilterUseCase.js +81 -0
- package/src/Filter.d.ts +45 -0
- package/src/Filter.js +53 -0
- package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.d.ts +11 -0
- package/src/FrameBufferManager/service/FrameBufferManagerBindAttachmentObjectService.js +35 -0
- package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.d.ts +10 -0
- package/src/FrameBufferManager/service/FrameBufferManagerCreateAttachmentObjectService.js +26 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferAtlasTextureService.js +31 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerTransferMainCanvasService.js +24 -0
- package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.d.ts +9 -0
- package/src/FrameBufferManager/service/FrameBufferManagerUnBindAttachmentObjectService.js +17 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.d.ts +13 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetAttachmentObjectUseCase.js +41 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.d.ts +14 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromBoundsUseCase.js +41 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.d.ts +12 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerGetTextureFromNodeUseCase.js +36 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.d.ts +12 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerReleaseAttachmentObjectUseCase.js +30 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.d.ts +11 -0
- package/src/FrameBufferManager/usecase/FrameBufferManagerTransferTextureFromRectUseCase.js +25 -0
- package/src/FrameBufferManager.d.ts +18 -0
- package/src/FrameBufferManager.js +38 -0
- package/src/Gradient.d.ts +8 -0
- package/src/Gradient.js +8 -0
- package/src/Grid.d.ts +14 -0
- package/src/Grid.js +16 -0
- package/src/Mask/service/MaskBeginMaskService.d.ts +9 -0
- package/src/Mask/service/MaskBeginMaskService.js +27 -0
- package/src/Mask/service/MaskEndMaskService.d.ts +9 -0
- package/src/Mask/service/MaskEndMaskService.js +26 -0
- package/src/Mask/service/MaskSetMaskBoundsService.d.ts +13 -0
- package/src/Mask/service/MaskSetMaskBoundsService.js +26 -0
- package/src/Mask/service/MaskUnionMaskService.d.ts +9 -0
- package/src/Mask/service/MaskUnionMaskService.js +32 -0
- package/src/Mask/usecase/MaskBindUseCase.d.ts +10 -0
- package/src/Mask/usecase/MaskBindUseCase.js +25 -0
- package/src/Mask/usecase/MaskLeaveMaskUseCase.d.ts +9 -0
- package/src/Mask/usecase/MaskLeaveMaskUseCase.js +53 -0
- package/src/Mask.d.ts +29 -0
- package/src/Mask.js +42 -0
- package/src/Mesh/service/MeshCalculateNormalVectorService.d.ts +13 -0
- package/src/Mesh/service/MeshCalculateNormalVectorService.js +18 -0
- package/src/Mesh/service/MeshCalculateNormalizeBezierService.d.ts +11 -0
- package/src/Mesh/service/MeshCalculateNormalizeBezierService.js +15 -0
- package/src/Mesh/service/MeshFillGenerateService.d.ts +23 -0
- package/src/Mesh/service/MeshFillGenerateService.js +197 -0
- package/src/Mesh/service/MeshFindOverlappingPathsService.d.ts +14 -0
- package/src/Mesh/service/MeshFindOverlappingPathsService.js +32 -0
- package/src/Mesh/service/MeshGenerateCalculateRoundCapService.d.ts +13 -0
- package/src/Mesh/service/MeshGenerateCalculateRoundCapService.js +51 -0
- package/src/Mesh/service/MeshGenerateCalculateSquareCapService.d.ts +13 -0
- package/src/Mesh/service/MeshGenerateCalculateSquareCapService.js +64 -0
- package/src/Mesh/service/MeshGetQuadraticBezierPointService.d.ts +14 -0
- package/src/Mesh/service/MeshGetQuadraticBezierPointService.js +18 -0
- package/src/Mesh/service/MeshGetQuadraticBezierTangentService.d.ts +14 -0
- package/src/Mesh/service/MeshGetQuadraticBezierTangentService.js +18 -0
- package/src/Mesh/service/MeshIsPointInsideRectangleService.d.ts +12 -0
- package/src/Mesh/service/MeshIsPointInsideRectangleService.js +38 -0
- package/src/Mesh/service/MeshLerpService.d.ts +13 -0
- package/src/Mesh/service/MeshLerpService.js +17 -0
- package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshApproximateOffsetQuadraticUseCase.js +35 -0
- package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshCalculateCurveRectangleUseCase.js +51 -0
- package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshCalculateLineRectangleUseCase.js +42 -0
- package/src/Mesh/usecase/MeshFillGenerateUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshFillGenerateUseCase.js +44 -0
- package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshGenerateCalculateBevelJoinUseCase.js +52 -0
- package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.d.ts +17 -0
- package/src/Mesh/usecase/MeshGenerateCalculateMiterJoinUseCase.js +84 -0
- package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.d.ts +15 -0
- package/src/Mesh/usecase/MeshGenerateCalculateRoundJoinUseCase.js +63 -0
- package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshGenerateStrokeOutlineUseCase.js +124 -0
- package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshSplitBezierMultipleTimesUseCase.js +32 -0
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.d.ts +14 -0
- package/src/Mesh/usecase/MeshSplitQuadraticBezierUseCase.js +28 -0
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.d.ts +12 -0
- package/src/Mesh/usecase/MeshStrokeGenerateUseCase.js +29 -0
- package/src/Mesh.d.ts +74 -0
- package/src/Mesh.js +126 -0
- package/src/PathCommand/service/PathCommandBeginPathService.d.ts +9 -0
- package/src/PathCommand/service/PathCommandBeginPathService.js +16 -0
- package/src/PathCommand/service/PathCommandCreateRectVerticesService.d.ts +14 -0
- package/src/PathCommand/service/PathCommandCreateRectVerticesService.js +16 -0
- package/src/PathCommand/service/PathCommandEqualsToLastPointService.d.ts +11 -0
- package/src/PathCommand/service/PathCommandEqualsToLastPointService.js +17 -0
- package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.d.ts +9 -0
- package/src/PathCommand/service/PathCommandPushCurrentPathToVerticesService.js +18 -0
- package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.d.ts +12 -0
- package/src/PathCommand/service/PathCommandPushPointToCurrentPathService.js +15 -0
- package/src/PathCommand/usecase/PathCommandArcUseCase.d.ts +12 -0
- package/src/PathCommand/usecase/PathCommandArcUseCase.js +20 -0
- package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.d.ts +15 -0
- package/src/PathCommand/usecase/PathCommandBezierCurveToUseCase.js +38 -0
- package/src/PathCommand/usecase/PathCommandClosePathUseCase.d.ts +9 -0
- package/src/PathCommand/usecase/PathCommandClosePathUseCase.js +22 -0
- package/src/PathCommand/usecase/PathCommandLineToUseCase.d.ts +11 -0
- package/src/PathCommand/usecase/PathCommandLineToUseCase.js +26 -0
- package/src/PathCommand/usecase/PathCommandMoveToUseCase.d.ts +13 -0
- package/src/PathCommand/usecase/PathCommandMoveToUseCase.js +31 -0
- package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.d.ts +13 -0
- package/src/PathCommand/usecase/PathCommandQuadraticCurveToUseCase.js +26 -0
- package/src/PathCommand.d.ts +27 -0
- package/src/PathCommand.js +46 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceBlurFilter.d.ts +1 -0
- package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceBlurFilter.js +5 -18
- package/src/Shader/Fragment/Filter/FragmentShaderSourceColorMatrixFilter.d.ts +1 -0
- package/{dist/shader/fragment/filter → src/Shader/Fragment/Filter}/FragmentShaderSourceColorMatrixFilter.js +4 -16
- package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.d.ts +1 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceConvolutionFilter.js +62 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.d.ts +1 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceDisplacementMapFilter.js +89 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.d.ts +1 -0
- package/src/Shader/Fragment/Filter/FragmentShaderSourceFilter.js +174 -0
- package/src/Shader/Fragment/FragmentShaderLibrary.d.ts +2 -0
- package/src/Shader/Fragment/FragmentShaderLibrary.js +20 -0
- package/src/Shader/Fragment/FragmentShaderSource.d.ts +5 -0
- package/src/Shader/Fragment/FragmentShaderSource.js +76 -0
- package/src/Shader/Fragment/FragmentShaderSourceBlend.d.ts +1 -0
- package/src/Shader/Fragment/FragmentShaderSourceBlend.js +198 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradient.d.ts +1 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradient.js +68 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.d.ts +1 -0
- package/src/Shader/Fragment/FragmentShaderSourceGradientLUT.js +42 -0
- package/src/Shader/Fragment/FragmentShaderSourceTexture.d.ts +2 -0
- package/src/Shader/Fragment/FragmentShaderSourceTexture.js +48 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.d.ts +16 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetFilterUniformService.js +30 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.d.ts +15 -0
- package/src/Shader/GradientLUTGenerator/service/GradientLUTSetUniformService.js +29 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.d.ts +13 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateFilterTextureUseCase.js +37 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.d.ts +16 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGenerateShapeTextureUseCase.js +51 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.d.ts +13 -0
- package/src/Shader/GradientLUTGenerator/usecase/GradientLUTGeneratorFillTextureUseCase.js +20 -0
- package/src/Shader/GradientLUTGenerator.d.ts +59 -0
- package/src/Shader/GradientLUTGenerator.js +97 -0
- package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.d.ts +11 -0
- package/src/Shader/ShaderInstancedManager/usecase/ShaderInstancedManagerDrawArraysInstancedUseCase.js +20 -0
- package/src/Shader/ShaderInstancedManager.d.ts +6 -0
- package/src/Shader/ShaderInstancedManager.js +17 -0
- package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerBindUniformService.js +23 -0
- package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerCreateProgramService.js +39 -0
- package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerInitializeUniformService.js +62 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.d.ts +14 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFillUniformService.js +85 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.d.ts +35 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBitmapFilterUniformService.js +94 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendUniformService.js +14 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.d.ts +19 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlendWithColorTransformUniformService.js +33 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.d.ts +16 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetBlurFilterUniformService.js +30 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetColorMatrixFilterUniformService.js +35 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.d.ts +21 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetConvolutionFilterUniformService.js +42 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.d.ts +24 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetDisplacementMapFilterUniformService.js +44 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.d.ts +12 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetFillUniformService.js +55 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.d.ts +17 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetGradientFillUniformService.js +97 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMaskUniformService.js +54 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureUniformService.js +29 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetMatrixTextureWithColorTransformUniformService.js +38 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.d.ts +13 -0
- package/src/Shader/ShaderManager/service/ShaderManagerSetTextureUniformService.js +25 -0
- package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.d.ts +11 -0
- package/src/Shader/ShaderManager/service/ShaderManagerUseProgramService.js +25 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.d.ts +11 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerDrawTextureUseCase.js +21 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.d.ts +13 -0
- package/src/Shader/ShaderManager/usecase/ShaderManagerFillUseCase.js +24 -0
- package/src/Shader/ShaderManager.d.ts +10 -0
- package/src/Shader/ShaderManager.js +51 -0
- package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.d.ts +12 -0
- package/src/Shader/Variants/Bitmap/service/VariantsBitmapShaderService.js +26 -0
- package/src/Shader/Variants/BitmapVariants.d.ts +9 -0
- package/src/Shader/Variants/BitmapVariants.js +8 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.d.ts +13 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendDrawShaderService.js +23 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.d.ts +10 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendInstanceShaderService.js +21 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.d.ts +11 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendMatrixTextureShaderService.js +22 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.d.ts +10 -0
- package/src/Shader/Variants/Blend/service/VariantsBlendTextureShaderService.js +21 -0
- package/src/Shader/Variants/BlendVariants.d.ts +10 -0
- package/src/Shader/Variants/BlendVariants.js +8 -0
- package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.d.ts +18 -0
- package/src/Shader/Variants/Filter/service/VariantsBitmapFilterShaderService.js +49 -0
- package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.d.ts +11 -0
- package/src/Shader/Variants/Filter/service/VariantsBlurFilterShaderService.js +22 -0
- package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.d.ts +10 -0
- package/src/Shader/Variants/Filter/service/VariantsColorMatrixFilterShaderService.js +21 -0
- package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.d.ts +14 -0
- package/src/Shader/Variants/Filter/service/VariantsConvolutionFilterShaderService.js +30 -0
- package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.d.ts +13 -0
- package/src/Shader/Variants/Filter/service/VariantsDisplacementMapFilterShaderService.js +25 -0
- package/src/Shader/Variants/FilterVariants.d.ts +9 -0
- package/src/Shader/Variants/FilterVariants.js +8 -0
- package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.d.ts +13 -0
- package/src/Shader/Variants/Gradient/service/VariantsGradientCreateCollectionKeyService.js +19 -0
- package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.d.ts +14 -0
- package/src/Shader/Variants/Gradient/usecase/VariantsGradientShapeShaderUseCase.js +28 -0
- package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.d.ts +12 -0
- package/src/Shader/Variants/GradientLUT/service/VariantsGradientLUTShaderService.js +29 -0
- package/src/Shader/Variants/GradientLUTVariants.d.ts +30 -0
- package/src/Shader/Variants/GradientLUTVariants.js +71 -0
- package/src/Shader/Variants/GradientVariants.d.ts +9 -0
- package/src/Shader/Variants/GradientVariants.js +8 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.d.ts +11 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeMaskShaderService.js +22 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.d.ts +10 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeRectShaderService.js +21 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.d.ts +11 -0
- package/src/Shader/Variants/Shape/service/VariantsShapeSolidColorShaderService.js +22 -0
- package/src/Shader/Variants/ShapeVariants.d.ts +9 -0
- package/src/Shader/Variants/ShapeVariants.js +8 -0
- package/src/Shader/Vertex/VertexShaderLibrary.d.ts +2 -0
- package/{dist/shader/vertex → src/Shader/Vertex}/VertexShaderLibrary.js +15 -42
- package/src/Shader/Vertex/VertexShaderSource.d.ts +5 -0
- package/src/Shader/Vertex/VertexShaderSource.js +116 -0
- package/src/Shader/Vertex/VertexShaderSourceFill.d.ts +11 -0
- package/src/Shader/Vertex/VertexShaderSourceFill.js +101 -0
- package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.d.ts +1 -0
- package/src/Stencil/service/StencilDisableSampleAlphaToCoverageService.js +8 -0
- package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.d.ts +1 -0
- package/src/Stencil/service/StencilEnableSampleAlphaToCoverageService.js +8 -0
- package/src/Stencil/service/StencilResetService.d.ts +9 -0
- package/src/Stencil/service/StencilResetService.js +14 -0
- package/src/Stencil/service/StencilSetFillModeService.d.ts +1 -0
- package/src/Stencil/service/StencilSetFillModeService.js +13 -0
- package/src/Stencil/service/StencilSetMaskModeService.d.ts +1 -0
- package/src/Stencil/service/StencilSetMaskModeService.js +14 -0
- package/src/Stencil.d.ts +9 -0
- package/src/Stencil.js +17 -0
- package/src/StencilBufferObject/service/StencilBufferObjectCreateService.d.ts +10 -0
- package/src/StencilBufferObject/service/StencilBufferObjectCreateService.js +24 -0
- package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.d.ts +11 -0
- package/src/StencilBufferObject/service/StencilBufferObjectReleaseColorBufferObjectService.js +23 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.d.ts +13 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectAcquireObjectUseCase.js +36 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.d.ts +12 -0
- package/src/StencilBufferObject/usecase/StencilBufferObjectGetStencilBufferObjectUseCase.js +27 -0
- package/src/StencilBufferObject.d.ts +9 -0
- package/src/StencilBufferObject.js +8 -0
- package/src/TextureManager/service/TextureManagerBindService.d.ts +14 -0
- package/src/TextureManager/service/TextureManagerBindService.js +33 -0
- package/src/TextureManager/service/TextureManagerCreateTextureObjectService.d.ts +12 -0
- package/src/TextureManager/service/TextureManagerCreateTextureObjectService.js +26 -0
- package/src/TextureManager/service/TextureManagerInitializeBindService.d.ts +12 -0
- package/src/TextureManager/service/TextureManagerInitializeBindService.js +25 -0
- package/src/TextureManager/usecase/TextureManagerBind012UseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerBind012UseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerBind01UseCase.d.ts +13 -0
- package/src/TextureManager/usecase/TextureManagerBind01UseCase.js +18 -0
- package/src/TextureManager/usecase/TextureManagerBind02UseCase.d.ts +13 -0
- package/src/TextureManager/usecase/TextureManagerBind02UseCase.js +18 -0
- package/src/TextureManager/usecase/TextureManagerBind0UseCase.d.ts +12 -0
- package/src/TextureManager/usecase/TextureManagerBind0UseCase.js +17 -0
- package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.d.ts +10 -0
- package/src/TextureManager/usecase/TextureManagerCreateAtlasTextureUseCase.js +25 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromCanvasUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerCreateFromPixelsUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerGetMainTextureFromBoundsUseCase.js +49 -0
- package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.d.ts +14 -0
- package/src/TextureManager/usecase/TextureManagerGetTextureUseCase.js +19 -0
- package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.d.ts +11 -0
- package/src/TextureManager/usecase/TextureManagerReleaseTextureObjectUseCase.js +13 -0
- package/src/TextureManager.d.ts +25 -0
- package/src/TextureManager.js +26 -0
- package/src/VertexArrayObject/service/VertexArrayObjectBindService.d.ts +11 -0
- package/src/VertexArrayObject/service/VertexArrayObjectBindService.js +26 -0
- package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.d.ts +10 -0
- package/src/VertexArrayObject/service/VertexArrayObjectCreateFillObjectService.js +17 -0
- package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.d.ts +11 -0
- package/src/VertexArrayObject/service/VertexArrayObjectReleaseVertexArrayObjectService.js +16 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.d.ts +9 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindAttributeUseCase.js +29 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBindFillMeshUseCase.js +27 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectBootUseCase.js +18 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.d.ts +12 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateGradientVertexArrayObjectUseCase.js +27 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateInstancedVertexArrayObjectUseCase.js +53 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectCreateRectVertexArrayObjectUseCase.js +24 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.d.ts +10 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetFillObjectUseCase.js +33 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.d.ts +12 -0
- package/src/VertexArrayObject/usecase/VertexArrayObjectGetGradientObjectUseCase.js +34 -0
- package/src/VertexArrayObject.d.ts +71 -0
- package/src/VertexArrayObject.js +87 -0
- package/src/WebGLUtil.d.ts +34 -0
- package/src/WebGLUtil.js +175 -0
- package/src/index.d.ts +1 -0
- package/src/index.js +1 -0
- package/src/interface/IAttachmentObject.d.ts +14 -0
- package/src/interface/IBlendMode.d.ts +1 -0
- package/{dist/interface/BoundsImpl.d.ts → src/interface/IBounds.d.ts} +1 -1
- package/{dist/interface/ClipObjectImpl.d.ts → src/interface/IClipObject.d.ts} +1 -1
- package/src/interface/IColorBufferObject.d.ts +9 -0
- package/src/interface/ICubicConverterReturnObject.d.ts +4 -0
- package/src/interface/IFillMesh.d.ts +4 -0
- package/src/interface/IFillType.d.ts +1 -0
- package/src/interface/IGradientType.d.ts +1 -0
- package/{dist/interface/GridImpl.d.ts → src/interface/IGrid.d.ts} +1 -1
- package/src/interface/IInterpolationMethod.d.ts +1 -0
- package/src/interface/IJointStyle.d.ts +1 -0
- package/src/interface/IPath.d.ts +1 -0
- package/{dist/interface/PointImpl.d.ts → src/interface/IPoint.d.ts} +1 -1
- package/src/interface/IProgramObject.d.ts +4 -0
- package/src/interface/ISpreadMethod.d.ts +1 -0
- package/src/interface/IStencilBufferObject.d.ts +8 -0
- package/src/interface/IStrokeVertexArrayObject.d.ts +6 -0
- package/src/interface/IStrokeVertexArrayObject.js +1 -0
- package/src/interface/ITextureObject.d.ts +8 -0
- package/src/interface/ITextureObject.js +1 -0
- package/{dist/interface/UniformDataImpl.d.ts → src/interface/IUniformData.d.ts} +1 -1
- package/src/interface/IUniformData.js +1 -0
- package/src/interface/IVertexArrayObject.d.ts +6 -0
- package/src/interface/IVertexArrayObject.js +1 -0
- package/dist/BezierConverter.d.ts +0 -59
- package/dist/BezierConverter.js +0 -106
- package/dist/CanvasGradientToWebGL.d.ts +0 -96
- package/dist/CanvasGradientToWebGL.js +0 -181
- package/dist/CanvasPatternToWebGL.d.ts +0 -31
- package/dist/CanvasPatternToWebGL.js +0 -50
- package/dist/CanvasToWebGLContext.d.ts +0 -650
- package/dist/CanvasToWebGLContext.js +0 -1600
- package/dist/CanvasToWebGLContextBlend.d.ts +0 -175
- package/dist/CanvasToWebGLContextBlend.js +0 -483
- package/dist/CanvasToWebGLContextGrid.d.ts +0 -74
- package/dist/CanvasToWebGLContextGrid.js +0 -283
- package/dist/CanvasToWebGLContextMask.d.ts +0 -107
- package/dist/CanvasToWebGLContextMask.js +0 -411
- package/dist/CanvasToWebGLContextPath.d.ts +0 -111
- package/dist/CanvasToWebGLContextPath.js +0 -210
- package/dist/CanvasToWebGLContextStyle.d.ts +0 -78
- package/dist/CanvasToWebGLContextStyle.js +0 -137
- package/dist/ColorBufferPool.d.ts +0 -58
- package/dist/ColorBufferPool.js +0 -134
- package/dist/Const.d.ts +0 -12
- package/dist/Const.js +0 -14
- package/dist/FrameBufferManager.d.ts +0 -174
- package/dist/FrameBufferManager.js +0 -467
- package/dist/StencilBufferPool.d.ts +0 -56
- package/dist/StencilBufferPool.js +0 -142
- package/dist/TextureManager.d.ts +0 -180
- package/dist/TextureManager.js +0 -531
- package/dist/VertexArrayObjectManager.d.ts +0 -115
- package/dist/VertexArrayObjectManager.js +0 -328
- package/dist/WebGLFillMeshGenerator.d.ts +0 -31
- package/dist/WebGLFillMeshGenerator.js +0 -101
- package/dist/WebGLStrokeMeshGenerator.d.ts +0 -183
- package/dist/WebGLStrokeMeshGenerator.js +0 -504
- package/dist/index.d.ts +0 -6
- package/dist/index.js +0 -6
- package/dist/interface/AttachmentImpl.d.ts +0 -11
- package/dist/interface/BlendModeImpl.d.ts +0 -1
- package/dist/interface/CachePositionImpl.d.ts +0 -11
- package/dist/interface/CapsStyleImpl.d.ts +0 -1
- package/dist/interface/FillMeshImpl.d.ts +0 -5
- package/dist/interface/GradientTypeImpl.d.ts +0 -1
- package/dist/interface/IndexRangeImpl.d.ts +0 -4
- package/dist/interface/InterpolationMethodImpl.d.ts +0 -1
- package/dist/interface/JointStyleImpl.d.ts +0 -1
- package/dist/interface/SpreadMethodImpl.d.ts +0 -1
- package/dist/interface/StrokeMethImpl.d.ts +0 -4
- package/dist/interface/VerticesImpl.d.ts +0 -1
- package/dist/shader/CanvasToWebGLShader.d.ts +0 -99
- package/dist/shader/CanvasToWebGLShader.js +0 -213
- package/dist/shader/CanvasToWebGLShaderList.d.ts +0 -70
- package/dist/shader/CanvasToWebGLShaderList.js +0 -109
- package/dist/shader/GradientLUTGenerator.d.ts +0 -36
- package/dist/shader/GradientLUTGenerator.js +0 -130
- package/dist/shader/WebGLShaderInstance.d.ts +0 -30
- package/dist/shader/WebGLShaderInstance.js +0 -48
- package/dist/shader/WebGLShaderUniform.d.ts +0 -52
- package/dist/shader/WebGLShaderUniform.js +0 -159
- package/dist/shader/fragment/FragmentShaderLibrary.d.ts +0 -24
- package/dist/shader/fragment/FragmentShaderLibrary.js +0 -44
- package/dist/shader/fragment/FragmentShaderSource.d.ts +0 -29
- package/dist/shader/fragment/FragmentShaderSource.js +0 -99
- package/dist/shader/fragment/FragmentShaderSourceBlend.d.ts +0 -75
- package/dist/shader/fragment/FragmentShaderSourceBlend.js +0 -384
- package/dist/shader/fragment/FragmentShaderSourceGradient.d.ts +0 -44
- package/dist/shader/fragment/FragmentShaderSourceGradient.js +0 -114
- package/dist/shader/fragment/FragmentShaderSourceGradientLUT.d.ts +0 -14
- package/dist/shader/fragment/FragmentShaderSourceGradientLUT.js +0 -58
- package/dist/shader/fragment/FragmentShaderSourceTexture.d.ts +0 -18
- package/dist/shader/fragment/FragmentShaderSourceTexture.js +0 -68
- package/dist/shader/fragment/filter/FragmentShaderSourceBlurFilter.d.ts +0 -12
- package/dist/shader/fragment/filter/FragmentShaderSourceColorMatrixFilter.d.ts +0 -11
- package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.d.ts +0 -16
- package/dist/shader/fragment/filter/FragmentShaderSourceConvolutionFilter.js +0 -80
- package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.d.ts +0 -15
- package/dist/shader/fragment/filter/FragmentShaderSourceDisplacementMapFilter.js +0 -106
- package/dist/shader/fragment/filter/FragmentShaderSourceFilter.d.ts +0 -112
- package/dist/shader/fragment/filter/FragmentShaderSourceFilter.js +0 -275
- package/dist/shader/variants/BlendShaderVariantCollection.d.ts +0 -159
- package/dist/shader/variants/BlendShaderVariantCollection.js +0 -376
- package/dist/shader/variants/FilterShaderVariantCollection.d.ts +0 -150
- package/dist/shader/variants/FilterShaderVariantCollection.js +0 -395
- package/dist/shader/variants/GradientLUTShaderVariantCollection.d.ts +0 -49
- package/dist/shader/variants/GradientLUTShaderVariantCollection.js +0 -107
- package/dist/shader/variants/GradientShapeShaderVariantCollection.d.ts +0 -61
- package/dist/shader/variants/GradientShapeShaderVariantCollection.js +0 -196
- package/dist/shader/variants/ShapeShaderVariantCollection.d.ts +0 -117
- package/dist/shader/variants/ShapeShaderVariantCollection.js +0 -427
- package/dist/shader/vertex/VertexShaderLibrary.d.ts +0 -18
- package/dist/shader/vertex/VertexShaderSource.d.ts +0 -35
- package/dist/shader/vertex/VertexShaderSource.js +0 -164
- package/dist/shader/vertex/VertexShaderSourceFill.d.ts +0 -45
- package/dist/shader/vertex/VertexShaderSourceFill.js +0 -116
- package/dist/shader/vertex/VertexShaderSourceStroke.d.ts +0 -27
- package/dist/shader/vertex/VertexShaderSourceStroke.js +0 -149
- /package/{dist/interface/AttachmentImpl.js → src/interface/IAttachmentObject.js} +0 -0
- /package/{dist/interface/BlendModeImpl.js → src/interface/IBlendMode.js} +0 -0
- /package/{dist/interface/BoundsImpl.js → src/interface/IBounds.js} +0 -0
- /package/{dist/interface/CachePositionImpl.js → src/interface/IClipObject.js} +0 -0
- /package/{dist/interface/CapsStyleImpl.js → src/interface/IColorBufferObject.js} +0 -0
- /package/{dist/interface/ClipObjectImpl.js → src/interface/ICubicConverterReturnObject.js} +0 -0
- /package/{dist/interface/FillMeshImpl.js → src/interface/IFillMesh.js} +0 -0
- /package/{dist/interface/GradientTypeImpl.js → src/interface/IFillType.js} +0 -0
- /package/{dist/interface/GridImpl.js → src/interface/IGradientType.js} +0 -0
- /package/{dist/interface/IndexRangeImpl.js → src/interface/IGrid.js} +0 -0
- /package/{dist/interface/InterpolationMethodImpl.js → src/interface/IInterpolationMethod.js} +0 -0
- /package/{dist/interface/JointStyleImpl.js → src/interface/IJointStyle.js} +0 -0
- /package/{dist/interface/PointImpl.js → src/interface/IPath.js} +0 -0
- /package/{dist/interface/SpreadMethodImpl.js → src/interface/IPoint.js} +0 -0
- /package/{dist/interface/StrokeMethImpl.js → src/interface/IProgramObject.js} +0 -0
- /package/{dist/interface/UniformDataImpl.js → src/interface/ISpreadMethod.js} +0 -0
- /package/{dist/interface/VerticesImpl.js → src/interface/IStencilBufferObject.js} +0 -0
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import { $adaptiveBuffer, $adaptiveSegmentCount, $getAdaptiveSubdivisionCount, $ensureAdaptiveBufferSize, $setAdaptiveSegmentCount, $resetSplitBufferPool, $getSplitBuffer } from "../../BezierConverter";
|
|
2
|
+
/**
|
|
3
|
+
* @description De Casteljauアルゴリズムで3次ベジエを分割
|
|
4
|
+
* Split cubic Bezier using De Casteljau algorithm
|
|
5
|
+
*
|
|
6
|
+
* @param {number} p0x
|
|
7
|
+
* @param {number} p0y
|
|
8
|
+
* @param {number} p1x
|
|
9
|
+
* @param {number} p1y
|
|
10
|
+
* @param {number} p2x
|
|
11
|
+
* @param {number} p2y
|
|
12
|
+
* @param {number} p3x
|
|
13
|
+
* @param {number} p3y
|
|
14
|
+
* @param {number} t
|
|
15
|
+
* @param {Float32Array} left
|
|
16
|
+
* @param {Float32Array} right
|
|
17
|
+
* @return {void}
|
|
18
|
+
* @method
|
|
19
|
+
* @private
|
|
20
|
+
*/
|
|
21
|
+
const splitCubicAt = (p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y, t, left, right) => {
|
|
22
|
+
const mt = 1 - t;
|
|
23
|
+
// レベル1
|
|
24
|
+
const q0x = mt * p0x + t * p1x;
|
|
25
|
+
const q0y = mt * p0y + t * p1y;
|
|
26
|
+
const q1x = mt * p1x + t * p2x;
|
|
27
|
+
const q1y = mt * p1y + t * p2y;
|
|
28
|
+
const q2x = mt * p2x + t * p3x;
|
|
29
|
+
const q2y = mt * p2y + t * p3y;
|
|
30
|
+
// レベル2
|
|
31
|
+
const r0x = mt * q0x + t * q1x;
|
|
32
|
+
const r0y = mt * q0y + t * q1y;
|
|
33
|
+
const r1x = mt * q1x + t * q2x;
|
|
34
|
+
const r1y = mt * q1y + t * q2y;
|
|
35
|
+
// レベル3(分割点)
|
|
36
|
+
const sx = mt * r0x + t * r1x;
|
|
37
|
+
const sy = mt * r0y + t * r1y;
|
|
38
|
+
// 左側のカーブ
|
|
39
|
+
left[0] = p0x;
|
|
40
|
+
left[1] = p0y;
|
|
41
|
+
left[2] = q0x;
|
|
42
|
+
left[3] = q0y;
|
|
43
|
+
left[4] = r0x;
|
|
44
|
+
left[5] = r0y;
|
|
45
|
+
left[6] = sx;
|
|
46
|
+
left[7] = sy;
|
|
47
|
+
// 右側のカーブ
|
|
48
|
+
right[0] = sx;
|
|
49
|
+
right[1] = sy;
|
|
50
|
+
right[2] = r1x;
|
|
51
|
+
right[3] = r1y;
|
|
52
|
+
right[4] = q2x;
|
|
53
|
+
right[5] = q2y;
|
|
54
|
+
right[6] = p3x;
|
|
55
|
+
right[7] = p3y;
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* @description 3次ベジエを2次ベジエに近似
|
|
59
|
+
* Approximate cubic Bezier as quadratic Bezier
|
|
60
|
+
*
|
|
61
|
+
* @param {number} p0x - 始点X
|
|
62
|
+
* @param {number} p0y - 始点Y
|
|
63
|
+
* @param {number} p1x - 第1制御点X
|
|
64
|
+
* @param {number} p1y - 第1制御点Y
|
|
65
|
+
* @param {number} p2x - 第2制御点X
|
|
66
|
+
* @param {number} p2y - 第2制御点Y
|
|
67
|
+
* @param {number} p3x - 終点X
|
|
68
|
+
* @param {number} p3y - 終点Y
|
|
69
|
+
* @param {Float32Array} buffer
|
|
70
|
+
* @param {number} offset
|
|
71
|
+
* @return {void}
|
|
72
|
+
* @method
|
|
73
|
+
* @private
|
|
74
|
+
*/
|
|
75
|
+
const cubicToQuad = (p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y, buffer, offset) => {
|
|
76
|
+
// 3次ベジエの制御点から2次ベジエの制御点を近似
|
|
77
|
+
// Q_control = (3*C1 + 3*C2 - P0 - P3) / 4
|
|
78
|
+
const cx = (3 * p1x + 3 * p2x - p0x - p3x) * 0.25;
|
|
79
|
+
const cy = (3 * p1y + 3 * p2y - p0y - p3y) * 0.25;
|
|
80
|
+
buffer[offset] = cx;
|
|
81
|
+
buffer[offset + 1] = cy;
|
|
82
|
+
buffer[offset + 2] = p3x;
|
|
83
|
+
buffer[offset + 3] = p3y;
|
|
84
|
+
};
|
|
85
|
+
// 一時バッファ(分割用)
|
|
86
|
+
const $tempLeft = new Float32Array(8);
|
|
87
|
+
const $tempRight = new Float32Array(8);
|
|
88
|
+
/**
|
|
89
|
+
* @description 3次ベジェ曲線を適応的に2次ベジェ曲線に分割
|
|
90
|
+
* Adaptively split cubic Bezier curve into quadratic Bezier curves
|
|
91
|
+
*
|
|
92
|
+
* @param {number} from_x
|
|
93
|
+
* @param {number} from_y
|
|
94
|
+
* @param {number} cx1
|
|
95
|
+
* @param {number} cy1
|
|
96
|
+
* @param {number} cx2
|
|
97
|
+
* @param {number} cy2
|
|
98
|
+
* @param {number} x
|
|
99
|
+
* @param {number} y
|
|
100
|
+
* @return {ICubicConverterReturnObject}
|
|
101
|
+
* @method
|
|
102
|
+
* @protected
|
|
103
|
+
*/
|
|
104
|
+
export const execute = (from_x, from_y, cx1, cy1, cx2, cy2, x, y) => {
|
|
105
|
+
// 曲率に基づいて分割数を決定
|
|
106
|
+
const subdivisions = $getAdaptiveSubdivisionCount(from_x, from_y, cx1, cy1, cx2, cy2, x, y);
|
|
107
|
+
// 各2次ベジエは4floats(cx, cy, x, y)
|
|
108
|
+
const requiredSize = subdivisions * 4;
|
|
109
|
+
$ensureAdaptiveBufferSize(requiredSize);
|
|
110
|
+
// 分割数に応じてセグメントを生成
|
|
111
|
+
let offset = 0;
|
|
112
|
+
if (subdivisions <= 2) {
|
|
113
|
+
// 2分割: t=0.5で分割
|
|
114
|
+
splitCubicAt(from_x, from_y, cx1, cy1, cx2, cy2, x, y, 0.5, $tempLeft, $tempRight);
|
|
115
|
+
cubicToQuad($tempLeft[0], $tempLeft[1], $tempLeft[2], $tempLeft[3], $tempLeft[4], $tempLeft[5], $tempLeft[6], $tempLeft[7], $adaptiveBuffer, offset);
|
|
116
|
+
offset += 4;
|
|
117
|
+
cubicToQuad($tempRight[0], $tempRight[1], $tempRight[2], $tempRight[3], $tempRight[4], $tempRight[5], $tempRight[6], $tempRight[7], $adaptiveBuffer, offset);
|
|
118
|
+
offset += 4;
|
|
119
|
+
}
|
|
120
|
+
else if (subdivisions <= 4) {
|
|
121
|
+
// 4分割: t=0.25, 0.5, 0.75で分割
|
|
122
|
+
// バッファプールをリセットして再利用
|
|
123
|
+
$resetSplitBufferPool();
|
|
124
|
+
// 2段階で4分割
|
|
125
|
+
const temp1 = $getSplitBuffer();
|
|
126
|
+
const temp2 = $getSplitBuffer();
|
|
127
|
+
splitCubicAt(from_x, from_y, cx1, cy1, cx2, cy2, x, y, 0.5, temp1, temp2);
|
|
128
|
+
const left1 = $getSplitBuffer();
|
|
129
|
+
const left2 = $getSplitBuffer();
|
|
130
|
+
const right1 = $getSplitBuffer();
|
|
131
|
+
const right2 = $getSplitBuffer();
|
|
132
|
+
splitCubicAt(temp1[0], temp1[1], temp1[2], temp1[3], temp1[4], temp1[5], temp1[6], temp1[7], 0.5, left1, left2);
|
|
133
|
+
splitCubicAt(temp2[0], temp2[1], temp2[2], temp2[3], temp2[4], temp2[5], temp2[6], temp2[7], 0.5, right1, right2);
|
|
134
|
+
cubicToQuad(left1[0], left1[1], left1[2], left1[3], left1[4], left1[5], left1[6], left1[7], $adaptiveBuffer, offset);
|
|
135
|
+
offset += 4;
|
|
136
|
+
cubicToQuad(left2[0], left2[1], left2[2], left2[3], left2[4], left2[5], left2[6], left2[7], $adaptiveBuffer, offset);
|
|
137
|
+
offset += 4;
|
|
138
|
+
cubicToQuad(right1[0], right1[1], right1[2], right1[3], right1[4], right1[5], right1[6], right1[7], $adaptiveBuffer, offset);
|
|
139
|
+
offset += 4;
|
|
140
|
+
cubicToQuad(right2[0], right2[1], right2[2], right2[3], right2[4], right2[5], right2[6], right2[7], $adaptiveBuffer, offset);
|
|
141
|
+
offset += 4;
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
// 8分割: 3段階で8分割(既存の方法と同等)
|
|
145
|
+
// バッファプールをリセットして再利用
|
|
146
|
+
$resetSplitBufferPool();
|
|
147
|
+
// 最初の分割
|
|
148
|
+
const a1 = $getSplitBuffer();
|
|
149
|
+
const a2 = $getSplitBuffer();
|
|
150
|
+
splitCubicAt(from_x, from_y, cx1, cy1, cx2, cy2, x, y, 0.5, a1, a2);
|
|
151
|
+
// 2段階目
|
|
152
|
+
const b1 = $getSplitBuffer();
|
|
153
|
+
const b2 = $getSplitBuffer();
|
|
154
|
+
const b3 = $getSplitBuffer();
|
|
155
|
+
const b4 = $getSplitBuffer();
|
|
156
|
+
splitCubicAt(a1[0], a1[1], a1[2], a1[3], a1[4], a1[5], a1[6], a1[7], 0.5, b1, b2);
|
|
157
|
+
splitCubicAt(a2[0], a2[1], a2[2], a2[3], a2[4], a2[5], a2[6], a2[7], 0.5, b3, b4);
|
|
158
|
+
// 3段階目
|
|
159
|
+
const c1 = $getSplitBuffer();
|
|
160
|
+
const c2 = $getSplitBuffer();
|
|
161
|
+
const c3 = $getSplitBuffer();
|
|
162
|
+
const c4 = $getSplitBuffer();
|
|
163
|
+
const c5 = $getSplitBuffer();
|
|
164
|
+
const c6 = $getSplitBuffer();
|
|
165
|
+
const c7 = $getSplitBuffer();
|
|
166
|
+
const c8 = $getSplitBuffer();
|
|
167
|
+
splitCubicAt(b1[0], b1[1], b1[2], b1[3], b1[4], b1[5], b1[6], b1[7], 0.5, c1, c2);
|
|
168
|
+
splitCubicAt(b2[0], b2[1], b2[2], b2[3], b2[4], b2[5], b2[6], b2[7], 0.5, c3, c4);
|
|
169
|
+
splitCubicAt(b3[0], b3[1], b3[2], b3[3], b3[4], b3[5], b3[6], b3[7], 0.5, c5, c6);
|
|
170
|
+
splitCubicAt(b4[0], b4[1], b4[2], b4[3], b4[4], b4[5], b4[6], b4[7], 0.5, c7, c8);
|
|
171
|
+
cubicToQuad(c1[0], c1[1], c1[2], c1[3], c1[4], c1[5], c1[6], c1[7], $adaptiveBuffer, offset);
|
|
172
|
+
offset += 4;
|
|
173
|
+
cubicToQuad(c2[0], c2[1], c2[2], c2[3], c2[4], c2[5], c2[6], c2[7], $adaptiveBuffer, offset);
|
|
174
|
+
offset += 4;
|
|
175
|
+
cubicToQuad(c3[0], c3[1], c3[2], c3[3], c3[4], c3[5], c3[6], c3[7], $adaptiveBuffer, offset);
|
|
176
|
+
offset += 4;
|
|
177
|
+
cubicToQuad(c4[0], c4[1], c4[2], c4[3], c4[4], c4[5], c4[6], c4[7], $adaptiveBuffer, offset);
|
|
178
|
+
offset += 4;
|
|
179
|
+
cubicToQuad(c5[0], c5[1], c5[2], c5[3], c5[4], c5[5], c5[6], c5[7], $adaptiveBuffer, offset);
|
|
180
|
+
offset += 4;
|
|
181
|
+
cubicToQuad(c6[0], c6[1], c6[2], c6[3], c6[4], c6[5], c6[6], c6[7], $adaptiveBuffer, offset);
|
|
182
|
+
offset += 4;
|
|
183
|
+
cubicToQuad(c7[0], c7[1], c7[2], c7[3], c7[4], c7[5], c7[6], c7[7], $adaptiveBuffer, offset);
|
|
184
|
+
offset += 4;
|
|
185
|
+
cubicToQuad(c8[0], c8[1], c8[2], c8[3], c8[4], c8[5], c8[6], c8[7], $adaptiveBuffer, offset);
|
|
186
|
+
offset += 4;
|
|
187
|
+
}
|
|
188
|
+
$setAdaptiveSegmentCount(offset / 4);
|
|
189
|
+
return {
|
|
190
|
+
"buffer": $adaptiveBuffer,
|
|
191
|
+
"count": $adaptiveSegmentCount
|
|
192
|
+
};
|
|
193
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description 3次ベジェ曲線を2次ベジェ曲線に分割
|
|
3
|
+
* Split cubic Bezier curve into quadratic Bezier curve
|
|
4
|
+
*
|
|
5
|
+
* @param {number} from_x
|
|
6
|
+
* @param {number} from_y
|
|
7
|
+
* @param {number} cx1
|
|
8
|
+
* @param {number} cy1
|
|
9
|
+
* @param {number} cx2
|
|
10
|
+
* @param {number} cy2
|
|
11
|
+
* @param {number} x
|
|
12
|
+
* @param {number} y
|
|
13
|
+
* @return {Float32Array}
|
|
14
|
+
* @method
|
|
15
|
+
* @protected
|
|
16
|
+
*/
|
|
17
|
+
export declare const execute: (from_x: number, from_y: number, cx1: number, cy1: number, cx2: number, cy2: number, x: number, y: number) => Float32Array;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { execute as bezierConverterSplit2CubicService } from "../service/BezierConverterSplit2CubicService";
|
|
2
|
+
import { execute as bezierConverterSplit2QuadService } from "../service/BezierConverterSplit2QuadService";
|
|
3
|
+
import { $bezierBuffer } from "../../BezierConverter";
|
|
4
|
+
/**
|
|
5
|
+
* @description 3次ベジェ曲線を2次ベジェ曲線に分割
|
|
6
|
+
* Split cubic Bezier curve into quadratic Bezier curve
|
|
7
|
+
*
|
|
8
|
+
* @param {number} from_x
|
|
9
|
+
* @param {number} from_y
|
|
10
|
+
* @param {number} cx1
|
|
11
|
+
* @param {number} cy1
|
|
12
|
+
* @param {number} cx2
|
|
13
|
+
* @param {number} cy2
|
|
14
|
+
* @param {number} x
|
|
15
|
+
* @param {number} y
|
|
16
|
+
* @return {Float32Array}
|
|
17
|
+
* @method
|
|
18
|
+
* @protected
|
|
19
|
+
*/
|
|
20
|
+
export const execute = (from_x, from_y, cx1, cy1, cx2, cy2, x, y) => {
|
|
21
|
+
bezierConverterSplit2CubicService(from_x, from_y, cx1, cy1, cx2, cy2, x, y, 0, 16);
|
|
22
|
+
bezierConverterSplit2CubicService($bezierBuffer[0], $bezierBuffer[1], $bezierBuffer[2], $bezierBuffer[3], $bezierBuffer[4], $bezierBuffer[5], $bezierBuffer[6], $bezierBuffer[7], 0, 8);
|
|
23
|
+
bezierConverterSplit2CubicService($bezierBuffer[16], $bezierBuffer[17], $bezierBuffer[18], $bezierBuffer[19], $bezierBuffer[20], $bezierBuffer[21], $bezierBuffer[22], $bezierBuffer[23], 16, 24);
|
|
24
|
+
bezierConverterSplit2QuadService($bezierBuffer[0], $bezierBuffer[1], $bezierBuffer[2], $bezierBuffer[3], $bezierBuffer[4], $bezierBuffer[5], $bezierBuffer[6], $bezierBuffer[7], 0);
|
|
25
|
+
bezierConverterSplit2QuadService($bezierBuffer[8], $bezierBuffer[9], $bezierBuffer[10], $bezierBuffer[11], $bezierBuffer[12], $bezierBuffer[13], $bezierBuffer[14], $bezierBuffer[15], 8);
|
|
26
|
+
bezierConverterSplit2QuadService($bezierBuffer[16], $bezierBuffer[17], $bezierBuffer[18], $bezierBuffer[19], $bezierBuffer[20], $bezierBuffer[21], $bezierBuffer[22], $bezierBuffer[23], 16);
|
|
27
|
+
bezierConverterSplit2QuadService($bezierBuffer[24], $bezierBuffer[25], $bezierBuffer[26], $bezierBuffer[27], $bezierBuffer[28], $bezierBuffer[29], $bezierBuffer[30], $bezierBuffer[31], 24);
|
|
28
|
+
return $bezierBuffer;
|
|
29
|
+
};
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description ベジェ曲線の変換後の値を格納するバッファ
|
|
3
|
+
* Buffer to store the converted values of the Bezier curve
|
|
4
|
+
*
|
|
5
|
+
* @type {Float32Array}
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export declare const $bezierBuffer: Float32Array;
|
|
9
|
+
/**
|
|
10
|
+
* @description 適応的テッセレーション用の動的バッファ
|
|
11
|
+
* Dynamic buffer for adaptive tessellation
|
|
12
|
+
*
|
|
13
|
+
* @type {Float32Array}
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
export declare let $adaptiveBuffer: Float32Array;
|
|
17
|
+
/**
|
|
18
|
+
* @description 適応的テッセレーションの結果のセグメント数
|
|
19
|
+
* Number of segments from adaptive tessellation
|
|
20
|
+
*
|
|
21
|
+
* @type {number}
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
export declare let $adaptiveSegmentCount: number;
|
|
25
|
+
/**
|
|
26
|
+
* @description 3次ベジエ曲線のフラットネス(平坦度)を計算
|
|
27
|
+
* Calculate flatness of a cubic Bezier curve
|
|
28
|
+
*
|
|
29
|
+
* @param {number} p0x
|
|
30
|
+
* @param {number} p0y
|
|
31
|
+
* @param {number} p1x
|
|
32
|
+
* @param {number} p1y
|
|
33
|
+
* @param {number} p2x
|
|
34
|
+
* @param {number} p2y
|
|
35
|
+
* @param {number} p3x
|
|
36
|
+
* @param {number} p3y
|
|
37
|
+
* @return {number}
|
|
38
|
+
* @method
|
|
39
|
+
* @protected
|
|
40
|
+
*/
|
|
41
|
+
export declare const $calculateFlatness: (p0x: number, p0y: number, p1x: number, p1y: number, p2x: number, p2y: number, p3x: number, p3y: number) => number;
|
|
42
|
+
/**
|
|
43
|
+
* @description 曲率に基づいて最適な分割数を決定
|
|
44
|
+
* Determine optimal subdivision count based on curvature
|
|
45
|
+
*
|
|
46
|
+
* @param {number} p0x
|
|
47
|
+
* @param {number} p0y
|
|
48
|
+
* @param {number} p1x
|
|
49
|
+
* @param {number} p1y
|
|
50
|
+
* @param {number} p2x
|
|
51
|
+
* @param {number} p2y
|
|
52
|
+
* @param {number} p3x
|
|
53
|
+
* @param {number} p3y
|
|
54
|
+
* @return {number}
|
|
55
|
+
* @method
|
|
56
|
+
* @protected
|
|
57
|
+
*/
|
|
58
|
+
export declare const $getAdaptiveSubdivisionCount: (p0x: number, p0y: number, p1x: number, p1y: number, p2x: number, p2y: number, p3x: number, p3y: number) => number;
|
|
59
|
+
/**
|
|
60
|
+
* @description 適応的バッファのサイズを確保
|
|
61
|
+
* Ensure adaptive buffer size
|
|
62
|
+
*
|
|
63
|
+
* @param {number} size
|
|
64
|
+
* @return {void}
|
|
65
|
+
* @method
|
|
66
|
+
* @protected
|
|
67
|
+
*/
|
|
68
|
+
export declare const $ensureAdaptiveBufferSize: (size: number) => void;
|
|
69
|
+
/**
|
|
70
|
+
* @description 適応的セグメント数を設定
|
|
71
|
+
* Set adaptive segment count
|
|
72
|
+
*
|
|
73
|
+
* @param {number} count
|
|
74
|
+
* @return {void}
|
|
75
|
+
* @method
|
|
76
|
+
* @protected
|
|
77
|
+
*/
|
|
78
|
+
export declare const $setAdaptiveSegmentCount: (count: number) => void;
|
|
79
|
+
/**
|
|
80
|
+
* @description 分割用バッファプールをリセット
|
|
81
|
+
* Reset split buffer pool
|
|
82
|
+
*
|
|
83
|
+
* @return {void}
|
|
84
|
+
* @method
|
|
85
|
+
* @protected
|
|
86
|
+
*/
|
|
87
|
+
export declare const $resetSplitBufferPool: () => void;
|
|
88
|
+
/**
|
|
89
|
+
* @description 分割用Float32Array(8)を取得(プールから再利用)
|
|
90
|
+
* Get Float32Array(8) for split (reuse from pool)
|
|
91
|
+
*
|
|
92
|
+
* @return {Float32Array}
|
|
93
|
+
* @method
|
|
94
|
+
* @protected
|
|
95
|
+
*/
|
|
96
|
+
export declare const $getSplitBuffer: () => Float32Array;
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @description ベジェ曲線の変換後の値を格納するバッファ
|
|
3
|
+
* Buffer to store the converted values of the Bezier curve
|
|
4
|
+
*
|
|
5
|
+
* @type {Float32Array}
|
|
6
|
+
* @public
|
|
7
|
+
*/
|
|
8
|
+
export const $bezierBuffer = new Float32Array(32);
|
|
9
|
+
/**
|
|
10
|
+
* @description 適応的テッセレーション用の動的バッファ
|
|
11
|
+
* Dynamic buffer for adaptive tessellation
|
|
12
|
+
*
|
|
13
|
+
* @type {Float32Array}
|
|
14
|
+
* @public
|
|
15
|
+
*/
|
|
16
|
+
export let $adaptiveBuffer = new Float32Array(64);
|
|
17
|
+
/**
|
|
18
|
+
* @description 適応的テッセレーションの結果のセグメント数
|
|
19
|
+
* Number of segments from adaptive tessellation
|
|
20
|
+
*
|
|
21
|
+
* @type {number}
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
export let $adaptiveSegmentCount = 0;
|
|
25
|
+
/**
|
|
26
|
+
* @description 適応的テッセレーションのフラットネス閾値
|
|
27
|
+
* Flatness threshold for adaptive tessellation
|
|
28
|
+
*
|
|
29
|
+
* @type {number}
|
|
30
|
+
* @const
|
|
31
|
+
*/
|
|
32
|
+
const FLATNESS_THRESHOLD = 0.5;
|
|
33
|
+
/**
|
|
34
|
+
* @description 最小分割数
|
|
35
|
+
* Minimum subdivision count
|
|
36
|
+
*
|
|
37
|
+
* @type {number}
|
|
38
|
+
* @const
|
|
39
|
+
*/
|
|
40
|
+
const MIN_SUBDIVISIONS = 2;
|
|
41
|
+
/**
|
|
42
|
+
* @description 最大分割数
|
|
43
|
+
* Maximum subdivision count
|
|
44
|
+
*
|
|
45
|
+
* @type {number}
|
|
46
|
+
* @const
|
|
47
|
+
*/
|
|
48
|
+
const MAX_SUBDIVISIONS = 8;
|
|
49
|
+
/**
|
|
50
|
+
* @description 3次ベジエ曲線のフラットネス(平坦度)を計算
|
|
51
|
+
* Calculate flatness of a cubic Bezier curve
|
|
52
|
+
*
|
|
53
|
+
* @param {number} p0x
|
|
54
|
+
* @param {number} p0y
|
|
55
|
+
* @param {number} p1x
|
|
56
|
+
* @param {number} p1y
|
|
57
|
+
* @param {number} p2x
|
|
58
|
+
* @param {number} p2y
|
|
59
|
+
* @param {number} p3x
|
|
60
|
+
* @param {number} p3y
|
|
61
|
+
* @return {number}
|
|
62
|
+
* @method
|
|
63
|
+
* @protected
|
|
64
|
+
*/
|
|
65
|
+
export const $calculateFlatness = (p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y) => {
|
|
66
|
+
// 制御点から直線への最大距離を計算
|
|
67
|
+
// Calculate maximum distance from control points to the line P0-P3
|
|
68
|
+
const ux = 3 * p1x - 2 * p0x - p3x;
|
|
69
|
+
const uy = 3 * p1y - 2 * p0y - p3y;
|
|
70
|
+
const vx = 3 * p2x - 2 * p3x - p0x;
|
|
71
|
+
const vy = 3 * p2y - 2 * p3y - p0y;
|
|
72
|
+
return Math.max(ux * ux + uy * uy, vx * vx + vy * vy);
|
|
73
|
+
};
|
|
74
|
+
/**
|
|
75
|
+
* @description 曲率に基づいて最適な分割数を決定
|
|
76
|
+
* Determine optimal subdivision count based on curvature
|
|
77
|
+
*
|
|
78
|
+
* @param {number} p0x
|
|
79
|
+
* @param {number} p0y
|
|
80
|
+
* @param {number} p1x
|
|
81
|
+
* @param {number} p1y
|
|
82
|
+
* @param {number} p2x
|
|
83
|
+
* @param {number} p2y
|
|
84
|
+
* @param {number} p3x
|
|
85
|
+
* @param {number} p3y
|
|
86
|
+
* @return {number}
|
|
87
|
+
* @method
|
|
88
|
+
* @protected
|
|
89
|
+
*/
|
|
90
|
+
export const $getAdaptiveSubdivisionCount = (p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y) => {
|
|
91
|
+
const flatness = $calculateFlatness(p0x, p0y, p1x, p1y, p2x, p2y, p3x, p3y);
|
|
92
|
+
// フラットネスに基づいて分割数を決定
|
|
93
|
+
// log2(flatness / threshold) で必要な分割レベルを推定
|
|
94
|
+
if (flatness < FLATNESS_THRESHOLD * FLATNESS_THRESHOLD) {
|
|
95
|
+
return MIN_SUBDIVISIONS;
|
|
96
|
+
}
|
|
97
|
+
const level = Math.ceil(Math.log2(Math.sqrt(flatness) / FLATNESS_THRESHOLD) / 2);
|
|
98
|
+
return Math.min(Math.max(level + MIN_SUBDIVISIONS, MIN_SUBDIVISIONS), MAX_SUBDIVISIONS);
|
|
99
|
+
};
|
|
100
|
+
/**
|
|
101
|
+
* @description 適応的バッファのサイズを確保
|
|
102
|
+
* Ensure adaptive buffer size
|
|
103
|
+
*
|
|
104
|
+
* @param {number} size
|
|
105
|
+
* @return {void}
|
|
106
|
+
* @method
|
|
107
|
+
* @protected
|
|
108
|
+
*/
|
|
109
|
+
export const $ensureAdaptiveBufferSize = (size) => {
|
|
110
|
+
if ($adaptiveBuffer.length < size) {
|
|
111
|
+
$adaptiveBuffer = new Float32Array(size * 2);
|
|
112
|
+
}
|
|
113
|
+
};
|
|
114
|
+
/**
|
|
115
|
+
* @description 適応的セグメント数を設定
|
|
116
|
+
* Set adaptive segment count
|
|
117
|
+
*
|
|
118
|
+
* @param {number} count
|
|
119
|
+
* @return {void}
|
|
120
|
+
* @method
|
|
121
|
+
* @protected
|
|
122
|
+
*/
|
|
123
|
+
export const $setAdaptiveSegmentCount = (count) => {
|
|
124
|
+
$adaptiveSegmentCount = count;
|
|
125
|
+
};
|
|
126
|
+
/**
|
|
127
|
+
* @description 分割処理用の再利用可能なFloat32Array(8)バッファプール
|
|
128
|
+
* Reusable Float32Array(8) buffer pool for split operations
|
|
129
|
+
*
|
|
130
|
+
* @type {Float32Array[]}
|
|
131
|
+
* @private
|
|
132
|
+
*/
|
|
133
|
+
const $splitBufferPool = [];
|
|
134
|
+
/**
|
|
135
|
+
* @description プールの現在の使用インデックス
|
|
136
|
+
* Current usage index of the pool
|
|
137
|
+
*
|
|
138
|
+
* @type {number}
|
|
139
|
+
* @private
|
|
140
|
+
*/
|
|
141
|
+
let $splitBufferIndex = 0;
|
|
142
|
+
/**
|
|
143
|
+
* @description 分割用バッファプールをリセット
|
|
144
|
+
* Reset split buffer pool
|
|
145
|
+
*
|
|
146
|
+
* @return {void}
|
|
147
|
+
* @method
|
|
148
|
+
* @protected
|
|
149
|
+
*/
|
|
150
|
+
export const $resetSplitBufferPool = () => {
|
|
151
|
+
$splitBufferIndex = 0;
|
|
152
|
+
};
|
|
153
|
+
/**
|
|
154
|
+
* @description 分割用Float32Array(8)を取得(プールから再利用)
|
|
155
|
+
* Get Float32Array(8) for split (reuse from pool)
|
|
156
|
+
*
|
|
157
|
+
* @return {Float32Array}
|
|
158
|
+
* @method
|
|
159
|
+
* @protected
|
|
160
|
+
*/
|
|
161
|
+
export const $getSplitBuffer = () => {
|
|
162
|
+
if ($splitBufferIndex >= $splitBufferPool.length) {
|
|
163
|
+
$splitBufferPool.push(new Float32Array(8));
|
|
164
|
+
}
|
|
165
|
+
return $splitBufferPool[$splitBufferIndex++];
|
|
166
|
+
};
|
package/src/Bitmap.d.ts
ADDED
package/src/Bitmap.js
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { $funcCode, $setFuncCode } from "../../Blend";
|
|
2
|
+
import { $gl } from "../../WebGLUtil";
|
|
3
|
+
/**
|
|
4
|
+
* @description ブレンドモードを加算に設定します。
|
|
5
|
+
* Set the blend mode to add.
|
|
6
|
+
*
|
|
7
|
+
* @return {void}
|
|
8
|
+
* @method
|
|
9
|
+
* @protected
|
|
10
|
+
*/
|
|
11
|
+
export const execute = () => {
|
|
12
|
+
if ($funcCode !== 611) {
|
|
13
|
+
$setFuncCode(611);
|
|
14
|
+
$gl.blendFunc($gl.ONE, $gl.ONE);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { $funcCode, $setFuncCode } from "../../Blend";
|
|
2
|
+
import { $gl } from "../../WebGLUtil";
|
|
3
|
+
/**
|
|
4
|
+
* @description ブレンドモードをアルファに設定します。
|
|
5
|
+
* Set the blend mode to alpha.
|
|
6
|
+
*
|
|
7
|
+
* @return {void}
|
|
8
|
+
* @method
|
|
9
|
+
* @protected
|
|
10
|
+
*/
|
|
11
|
+
export const execute = () => {
|
|
12
|
+
if ($funcCode !== 606) {
|
|
13
|
+
$setFuncCode(606);
|
|
14
|
+
$gl.blendFunc($gl.ZERO, $gl.SRC_ALPHA);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { $gl } from "../../WebGLUtil";
|
|
2
|
+
import { $funcCode, $setFuncCode } from "../../Blend";
|
|
3
|
+
/**
|
|
4
|
+
* @description ブレンドモードを消去に設定します。
|
|
5
|
+
* Set the blend mode to erase.
|
|
6
|
+
*
|
|
7
|
+
* @return {void}
|
|
8
|
+
* @method
|
|
9
|
+
* @protected
|
|
10
|
+
*/
|
|
11
|
+
export const execute = () => {
|
|
12
|
+
if ($funcCode !== 603) {
|
|
13
|
+
$setFuncCode(603);
|
|
14
|
+
$gl.blendFunc($gl.ZERO, $gl.ONE_MINUS_SRC_ALPHA);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { $gl } from "../../WebGLUtil";
|
|
2
|
+
import { $funcCode, $setFuncCode } from "../../Blend";
|
|
3
|
+
/**
|
|
4
|
+
* @description ブレンドモードをOne/Zeroに設定します。
|
|
5
|
+
* Set the blend mode to One/Zero.
|
|
6
|
+
*
|
|
7
|
+
* @return {void}
|
|
8
|
+
* @method
|
|
9
|
+
* @protected
|
|
10
|
+
*/
|
|
11
|
+
export const execute = () => {
|
|
12
|
+
if ($funcCode !== 610) {
|
|
13
|
+
$setFuncCode(610);
|
|
14
|
+
$gl.blendFunc($gl.ONE, $gl.ZERO);
|
|
15
|
+
}
|
|
16
|
+
};
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { $gl } from "../../WebGLUtil";
|
|
2
|
+
import { $funcCode, $setFuncCode } from "../../Blend";
|
|
3
|
+
/**
|
|
4
|
+
* @description ブレンドモードをリセット
|
|
5
|
+
* Reset the blend mode
|
|
6
|
+
*
|
|
7
|
+
* @return {void}
|
|
8
|
+
* @method
|
|
9
|
+
* @protected
|
|
10
|
+
*/
|
|
11
|
+
export const execute = () => {
|
|
12
|
+
if ($funcCode !== 613) {
|
|
13
|
+
$setFuncCode(613);
|
|
14
|
+
$gl.blendFunc($gl.ONE, $gl.ONE_MINUS_SRC_ALPHA);
|
|
15
|
+
}
|
|
16
|
+
};
|