From ac54e2a5d73f5db4ecf76f3467421a59059535de Mon Sep 17 00:00:00 2001 From: Edwin Jakobs Date: Sat, 18 Nov 2023 08:25:28 +0100 Subject: [PATCH] [orx-color] Add serialization annotations to color classes --- orx-color/src/commonMain/kotlin/spaces/ColorHPLUVa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorHSLUVa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorOKHSLa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorOKHSVa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorOKLABa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorOKLCHa.kt | 2 ++ orx-color/src/commonMain/kotlin/spaces/ColorXSLUVa.kt | 2 ++ 7 files changed, 14 insertions(+) diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorHPLUVa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorHPLUVa.kt index a18f2474..58cf28f5 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorHPLUVa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorHPLUVa.kt @@ -1,9 +1,11 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import org.openrndr.math.mixAngle +@Serializable data class ColorHPLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : ColorModel, HueShiftableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorHSLUVa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorHSLUVa.kt index 04e2dda1..315d23e0 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorHSLUVa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorHSLUVa.kt @@ -1,5 +1,6 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import org.openrndr.math.map @@ -79,6 +80,7 @@ private fun maxChromaForLH(L100: Double, H: Double): Double { /** * HSLUV color space */ +@Serializable data class ColorHSLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : ColorModel, HueShiftableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorOKHSLa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorOKHSLa.kt index 6e3af127..cbee5a54 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorOKHSLa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorOKHSLa.kt @@ -1,11 +1,13 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import org.openrndr.math.mixAngle import kotlin.math.* @Suppress("LocalVariableName") +@Serializable data class ColorOKHSLa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : ColorModel, HueShiftableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorOKHSVa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorOKHSVa.kt index e693bd43..fa5345cd 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorOKHSVa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorOKHSVa.kt @@ -1,11 +1,13 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import org.openrndr.math.mixAngle import kotlin.math.* @Suppress("LocalVariableName") +@Serializable data class ColorOKHSVa(val h: Double, val s: Double, val v: Double, override val alpha: Double = 1.0) : ColorModel, HueShiftableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorOKLABa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorOKLABa.kt index ac91e9bd..b1d1604e 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorOKLABa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorOKLABa.kt @@ -1,5 +1,6 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import kotlin.math.pow @@ -11,6 +12,7 @@ import kotlin.math.pow * [b] = yellow (-1.0) to blue (1.0). */ @Suppress("LocalVariableName") +@Serializable data class ColorOKLABa(val l: Double, val a: Double, val b: Double, override val alpha: Double = 1.0) : ColorModel, ShadableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorOKLCHa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorOKLCHa.kt index d454cb6b..1bceb4d4 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorOKLCHa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorOKLCHa.kt @@ -1,5 +1,6 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.* import kotlin.math.* @@ -7,6 +8,7 @@ import kotlin.math.* /** * Color in cylindrical OKLab space */ +@Serializable data class ColorOKLCHa(val l: Double, val c: Double, val h: Double, override val alpha: Double = 1.0) : ColorModel, ShadableColor, diff --git a/orx-color/src/commonMain/kotlin/spaces/ColorXSLUVa.kt b/orx-color/src/commonMain/kotlin/spaces/ColorXSLUVa.kt index 384d202d..976487de 100644 --- a/orx-color/src/commonMain/kotlin/spaces/ColorXSLUVa.kt +++ b/orx-color/src/commonMain/kotlin/spaces/ColorXSLUVa.kt @@ -1,9 +1,11 @@ package org.openrndr.extra.color.spaces +import kotlinx.serialization.Serializable import org.openrndr.color.* import org.openrndr.math.Vector4 import org.openrndr.math.mixAngle +@Serializable data class ColorXSLUVa(val x: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : ColorModel, HueShiftableColor,