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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Autolisp работа в неактивном документе

Autolisp работа в неактивном документе

Ответ
Поиск в этой теме
Непрочитано 04.08.2015, 08:08 #1
Autolisp работа в неактивном документе
protorgovec
 
газо- нефтепереработка
 
Уфа
Регистрация: 22.07.2015
Сообщений: 98

Подскажите простым примером.
при помощи
Код:
[Выделить все]
 (setq Ch1 (vla-open (vla-get-documents (vlax-get-acad-object)) (strcat papka1 "\\01-"Sb".00.002-Косынка.dwg")))
открываю не активируя файл
но как в нем работать так и не могу понять, читал книги, но не могу понять принцип, как задать командно ,что бы дополнять этот открытый неактивный документ. Подскажите на простом примере, например нарисовать окружность в этом документе, с координатами 0,0,0. Мне просто увидеть бы принцип обращения к этому не активному документу
Просмотров: 1661
 
Непрочитано 04.08.2015, 08:57
#2
trir


 
Регистрация: 18.12.2010
Сообщений: 5,057


http://help.autodesk.com/view/ACD/20...6-03B7745EC80D

Код:
[Выделить все]
 (vl-load-com)
(defun c:Example_ModelSpace()
    ;; This example adds a line and a circle to model space.
    ;; The line is added using a user-defined variable representing
    ;; the model space. The circle is added without using the
    ;; user-defined variable. Either use of the ModelSpace
    ;; property is valid.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Define the line
    (setq startPoint (vlax-3d-point 0 0 0)
          endPoint (vlax-3d-point 4 4 0))
    
    ;; Add the line to model space using the mspace variable
    (setq mspace (vla-get-ModelSpace doc))
    (setq lineObj (vla-AddLine mspace startPoint endPoint))
    
    ;; Define a circle
    (setq center (vlax-3d-point 4 4 0)
          radius 1)
    
    ;; Add the circle to model space without using the mspace variable
    (setq circleObj (vla-AddCircle mspace center radius))
    
    (vla-ZoomAll acadObj)
)
Вместо (setq doc (vla-get-ActiveDocument acadObj)) - ваша строка
trir вне форума  
 
Автор темы   Непрочитано 04.08.2015, 09:15
#3
protorgovec

газо- нефтепереработка
 
Регистрация: 22.07.2015
Уфа
Сообщений: 98


Цитата:
Сообщение от trir Посмотреть сообщение
http://help.autodesk.com/view/ACD/20...6-03B7745EC80D

Код:
[Выделить все]
 (vl-load-com)
(defun c:Example_ModelSpace()
    ;; This example adds a line and a circle to model space.
    ;; The line is added using a user-defined variable representing
    ;; the model space. The circle is added without using the
    ;; user-defined variable. Either use of the ModelSpace
    ;; property is valid.
    (setq acadObj (vlax-get-acad-object))
    (setq doc (vla-get-ActiveDocument acadObj))

    ;; Define the line
    (setq startPoint (vlax-3d-point 0 0 0)
          endPoint (vlax-3d-point 4 4 0))
    
    ;; Add the line to model space using the mspace variable
    (setq mspace (vla-get-ModelSpace doc))
    (setq lineObj (vla-AddLine mspace startPoint endPoint))
    
    ;; Define a circle
    (setq center (vlax-3d-point 4 4 0)
          radius 1)
    
    ;; Add the circle to model space without using the mspace variable
    (setq circleObj (vla-AddCircle mspace center radius))
    
    (vla-ZoomAll acadObj)
)
Вместо (setq doc (vla-get-ActiveDocument acadObj)) - ваша строка
Спасибо огромное. Надеюсь сейчас разберусь.

----- добавлено через ~47 мин. -----
Цитата:
Сообщение от trir Посмотреть сообщение
Вместо (setq doc (vla-get-ActiveDocument acadObj)) - ваша строка
Подскажите что не так? Подставил
Код:
[Выделить все]
 (setq Ch1 (vla-get-ActiveDocument (vlax-get-acad-object) (strcat papka1 "\\01-"Sb".00.002-Косынка.dwg")))
но он мне в ответ: Слишком много фактических параметров
protorgovec вне форума  
 
Непрочитано 04.08.2015, 10:10
#4
gomer

строю, ломаю
 
Регистрация: 03.04.2008
Украина
Сообщений: 5,515


Цитата:
Сообщение от protorgovec Посмотреть сообщение
Слишком много фактических параметров
вы много от мало отличить можете? много - это когда больше, чем нужно, то есть лишние
gomer вне форума  
 
Автор темы   Непрочитано 04.08.2015, 10:23
#5
protorgovec

газо- нефтепереработка
 
Регистрация: 22.07.2015
Уфа
Сообщений: 98


Цитата:
Сообщение от trir Посмотреть сообщение
Вместо (setq doc (vla-get-ActiveDocument acadObj)) - ваша строка
все разобрался, заработало. Спасибо огромное!!!!!
protorgovec вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Autolisp работа в неактивном документе

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Акты скрытых работ Витос Прочее. Архитектура и строительство 324 05.03.2015 12:24
Autolisp Работа с текстовым файлом в сборке vlx/fas/prv mikls LISP 21 09.06.2014 20:59
AutoLISP: Работа с реакторами Supermax LISP 37 03.08.2010 09:17
Выполнение функции vla-put-textstring в неактивном документе AVD Программирование 11 17.12.2003 08:30