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

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

Нужна прог. для офсета набора линий.

Ответ
Поиск в этой теме
Непрочитано 14.11.2006, 14:33 #1
Нужна прог. для офсета набора линий.
AGEL
 
проектировщик ОВ
 
москва
Регистрация: 15.09.2003
Сообщений: 53

Пытаюсь как то автоматизировать, но не получается....
Есть 15 точек(координаты X и Y считал из файла).
Соединил из линиями(1-2,2-3,...14-15).
Надо сделать офсет "влево" на величину d.
------------
Где можно найти описание использования стандартных команд в Лиспе? (набор параметров у функций).
Просмотров: 3642
 
Непрочитано 14.11.2006, 14:50
#2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Посмотри этот пример
Код:
[Выделить все]
(vl-load-com)
(command "_PLINE" "0,0" "0,10" "30,15" "45,80" "") ;_Чертим полилинию
(setq pl (entlast)) ;_полилиния
(setq Pt (vlax-curve-getStartPoint (vlax-ename->vla-object pl)))     ;_Начальная точка в МСК
(setq Pt (trans pt 0 1))                    ;_Транслируем в текущую ПСК
(setq d 15)                                 ;_Отступ
(command "_OFFSET"
	 d                ;_Отступ
	 (list pl Pt)     ;_Имитация выбора объетка через точку pt
	 (polar Pt PI 10) ;_Отступ влево
	 ""
	 )
VVA вне форума  
 
Автор темы   Непрочитано 14.11.2006, 15:48
#3
AGEL

проектировщик ОВ
 
Регистрация: 15.09.2003
москва
Сообщений: 53


Спасибо.
Попробую использовать...
AGEL вне форума  
 
Непрочитано 16.11.2006, 18:25
#4
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Здесь кое-что получилось
Код:
[Выделить все]
http://www.autocad.ru/cgi-bin/f1/board.cgi?t=31318fs
VVA вне форума  
 
Автор темы   Непрочитано 05.12.2006, 11:16
#5
AGEL

проектировщик ОВ
 
Регистрация: 15.09.2003
москва
Сообщений: 53


Подскажите..
можно ли сразу узнать координаты первой и последней вершины полилинии? (без перебора их всех)
AGEL вне форума  
 
Непрочитано 05.12.2006, 11:26
#6
Кулик Алексей aka kpblc
Moderator

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


Можно. Если получен vla-указатель на примитив, то (vlax-curve-getstartpoint) и (vlax-curve-getendpoint)
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 05.12.2006, 12:46
#7
AGEL

проектировщик ОВ
 
Регистрация: 15.09.2003
москва
Сообщений: 53


Спасибо
П.С.
Необессудте...недавно преобщился к лиспу(по мере необходимости).
А где вообще можно взять описание функций VL...на русском?
AGEL вне форума  
 
Непрочитано 05.12.2006, 12:48
#8
Кулик Алексей aka kpblc
Moderator

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


Полностью на русском вряд ли есть, посмотри здесь: http://cad.dp.ua/doc2.php#part1
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 05.12.2006, 13:12
#9
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Примерно так
Код:
[Выделить все]
(vl-load-com)
(if (setq pl (car(entsel "\nУкажите полилинию")))
    (progn
	(setq vla-pl (vlax-ename->vla-object pl)) ;_Vla указатель
	(setq Pt_Start (vlax-curve-getStartPoint vla-pl))
	(setq Pt_End (vlax-curve-getEndPoint vla-pl))
	)
    )
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Нужна прог. для офсета набора линий.