[orx-color] Add serialization annotations to color classes

This commit is contained in:
Edwin Jakobs
2023-11-18 08:25:28 +01:00
parent a8e23ad651
commit ac54e2a5d7
7 changed files with 14 additions and 0 deletions

View File

@@ -1,9 +1,11 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import org.openrndr.math.mixAngle import org.openrndr.math.mixAngle
@Serializable
data class ColorHPLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : data class ColorHPLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) :
ColorModel<ColorHPLUVa>, ColorModel<ColorHPLUVa>,
HueShiftableColor<ColorHPLUVa>, HueShiftableColor<ColorHPLUVa>,

View File

@@ -1,5 +1,6 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import org.openrndr.math.map import org.openrndr.math.map
@@ -79,6 +80,7 @@ private fun maxChromaForLH(L100: Double, H: Double): Double {
/** /**
* HSLUV color space * HSLUV color space
*/ */
@Serializable
data class ColorHSLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : data class ColorHSLUVa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) :
ColorModel<ColorHSLUVa>, ColorModel<ColorHSLUVa>,
HueShiftableColor<ColorHSLUVa>, HueShiftableColor<ColorHSLUVa>,

View File

@@ -1,11 +1,13 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import org.openrndr.math.mixAngle import org.openrndr.math.mixAngle
import kotlin.math.* import kotlin.math.*
@Suppress("LocalVariableName") @Suppress("LocalVariableName")
@Serializable
data class ColorOKHSLa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : data class ColorOKHSLa(val h: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) :
ColorModel<ColorOKHSLa>, ColorModel<ColorOKHSLa>,
HueShiftableColor<ColorOKHSLa>, HueShiftableColor<ColorOKHSLa>,

View File

@@ -1,11 +1,13 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import org.openrndr.math.mixAngle import org.openrndr.math.mixAngle
import kotlin.math.* import kotlin.math.*
@Suppress("LocalVariableName") @Suppress("LocalVariableName")
@Serializable
data class ColorOKHSVa(val h: Double, val s: Double, val v: Double, override val alpha: Double = 1.0) : data class ColorOKHSVa(val h: Double, val s: Double, val v: Double, override val alpha: Double = 1.0) :
ColorModel<ColorOKHSVa>, ColorModel<ColorOKHSVa>,
HueShiftableColor<ColorOKHSVa>, HueShiftableColor<ColorOKHSVa>,

View File

@@ -1,5 +1,6 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import kotlin.math.pow import kotlin.math.pow
@@ -11,6 +12,7 @@ import kotlin.math.pow
* [b] = yellow (-1.0) to blue (1.0). * [b] = yellow (-1.0) to blue (1.0).
*/ */
@Suppress("LocalVariableName") @Suppress("LocalVariableName")
@Serializable
data class ColorOKLABa(val l: Double, val a: Double, val b: Double, override val alpha: Double = 1.0) : data class ColorOKLABa(val l: Double, val a: Double, val b: Double, override val alpha: Double = 1.0) :
ColorModel<ColorOKLABa>, ColorModel<ColorOKLABa>,
ShadableColor<ColorOKLABa>, ShadableColor<ColorOKLABa>,

View File

@@ -1,5 +1,6 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.* import org.openrndr.math.*
import kotlin.math.* import kotlin.math.*
@@ -7,6 +8,7 @@ import kotlin.math.*
/** /**
* Color in cylindrical OKLab space * Color in cylindrical OKLab space
*/ */
@Serializable
data class ColorOKLCHa(val l: Double, val c: Double, val h: Double, override val alpha: Double = 1.0) : data class ColorOKLCHa(val l: Double, val c: Double, val h: Double, override val alpha: Double = 1.0) :
ColorModel<ColorOKLCHa>, ColorModel<ColorOKLCHa>,
ShadableColor<ColorOKLCHa>, ShadableColor<ColorOKLCHa>,

View File

@@ -1,9 +1,11 @@
package org.openrndr.extra.color.spaces package org.openrndr.extra.color.spaces
import kotlinx.serialization.Serializable
import org.openrndr.color.* import org.openrndr.color.*
import org.openrndr.math.Vector4 import org.openrndr.math.Vector4
import org.openrndr.math.mixAngle import org.openrndr.math.mixAngle
@Serializable
data class ColorXSLUVa(val x: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) : data class ColorXSLUVa(val x: Double, val s: Double, val l: Double, override val alpha: Double = 1.0) :
ColorModel<ColorXSLUVa>, ColorModel<ColorXSLUVa>,
HueShiftableColor<ColorXSLUVa>, HueShiftableColor<ColorXSLUVa>,