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

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

Как вставить блок в чертеж по средством lisp?

Ответ
Поиск в этой теме
Непрочитано 21.09.2017, 11:57 #1
Как вставить блок в чертеж по средством lisp?
no_ideas
 
Регистрация: 21.09.2017
Сообщений: 6

Добрый день.
Как вставить блок в чертеж по средством lisp? Точка вставки любая. путь к файлу с блоком известен, имя тоже. Планирую использовать его для потоковой обработки файлов. 2000шт. В каждый надо вставить этот блок.

Последний раз редактировалось no_ideas, 21.09.2017 в 13:17.
Просмотров: 6201
 
Непрочитано 21.09.2017, 12:13
#2
Кулик Алексей aka kpblc
Moderator

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


Самый простой вариант:
Код:
[Выделить все]
(command "_.-insert" <ИмяФайла> nil)
Потом уже вставляешь нужный тебе блок.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 21.09.2017, 12:20
#3
no_ideas


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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Самый простой вариант:
Код:
[Выделить все]
(command "_.-insert" <ИмяФайла> nil)
Потом уже вставляешь нужный тебе блок.
Я хочу потом запустить пакетную обработку файлов(2000шт.) и вставить блок в каждый.

Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Самый простой вариант:
Код:
[Выделить все]
(command "_.-insert" <ИмяФайла> nil)
Потом уже вставляешь нужный тебе блок.
Потом планирую запустить пакетную обработку файлов (2000шт) и вставить блок в каждый файл.

Планирую потом пакетную обработку файла при помощи лиспа (2000шт). Вставлять один и тот же блок, из одного того же места.

Планирую потом пакетную обработку файлов этим лиспом. 2000шт. В каждый надо вставить этот блок из одного и того же файла.

Последний раз редактировалось Кулик Алексей aka kpblc, 22.09.2017 в 07:40.
no_ideas вне форума  
 
Непрочитано 22.09.2017, 07:41
#4
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от no_ideas Посмотреть сообщение
Я хочу потом запустить пакетную обработку файлов(2000шт.) и вставить блок в каждый.
Скрипт + accoreconsole.exe или ObjectDBX.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 22.09.2017, 08:05
#5
trir


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


лучше использовать .NET
trir вне форума  
 
Непрочитано 22.09.2017, 08:21
#6
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


На .NET это делать удобно, достаточно быстро и с удобными окошками =о)
Открыл автокад - запустил команду - указал файлик с блоком - указал директорию с кучей файлов - покурил - получил результат. =о)
Boxa вне форума  
 
Непрочитано 22.09.2017, 11:52
#7
trir


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


http://adn-cis.org/izmenenie-putej-k...sitelnyie.html
trir вне форума  
 
Непрочитано 11.04.2018, 13:33
#8
Okl


 
Регистрация: 14.03.2018
Сообщений: 11
Отправить сообщение для Okl с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Самый простой вариант:
А не самый простой вариант есть?
Мне нужно заранее созданный блок вставить по соответствующим координатам...
Моя функция не работает((((
Код:
[Выделить все]
 (DEFUN c:sk_mshu ()
  
  (SETQ p_msh '(130.0 4600.0))
  (SETQ kl_name 1)
  (SETQ kl_pr 1)


  (SETQ name_mshu (LIST (LIST 1 "TMAD_L_")
		    (LIST 2 "TMAD_R_")
		    (LIST 3 "TMA_")
	        )
  )
   (SETQ pr_mshu (LIST (LIST 1 "is")
		   (LIST 2 "pr")
	       )
   )
  (SETQ a1 (nth 1(ASSOC kl_name name_mshu)))
  (SETQ a2 (nth 1(ASSOC kl_pr pr_mshu)))

  (SETQ inf_mshu (STRCAT a1 a2))



  (SETQ nam_MSHU (ASSOC kl_msh baza_MSHU))
  
  (COMMAND "_insert" nam_MSHU  p_msh 1 1 0 )
)
Okl вне форума  
 
Непрочитано 11.04.2018, 21:50
#9
Кулик Алексей aka kpblc
Moderator

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


1. А такой блок в чертеже точно есть?
2. Грабли, здрасьте!
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.04.2018, 00:09
#10
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,000


В случае пакетной обработки надежнее работать непосредственно с базой чертежа, а не с активным документом редактора, имхо.
Сергей812 вне форума  
 
Непрочитано 12.04.2018, 00:10
#11
Кулик Алексей aka kpblc
Moderator

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


Сергей812, лично я не увидел пакетной обработки у Okl.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.04.2018, 00:13
#12
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,000


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
лично я не увидел пакетной обработки у Okl.
ну это в его планах:
Цитата:
Сообщение от no_ideas Посмотреть сообщение
Планирую потом пакетную обработку файлов этим лиспом. 2000шт. В каждый надо вставить этот блок из одного и того же файла.
всё-таки, надеюсь, он не будет вручную каждый из 2000 файлов открывать и запускать лисп)
Сергей812 вне форума  
 
Непрочитано 12.04.2018, 07:21
#13
Кулик Алексей aka kpblc
Moderator

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


Сергей812, пакетную обработку просил no_ideas, а не Okl
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 12.04.2018, 07:49
#14
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Цитата:
Сообщение от Okl Посмотреть сообщение
Мне нужно заранее созданный блок вставить по соответствующим координатам...
Ну если на лисп свет клином не сошелся, то можно воспользоваться вот этим инструментом: ссылка
Давеча, как раз по работе полторы тысячи свай в виде блоков по координатам из расчетной модели расставлять пришлось, программа вполне сносно справилась...
Boxa вне форума  
 
Непрочитано 12.04.2018, 10:31
#15
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,000


Offtop:
Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
пакетную обработку просил no_ideas, а не Okl
все смешалось в теме и в голове


В любом случае, при наличии возможности лучше работать напрямую с объектной моделью чертежа - чем через костыли в виде комстроки. Например, через vla-insertblock
Сергей812 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > LISP > Как вставить блок в чертеж по средством lisp?

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
LISP. Копирование объекта из внешней ссылки в текущий чертеж skkkk LISP 19 17.04.2017 22:00
Как вставить в таблицу динамический блок с параметром видимости и с атрибутами? Profan Программирование 18 06.07.2016 16:41
как правильно вставить чертеж из автокада в ворд ? heller AutoCAD 18 13.11.2014 10:07
LISP. Как сохранить текущий чертеж программным методом с новым именем? LastGraff LISP 7 03.08.2011 11:41
Как вставить изображение в блок? Rufger Динамические блоки 5 05.04.2009 18:19