Фильтры ssget: Можно ли выбрать все линии с одинаковыми начальной и конечной точками
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Фильтры ssget: Можно ли выбрать все линии с одинаковыми начальной и конечной точками

Фильтры ssget: Можно ли выбрать все линии с одинаковыми начальной и конечной точками

Ответ
Поиск в этой теме
Непрочитано 05.02.2010, 17:35 #1
Фильтры ssget: Можно ли выбрать все линии с одинаковыми начальной и конечной точками
gomer
 
строю, ломаю
 
Украина
Регистрация: 03.04.2008
Сообщений: 5,515

Вообще-то в идеале хотелось бы выбрать все линии с малой или нулевой длиной... Кто знает, подскажите, как это можно сделать.
Просмотров: 3897
 
Непрочитано 05.02.2010, 20:00
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,404


Выбирай все, а потом из набора удаляй объекты с длиной, не превышающей указанную.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 05.02.2010, 20:10
#3
Олег (jr.)

специалист по околачиванию грушевых деревьев
 
Регистрация: 14.09.2004
Pietari, Venäjä
Сообщений: 811


Цитата:
Сообщение от gomer Посмотреть сообщение
Вообще-то в идеале хотелось бы выбрать все линии с малой или нулевой длиной... Кто знает, подскажите, как это можно сделать.
Можно так
Код:
[Выделить все]
(setq zero_line_list
(vl-remove-if
  (function (lambda (line)
     (not (equal (cdr (assoc 10 (entget line)))
		 (cdr (assoc 11 (entget line)))
		 0.0001);<-- set epsilon here 
	  )
     )
  )
  (vl-remove-if
    (function listp)
    (mapcar (function cadr)
	    (ssnamex (ssget (list (cons 0 "LINE")
				  (if (getvar "CTAB")
                                   (cons 410 (getvar "CTAB"))
                                   (cons 67 (1- (getvar "TILEMODE")))))))
	    )
    )
  )
)
~'J'~

Последний раз редактировалось Олег (jr.), 05.02.2010 в 20:11. Причина: много букав
Олег (jr.) вне форума  
 
Непрочитано 07.02.2010, 14:08
#4
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Цитата:
Сообщение от Олег (jr.) Посмотреть сообщение
(if (getvar "CTAB")...

Бывает, что нет текущей вкладки?
Do$ вне форума  
 
Непрочитано 13.09.2010, 03:12
#5
АлексЮстасу

топограф, технолог
 
Блог
 
Регистрация: 24.05.2009
Москва
Сообщений: 3,072


Цитата:
Сообщение от gomer Посмотреть сообщение
Вообще-то в идеале хотелось бы выбрать все линии с малой или нулевой длиной... Кто знает, подскажите, как это можно сделать.
Средствами Drawing Cleanup из AutoCad Map 3D - Erase Short Objects и Zero Length Objects. При этом можно будет удалить не только короткие или нулевой длины элементы, но и короткие сегменты полилиний, совпадающие точки. И сделать это можно не только огульно - автоматом, но и с просмотром соответствующих мест файла, с возможностью что-то удалить, а что-то оставить, пометить спорные места.
Вы скажете, что далеко не у всех есть AutoCad Map 3D. А задачи чистки чертежей встречаются у всех и постоянно. Поэтому я и описывал соответствующий баг - предложение сделать Drawing Cleanup доступным в базовом Автокаде. Чтобы в милионный раз не упирались люди в одни и те же проблемы, уже решенные самой же фирмой, не писали самопальные программки.
АлексЮстасу вне форума  
 
Непрочитано 13.09.2010, 08:40
#6
Елпанов Евгений

программист
 
Регистрация: 20.12.2005
Москва
Сообщений: 1,439
Отправить сообщение для Елпанов Евгений с помощью Skype™


Быстрый выбор ->> линии ->> длина ->> менее чем 1.01 ->> ОК.
то же самое повторить для полилиний, дуг итд.
__________________
Чем гениальнее ваш план, тем меньше людей с ним будут согласны.
/Сунь Цзы/
Елпанов Евгений вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Фильтры ssget: Можно ли выбрать все линии с одинаковыми начальной и конечной точками



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание нового типа линий Apelsinov AutoCAD 915 08.07.2022 12:36
В Украине эпидемия. Это психоз, или действительно такого еще не было. Vavan Metallist Разное 189 04.11.2009 20:34
Мониторы LCD CRT Разное 94 17.06.2008 10:51
ЮМОР 2006 =) Perezz!! Разное 1122 04.01.2007 00:46