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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Разрывы пересечения

LISP. Разрывы пересечения

Ответ
Поиск в этой теме
Непрочитано 27.12.2017, 17:05 #1
LISP. Разрывы пересечения
environ
 
Регистрация: 16.07.2014
Сообщений: 9

Код:
[Выделить все]
 (defun c:dgl_per () ;разрыв пересечения
	(setq bool T)
	(command "_.draworder" lin_nam "" "_f" )
	(setq p1 (getpoint "\n Укажите точку:"))
	(command "_circle" p1 pause)
	(setq set_obj (ssget "_L"))
	(setq ccl_nam (ssname set_obj 0))
	(setq ccl_ref (vlax-EName->vla-Object ccl_nam))
	(setq rds (vla-get-Radius ccl_ref))
	(command "_trim" ccl_nam "" pause "")
	(vla-Delete ccl_ref)
	(c:dgl_per)
)

Последний раз редактировалось environ, 09.01.2018 в 12:45.
Просмотров: 4575
 
Непрочитано 27.12.2017, 17:15
#2
Кулик Алексей aka kpblc
Moderator

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


Здрасьте, знаменитые грабли?

----- добавлено через ~2 мин. -----
И мне будет очень интересно посмотреть на обработку блоков, внешних ссылок, подложек pdf / dwf. А заодно и на случай, если примитив окажется на заблокированном слое.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.12.2017, 21:30
#3
VVA

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


environ, Пару замечаний
1. В 3-й строке неинициализированная переменная lin_nam. Ни у кого, кроме тебя, работать не будет
2. Нет (vl-load-com) - если оставляем vla-* функции
3. Можно обойтись без vla- функций
Как вариант, с учетом замечаний #2 без обработки состояний слоев
Код:
[Выделить все]
 
 (defun c:dgl_per ( /  p1 ccl_nam) ;разрыв пересечения
   (setvar "CMDECHO" 1)
   (initget 7)
   (while (setq p1 (getpoint "\n Укажите точку <выход>:"))
    (command "_circle" "_non" p1 pause)
    (setq ccl_nam (entlast))
    (command "_trim" ccl_nam "" pause "")
    (entdel ccl_nam)
    (initget 7)
   )
   (princ)
)
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 09.01.2018 в 08:09.
VVA вне форума  
 
Автор темы   Непрочитано 08.01.2018, 23:52
#4
environ


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


VVA, спасибо!!!
environ вне форума  
 
Непрочитано 09.01.2018, 08:08
#5
VVA

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


environ, Незачто. Поправь опечатку в названии LISP. Разрвы пересечения -> LISP. РазрЫвы пересечения
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 09.01.2018, 18:59
#6
Apelsinov

Проектировщик ВК. LISP-любитель.
 
Регистрация: 15.12.2003
Москва
Сообщений: 1,186
<phrase 1=


environ, три клика на каждое пересечение - это перебор - достаточно одного, на разрываемой линии вблизи пересечения, а величину разрыва брать из текущего масштаба
__________________
apel.fas
Apelsinov вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > LISP. Разрывы пересечения

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Разорвать объекты в точках пересечения. BreakObjects. VVA Готовые программы 110 25.02.2022 07:33
Проблема с определением координат точки пересечения полилиний. vb.net и AutoCad 2014 samaratopograf .NET 0 24.02.2017 20:05
Как построить пересечения 3Д тел и перенести контуры на плоскость ? dorofeevms AutoCAD 4 20.10.2015 11:25
Как при пересечении двух линий сделать установку нужного блока в месте пересечения 128500 Программирование 34 07.10.2014 11:06
Отображение пересечения трасс на профиле Civil 3D 2012 AlexeySh Вертикальные решения на базе AutoCAD 13 25.05.2012 05:33