Fix AABB type adapters

This commit is contained in:
DBotThePony 2024-03-30 12:08:41 +07:00
parent 1f65764310
commit b0d4a1d0fe
Signed by: DBot
GPG Key ID: DCC23B5715498507
3 changed files with 17 additions and 13 deletions

View File

@ -4,7 +4,7 @@ kotlin.code.style=official
specifyKotlinAsDependency=false
projectGroup=ru.dbotthepony.kommons
projectVersion=2.11.0
projectVersion=2.11.1
guavaDepVersion=33.0.0
gsonDepVersion=2.8.9

View File

@ -18,15 +18,17 @@ object AABBTypeAdapter : TypeAdapter<AABB>() {
override fun read(`in`: JsonReader): AABB {
`in`.beginArray()
val (x1, x2) = Vector2d(`in`.nextDouble(), `in`.nextDouble())
val (y1, y2) = Vector2d(`in`.nextDouble(), `in`.nextDouble())
val minX = `in`.nextDouble()
val minY = `in`.nextDouble()
val maxX = `in`.nextDouble()
val maxY = `in`.nextDouble()
`in`.endArray()
val xMins = x1.coerceAtMost(x2)
val xMaxs = x1.coerceAtLeast(x2)
val xMins = minX.coerceAtMost(maxX)
val xMaxs = maxX.coerceAtLeast(minX)
val yMins = y1.coerceAtMost(y2)
val yMaxs = y1.coerceAtLeast(y2)
val yMins = minY.coerceAtMost(maxY)
val yMaxs = maxX.coerceAtLeast(minY)
return AABB(
Vector2d(xMins, yMins),

View File

@ -18,15 +18,17 @@ object AABBiTypeAdapter : TypeAdapter<AABBi>() {
override fun read(`in`: JsonReader): AABBi {
`in`.beginArray()
val (x1, x2) = Vector2i(`in`.nextInt(), `in`.nextInt())
val (y1, y2) = Vector2i(`in`.nextInt(), `in`.nextInt())
val minX = `in`.nextInt()
val minY = `in`.nextInt()
val maxX = `in`.nextInt()
val maxY = `in`.nextInt()
`in`.endArray()
val xMins = x1.coerceAtMost(x2)
val xMaxs = x1.coerceAtLeast(x2)
val xMins = minX.coerceAtMost(maxX)
val xMaxs = maxX.coerceAtLeast(minX)
val yMins = y1.coerceAtMost(y2)
val yMaxs = y1.coerceAtLeast(y2)
val yMins = minY.coerceAtMost(maxY)
val yMaxs = maxX.coerceAtLeast(minY)
return AABBi(
Vector2i(xMins, yMins),