Показать сообщение отдельно
  #1 (permalink)  
Старый 09.01.2017, 02:47
Аспирант
Отправить личное сообщение для TimohaP Посмотреть профиль Найти все сообщения от TimohaP
 
Регистрация: 30.06.2014
Сообщений: 56

Увеличение массива
Создавая карту блоков, я решил сохранять ее в двумерном массиве, позначая соответствующие блоки числами.
Вот например, у меня есть участок карты 5x7

и он задается таким вот массивом:
map = [
[1,1,0,0,1],
[1,0,0,0,1],
[1,0,0,1,1],
[1,0,0,0,1],
[1,0,0,0,1],
[1,1,1,0,1],
[1,1,1,1,1],
]

где "1" = присутствие блока, а "0" = соответственно, отсутствие. Может быть только два этих состояния, т.е массив ограничивается числами "1" или "0", в нем нету "2" или чего-то еще.
Допустим, мне нужно увеличить этот участок к размерам 5х10, или к какому-то иному. Но при этом, нужно чтобы в массиве не оставалось пустых мест, а они записывались соседними значениями, или что-то типа того. Примерно так работают фоторедакторы, которые увеличивают растровые изображения, додавая на место появившихся пикселей какие-то новые.
Так вот вопрос: есть ли какой-то не очень тяжелый алгоритм с реализацией на JS? Может кто-то вкратце изложить, как решить эту проблему, или хотя бы скинуть ссылку на хороший туториал?
Уже искал, и ниче не нашел. (Да, значит плохо искал.)
Ответить с цитированием