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

"Скачет" масштаб размерного стиля при экспортировании детали в DXF.


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

Неожиданно возникла проблема-не проблема, а непонятка. Некоторые детали сохраняю в dxf, для обработки на ЧПУ. Текущую пачку деталей отдали в новую контору, на новогодних праздниках они начали истерить, что детали в dxf в неправильном масштабе, они там что-то отмасштабировали, что-то не смогли, короче караул, все пропало. Глянул отосланный файлы - там все четко, все линии тех размеров, которые должны быть. А вот если начинать проставлять размеры (чем они, видимо, и занимались там, не знаю зачем), то размеры отображаются с масштабом, причем разным в разных деталях. Посмотрел размерные стили в этих dxf, действительно, масштаб там не 1, а всякий разный. Если его поменять на 1, то и размеры правильно начинают отображаться.

Задумался я крепко, каким образом в сохраненных dxf вообще масштаб размеров другой. На всякий случай во всех шаблонах чертежей поменял масштаб листа на 1:1 (был разный). Вроде новые dxf стали с правильными размерными стилями сохраняться. Вначале. Потом опять пошла свистопляска с масштабами. Я уже не знаю куда смотреть и что крутить, чтобы этого не было. В настройках сохранения dxf-dwg снял галку Сохранять в масштабе 1:1, не помоголо. Причем есть нюанс. Если сохранять через Сокранить как, там выбрать dxf, то масштаб размеров получается 1:1, я же сохраняю через макросы (разные), которые нашел на форуме, через них как раз и происходит свистопляска. Но вручную через Сохранить как устанешь каждый конфиг сохранять. Куда копать уже не понимаю.

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


UnPinned posts
1 час назад, kkk сказал:

Куда копать уже не понимаю.

Так очевидно, ковырять: 

 

1 час назад, kkk сказал:

макросы (разные), которые нашел на форуме, через них как раз и происходит свистопляска.

 

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

Я их смотрел, ничего такого, что хоть каким-то образом указывало бы на масштаб там не видно. По крайней мере мне.

 

К примеру:

 

Sub main()

    Dim swApp                   As SldWorks.SldWorks
    Dim swModel                 As SldWorks.ModelDoc2
    Dim vConfNameArr            As Variant
    Dim sConfigName             As String
    Dim nStart                  As Single
    Dim i                       As Long
    Dim bShowConfig             As Boolean
    Dim bRebuild                As Boolean
    Dim bRet                    As Boolean
  

    Set swApp = CreateObject("SldWorks.Application")
    Set swModel = swApp.ActiveDoc

    vConfNameArr = swModel.GetConfigurationNames

    For i = 0 To UBound(vConfNameArr)

        sConfigName = vConfNameArr(i)

       
bShowConfig = swModel.ShowConfiguration2(sConfigName)

bRebuild = swModel.ForceRebuild3(False)

Dim FilePath As String
Dim PathSize As Long
Dim PathNoExtension As String
Dim NewFilePath As String

FilePath = swModel.GetPathName
PathSize = Strings.Len(FilePath)
PathNoExtension = Strings.Left(FilePath, PathSize - 7)

NewFilePath = PathNoExtension + "-" & sConfigName & ".DXF"

'Export Flat Pattern
bRet = swModel.ExportFlatPatternView(NewFilePath, 1)

Next i

End Sub

 

Есть стойкое подозрение, что все это как-то завязано на форматку чертежа, вот только как...

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

...




'Export Flat Pattern
bRet = swModel.ExportFlatPatternView(NewFilePath, 1)

...

Есть стойкое подозрение, что все это как-то завязано на форматку чертежа, вот только как...

Разве в приведённом куске кода экспорт не из модели? А при чём тут тогда шаблоны чертежей?

Помнится параметры экспорта сохраняются не к конкретному документу, а общие для системы, то есть нужно настроить один раз параметры экспорта и такие параметры должны применяься к последующим документам. Но соответсвенно настроить правильные параметры для экспорта как вам требуется.

 

55 минут назад, kkk сказал:

Я их смотрел, ничего такого, что хоть каким-то образом указывало бы на масштаб там не видно. По крайней мере мне.

Так в возможно как раз в этом проблема и код должен быть дополнен, что бы ставились/контролировались правильные галочки для экспорта, а не как фишка ляжет:

http://help.solidworks.com/2010/english/api/swconst/FileSaveAsDXFOptions.htm

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

 

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

Задумался я крепко, каким образом в сохраненных dxf вообще масштаб размеров другой. На всякий случай во всех шаблонах чертежей поменял масштаб листа на 1:1 (был разный). Вроде новые dxf стали с правильными размерными стилями сохраняться.

Так экспорт в DXF из чертежа или из модели?

Изменено пользователем Kelny
Ссылка на сообщение
Поделиться на других сайтах
1 час назад, Kelny сказал:

Разве в приведённом куске кода экспорт не из модели? А при чём тут тогда шаблоны чертежей?

Помнится параметры экспорта сохраняются не к конкретному документу, а общие для системы, то есть нужно настроить один раз параметры экспорта и такие параметры должны применяься к последующим документам. Но соответсвенно настроить правильные параметры для экспорта как вам требуется.

 

Так в возможно как раз в этом проблема и код должен быть дополнен, что бы ставились/контролировались правильные галочки для экспорта, а не как фишка ляжет:

http://help.solidworks.com/2010/english/api/swconst/FileSaveAsDXFOptions.htm

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

 

Так экспорт в DXF из чертежа или из модели?

Какая то странная история. В коде экспорт из модели, а масштаб меняют в чертеже. 

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

Разве в приведённом куске кода экспорт не из модели?

Из модели.

 

2 часа назад, Kelny сказал:

А при чём тут тогда шаблоны чертежей?

При том, что есть ощущение, что при экспорте модели в dxf, св сначала создает некий чертеж, куда кидает модель, потом этот чертеж сохраняет в dxf. Косвенным фактом этого служат различные признаки, один из них, что я просто включил запись макроса, сохранил модель в dxf и в записанном макросе есть прямая ссылка на шаблон чертежа: Set Part = swApp.NewDocument("C:\Users\...\А3-А.drwdot", 0, 0, 0)

2 часа назад, Kelny сказал:

Помнится параметры экспорта сохраняются не к конкретному документу, а общие для системы, то есть нужно настроить один раз параметры экспорта и такие параметры должны применяься к последующим документам. Но соответсвенно настроить правильные параметры для экспорта как вам требуется.

1. Я не нашел таких параметров, в частности масштаб размерных стилей или чего-то похожего.

2. Параметры сохранения настроены неким образом и не меняются. При этом при сохранении в dxf масштаб размерных стилей произвольно меняется.

 

2 часа назад, Kelny сказал:

Так экспорт в DXF из чертежа или из модели?

 

См. выше.

 

54 минуты назад, Sturmann сказал:

Какая то странная история. В коде экспорт из модели, а масштаб меняют в чертеже. 

 

См. выше.

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

Собственно моя теория полностью подтвердилась. Порылся в интернетах и нашел обсуждение, где Deepak Gupta (известный макросописатель) прямо говорит, что при экспорте МОДЕЛИ в dxf создается промежуточный ЧЕРТЕЖ, и уже этот чертеж сохраняется в dxf.

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

Покопался еще с этим сохранением и выяснилась удивительная вещь - файл dxf принимает масштаб ПОСЛЕДНЕГО открытого чертежа. Любого чертежа, совершенно не обязательно этой детали. Т.е. можно сохранять одну и ту же деталь, в промежутках открывать разные чертежи с разными масштабами и на выходе будем получать dxf с разными масштабами. Мдаааа....

 

Тут Гупта привел пример макроса, для временной подмены шаблона чертежа (специального, с масштабом 1:1, только для сохранения dxf). Там надо ветку раскрыть. Я еще не пробовал.

 

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

@kkk Мой макрос не пробовали? там применяется другой метод сохранения (ссылка в подписи)

Многие пользуются, никогда не было проблем с масштабом. Или макрос Артема (Xarial) пакетного сохранения dxf из сборки - тоже отличный,  рабочий, макрос.

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

ссылка в подписи

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

2 часа назад, Snake 60 сказал:

Или макрос Артема (Xarial) пакетного сохранения dxf из сборки

Попробую, но мне не нужно пакетно, максимум все конфиги конкретной детали.

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

настройте шаблон чертежа. его откройте. сохранить как- dxf- параметры .

шаблон дб один и путь в настройках один.

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

настройте шаблон чертежа. его откройте. сохранить как- dxf- параметры .

шаблон дб один и путь в настройках один.

Не знаю, я не понимаю логику работы Солида. Сделал шаблон чертежа, удалил оттуда Основную надпись, все примечания и т.д., т..е. чистый лист с масштабом 1:1 (как Гупта советовал в беседе, что я прикладывал выше), поставил этот чертеж как Шаблон по-умолчанию. Сохранил этот чертеж как dxf (пробовал в настройках сохранения ставить и снимать галку масштаба 1:1 - не влияет на результат). После чего сохранил свою деталь в dxf - масштаб корректный, 1:1. После чего открыл и сохранил произвольный чертеж, снова сохранил в dxf тут же деталь - масштаб уже последнего открытого чертежа.

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

Блин, ссылку обрезало. 5я или 6я страница. ЗЫ не люблю сидеть в инете с телефона :bash:

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

у вас шаблон прописан в настройках? один?

Прописан. Один. Два там не поставишь. :smile:

25.01.2022 в 12:24, Snake 60 сказал:

Ссылка на крайнюю версию макроса

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

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

Прописан. Один. Два там не поставишь. :smile:

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

Не понимаю вашей проблемы - я каждый проект сохраняю контура в dxf и там всё нормально. Если ставить размер и использовать измерить ( в автокад) то эти значения всегда совпадают. 

Тут наверное вопрос в вашем понимании процесса и правильности выполнения операции. 

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

Тут наверное вопрос в вашем понимании процесса и правильности выполнения операции. 

Расшифруйте. Я даже затрудняюсь придумать неправильный способ нажатия на кнопку макроса.

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

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

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

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

Расшифруйте. Я даже затрудняюсь придумать неправильный способ нажатия на кнопку макроса.

Нажатия на кнопку? Нееееет, тут дело не в нажатиях) 

Тут дело в какой момент жать, что происходит после нажатия и как обеспечить правильный результат! 

 

А макрос кто делал? Как он работает? Что он делает в конкретный момент? 

Почему получается такой результат какой получается? 

Всё ли я правильно делаю? 

Вот какие вопросы вы должны себе задать! 

 

А вы скачали какой то макрос решили что знаете как его использовать потому что у вас опыта 20 лет, а он работает по какому то другому принципу. Может даже его автор не знает что там какая-нибудь ошибка или неточность. 

 

Тут много людей которые пишут макросы макрорекордером а потом удивляются почему он не работает! 

 

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

Кстати вас устраивает тот функционал макроса которым вы пользуетесь? Уверен что вы хотите изменить его в сторону информативности и быстрты работы. У меня есть такая программа. 

И в dxf файлы переводит и детали проверяет и конфигурации понимает. 

Интересно? 

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

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

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

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

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

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

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

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

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

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

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




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