aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDanny Lin <danny@kdrag0n.dev>2021-08-31 00:12:21 -0700
committerDanny Lin <danny@kdrag0n.dev>2021-08-31 00:46:05 -0700
commit080cf31b2bb61589981cc0e4215b807e60368a53 (patch)
tree41fdd45c50d5c7d84a7c2010ebb9c36715511459
parent1df94faa5a5dc857ffefa502485f8a74d1ca5a96 (diff)
ucs: lab: Oklab: Add XYZ conversions to graph
-rw-r--r--src/commonMain/kotlin/dev/kdrag0n/colorkt/ucs/lab/Oklab.kt3
-rw-r--r--src/commonTest/kotlin/dev/kdrag0n/colorkt/tests/ConversionTests.kt2
2 files changed, 4 insertions, 1 deletions
diff --git a/src/commonMain/kotlin/dev/kdrag0n/colorkt/ucs/lab/Oklab.kt b/src/commonMain/kotlin/dev/kdrag0n/colorkt/ucs/lab/Oklab.kt
index a7ccbac..9b007ed 100644
--- a/src/commonMain/kotlin/dev/kdrag0n/colorkt/ucs/lab/Oklab.kt
+++ b/src/commonMain/kotlin/dev/kdrag0n/colorkt/ucs/lab/Oklab.kt
@@ -68,6 +68,9 @@ public data class Oklab(
internal fun register() {
ConversionGraph.add<LinearSrgb, Oklab> { it.toOklab() }
ConversionGraph.add<Oklab, LinearSrgb> { it.toLinearSrgb() }
+
+ ConversionGraph.add<CieXyz, Oklab> { it.toOklab() }
+ ConversionGraph.add<Oklab, CieXyz> { it.toXyz() }
}
private fun lmsToOklab(l: Double, m: Double, s: Double): Oklab {
diff --git a/src/commonTest/kotlin/dev/kdrag0n/colorkt/tests/ConversionTests.kt b/src/commonTest/kotlin/dev/kdrag0n/colorkt/tests/ConversionTests.kt
index 179270e..2b829ba 100644
--- a/src/commonTest/kotlin/dev/kdrag0n/colorkt/tests/ConversionTests.kt
+++ b/src/commonTest/kotlin/dev/kdrag0n/colorkt/tests/ConversionTests.kt
@@ -14,7 +14,7 @@ class ConversionTests {
fun longConversion() {
val jzczhz = CieLch(50.0, 20.0, 1.0)
val autoOklch = jzczhz.convert<Oklch>()
- val manualOklch = jzczhz.toCieLab().toXyz().toLinearSrgb().toOklab().toOklch()
+ val manualOklch = jzczhz.toCieLab().toXyz().toOklab().toOklch()
assertEquals(autoOklch, manualOklch)
}