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

Вернуться   Форум 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.
Просмотров: 2047670
 
Непрочитано 13.01.2025, 14:46
#4881
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
Код:
[Выделить все]
 (setq new (subst '(3 . "Копия Основной") (assoc 3 b) b))
Эта строка не создает копию разм. стиля?

Так я могу удалить размеры с указанным стилем:
Код:
[Выделить все]
 (vl-cmdf "_.erase" (setq ss (ssget '((0 . "*DIMENSION") (3 . "name-dim-style")))) "")
Спасибо, name02
Ingpro вне форума  
 
Непрочитано 13.01.2025, 15:09
#4882
name02


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


1 Функция subst возвращает список, в котором элемент (assoc 3 b) заменен на (3 . "Копия Основной").
2 Я бы удалял объекты не командными методами - не люблю засорять командную строку. Все аккуратнее выглядит.

Ты какой справкой по лиспу пользуешься?
name02 вне форума  
 
Непрочитано 13.01.2025, 15:32
#4883
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
Ты какой справкой по лиспу пользуешься?
В основном из интернета...

Последний раз редактировалось Ingpro, 13.01.2025 в 19:17.
Ingpro вне форума  
 
Непрочитано 13.01.2025, 15:49
1 | #4884
name02


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


Скачай офлайн справку https://dwg.ru/dnl/ri33 - там есть справка по всем лисповским функциям
Добавь эту справку в настройках автокада:
Нажмите на изображение для увеличения
Название: Рис.1.png
Просмотров: 20
Размер:	34.4 Кб
ID:	266274

И тут еще поменяй:
Нажмите на изображение для увеличения
Название: Рис.2.png
Просмотров: 20
Размер:	30.6 Кб
ID:	266275

И если ты программы пишешь в блокноте, то лучше переходи в VLIDE - там проще отслеживать и находить ошибки в коде
name02 вне форума  
 
Непрочитано 13.01.2025, 15:53
#4885
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
Скачай офлайн справку https://dwg.ru/dnl/ri33 - там есть справка по всем лисповским функциям
Спасибо...

Последний раз редактировалось Ingpro, 13.01.2025 в 19:18.
Ingpro вне форума  
 
Непрочитано 13.01.2025, 23:11
#4886
Alxndr1697


 
Регистрация: 24.01.2008
Подольск
Сообщений: 170


Цитата:
Сообщение от name02 Посмотреть сообщение
Скачай офлайн справку https://dwg.ru/dnl/ri33 - там есть справка по всем лисповским функциям
Извиняюсь, что не по теме. Справка от 2020 должна установиться и работать на 2021?
Alxndr1697 вне форума  
 
Непрочитано 14.01.2025, 10:42
#4887
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,809


оффлайн справка к автокаду 2021
Offline Help Ru
Offline Help En
__________________
K Lisp

Последний раз редактировалось koMon, 14.01.2025 в 13:12.
koMon вне форума  
 
Непрочитано 14.01.2025, 11:05
#4888
Кулик Алексей aka kpblc
Moderator

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


https://dwg.ru/dnl/ri33 - от 2019 по 2025
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.01.2025, 11:51
#4889
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,809


кроме 21
__________________
K Lisp
koMon вне форума  
 
Непрочитано 14.01.2025, 12:34
#4890
Кулик Алексей aka kpblc
Moderator

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


На 2021 почему-то справки не нашлось в момент загрузки ((
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.01.2025, 13:43
#4891
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
оффлайн справка к автокаду 2021
Offline Help Ru
Offline Help En
А на эти ссылки вот такая реакция?.. Есть ли возможность приложить архив? Или добавить к https://dwg.ru/dnl/ri33 - от 2019 по 2025
Миниатюры
Нажмите на изображение для увеличения
Название: 2025-01-14_13-41-17.png
Просмотров: 14
Размер:	59.4 Кб
ID:	266297  

Последний раз редактировалось Ingpro, 14.01.2025 в 13:52.
Ingpro вне форума  
 
Непрочитано 14.01.2025, 14:18
1 | #4892
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,809


там чёт заморочно с квотами
----- добавлено через ~6 мин. -----
Кулик Алексей aka kpblc,
Алексей, может загрузишь в ri33?
__________________
K Lisp

Последний раз редактировалось koMon, 14.01.2025 в 21:56.
koMon вне форума  
 
Непрочитано 14.01.2025, 14:35
#4893
Ingpro


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


Цитата:
Сообщение от koMon Посмотреть сообщение
там чёт заморочно с квотами
AC2021 Offline Help
Так получилось, many thanks!
Ingpro вне форума  
 
Непрочитано 14.01.2025, 14:41
#4894
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от koMon Посмотреть сообщение
там чёт заморочно с квотами
AC2021 Offline Help

----- добавлено через ~6 мин. -----
Кулик Алексей aka kpblc,
Алексей, может загрузишь в ri33?
Только дома, на работе мобильный инет подобное не проглотит (((
Админ одобрил, ссылки:
_https://dwg.ru/dnl/15794
_https://dwg.ru/dnl/15795
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.

Последний раз редактировалось Кулик Алексей aka kpblc, 14.01.2025 в 20:49.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 14.01.2025, 21:46
#4895
Alxndr1697


 
Регистрация: 24.01.2008
Подольск
Сообщений: 170


Благодарю
Alxndr1697 вне форума  
 
Непрочитано 16.01.2025, 12:15
#4896
Ingpro


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


Код:
[Выделить все]
 (command "_-layer" "_n" "IZM" "_c" "1" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")
Так создается слой с цветом 1 (при печати monochrome цвет - черный)
для цвета RAL 3024 (при печати monochrome цвет - красный) эти строки не работают:
Код:
[Выделить все]
 (command "_-layer" "_n" "IZM" "_c" "RAL 3024" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")

(command "_-layer" "_n" "IZM" "_c" "255.45.33" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")
Как можно это исправить?
В ком. строке: Требуется стандартное имя или номер цвета.
Миниатюры
Нажмите на изображение для увеличения
Название: RAL 3024.png
Просмотров: 11
Размер:	20.1 Кб
ID:	266331  
Ingpro вне форума  
 
Непрочитано 16.01.2025, 12:41
1 | #4897
name02


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


Для задания цвета в RGB
(command "_-layer" "_n" "IZM" "_c" "_T" "255,45,33" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")

Для задания цвета прямо в RAL
(command "_-layer" "_n" "IZM" "_c" "_COL" "ral classic" "RAL 3024" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")
name02 вне форума  
 
Непрочитано 16.01.2025, 13:25
#4898
Ingpro


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


Цитата:
Сообщение от name02 Посмотреть сообщение
Для задания цвета в RGB
(command "_-layer" "_n" "IZM" "_c" "_T" "255,45,33" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")

Для задания цвета прямо в RAL
(command "_-layer" "_n" "IZM" "_c" "_COL" "ral classic" "RAL 3024" "IZM" "_s" "IZM" "_P" "_P" "IZM" "_s" "IZM" "")
Спасибо большое, обе строки отлично работают!
Ingpro вне форума  
 
Непрочитано 17.01.2025, 16:18
#4899
Ingpro


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


Код:
[Выделить все]
 ;; устанавливает текущим выбранный размерный стиль
(defun c:dm-sel-style (/)
 (vla-put-activedimstyle
  (vla-get-activedocument (vlax-get-acad-object)) 
  (vla-item (vla-get-dimstyles (vla-get-activedocument (vlax-get-acad-object)))
            (cdr (assoc 3 (entget (car (entsel)))))
  )
 )
(princ)
)
А как установить текущим размерный стиль "_01_100", указанный в коде? please...
Ingpro вне форума  
 
Непрочитано 17.01.2025, 16:36
#4900
koMon


 
Блог
 
Регистрация: 26.09.2017
Сообщений: 1,809


вот так, если об этом речь
Код:
[Выделить все]
 
(vla-put-activedimstyle
  (vla-get-activedocument (vlax-get-acad-object))
  (vla-item (vla-get-dimstyles (vla-get-activedocument (vlax-get-acad-object)))
			"_01_100"
  )
 )
__________________
K Lisp
koMon вне форума  
Ответ
Вернуться   Форум 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