Предполагая, что существует одномерный массив/список, определяющий цветовой градиент, я хотел бы использовать его для создания двухмерного цветового градиента следующим образом:
Давайте простота: замените информацию о цвете одним числовым значением для примера одномерного массива/списка:
Чтобы градиент продвигался по диагонали с продвижением наибольшего следующего значения по диагонали по всему массиву, я хотел бы преобразовать 1D-последовательность в 2D-массив с намеренно выбранной формой (т.е. ширина/высота, т. е. количество строк x количество столбцов, где строка * столбцы == длина массива одномерных градиентов) следующим образом:
Код: Выделить всё
[[ 1 2 4 ]
[ 3 6 7 ]
[ 5 9 10 ]
[ 8 12 13 ]
[ 11 14 15 ]]
или
Код: Выделить всё
[[ 1 2 4 7 10 ]
[ 3 6 9 12 13 ]
[ 5 8 11 14 15 ]]
или начиная с последовательности:
для
Код: Выделить всё
[[ 1 2 4 7 ]
[ 3 6 9 11 ]
[ 5 10 13 14 ]
[ 8 12 15 16 ]]
Существует ли готовый к использованию готовый модуль Python или C-библиотека, способная выполнить такое изменение формы массива, или этот особый случай необходимо запрограммировать вручную? И если необходимо кодирование циклов вручную, какой способ сделать это будет наиболее эффективным, поскольку последовательность, которую я хотел бы преобразовать, имеет размер 256³? Может быть, я уже нашел готовый к использованию код для такого изменения/преобразования в глубоком пространстве Интернета, который мне не удалось найти, спрашивая ни поисковые системы, ни LLM?
Подробнее здесь:
https://stackoverflow.com/questions/785 ... -a-2-d-gra