Перейти к публикации

Макрос сохранения развертки в DWG


Vladimir_k55

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

7 часов назад, UnrealPV сказал:

@Snake 60 Всё спасибо, я понял в чём дело. Оказывается если свойство в солиде называется "Толщина" то в коде оно должно быть "ТОЛЩИНА".

Я тоже понял, Вы пытались поменять свойство "Толщина" на что-то своё, но не писали его заглавными буквами, т.к. не знали как действует функция UCase, я прав :)?

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


Всем привет!

Возможно сделать так что бы при сохранении в dwg сплайны переводить в арки в не в полилинии!?!?!

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

Возможно сделать так что бы при сохранении в dwg сплайны переводить в арки в не в полилинии!?!?!

Во-первых я порекомендовал бы для перевода в CAD использовать формат DXF, он более универсален, во-вторых как Вы себе представляете возможность перевода сплайна в арки, то бишь дуги :doh: Это ведь совершенно разные, с математической точки зрения, кривые.

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

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

Возможно сделать так что бы при сохранении в dwg сплайны переводить в арки в не в полилинии!?!?!

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

https://knowledge.autodesk.com/ru/support/autocad/learn-explore/caas/sfdcarticles/sfdcarticles/RUS/How-to-convert-splines-to-polylines-in-AutoCAD.html

Полученную полилинию затем можно командой Explode разделить на отдельные отрезки и дуги.

 

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

Всем привет!

Возможно сделать так что бы при сохранении в dwg сплайны переводить в арки в не в полилинии!?!?!

в настройки экспорта загляните. 

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Подскажите пожалуйста, пробовал кто прикрутить к макросам по экспорту DXF окошко предпросмотра как на прилагаемом рисунке?

Возможно ли такое с помощью API? Никак не могу найти информацию по этому окошку

 

Показать содержимое  

Снимок.JPG

Hide  
Изменено пользователем alek77
Ссылка на сообщение
Поделиться на других сайтах
В 26.10.2018 в 06:55, vasyam сказал:

P.S. как то давно делал макрос, который из сборки делал, dxf всех входящих деталей у которых в свойствах стояло свойство координатка. Правда было это в виде аддона, если кому то интересно могу и его поискать.

Здравствуйте. А поищите, пожалуйста)

@Snake 60 Здравствуйте. Установил последнюю версию Вашего Макроса ExportToDXF (Snake-60 Edition V1.2.1.2). При установке указал метод Macro11.main1, но при нажатии на кнопку макроса ничего не происходит...
Вы ранее говорили, что проблема может быть в доступе, не подскажете как её решить? Или может другой совет дадите по запуску)

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

@Snake 60 Заработало) Не знаю зачем я полез в редактирование макроса ( я там ничего не понимаю), но мне после запуска из окна VB сказало какие библиотеки не находит. В Макросе библиотеки от Солид2018, а у меня 2015.

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

@Snake 60 Доброе утро.

Отличные макросы. Большое Вам спасибо.

 

OneClickDXF

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

 

ExportToDXF

Добавьте, пожалуйста, возможность самостоятельного ввода символов разделения между Свойствами.

У Вас используется по умолчанию символ ~. По какой причине?

Есть макросы, в которых есть поле доступное для ввода. Если бы в Вашем было также для символов разделения св-в, то не правя код можно было ввести свои символы.

 

Спасибо.

 

 

 

 

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

@Snake 60

Также макросы сейчас сохраняют dxf, в которых СК находится по центру развертки. Можно ли сделать так, чтобы СК была в левом нижнем углу?

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

... чтобы СК была в левом нижнем углу?

А зачем, если не секрет?

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

@Plumber у нас странная старая прога, которой делаем УП, для неё так надо.

Сейчас в ручную в акаде каждый dxf правлю.

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

@Snake 60 Доброе утро.

Отличные макросы. Большое Вам спасибо.

На здоровье, рад, что кому-то еще пригодились.

10 часов назад, Timi сказал:

OneClickDXF

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

Вот в этой строке:

NewFilePath = Path10 & NameNoExtension & ".DXF"

после Path10 добавьте следующее: & "DXF\" Должно получиться вот так:

NewFilePath = Path10 & "DXF\" & NameNoExtension & ".DXF"

Где DXF - это название Вашей подпапки. Одно только условие - подпапка должна быть создана вручную, до применения макроса, иначе выдаст ошибку сохранения.

10 часов назад, Timi сказал:

ExportToDXF

Добавьте, пожалуйста, возможность самостоятельного ввода символов разделения между Свойствами.

У Вас используется по умолчанию символ ~. По какой причине?

Не знаю, просто потому что редко встречается сей символ, вот и использовал его. Можете по коду поиском поискать и заменить на свой, но сразу предупреждаю, мест там много где придется менять.

10 часов назад, Timi сказал:

Есть макросы, в которых есть поле доступное для ввода. Если бы в Вашем было также для символов разделения св-в, то не правя код можно было ввести свои символы.

Будет время, сделаю и такой вариант...

9 часов назад, Timi сказал:

Также макросы сейчас сохраняют dxf, в которых СК находится по центру развертки. Можно ли сделать так, чтобы СК была в левом нижнем углу?

С системой координат еще не разбирался, не знаю точно можно ли такое сделать.

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

@Snake 60 В некоторых изделиях в развертках необходимо скрыть лишние линии. Я делаю в таких случаях в чертеже лист с именем DXF, вставляю туда разверки, скрываю лишние линии и сохраняю вручную лист в DXF.

 

Как думаете, создание листа, вставку развертки можно автоматизировать макросом?

А сохранение после скрытия лишнего в Dxf? Если несколько разверток на листе, то каждую сохранять в отдельный файл.

 

Так мы экономим машиновремя лазера на некоторых элементах. Конечно можно и в Dxf лишнее стирать, но оптимальней скрывать в СолидВоркс, чтобы в Dxf уже ничего делать не нужно было.

 

Спасибо.

 

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

В некоторых изделиях в развертках необходимо скрыть лишние линии. Я делаю в таких случаях в чертеже лист с именем DXF, вставляю туда разверки, скрываю лишние линии и сохраняю вручную лист в DXF.

Я тоже так делаю когда надо преобразовать сплайны в цепочку дуг, но тут главное не наступить на грабли с масштабом листа. Иначе Вы рискуете получить уменьшенную копию детали, чего никогда не будет при сохранении DXF-а из детали.

 

14 часа назад, Timi сказал:

Как думаете, создание листа, вставку развертки можно автоматизировать макросом?

А сохранение после скрытия лишнего в Dxf? Если несколько разверток на листе, то каждую сохранять в отдельный файл.

Теоретически всё, что можно сделать руками, можно реализовать и в макросе, но я пока не настолько продвинут в VBA чтобы реализовать озвученные Вами задачи, у еще только учусь :)

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

Уважаемый @Snake 60 , заметил такую проблему, что при использовании вашего макроса Версии 1.2.1.2 развертка создается под углом к горизонтали.

Попробовал руками экспортировать с солида (sw2016sp5) - и все нормально.

Непойму в чем может быть проблема?

Развертка с помощью макроса 1.2.1.2  

5df24f3eafc49_.thumb.JPG.4c2da7fe57780c070ae648596e9b20c1.JPG
 

Hide  
Развертка стандартными средствами SW  

5df24f81e5b95_.thumb.JPG.dc2e8bcf10ea3e1356491861b92d7b68.JPG

Hide  

Деталь прикладываю

Развертка.SLDPRT
 

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

@malvi.dp Это происходит из-за того, что макрос использует метод ExportToDWG2 а стандартное сохранение, полагаю, что метод SaveAs.(Хотя могу и ошибаться) Попробовал переписать макрос с этим методом, сохраняет ровно, но пихает в развертку линию гиба, как ее убрать пока не разобрался. Плюс ко всему с этим методом надо полностью переписывать обработчик ошибок, на это надо время, а сейчас на работе аврал.

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

Уважаемый@Snake 60 спасибо за макрос, нужна Ваша консультация. Так как у нас требуется формат записи DXF Обозначение_Толщина_Материал, то взялся корректировать Ваш макрос. В принципе все получилось, но нужно что бы свойство "Толщина" прописывалось как вычисленное значение. Сможете помочь?

Картинка  

1.thumb.jpg.6c3acf47c4849123ab7ccaee02665488.jpg

2.jpg.380dca3243d175188c9dd73e5ca3a9e2.jpg

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

@DmitriySD  Конечно помогу. Смотрите, в переменную CustProp2Name - пишется текстовое значение переменной (это то, что указали Вы и поэтому вывелось то что вывелось), а в переменную CustProp2Value - пишется как раз вычисленное значение (то, что вам нужно). То есть Вам всего лишь нужно поменять Name на Value в строке формирования имени файла.

Изменено пользователем Snake 60
Ссылка на сообщение
Поделиться на других сайтах

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

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

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

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

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

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.




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