Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу) - Страница 45
| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)

Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)

Ответ
Поиск в этой теме
Непрочитано 20.07.2008, 20:12 1 |
Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)
Red Nova
 
ՃԱՐՏԱՐԱԳԵՏ, տ.գ.թ.
 
Торонто
Регистрация: 23.10.2007
Сообщений: 1,990

Со школы не ладится у меня с программированием. Все предметы щелкал, а на экзамене по информатике (Visual foxpro) программку типа суммирования столбцов списал у соседа (это уже в университете).
Не смотря на эте намерен научится писать программы для Автокада на лиспе, скачал книгу Хювенена, несколько примеров создания программ, но после получасового “смотрения” таких книг мое мышление явно притормаживает.
Решил пойти другим путем.
Нашел самый короткий лисп из моей коллекции, и прошу программистов с этого форума пошагово объяснить какой символ что означает. Надеюсь на вашу помощь.


Код:
[Выделить все]
(defun c:make-blocks-explodeable (/ adoc)
  (vl-load-com)
  (vla-startundomark
    (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of vla-startundomark
  (vlax-for blk_def (vla-get-blocks adoc)
    (if (and (equal (vla-get-isxref blk_def) :vlax-false)
             (equal (vla-get-islayout blk_def) :vlax-false)
             ) ;_ end of and
      (vl-catch-all-apply '(lambda () (vla-put-explodable blk_def :vlax-true)))
      ) ;_ end of if
    ) ;_ end of vlax-for
  (vla-endundomark adoc)
  (princ)
  ) ;_ end of defun
_____________________________________________________________________________________________________________

Прошло много лет и топик теперь представляет из себя площадку для обучения азов программирования для многих начинающих.
Так что начинающие лиспогрызы приветствуются .
__________________
Блог

Последний раз редактировалось Red Nova, 12.07.2017 в 05:43.
Просмотров: 2049956
 
Непрочитано 29.05.2010, 16:10
#881
superkot007


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


Цитата:
Сообщение от gomer Посмотреть сообщение
(command "menuload" "menufile.mns")
(command "menuunload" "menugroupname")
Не катит...
Во-первых - должно быть _menuload (у меня русский 2011-ый),
во-вторых - спрашивает файл адаптации (а не меню)и все равно, ввод правильного имени меню ничего не дает,
в-третьих - я просил прописывание путей к вспомогательным файлам (само меню загрузить не проблема, нудно прописывать папки для доступа)
superkot007 вне форума  
 
Непрочитано 29.05.2010, 16:18
#882
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
Сообщение от gomer Посмотреть сообщение
(command "menuload" "menufile.mns")
(command "menuunload" "menugroupname")
gomer, а кто про "безграмотных лиспописателей" возбуждение создавал?

Если уж советовать, то грамотно. Шоп работало. То есть имена команд и опций с префиксами, а имена файлов - полные, шоб с гарантией было.
ShaggyDoc вне форума  
 
Непрочитано 30.05.2010, 10:17
#883
gomer

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


Цитата:
Сообщение от ShaggyDoc Посмотреть сообщение
а кто про "безграмотных лиспописателей" возбуждение создавал?


Цитата:
Сообщение от superkot007 Посмотреть сообщение
Во-первых - должно быть _menuload (у меня русский 2011-ый)
у меня bricscad и как теперь быть

Цитата:
Сообщение от superkot007 Посмотреть сообщение
прописывание путей к вспомогательным файлам
Все папки можно не прописывать, используя относительные пути... Посмотри здесь: http://dwg.ru/dnl/4649 как организовано... может найдешь чего полезного...
...еще вот к размышлению
Код:
[Выделить все]
(defun $incdec-setenv(/ MenuFile)
	(cond
		((setq MenuFile(findfile "INCDEC.mns")))
		((setq MenuFile(getfiled "Открыть файл меню" (strcat (getenv "PROGRAMFILES") "/INCDEC/ INCDEC") "mns" 4))
		(setenv "ACAD"(strcat(getenv "ACAD")";"(substr MenuFile 1(-(strlen MenuFile)11)))))
		(T nil)))
gomer вне форума  
 
Непрочитано 30.05.2010, 15:42
#884
ShaggyDoc

Thượng Tá Quân Đội Nhân Dân Việt Nam
 
Регистрация: 14.03.2005
44d32'44"С, 33d26'51"В
Сообщений: 13,372


Цитата:
у меня bricscad и как теперь быть
Не давать советы по AutoCAD. Или давать советы по "bricscad".
ShaggyDoc вне форума  
 
Непрочитано 01.06.2010, 15:19
#885
Рyslan


 
Регистрация: 25.07.2007
Сообщений: 2,518


можно посредством лиспа вставить блок в текущий чертеж, если блок прописан в путях доступа вспомогательных файлах?
Рyslan вне форума  
 
Непрочитано 01.06.2010, 16:04
#886
Кулик Алексей aka kpblc
Moderator

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


Можно. Геморройно в некоторых случаях, но можно.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 02.06.2010, 17:29
#887
Lymus

разбираюсь
 
Регистрация: 20.03.2008
Москва
Сообщений: 446
<phrase 1= Отправить сообщение для Lymus с помощью Skype™


Добрый вечер, поправьте пожалуйста, не пойму почему не работает код в AC2010, на АС2007 все нормально работало, назначение: написание текста определенной высоты
Код:
[Выделить все]
(defun C:TXT_5 ()
(setvar "cmdecho" 0)
(if (= (getvar "dimscale") 0) (setq M 1) (setq M (getvar "dimscale"))) 
(setq
  T1  (getpoint "\n Покажите начало текста: ")
  H   (* 5 M))
(command "_.dtext" T1 H 0))
__________________
:read:
Lymus вне форума  
 
Непрочитано 02.06.2010, 19:39
#888
superkot007


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


Цитата:
Сообщение от Lymus Посмотреть сообщение
Добрый вечер, поправьте пожалуйста, не пойму почему не работает код в AC2010, на АС2007 все нормально работало, назначение: написание текста определенной высоты
Код:
[Выделить все]
(defun C:TXT_5 ()
(setvar "cmdecho" 0)
(if (= (getvar "dimscale") 0) (setq M 1) (setq M (getvar "dimscale"))) 
(setq
  T1  (getpoint "\n Покажите начало текста: ")
  H   (* 5 M))
(command "_.dtext" T1 H 0))
Ну не знаю насчет 2010, но на 2011 работает прекрасно. Спасибо.
superkot007 вне форума  
 
Непрочитано 02.06.2010, 20:03
#889
VVA

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


Цитата:
Сообщение от Lymus Посмотреть сообщение
Добрый вечер, поправьте пожалуйста, не пойму почему не работает код в AC2010, на АС2007 все нормально работало, назначение: написание текста определенной высоты
В текущем стиле текста задана высота > 0
Код:
[Выделить все]
(defun C:TXT_5 ()
(setvar "cmdecho" 0)
(if (= (getvar "dimscale") 0) (setq M 1) (setq M (getvar "dimscale"))) 
(setq
  T1  (getpoint "\n Покажите начало текста: ")
  H   (* 5 M))
  (if (= (cdr (assoc 40 (tblsearch "STYLE" (getvar "TEXTSTYLE")))) 0.0)
    (command "_.dtext" T1 H 0)
    (alert (strcat
             "Установи в 0 высоту текущего\n"
              "текстового стиля "
             (getvar "TEXTSTYLE")
             "\nили смени стиль"
             )
           )
    )
  )
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 03.06.2010, 12:06
#890
Lymus

разбираюсь
 
Регистрация: 20.03.2008
Москва
Сообщений: 446
<phrase 1= Отправить сообщение для Lymus с помощью Skype™


Добрый день, все равно команды не работают на лиспе для определенной высоты текста, текущий текстовый стиль (высота стоит 0.00), скажите пожалуйста в чем ошибка и если не трудно поправьте. Исправно работает только кнопка масштаб, при попытке вызова команды текста пишет неизвестная команда. Асад 2010 англ..
Моя панелька
Цитата:
***MENUGROUP=myACAD


***POP602
**МАСШТАБ
[Масштаб]
[$(if,$(eq,$(getvar,dimscale),1),!.)М1:1]dimscale;1;
[$(if,$(eq,$(getvar,dimscale),5),!.)М1:5]dimscale;5;
[$(if,$(eq,$(getvar,dimscale),10),!.)М1:10]dimscale;10;
[$(if,$(eq,$(getvar,dimscale),15),!.)М1:15]dimscale;15;
[$(if,$(eq,$(getvar,dimscale),20),!.)М1:20]dimscale;20;
[$(if,$(eq,$(getvar,dimscale),25),!.)М1:25]dimscale;25;
[$(if,$(eq,$(getvar,dimscale),40),!.)М1:40]dimscale;40;
[$(if,$(eq,$(getvar,dimscale),50),!.)М1:50]dimscale;50;
[$(if,$(eq,$(getvar,dimscale),75),!.)М1:75]dimscale;75;
[$(if,$(eq,$(getvar,dimscale),100),!.)М1:100]dimscale;100;
[$(if,$(eq,$(getvar,dimscale),150),!.)М1:150]dimscale;150;
[$(if,$(eq,$(getvar,dimscale),200),!.)М1:200]dimscale;200;
[$(if,$(eq,$(getvar,dimscale),250),!.)М1:250]dimscale;250;
[$(if,$(eq,$(getvar,dimscale),300),!.)М1:300]dimscale;300;
[$(if,$(eq,$(getvar,dimscale),400),!.)M1:400]dimscale;400;
[$(if,$(eq,$(getvar,dimscale),500),!.)М1:500]dimscale;500;
[--]
[$(if,$(eq,$(getvar,dimscale),0.5),!.)М2:1]dimscale;0.5;
[$(if,$(eq,$(getvar,dimscale),0.2),!.)М5:1]dimscale;0.2;
[--]
[ВЫХОД]$s=



***TOOLBARS
**МАСШТАБ
[_Toolbar("МАСШТАБ", _Floating, _Hide, 0, 0, 1)]
[_Button("Масштаб", "images/16_masst.bmp", "images/16_masst.bmp")]$p0=масштаб $p0=*

**ТЕКСТ
[_Toolbar("ТЕКСТ", _Floating, _Hide, 1, 0, 1)]
[_Button("Текст горизонтальный -2.5 мм", "images/16_txt_2.5.bmp", "images/16_txt_3.bmp")]^C^C_TXT_2.5
[_Button("Текст горизонтальный -3.5 мм", "images/16_txt_3.5.bmp", "images/16_txt_3.bmp")]^C^C_TXT_3.5
[_Button("Текст горизонтальный -5.0 мм", "images/16_txt_5.bmp", "images/16_txt_5.bmp")]^C^C_TXT_5.0


**myACAD
[_Toolbar("myACAD", _Floating, _Hide, 0, 0, 1)]
[_Button("Масштаб", "images/16_masst.bmp", "images/16_masst.bmp")]$p0=масштаб $p0=*
[_Button("Текст горизонтальный -2.5 мм", "images/16_txt_2.5.bmp", "images/16_txt_2.bmp")]^C^C_TXT_2.5
[_Button("Текст горизонтальный -3.5 мм", "images/16_txt_3.5.bmp", "images/16_txt_3.bmp")]^C^C_TXT_3.5
[_Button("Текст горизонтальный -5.0 мм", "images/16_txt_5.bmp", "images/16_txt_5.bmp")]^C^C_TXT_5.0
[_Button("Характеристики сечения", "images/16_rectang.bmp", "images/16_txt_5.bmp")]^C^C_SECHEN



***HELPSTRINGS
и кнопка текста (для примера) высотой 2,5мм
Цитата:
(defun C:TXT_2.5 ()
(setvar "cmdecho" 0)
(if (= (getvar "dimscale") 0) (setq M 1) (setq M (getvar "dimscale")))
(setq
T1 (getpoint "\n Покажите начало текста: ")
H (* 2.5 M))
(command "_.dtext" T1 H 0))
__________________
:read:
Lymus вне форума  
 
Непрочитано 03.06.2010, 12:13
#891
VVA

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


Попробуй убрать красненькое
Цитата:
[_Button("Текст горизонтальный -2.5 мм", "images/16_txt_2.5.bmp", "images/16_txt_2.bmp")]^C^C_TXT_2.5
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 03.06.2010, 13:37
#892
Lymus

разбираюсь
 
Регистрация: 20.03.2008
Москва
Сообщений: 446
<phrase 1= Отправить сообщение для Lymus с помощью Skype™


Спасибо большое за помощь, после удаления нижнего подчеркивания не работала команда, в итоге между 2 и 5 убрал точку и все заработало.
Большая просьба к VVA посмотреть еще раз код, может у меня конечно что не так с автокадом, но панелька работает через раз, просто пишет неизвестная команда, или может я что не так загружаю, хотя там ничего хитрого нет, функция масштаба работает исправно, функция 3-х высот текста работает неверно - пишет неизвестная команда
еще раз выкладываю панельку свою
Цитата:
***MENUGROUP=myCAD


***POP602
**МАСШТАБ
[Масштаб]
[$(if,$(eq,$(getvar,dimscale),1),!.)М1:1]dimscale;1;
[$(if,$(eq,$(getvar,dimscale),5),!.)М1:5]dimscale;5;
[$(if,$(eq,$(getvar,dimscale),10),!.)М1:10]dimscale;10;
[$(if,$(eq,$(getvar,dimscale),15),!.)М1:15]dimscale;15;
[$(if,$(eq,$(getvar,dimscale),20),!.)М1:20]dimscale;20;
[$(if,$(eq,$(getvar,dimscale),25),!.)М1:25]dimscale;25;
[$(if,$(eq,$(getvar,dimscale),40),!.)М1:40]dimscale;40;
[$(if,$(eq,$(getvar,dimscale),50),!.)М1:50]dimscale;50;
[$(if,$(eq,$(getvar,dimscale),75),!.)М1:75]dimscale;75;
[$(if,$(eq,$(getvar,dimscale),100),!.)М1:100]dimscale;100;
[$(if,$(eq,$(getvar,dimscale),150),!.)М1:150]dimscale;150;
[$(if,$(eq,$(getvar,dimscale),200),!.)М1:200]dimscale;200;
[$(if,$(eq,$(getvar,dimscale),250),!.)М1:250]dimscale;250;
[$(if,$(eq,$(getvar,dimscale),300),!.)М1:300]dimscale;300;
[$(if,$(eq,$(getvar,dimscale),400),!.)M1:400]dimscale;400;
[$(if,$(eq,$(getvar,dimscale),500),!.)М1:500]dimscale;500;
[--]
[$(if,$(eq,$(getvar,dimscale),0.5),!.)М2:1]dimscale;0.5;
[$(if,$(eq,$(getvar,dimscale),0.2),!.)М5:1]dimscale;0.2;
[--]
[ВЫХОД]$s=



***TOOLBARS
**МАСШТАБ
[_Toolbar("МАСШТАБ", _Floating, _Hide, 0, 0, 1)]
[_Button("Масштаб", "images/16_masst.bmp", "images/16_masst.bmp")]$p0=масштаб $p0=*

**ТЕКСТ
[_Toolbar("ТЕКСТ", _Floating, _Hide, 1, 0, 1)]
[_Button("Текст горизонтальный -2.5 мм", "images/16_txt_2.bmp", "images/16_txt_2.bmp")]^C^Ctxt_2
[_Button("Текст горизонтальный -3.5 мм", "images/16_txt_3.bmp", "images/16_txt_3.bmp")]^C^Ctxt_3
[_Button("Текст горизонтальный -5.0 мм", "images/16_txt_5.bmp", "images/16_txt_5.bmp")]^C^Ctxt_5


**myCAD
[_Toolbar("MyCAD", _Floating, _Hide, 0, 0, 1)]
[_Button("Масштаб", "images/16_masst.bmp", "images/16_masst.bmp")]$p0=масштаб $p0=*
[_Button("Текст горизонтальный -2.5 мм", "images/16_txt_2.bmp", "images/16_txt_2.bmp")]^C^Ctxt_2
[_Button("Текст горизонтальный -3.5 мм", "images/16_txt_3.bmp", "images/16_txt_3.bmp")]^C^Ctxt_3
[_Button("Текст горизонтальный -5.0 мм", "images/16_txt_5.bmp", "images/16_txt_5.bmp")]^C^Ctxt_5
[_Button("Характеристики сечения", "images/16_id.bmp", "images/16_id.bmp")]^C^Csechen



***HELPSTRINGS
и пример одной кнопки с высотой текста 2.5
Цитата:
(defun C:txt_2 ()
(setvar "cmdecho" 0)
(if (= (getvar "dimscale") 0) (setq M 1) (setq M (getvar "dimscale")))
(setq
T1 (getpoint "\n Покажите начало текста: ")
H (* 2.5 M))
(command "_.dtext" T1 H 0))
в тестовом стиле высота стоит 0.0
з.ы. будет ли разница для АС2010 на вин7 64
Заранее спасибо за помощь!
да и еще вопросик, после подгрузки панельки через команду menuload в командной строке сначала активируется какая то команда RIBBON выгружая свою панель, и когда нажимаю на команду к примеру текста высотой 5мм в командной строке сначала активируется команда ribbon и после пишет для текста неизвестная команда!
__________________
:read:

Последний раз редактировалось Lymus, 03.06.2010 в 22:21. Причина: ну не получается у меня :(
Lymus вне форума  
 
Непрочитано 07.06.2010, 13:14
#893
alex8888

Инженер
 
Регистрация: 27.04.2009
Deutschland
Сообщений: 208


Кулик Алексей aka kpblc, измени, пожалуйста в лиспе
Цитата:
(vl-load-com)

(defun c:test (/ adoc selsets selsetname vla_selset dwg_file wb_file)

(setq selsets (vla-get-selectionsets (setq adoc (vla-get-activedocument (vlax-get-acad-object))))
selsetname "wb"
) ;_ end of setq
(if (/= (setq dwg_file (vla-get-fullname adoc)) "")
(progn
(vl-catch-all-apply
(function
(lambda ()
(vla-delete (vla-item selsets selsetname))
) ;_ end of lambda
) ;_ end of function
) ;_ end of vl-catch-all-apply
(setq vla_selset (vla-add selsets selsetname))
(if (and (not (vl-catch-all-error-p
(vl-catch-all-apply
(function
(lambda ()
(vla-selectonscreen vla_selset)
) ;_ end of lambda
) ;_ end of function
) ;_ end of vl-catch-all-apply
) ;_ end of vl-catch-all-error-p
) ;_ end of not
(> (vla-get-count vla_selset) 0)
) ;_ end of and
(progn
(vla-wblock (setq wb_file (strcat (vl-filename-directory dwg_file)
"\\"
(vl-filename-base dwg_file)
"-1.dwg"
) ;_ end of strcat
) ;_ end of setq
vla_selset
) ;_ end of vla-Wblock
(princ (strcat "\nНабор был сохранен в файл " wb_file))
) ;_ end of progn
) ;_ end of if
(vl-catch-all-apply
(function
(lambda ()
(vla-delete (vla-item selsets selsetname))
) ;_ end of lambda
) ;_ end of function
) ;_ end of vl-catch-all-apply
) ;_ end of progn
(alert "Файл не сохранялся еще ни разу! Выполнение невозможно!")
) ;_ end of if
(princ)
) ;_ end of defun
чтобы выбирались только объекты с определенного урровня (-вней) .
Никак не могу фильтр приспособить по типу ssget. Куда его засунуть? (Гусары- молчать! )
alex8888 вне форума  
 
Непрочитано 07.06.2010, 15:21
#894
Кулик Алексей aka kpblc
Moderator

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


Что значит "уровня"? Слоя?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.06.2010, 15:31
#895
alex8888

Инженер
 
Регистрация: 27.04.2009
Deutschland
Сообщений: 208


Кулик Алексей aka kpblc, прошу прощения, конечно же слоя, просто у нас он зовется уровнем.
alex8888 вне форума  
 
Непрочитано 07.06.2010, 15:55
#896
gomer

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


Layer(англ.) - уровень (SKIIN 3.42)
gomer вне форума  
 
Непрочитано 07.06.2010, 16:02
1 | #897
Кулик Алексей aka kpblc
Moderator

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


Код:
[Выделить все]
(vl-load-com)

(defun c:test (/ adoc selsets selsetname vla_selset dwg_file wb_file)

  (setq selsets    (vla-get-selectionsets (setq adoc (vla-get-activedocument (vlax-get-acad-object))))
        selsetname "wb"
        ) ;_ end of setq
  (if (/= (setq dwg_file (vla-get-fullname adoc)) "")
    (progn
      (vl-catch-all-apply
        (function
          (lambda ()
            (vla-delete (vla-item selsets selsetname))
            ) ;_ end of lambda
          ) ;_ end of function
        ) ;_ end of vl-catch-all-apply
      (setq vla_selset (vla-add selsets selsetname))
      (if (and (not (vl-catch-all-error-p
                      (vl-catch-all-apply
                        (function
                          (lambda (/ group data)
                            (setq group (vlax-make-variant
                                          (vlax-safearray-fill
                                            (vlax-make-safearray
                                              vlax-vbinteger
                                              '(0 . 0)
                                              ) ;_ end of vlax-make-safearray
                                            '(8)
                                            ) ;_ end of vlax-safearray-fill
                                          ) ;_ end of vlax-make-variant
                                  data  (vlax-make-variant
                                          (vlax-safearray-fill
                                            (vlax-make-safearray
                                              vlax-vbvariant
                                              '(0 . 0)
                                              ) ;_ end of vlax-make-safearray
                                            '("ИменаСлоев,ЧерезЗапятую")
                                            ) ;_ end of vlax-safearray-fill
                                          ) ;_ end of vlax-make-variant
                                  ) ;_ end of setq
                            (vla-selectonscreen vla_selset group data)
                            ) ;_ end of lambda
                          ) ;_ end of function
                        ) ;_ end of vl-catch-all-apply
                      ) ;_ end of vl-catch-all-error-p
                    ) ;_ end of not
               (> (vla-get-count vla_selset) 0)
               ) ;_ end of and
        (progn
          (vla-wblock (setq wb_file (strcat (vl-filename-directory dwg_file)
                                            "\\"
                                            (vl-filename-base dwg_file)
                                            "-1.dwg"
                                            ) ;_ end of strcat
                            ) ;_ end of setq
                      vla_selset
                      ) ;_ end of vla-Wblock
          (princ (strcat "\nНабор был сохранен в файл " wb_file))
          ) ;_ end of progn
        ) ;_ end of if
      (vl-catch-all-apply
        (function
          (lambda ()
            (vla-delete (vla-item selsets selsetname))
            ) ;_ end of lambda
          ) ;_ end of function
        ) ;_ end of vl-catch-all-apply
      ) ;_ end of progn
    (alert "Файл не сохранялся еще ни разу! Выполнение невозможно!")
    ) ;_ end of if
  (princ)
  ) ;_ end of defun
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.06.2010, 16:25
#898
alex8888

Инженер
 
Регистрация: 27.04.2009
Deutschland
Сообщений: 208


Кулик Алексей aka kpblc, спасибо
alex8888 вне форума  
 
Непрочитано 07.06.2010, 16:33
#899
Кулик Алексей aka kpblc
Moderator

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


Где и как вводить имена слоев - понятно?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 07.06.2010, 16:53
#900
alex8888

Инженер
 
Регистрация: 27.04.2009
Deutschland
Сообщений: 208


Кулик Алексей aka kpblc, Да, все ввел, работает, только опять нужно исправить в создании имени файла, дописать объект. Но здесь я уже научен.
А вот все эти выкрутасы с кучей vla- остаются пока темным лесом.
Хотел было просто попробовать создать прямоугольник объектным методом , да что-то не найду подходящую функцию. Попробовал vla-add-rectangle и тому подобное - кад послал на некоторое расстояние и в местоположение
Offtop: Больше не возился, пытался все твой лисп обсосать. Вот только проблема, если пробую выкинуть или упростить (ну там без проверки на ошибки) чего-нибудь для эксперимента, так обычно посылают (ошибка чего то там автоматизирования). А иногда срабатывает. Не могу понять почему.
alex8888 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Научите лиспу на примере (или как kpblc, VVA и компания пытаются обучить чайника лиспу)



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Вставка в таблицу поля, соотвествующего площади примитива Profan Готовые программы 272 06.06.2021 23:12
Сейсмозащита и сейсмоизоляция существующих, построенных зд. IANationalInformAgentstvo Прочее. Архитектура и строительство 216 20.01.2015 16:51
Мониторы LCD CRT Разное 94 17.06.2008 10:51
ЮМОР 2006 =) Perezz!! Разное 1122 04.01.2007 00:46