oknosoft / windowbuilder

Окнософт:Заказ дилера
http://www.oknosoft.ru/zd/
Other
10 stars 19 forks source link

Скелетон в mousemove #559

Closed unpete closed 4 years ago

unpete commented 4 years ago

Сейчас в рисовалке нет понятия частичного изменения координат. Система пытается пересчитать вершины всех профилей и заполнений на каждое событие mousemove или arrowkeydown. Естественно, не успевает, даже при оптимальных справочниках, не говоря про справочники реальных пользователей. Негативных последствий много:

Принято решение, добавить схеме изделия состояние скелетон, а редактирование координат выполнять в два этапа: манипуляции мышью и клавиатурой должны деформировать не само изделие, а его скелет. Координаты скелета даже с тысячей вершин, легко пересчитать за единицы миллисекунд (против сотен миллисекунд полного пересчета изделия). При этом, деформации можно сделать умнее, учесть границы и min-max размеры заполнений и профилей. Кроме улучшения эргономики редактирования, получаем:

unpete commented 4 years ago

Объединяю с #566