У меня есть приложение на основе Visualization.gui, отображающее облако точек в SceneWidget. Зарегистрирован обратный вызов ключевого события, поэтому пользователь может манипулировать облаком точек, например. повернуть на 90. Обратный вызов выполняет запрошенное действие и удаляет_geometry()/add_geometry() в облаке точек. Все это работает нормально.
Проблема в том, что SceneWidget не обновляется и не перерисовывается последовательно: кажется, что для запуска отображения нового состояния требуется некоторое движение мыши. Мышь на моем рабочем столе достаточно чувствительна, чтобы генерировать достаточно небольших случайных движений, чтобы работать примерно в 80% случаев. С ноутбуком все не так гладко: он почти всегда не обновляется, пока я не проведу пальцем по тачпаду.
Я попробовал все комбинации HANDLED/CONSUMED для ключевого события, плюс Force_update() как для SceneWidget, так и для главного окна... безрезультатно. Я что-то упустил?
(Windows 11 Pro, open3d 0.19.0, Python 3.12, если это имеет значение.)
Подробнее здесь: https://stackoverflow.com/questions/798 ... -key-input