| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
18.08.2008, 16:16 | #1 | |
недоводы в чертежах, как с этим можно бороться?
Москва
Регистрация: 04.04.2008
Сообщений: 97
|
||
Просмотров: 4515
|
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
А что мешает выбирать не по этой прямой, а по паралельной на 0.0001 "выше"
P.S. да и на четреже не прямая у тебя ни разу.
__________________
Когда в руках молоток все вокруг кажется гвоздями. Последний раз редактировалось Дима_, 18.08.2008 в 16:47. |
|||
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,840
|
Кажеться сейчас понял в чем задача, (слово прямая меня смутила - она полилинией оказалась), не знаю есть ли у ssget точность задания (насколько я понимаю нет), посему два варианта - либо выбирать многоугольником вокруг полилинии, но тут отдельную процедуру придется писать которая его координаты рассчитывает - геморно, но можно, либо полилинию в 4 стороны подвигать на значение допуска и получившиеся твоей программой наборы сложить - не та точность, но быстрее.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Попробуй так:
Код:
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 04.04.2008
Москва
Сообщений: 97
|
Кулик Алексей aka kpblc, немного не понял что должен делать твой код.
Хотел бы уточнить, что я сижу на цивиле. так вот в нём есть специальная утилита для обработки карт (меню КАРТА \ Сервсис \ Очистка чертежа) Эта утилита позволяет исправить в чертеже (в карте) многие неточности, которые возникают при перекодировании из других программ, в программу автокада. В частности там есть операция "продолжать недоводы". Недоводы действительно пролдлеваются, но почему-то у некоторых отрезков так и не появляется общих точек. Их всё так же невозможно добавить в набор. По всей видимости недоводы остаются, но уже настолько мизерные, что их незаметно даже при максимальном приближении. По всей видимости Автокад через-чур точно отслеживает кооординаты. Замечено, что если попытаться скопировать полученный результат в новый чертёж, то некоторые недоводы всё-таки прилипают к линии, но почему-то не все и не всегда. Есть ли возможность в Автокаде ввести какую-то несущественную погрешность, которая бы игнорировала скажем недовод в 0.0000000001 ??? |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
А Elevation, например, у этих отрезков; и полилиния, до которой надо продлевать - это одинаково? А точка на продолжении отрезка точно лежит на ограничивающей?
Мой код просто выделяет те объекты, которые надо доводить. Сделать вариант "довести до полилинии" в общем-то не сильно проблема. Проблема в другом - только вечером смогу сесть
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Регистрация: 04.04.2008
Москва
Сообщений: 97
|
Кулик Алексей aka kpblc, твой код пока не работает... попробую его поковырять...
По правде сказать, это не обязательно может быть и полилиния. В чертеже это просто длинная граница к которой опущены перпендикуляры. В совокупности это обозначение откоса. И вот при переводе в автокад эта граница местами распознаётся как прямой отрезок, а местами - как полилиния. Я просто выложил кусок для примера. Но так как чертёж создавался не в автокаде и потом в него переводился - там закрались такие ошибки, как недоводы, не все отрезки доходят до ограничивающей линии. В свойствах этих всех примитивов пишется что они все находятся на нулевой высоте и имеют нулевые координаты по оси Z. Мне принципиально необходимо, что бы они имели общие точки, что бы я выбрав границу, мог увидеть перпендикуляры к выбранному участку. Передомной поставлена задача превратить эту границу (откос) в обычную полилинию. А для этого мне нужно удалить все эти перпендикуляры путём их выбора. И всё это выполнить нужно программно. Так как объёмы чертежа большие и он такой не один. Вот я и пытаюсь привести чертёж в нормальный вид, что бы нормально можно было с ним работать. А для этого я пытаюсь решить проблему с недоводами. Или же я хочу узнать - можно ли как-то принебрегнуть высокой точностью автокада... |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Может, я чего не понимаю... Эта граница (откос) - у нее все вершины гарантированно лежат в одной плоскости, а эти "недоводы", как я понимаю - имеют разную отметку Z для разных концов отрезка, так?
Просто есть идея втупую использовать _.pedit (либо программно, либо руками - методология формирования набора немного отличаться просто будет).
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844
|
Насколько мне помнится мой алгоритм: вызываешь функцию с указанием точности "подхода", потом указываешь основной ограничитель (я ж не знал, что их может быть несколько), потом выбираешь обрабатываемые отрезки. Те, у которых начальная или конечная точки подходят к ограничителю на расстояние, меньше точности, будут выделены.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как можно создать собственный шрифт в формате “.shx” ? | qkq | AutoCAD | 13 | 10.04.2019 10:51 |
Многоуровневый чертёж. Почему так происходит и как бороться? | Pipe | AutoCAD | 17 | 05.12.2011 12:29 |
Конфликт на работе, как с ним бороться? | taty | Разное | 94 | 10.08.2008 16:13 |
Мониторы LCD CRT | Разное | 94 | 17.06.2008 10:51 |