Оптимизация обработки большого числа элементов 2
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Оптимизация обработки большого числа элементов 2

Оптимизация обработки большого числа элементов 2

Ответ
Поиск в этой теме
Непрочитано 03.12.2013, 17:45 #1
Оптимизация обработки большого числа элементов 2
zamtmn
 
КИПиА
 
Tyumen
Регистрация: 21.03.2005
Сообщений: 1,352

В продолжение одноименной ветки (https://forum.dwg.ru/showthread.php?t=103683), но с несколько иным вопросом.
С разными видами деревьев из предидущего топика вроде всё ясно. Но всплыл еще один нюанс:
Задача нахождение "привязок" к большому количеству примитивов. Как она сейчас решается - примитивы лежат в двоичном дереве, из этого дерева выбираются примитивы находящиеся рядом с указателем мыши - их обычно всего несколько штук, и для этих нескольких штук уже ищется оптимальная-ближайшая привязка (конец, середина, вставка и т.д.)
Проблема появляется с примитивами у которых точка привязки может не лежать внутри габаритов примитива - например вставка блока, или короткая дуга с большим радиусом. Т.е. например когда "центр" дуги на приложеной картинке рядом с мышкой и к нему можно "привязаться", сама дуга далеко от мышки и отфильтровывается на этапе выборки примитивов из дерева. Как это можно победить?
Надумал 2 решения
1 - увеличивать габарит таких примитивов чтобы все нужные точки попадали внутрь, но при этом качество построенного "дерева" сильно ухудшается (пока сделал так)
2 - хранить и обрабатывать точки привязки в отдельном "дереве" но тогда появляется ощютимый расход ресурсов на поддержание этого хозяйства в актуальном состоянии

как эту проблему можно решить по уму?

Миниатюры
Нажмите на изображение для увеличения
Название: arc.PNG
Просмотров: 75
Размер:	4.7 Кб
ID:	117821  

Просмотров: 2614
 
Непрочитано 03.12.2013, 17:55
#2
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от zamtmn Посмотреть сообщение
из этого дерева выбираются примитивы находящиеся рядом с указателем мыши
тогда может штатные автокадные средства поюзать
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 03.12.2013, 17:56
#3
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


Дима_
Автокада нет, это автономная программа
zamtmn вне форума  
 
Непрочитано 04.12.2013, 00:46
#4
trir


 
Регистрация: 18.12.2010
Сообщений: 5,108


Мне кажется, что АкАд рассчитывает привязку только для "видимых" примитивов и в экранной СК. То есть БД чертежа и есть БД примитивов - которые попадают в экран, последняя в экранной СК.
trir вне форума  
 
Непрочитано 04.12.2013, 01:01
#5
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


А - это Вы к своему детищу - обратите внимание на поведение подсветки у "первоисточника" - маркер "внегабаритной" привязки появится только после "маха" мышкой возле самого объекта - ИХМО это тот редкий случай когда это и в реализации проще и для юзера удобней (чтоб не хватался за центр неизвестно какой-дуги в другом конце чертежа).
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Автор темы   Непрочитано 04.12.2013, 01:54
#6
zamtmn

КИПиА
 
Регистрация: 21.03.2005
Tyumen
Сообщений: 1,352
<phrase 1=


trir
Собственно разница не велика - на экране тоже может быть много мелких примитивов и все их перебирать напряжно

Дима_
Точно, автокад помнит 6 последних "побывавших под мышкой" дуг, для них и добавляет "внегабаритную" привязку. Это кол-во определяет какаято системная переменная? Странно что он не делает это с блоками - для них вставка работает только рядом с какимлибо примитивом блока.
Спасибо за разъяснение
zamtmn вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Оптимизация обработки большого числа элементов 2



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Документация Проектировщику на Torrents DEM Разное 263 03.09.2024 12:25
Жилые и общественные здания: краткий справочник инженера-конструктора. Под ред. Ю.А. Дыховичного и В.И. Колчунова. 2011 (Впечатления и отзывы). Armin Поиск литературы, чертежей, моделей и прочих материалов 19 22.03.2018 15:41
Оптимизация обработки большого числа элементов АлексЮстасу Программирование 127 05.10.2017 01:18
Порекомендуйте литературу для повышения квалификации(грунты, геотехника) acid Поиск литературы, чертежей, моделей и прочих материалов 6 13.05.2015 22:14
Случайный эксцентриситет p_sh Прочее. Архитектура и строительство 14 22.07.2009 11:32