Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 24, 2021 05:20:42

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Запара с numPy

Привет. Подскажите, пожалуйта как…
Имеется массив высот. На каждую высоту свой массив координат.

 heights = [7421, 3798]
vectors1 = [
       [ 2897, -1597,  7386],
       [ 2899, -2103,  7387],
       [ 2897, -2703,  7386]
]
vectors1 = [
       [ 1844, -1588,  3760],
       [ 2578, -1588,  3762],
       [ 2582, -2116,  3760],
       [ 2586, -2697,  3761]
]
Как
1 - для каждой высоты найти свой массив координат с ближайшим значением по z в этом массиве
2 - изменить в этом массиве z на высоту
3 - вернуть результат в таком виде
 result = [
 [
       [ 2897, -1597,  7421],
       [ 2899, -2103,  7421],
       [ 2897, -2703,  7421]
],
[
       [ 1844, -1588,  3798],
       [ 2578, -1588,  3798],
       [ 2582, -2116,  3798],
       [ 2586, -2697,  3798]
]
]

Офлайн

#2 Янв. 24, 2021 08:13:31

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4121
Репутация: +  251  -
Профиль   Отправить e-mail  

Запара с numPy

Так как у вас написано. numpy нет. какая может быть запара с тем чего нет?

zavx0z
найти свой массив координат с
У вас только один массив vectors1. Когда поминаете его второй раз то просто стираете старое значение и пишете новое. Так что искать не в чем и ответ на вопрос - никак не найти. искать можно в словаре массиве или множестве.

zavx0z
изменить в этом массиве z на высоту
for point in vectors1:
point[-1]=z
zavx0z
вернуть результат в таком виде
В таком дурацком формате данные никто не пишет. Обычно всех устраивает то что получается в результате
print(vectors1) или numpy.savetxt(vectors1,“somefile”).
Если надо именно так как вы написали курите мануалы по format,print и после часа кодинга думаю получите то что вы хотите. Помочь вам в этом трудно. Одного примера недостаточно чтобы описать все нюансы форматирования при выводе.
Ну и если вы организуете такой вывод будьте готовы к тому что вас будут материть все пользователи программы за нестандартный вывод данных.

p.s.
У меня сложилось впечатление что вы представляете себе работу интерпретатора как будто он как и вы в текстовом редакторе смотрит на текст программы и чтото там ищет заменяет, вывод тоже направляет в текст программы. Это не так. Интерпретатор программу ни в коем случае не трогает. Он последовательно читает инструкции и их выполняет.



Отредактировано doza_and (Янв. 24, 2021 08:51:26)

Офлайн

#3 Янв. 24, 2021 12:54:53

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Запара с numPy

doza_and
У меня сложилось впечатление что вы представляете себе работу интерпретатора как будто он как и вы в текстовом редакторе смотрит на текст программы и чтото там ищет заменяет, вывод тоже направляет в текст программы. Это не так. Интерпретатор программу ни в коем случае не трогает. Он последовательно читает инструкции и их выполняет.
У меня сложилось впечатление, что Вы представляете себе интерпритатор Python единой инстанцией…
Спасибо за развернутый ответ, Вы очень помогли… почувствовать невежественное отношение на себе.

Разобрался уже. Можно сделать лучше, но результат получен… и так сойдет

Офлайн

#4 Янв. 24, 2021 15:06:21

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4121
Репутация: +  251  -
Профиль   Отправить e-mail  

Запара с numPy

zavx0z
Вы очень помогли… почувствовать невежественное отношение на себе.
Это блендер чтоли? Забавно выглядит. В нем скрипты не писал. может и стоит глянуть.



Офлайн

#5 Янв. 24, 2021 15:58:18

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Запара с numPy

doza_and
Blender c Animation Nodes

Офлайн

#6 Янв. 24, 2021 18:10:29

zavx0z
Зарегистрирован: 2013-12-29
Сообщения: 40
Репутация: +  0  -
Профиль   Отправить e-mail  

Запара с numPy

Еще один вопросик.
Как отсотрировать вектора точек для последовательного соединения ребрами по периметру

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version