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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > DXF группа дельта X или как выбрать отрезки с дельта X равным нулю

DXF группа дельта X или как выбрать отрезки с дельта X равным нулю

Ответ
Поиск в этой теме
Непрочитано 28.02.2018, 08:21 #1
DXF группа дельта X или как выбрать отрезки с дельта X равным нулю
5en5e!
 
Регистрация: 07.02.2018
Сообщений: 4

На просторах интернета/форума нашел текст кода выбора отрезков на чертеже

(sssetfirst nil (ssget "_X" (list (cons 0 "LINE") (cons 410 (getvar "CTAB")))))

как его модифицировать, чтобы выбирались только те отрезки, у которых дельта X(вертикальные отрезки) была равна нулю?
Просмотров: 1494
 
Непрочитано 28.02.2018, 08:27
#2
Кулик Алексей aka kpblc
Moderator

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


Я бы сначала формировал набор, а потом уже его обрабатывал.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.03.2018, 08:15
#3
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Без дополнительных функций не обойтись. Нужно позаботиться, чтобы они были загружены (например добавить lsp файл в автозагрузку)
Функции
Код:
[Выделить все]
(defun LM:ss->ent ( ss / i l )
;;--------------=={ SelectionSet -> Entities }==--------------;;
;;                                                            ;;
;;  Converts a SelectionSet to a list of Entities             ;;
;;------------------------------------------------------------;;
;;  Author: Lee Mac, Copyright © 2011 - www.lee-mac.com       ;;
;;------------------------------------------------------------;;
;;  Arguments:                                                ;;
;;  ss - Valid SelectionSet (Pickset)                         ;;
;;------------------------------------------------------------;;
;;  Returns:  List of Entity names, else nil                  ;;
;;------------------------------------------------------------;;
    (if ss
        (repeat (setq i (sslength ss))
            (setq l (cons (ssname ss (setq i (1- i))) l))
        )
    )
)
(defun dX_equal_0 ( / ss)
(setq ss (ssadd))
(foreach x (LM:ss->ent (ssget "_X" (list (cons 0 "LINE") (cons 410 (getvar "CTAB")))))
  (if (equal (-(cadr(assoc 10(entget x)))(cadr(assoc 11(entget x)))) 0.0 1e-6)(ssadd x ss))
  )
  ss
  )
Выбор отрезков dX=0
Код:
[Выделить все]
(sssetfirst nil (dX_equal_0))
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 02.03.2018, 13:20
#4
5en5e!


 
Регистрация: 07.02.2018
Сообщений: 4


VVA, спасибо!
5en5e! вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > DXF группа дельта X или как выбрать отрезки с дельта X равным нулю

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как правильно выбрать опоры под трубопроводы? Bagettt Инженерные сети 25 21.07.2021 11:31
Как переместить отрезки различных слоев из одного слоя в другие слои по цветам? Dyuk Программирование 37 08.05.2020 20:45
Может ли из-за допуска размер стать равным нулю? ivfad Машиностроение 49 29.04.2018 13:54
Контекстное редактирование блока, как выбрать примитивы? prajdziswet LISP 11 11.07.2017 16:55
"Неубиваемая" группа postbudka AutoCAD 3 15.05.2010 22:46