Files
PHP-Packages-Colors/resources/uml/Klassen-Aufbau.puml
T

77 lines
3.8 KiB
Plaintext

@startuml
'https://plantuml.com/class-diagram
namespace NaturallyColorModels {
class CyanMagentaYellowKey
class HueSaturationValue
class RedGreenBlue
}
namespace ColorModels {
abstract AbstractColorModel
class CyanMagentaYellowKey
class HueSaturationValue
class RedGreenBlue
CyanMagentaYellowKey --|> AbstractColorModel
HueSaturationValue --|> AbstractColorModel
RedGreenBlue --|> AbstractColorModel
}
NaturallyColorModels.CyanMagentaYellowKey o-- ColorModels.CyanMagentaYellowKey
NaturallyColorModels.HueSaturationValue o-- ColorModels.HueSaturationValue
NaturallyColorModels.RedGreenBlue o-- ColorModels.RedGreenBlue
namespace NaturallyTransformer {
interface ColorModelTransformInterface {
+ toRedGreenBlue(): NaturallyColorModels.RedGreenBlue
+ toCyanMagentaYellowKey(): NaturallyColorModels.CyanMagentaYellowKey
+ toHueSaturationValue(): NaturallyColorModels.HueSaturationValue
}
class CyanMagentaYellowKeyTransformer
class HueSaturationValueTransformer
class RedGreenBlueTransformer
NaturallyTransformer.ColorModelTransformInterface o-- Transformer.ColorModelTransformInterface
NaturallyTransformer.ColorModelTransformInterface <|-- NaturallyTransformer.CyanMagentaYellowKeyTransformer
NaturallyTransformer.ColorModelTransformInterface <|-- NaturallyTransformer.HueSaturationValueTransformer
NaturallyTransformer.ColorModelTransformInterface <|-- NaturallyTransformer.RedGreenBlueTransformer
NaturallyTransformer.RedGreenBlueTransformer o-- NaturallyColorModels.RedGreenBlue
NaturallyTransformer.CyanMagentaYellowKeyTransformer o-- NaturallyColorModels.CyanMagentaYellowKey
NaturallyTransformer.HueSaturationValueTransformer o-- NaturallyColorModels.HueSaturationValue
}
namespace Transformer {
interface ColorModelTransformInterface {
+ toRedGreenBlue(): ColorModels.RedGreenBlue
+ toCyanMagentaYellowKey(): ColorModels.CyanMagentaYellowKey
+ toHueSaturationValue(): ColorModels.HueSaturationValue
}
class CyanMagentaYellowKeyTransformer
class HueSaturationValueTransformer
class RedGreenBlueTransformer
Transformer.ColorModelTransformInterface <|-- Transformer.CyanMagentaYellowKeyTransformer
Transformer.ColorModelTransformInterface <|-- Transformer.HueSaturationValueTransformer
Transformer.ColorModelTransformInterface <|-- Transformer.RedGreenBlueTransformer
namespace Utilities {
abstract AbstractHueSaturationValueToUtility
class CyanMagentaYellowKeyToHueSaturationValue
class HueSaturationValueToCyanMagentaYellowKey
class HueSaturationValueToRedGreenBlue
class RedGreenBlueToHueSaturationValue
Transformer.Utilities.CyanMagentaYellowKeyToHueSaturationValue --|> Transformer.Utilities.AbstractHueSaturationValueToUtility
Transformer.Utilities.HueSaturationValueToCyanMagentaYellowKey --|> Transformer.Utilities.AbstractHueSaturationValueToUtility
Transformer.Utilities.HueSaturationValueToRedGreenBlue --|> Transformer.Utilities.AbstractHueSaturationValueToUtility
Transformer.Utilities.RedGreenBlueToHueSaturationValue --|> Transformer.Utilities.AbstractHueSaturationValueToUtility
}
CyanMagentaYellowKeyTransformer o-- Transformer.Utilities.CyanMagentaYellowKeyToHueSaturationValue
CyanMagentaYellowKeyTransformer o-- Transformer.Utilities.HueSaturationValueToRedGreenBlue
HueSaturationValueTransformer o-- Transformer.Utilities.HueSaturationValueToRedGreenBlue
HueSaturationValueTransformer o-- Transformer.Utilities.HueSaturationValueToCyanMagentaYellowKey
RedGreenBlueTransformer o-- Transformer.Utilities.RedGreenBlueToHueSaturationValue
RedGreenBlueTransformer o-- Transformer.Utilities.HueSaturationValueToCyanMagentaYellowKey
}
ColorModels.AbstractColorModel --o Transformer.ColorModelTransformInterface
@enduml