Zub разумеется «не одну собаку съел » в «кадо-строении» но насчёт обязательно четырёхвершинных полигонов для «плотных моделей » как мне кажется неправ (хотя возможно я просто что-то не так понянл ) …
"Давным давно на далеком далеком форуме " 
я немного возился с ОпенГл и загрузкой 3D моделей
Моя тема на форуме сайта hiasm.com*(Задача была просто попробовать загрузить и показать хоть немного сложную модель (в конце есть даже что-то на Лазрусе но тогда я уперся в лазрусную реализацию ОпенГл (и библиотек к кол+мск )и дело дальше увы не пошло ... Но возможно когда нибудь к тем задачам еще вернусь Кто же не хотел сделать свой "типа 3д-движок" ?

( хотя-бы для украшения интерфейсов ) ... )
Но в результате я высинил что :
1 Большая часть форматов записи моделей имеют разбиение именно на треугольник ( к кстати и в АвтоКад вроде то-же )
2 Никаких «зазоров» даже при самом примитивном программном пересчёте координат быть не может ( Возможно для физических моделей есть какие-то сложности но я их не вижу)
В общем если :
Есть набор точек определяющих поверхность модели . =>
То все точки всегда можно соединить в набор треугольников (Ага старая добрая триангуляция) =>
Кроме того дополнительные точки вполне можно интерполировать по известным (сделав при необходимости просчитываемые полигоны практически точечными а модель «идеально криволинейной»)
Добавлено спустя 1 час 32 минуты 10 секунд:vitaly_l писал(а):Alex2013 писал(а):Брр... "Без меня меня женили"..
Теги у меня строятся по списку "команд" (что-то вроде ну очень примитивного AutoLISP-а ) и там все с координатами нормально .
Все "эпохальное действие" поиска границ нужно просто чтобы было видно при клике куда он попал и где кончается текущая фигура
(которая может только краем выглядывать из под другой )
Именно об этом вам и говорят!!! Только делается такой поиск, с помощью TRect, а не ScanLine. И действительно, точно также ищутся и теги на html страницах. И масштабирование, как ни странно проще делать с помощью TRect. А TRect - нужно закладывать при создании фигуры, а не вычислять при каждом клике. Это вы можете понять? Вам все, только это и хотят сказать: ДЕЛАЙТЕ TRect - ЗАРАНЕЕ, а не вычисляйте его при каждом клике. Впрочем - решайте сами, вам видней.
Еще раз объясняю: редактор
"как-бы не знает" что делает та или или иная "команда" (которая и сама, кстати тоже
"собирается" отдельным скриптом для каждого инструмента-элемента ОТДЕЛЬНО и там даже начальную точку иметь необязательно (или например она не будет ни на на что влиять или ее данные могу тут использоваться как-то совсем ИНАЧЕ пример: то-же "демо-куб" где вместо второй точки столь любимого вами TRect сдвигом мышки водится "угол поворота +масштабный коэффициент " )
То есть для получения того, что понадобится по сути ОДИН РАЗ мне если следовать вашей "классической логике" нужно будет написать целый слой слежения за каждой графической операцией вывода из скрипта (!) пересечет и поиск минимума и максимума в том числе и ДЛЯ КАЖДОЙ ПРОЗРАЧНОЙ КАРТИНКИ (про анимированные и/или динамические элементы вообще можно даже и вспоминать ) и так-же уже есть градиент, который как пример может начинаться или заканчиваются фоновым цветом где-то в
середине отведенного ему "TRect" - Да сейчас это не учитывается и прозрачность для вставленных картинок отсутствует но это точно "пока" и это только частные случаи те-же самые проблемы например будут и для уличенного штифта и для прозрачных таблиц, диаграмм и тд )
Да все это тоже как-то там решаемо ... наверное !
Но мне видится что-то существенно проще оптимизировать поиск размеров маски тем более что она и так есть и будет .
("Коллекция теректов" это красиво ... звучит ... но "тюкнуть пальцем в небо" все-же надежнее ... просто потому что нельзя даже теоретически представить вариант где можно как-то получить "мертвую зону " )