|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
аналог ssget или определение наличия примитива в точке
проектирование,монтаж,наладка
Иваново
Регистрация: 14.11.2005
Сообщений: 20
|
||
Просмотров: 5658
|
|
||||
Lisp/VBA/VB.NET Hobbyist Регистрация: 24.03.2005
Славен Град Петров
Сообщений: 367
|
Цитата:
в этом случае всегда сначала ставить: Код:
Код:
|
|||
![]() |
|
||||
Инженер по системам безопасности Регистрация: 23.11.2003
Рига
Сообщений: 1,099
|
Я бы порекомендовал тупо:
Код:
Ну и на конец "глючноватый" vla-getIntersectWith c XLine построенной через эту точку временной XLine. В принципе годится для всего, но на практике иногда обманывает. Надо ещё помнить о том что при отсутствии пересечения возвращается "неправильный" массив с нижним индексом больше вехнего. Наверное (command "_.zoom" "_a") самое надёжное. Может ещё кто что умное по этому поводу скажет... |
|||
![]() |
|
||||
Цитата:
http://www.autocad.ru/cgi-bin/f1/boa...20060111213129 |
||||
![]() |
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
А теперь - серьезно. :shock: Конечно. нельзя указать мышью(!) на экране точку, если она находится за пределами экрана. Но, если требуется выбрать точку, координаты которй известны заранее, то ее местонахождение совершенно не важно. Она может быть даже в другом пространстве :!: Так же и указание рамки. Поскольку точки углов рамки назначаются программно по вычисленному значению, а не указываются вручную, то их доступность на экоране роли не имеет и значения не играет.
|
|||
![]() |
|
||||
Регистрация: 16.05.2005
г. Минск
Сообщений: 276
|
Цитата:
|
|||
![]() |
|
||||
Цитата:
![]() |
||||
![]() |
|
||||
Регистрация: 16.05.2005
г. Минск
Сообщений: 276
|
Все это правильно и все работает, если точка находиться на экране. Если же нет, значит зуммировать чертеж и использовать ssget или аналоги. Второй способ - пробежаться по базе и найти все примитивы, проходящие через точку. Если проверять надо все примитивы, тогда второй вариант будет при насыщенном чертеже медленно работать. Но возможно надо выбирать не все примитивы, а какие-то определенные (например имеющие XData), то тогда использовать можно ssget "_X" и фильтр выбора.
Можно попробовать и вариант с c XLine. Я в свое время использовал ssget "_X" и фильтр выбора, далее искал, пробегаясь по набору... |
|||
![]() |
|
||||
Lisp/VBA/VB.NET Hobbyist Регистрация: 24.03.2005
Славен Град Петров
Сообщений: 367
|
Цитата:
![]() |
|||
![]() |
|
||||
Project Engineer Регистрация: 05.01.2005
Лос Анджелес
Сообщений: 1,392
|
Цитата:
|
|||
![]() |
|
||||
Цитата:
|
||||
![]() |