Перейти к содержанию
Ivanco

разбивка СПДС объектов в нескольких файлах

Рекомендуемые сообщения

Скрипт разбивает СПДС объекты во всех .dwg файлах указанной папки.

Перебирает все файлы ,включая подпапки, открывает файл, выполняет "spexplodeall" , и закрывает сохраняя изменения.

 

Использовать аккуратно, лучше копировать исходную папку.

Есть опция не сохранять изменения , т.е. все файлы будут открыты в nanoCAD для дальнейшей работы.

 

ссылка на скрипт

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

кстати. возможно было бы прикольно, запилить окно ввода команд в форме, типо чтобы они потом пакетно исполнялись, над всеми файлами в выбранной папке. Будет "универсальное" B) решение.

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

а так то можно, и макрос или LISP запихать в ком.строку на выполнение.

Вообщем неплохо сам с собой поговорил :blink:

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решал похожую задачу. Можете посмотреть в моем проекте CustomAutosave метод SendCommandToDoc

Изменено пользователем Robink

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Решал похожую задачу. Можете посмотреть в моем проекте CustomAutosave метод SendCommandToDoc

да спасибо гляну. я подпсан на Ваш GitHub.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Было бы здорово, если бы он не пересохранял текущий файл, а сохранял его как "Имя_Файла Разбито" =)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Было бы здорово, если бы он не пересохранял текущий файл, а сохранял его как "Имя_Файла Разбито" =)

прикручу, если руки дойдут, сюда выложу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как я понимаю, основной смысл этого скрипта, в передаче файлов смежникам, да и в принципе другим людям, чтобы у них нормально открылось?

Тогда, если есть такая возможность, вот, на мой взгляд, что в идеале хотелось бы, чтобы этот скрипт мог, помимо сохранить как "Имя_Файла Разбито" :

1. Собрать zip файл из выбранной папки с уже разбитыми файлами.

2. Добавить все документы, на которые есть ссылки в двг файле и шрифты.

По сути получается команда "сформировать комплект" для всей папки с разбитием спсд обектов)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Как я понимаю, основной смысл этого скрипта, в передаче файлов смежникам, да и в принципе другим людям, чтобы у них нормально открылось?

Тогда, если есть такая возможность, вот, на мой взгляд, что в идеале хотелось бы, чтобы этот скрипт мог, помимо сохранить как "Имя_Файла Разбито" :

1. Собрать zip файл из выбранной папки с уже разбитыми файлами.

2. Добавить все документы, на которые есть ссылки в двг файле и шрифты.

По сути получается команда "сформировать комплект" для всей папки с разбитием спсд обектов)

да смежникам.

возможно к последним пунктам нет API. эмулировать клики по формам, несколько проблемно. гляну вообщем что можно сделать.

Спасибо за пожелание.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Раз уж тут все предлагают :D Типичный алгоритм передачи файлов:

  1. Сформировать комплект.
  2. Внедрить внешние ссылки (кроме растров, естественно).
  3. Разбить всё.
  4. Проверка с исправлением.
  5. Очистка.
  6. Сохранение иногда в другом формате (2007, 2010).
  7. Удаление внедрённых файлов.

Ну дальше список файлов с хэшами и отправка в архиве, иногда по частям. Но это уже другая история.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мечты

 

 

post-64306-0-03845800-1542714933.jpg

 

 

 

реальность

 

 

post-64306-0-70710300-1542714937.jpg

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 20.11.2018 в 15:59, Kreator сказал:

Это было ниже пояса

это осталось там же спустя год

никто палец о палец не ударил

-----------

а ведь насущная необходимость есть именно при передаче комплекта заказчику(((

хотя бы запилили консольный вариант spexplodeall 

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

---------------

ЗЫ я видел ссылки на dll, но не нанокадом единым, MCS  есть и на других кадах и там та же проблема(((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
2 часа назад, doctorraz сказал:

это осталось там же спустя год

никто палец о палец не ударил

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

мне к сожалению некогда этот проект развивать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
1 минуту назад, Ivanco сказал:

а кто по вашему должен был это сделать? вопрос впрочем риторический..

это

3 часа назад, doctorraz сказал:

хотя бы запилили консольный вариант spexplodeall 

очевидножэж, что разработчики нано

тогда бы и без дотнета простыми scr и bat можно было разбивать, чистить, паковать

 

 

добавлено через 9 минут

что б на spexplodeall не этот мессадж Да/НЕТ выскакивал, а можно было в ком строке ответить

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
22 минуты назад, doctorraz сказал:

что б на spexplodeall не этот мессадж Да/НЕТ выскакивал, а можно было в ком строке ответить

тикет заведите в "клуб разработчиков" нано. может это повлияет на реализацию.
пути решения этой проблемы сейчас есть.
- .NET
- можно на RPA( UI Path)  заморочатся попробовать сделать - там VBA.
руки ток надо и время.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 05.12.2019 в 17:40, Ivanco сказал:

тикет заведите в "клуб разработчиков" нано. может это повлияет на реализацию.

там этих тикетов висит(((

прозрачная публикация уж два года с лишним(((

 

В 05.12.2019 в 17:40, Ivanco сказал:

руки ток надо и время.

вот да, а акция по разбивке нечастая

 

Да и некуда сисофту тикет подавать, они все тут все видят

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

хех

пока только так, командными методами в текущем пространстве

(if (setq ss (ssget "_X" (list '(0 . "SPDS*")(cons 410 (getvar "CTAB")))))
  (progn
    (initcommandversion)
    (command "_.explode" ss "")
    )
  )

на VBA  похоже не взлетит, АК не умеет Explode объектов MCS

а McCOM2 вообще Explode не умеет (((

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

стройте роботов во славу роботов:blink:B)
сделано на Uipath за пару вечеров. работает без рук).

при желании можно заколхозить любую пакетную обработку без всякого .net .
https://youtu.be/nK9sQTAnZYo

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Видео о том как сделать робота для nanoCAD для пакетной обработки файлов на базе UIpath

https://www.youtube.com/watch?v=wU16fhQdfNw&t=1s

 

 

Изменено пользователем Ivanco

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вопрос: реально ли реализовать с помощью данного робота следующую процедуру: открыть чертёж dwg и поочередно обновить все таблицы. То есть найти все таблицы в чертеже придётся роботу, открыть каждую, и щёлкнуть кнопку «обновить». Этап открытия чертежа dwg я себе представляю по указанному примеру. Так же представляю этап нажатия кнопки «обновить». Но вот реально заставить его поочередно открывать все таблицы на чертеже?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
31 минуту назад, dromandon сказал:

открыть чертёж dwg и поочередно обновить все таблицы.

хм. как нибудь будь думаю можно. вопрос можно ли обойтись без программирования, и без сильных "костылей")
навскидку:
- все таблицы доступны через "диспетчер" - т.е. клик по таблице в диспетчере (таблица выделяется и зуммируется) - редактировать - обновить - закрыть.
тут главная сложность - перебор в диспетчере. надо экспериментировать.
- в роботе можно прогать. т.е. через .net api получаем таблицы списком - потом перебираем и роботом через интрерфейс делаем что нужно.
(ну это тупо конечно, вероятно в API есть update) но все же.
 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 16.12.2019 в 20:42, Ivanco сказал:

сделано на Uipath за пару вечеров. работает без рук)

 

$3990 в год на 1 пользователя ?
Или речь о чем то другом ?

https://www.capterra.com/p/135186/UiPath-Robotic-Process-Automation/#pricing

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
11 часов назад, A.Kudrjashov сказал:

 

$3990 в год на 1 пользователя ?
Или речь о чем то другом ?

для проблем что описаны в этой ветке , хватит Community версии бесплатной.
https://www.uipath.com/start-trial

есть еще OpenRPA - open source ный , но приспособить его под свои нужны пока не удалось.
а для каких задач , если не секрет хотите использовать?

Изменено пользователем Ivanco

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
12 часов назад, Ivanco сказал:

а для каких задач , если не секрет хотите использовать?


Автоматизация рутинных повторяющихся операций, в том числе мышью и клавиатурой. Насчет CAD не уверен, но для административных задач бывает нужно. Та же, обработка больших таблиц. Не всегда имеет смысл писать код.

Другой вопрос, что пока, то, что находил, не устраивало.

Но, в данном случае Cloud и "Online only" - тоже мимо. :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

×
×
  • Создать...