У меня есть объект bitmap
, представляющий собой трехмерный массив с третьим измерением, равным 3. Я хочу разбить его на блоки размером 64x64x3. Для этого у меня есть следующий фрагмент кода:
val tiles: someType = for {
x <- bitmap.indices by 64
y <- bitmap(0).indices by 64
data = for {
//For all X and Y within one future tile coordinates
tx <- x until x + 64
ty <- y until y + 64
} yield bitmap(tx)(ty)
...
}
В data
для l oop yield
вызовет ArrayIndexOutOfBoundsException
на последнем фрагменте. Как я могу проверить, не превышают ли x
и y
границы массива в этом l oop? Возможно ли иметь несколько until
условий для одной и той же переменной в одном и том же l oop?