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

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

Макрос: выделение объекта находящегося в определенной области модели

Ответ
Поиск в этой теме
Непрочитано 09.10.2010, 12:31
Макрос: выделение объекта находящегося в определенной области модели
dextron3
 
проектировшик
 
СССР
Регистрация: 01.01.2007
Сообщений: 5,149

Поставил задачу с помощью макроса выделять объект находящийся в заданной области путем ввода координат, с помощью какой команды это реализовать.

Принцип работы нажав на кнопку выделился объект находящийся в заданной области, заранее благодарен


вот начал: не могу понять почему не завершается?

^C^Cselect;f;0,0;1000,1000;;

тоесть нужно чтобы выделение произошло, и курсор опять в крестик превратился как бы завершилась команда

Суть макроса такова: Нужно выделить определнные объекты и потом выполнить над ними определенную команду, но не могу закончить выделение и тем самым не запускается следующая команда,

может кто скажет...
__________________
инженер проектировшик с опттом программа авто гад образование высшие

Последний раз редактировалось dextron3, 09.10.2010 в 14:04.
Просмотров: 8512
 
Автор темы   Непрочитано 10.10.2010, 21:43
#21
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Profan, еслия обращусь к этому объекту в экране то смысл макроса пропадает и так могу тогда его скопировать и удалить, суть в том чтобы автоматизировать
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.10.2010, 07:50
#22
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Давно известно, что выбор объектов возможен только в пределах видимой на экране части чертежа.
Profan вне форума  
 
Автор темы   Непрочитано 11.10.2010, 08:43
#23
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Profan, так что моя идея не реализуема макросом?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.10.2010, 09:05
#24
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


По поводу выбора объектов было несколько тем.
Но твоя идея не озвучена пока.
Profan вне форума  
 
Непрочитано 11.10.2010, 09:58
#25
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 575


dextron3, может тогда на кнопку не макрос, а лисп повесить
Код:
[Выделить все]
;	Пример вызова (dextron3 '(0.0 0.0) '(1000.0 1000.0) '(10.0 10.0))


(defun dextron3(point0 point1 shift / nbr_all obj_line item nbr_loc)
  (vl-load-com)
  (if (setq nbr_all (ssget "_X"))
    (progn
      (if (vl-cmdf "_.line" point0 point1 "")
	(setq obj_line (entlast)
	      nbr_loc (ssadd)
	      )
	)
      (foreach item (vl-remove-if 'listp (mapcar 'cadr (ssnamex nbr_all)))
        (if (> (vlax-safearray-get-u-bound
	         (vlax-variant-value
		   (vla-IntersectWith
		     (vlax-ename->vla-object item)
		     (vlax-ename->vla-object obj_line)
		     acExtendNone
		     )
		   )
	         1
	         )
	       -1
	       )
	  (setq nbr_loc (ssadd item nbr_loc))
	  )
        )
      (entdel obj_line)
      (vl-cmdf "_.copy" nbr_loc "" point0 point0)
      (vl-cmdf "_.move" nbr_loc "" point0 (polar (polar point0 0 (car shift)) (* 0.5 pi) (cadr shift)))
      (vl-cmdf "_.erase" nbr_loc "")
      )
    )
); end dextron3
__________________
cadtools
TararykovDG вне форума  
 
Автор темы   Непрочитано 11.10.2010, 14:27
#26
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


TararykovDG,
Command: (dextron3 '(0.0 0.0) '(1000.0 1000.0) '(10.0 10.0))
_.line Specify first point:
Specify next point or [Undo]:
Specify next point or [Undo]:
Command: ; error: Automation Error. Null extents


TararykovDG, у Вас есть программа СПДС, это такая надстройка на автокад?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 11.10.2010, 15:17
#27
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 575


Цитата:
Сообщение от dextron3 Посмотреть сообщение
Command: (dextron3 '(0.0 0.0) '(1000.0 1000.0) '(10.0 10.0))
_.line Specify first point:
Specify next point or [Undo]:
Specify next point or [Undo]:
Command: ; error: Automation Error. Null extents
Странно у меня такого не происходит, попробуй в пошаговом режиме в VisualLisp IDE и скажи на какой сроке проиходит ошибка.
Да, кстати, может это из-за привязок, отключи их вручную ради интереса, или добавь в код, в начало: (setq osmode_var (getvar 'osmode)) (setvar 'osmode 0) , в конец (setvar 'osmode osmode_var)


Цитата:
Сообщение от dextron3 Посмотреть сообщение
у Вас есть программа СПДС, это такая надстройка на автокад?
Нет, у меня только голый ACad 2008, все надстройки - самоделки
__________________
cadtools
TararykovDG вне форума  
 
Автор темы   Непрочитано 14.10.2010, 07:26
#28
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


да чтото лисп сложный
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
 
Непрочитано 14.10.2010, 08:32
#29
TararykovDG

Программист-энтузиаст
 
Регистрация: 17.07.2009
Воронеж
Сообщений: 575


Цитата:
Сообщение от dextron3 Посмотреть сообщение
да чтото лисп сложный
В каком смысле сложный?
1). Непонятно что делает
2). Понятно, что делает, но слишком длинный
3). Еще что-то
__________________
cadtools
TararykovDG вне форума  
 
Автор темы   Непрочитано 14.10.2010, 21:08
#30
dextron3

проектировшик
 
Регистрация: 01.01.2007
СССР
Сообщений: 5,149


Command: Specify opposite corner:
Command: (dextron3 '(0.0 0.0) '(1000.0 1000.0) '(10.0 10.0))
_.line Specify first point:
Specify next point or [Undo]:
Specify next point or [Undo]:
Command: ; error: Automation Error. Null extents

[IMG]http://i081.***********/1010/ef/18ba0e195981t.jpg[/IMG]


с привязкой тоже самое только тормозит больше, может всетаки макросом?
__________________
инженер проектировшик с опттом программа авто гад образование высшие
dextron3 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Макрос: выделение объекта находящегося в определенной области модели

Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Печать из модели по выбору объекта zenon Программирование 192 04.05.2017 09:41
Подсчет элементов в определенной области модели FRAER AutoCAD 6 15.05.2010 01:17
Как снять выделение с объекта оап AutoCAD 2 02.07.2008 01:36
AA2008: Как создать план 3d модели на определенной отметке Vildar Вертикальные решения на базе AutoCAD 6 12.02.2008 12:52
Макрос чтобы не сбрасывалось выделение при перемещении decadent AutoCAD 14 10.12.2007 00:41