|
@@ -0,0 +1,51 @@
|
|
|
+@startuml
|
|
|
+abstract SPaintEngine
|
|
|
+SPainter *-- SPaintEngine
|
|
|
+SCanvasPaintEngine ..|> SPaintEngine
|
|
|
+SSvgPaintEngine ..|> SPaintEngine
|
|
|
+SPaintEngine "1" -- "n" SPaintState
|
|
|
+SPen -- SPaintState
|
|
|
+SPen "1" -- "1" SColor
|
|
|
+SPen "1" -- "1" SGradient
|
|
|
+SLineGradient ..|> SGradient
|
|
|
+SRadialGradient ..|> SGradient
|
|
|
+SPainter "1" *-- "1" SPen
|
|
|
+
|
|
|
+class SPen{
|
|
|
+ color: SColor
|
|
|
+ dashOffset: number
|
|
|
+ lineCapStyle: SLineCapStyle
|
|
|
+ lineDash: number[] | null
|
|
|
+ lineJoinStyle: SLineJoinStyle
|
|
|
+ lineWidth: number
|
|
|
+ miterLimit: number
|
|
|
+ constructor(SPen):void
|
|
|
+ constructor(SColor, number):void
|
|
|
+ constructor():void
|
|
|
+}
|
|
|
+
|
|
|
+class SPaintState{
|
|
|
+ brush: SBrush
|
|
|
+ font: SFont
|
|
|
+ matrix: SMatrix
|
|
|
+ composite: SComposite
|
|
|
+ pen: SPen
|
|
|
+ constructor(SPaintState): void
|
|
|
+}
|
|
|
+
|
|
|
+class SColor{
|
|
|
+ alpha: number
|
|
|
+ red: number
|
|
|
+ green: number
|
|
|
+ blue: number
|
|
|
+ constructor(number | string | SColor, number, number, number): void
|
|
|
+ rgb(number, number, number): SColor
|
|
|
+ rgba(number, number, number, number): SColor
|
|
|
+}
|
|
|
+
|
|
|
+class SGradient{
|
|
|
+ stopList: SGradientStop[]
|
|
|
+ addColorStop(number, SColor): void
|
|
|
+}
|
|
|
+
|
|
|
+@enduml
|