Jump to content

Какой лучший вариант сохранения всех вариантов модели(из таблицы семейства) в DXF


SLWRKX

Recommended Posts

День добрый.

есть модель +таблица семейства.

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

 

макросы особо не спасают.

 

есть ли у кого нибудь решение ? может скрипт VB , поделитесь пожалуйста:5a33a36b1dd89_3DSmiles(225):

Edited by SLWRKX
Link to post
Share on other sites


UnPinned posts
davidovka

Creoson + Python + creopyson

import creopyson
import os

c = creopyson.Client()
c.connect()

path = creopyson.creo_pwd(c)

active_model = creopyson.file.get_active(c)
active_model_full_name = active_model.get('file')
active_model_name = active_model_full_name.split(".")[0]

path_for_step = path + "dxf_" + active_model_name
if not os.path.isdir(path_for_step):
    os.mkdir(path_for_step)

list_fam = creopyson.file_list_instances(c)['files']

for name_export in list_fam:
    creopyson.file_open(c, file_=name_export)
    creopyson.interface_export_file(c, file_type="DXF", filename=name_export, dirname=path_for_step)

creopyson.file_erase_not_displayed(c)


В рабочей папке создает папку dxf_%имя модели% и сохраняет в неё все экземпляры из таблице семейств

Edited by davidovka
  • Чемпион 1
Link to post
Share on other sites
13 минут назад, davidovka сказал:

Creoson + Python + creopyson


import creopyson
import os

c = creopyson.Client()
c.connect()

path = creopyson.creo_pwd(c)

active_model = creopyson.file.get_active(c)
active_model_full_name = active_model.get('file')
active_model_name = active_model_full_name.split(".")[0]

path_for_step = path + "dxf_" + active_model_name
if not os.path.isdir(path_for_step):
    os.mkdir(path_for_step)

list_fam = creopyson.file_list_instances(c)['files']

for name_export in list_fam:
    creopyson.file_open(c, file_=name_export)
    creopyson.interface_export_file(c, file_type="DXF", filename=name_export, dirname=path_for_step)

creopyson.file_erase_not_displayed(c)


В рабочей папке создает папку dxf_%имя модели% и сохраняет в неё все экземпляры из таблице семейств

супер, попробую установить, спасибо

Link to post
Share on other sites
50 минут назад, davidovka сказал:

Creoson + Python + creopyson


import creopyson
import os

c = creopyson.Client()
c.connect()

path = creopyson.creo_pwd(c)

active_model = creopyson.file.get_active(c)
active_model_full_name = active_model.get('file')
active_model_name = active_model_full_name.split(".")[0]

path_for_step = path + "dxf_" + active_model_name
if not os.path.isdir(path_for_step):
    os.mkdir(path_for_step)

list_fam = creopyson.file_list_instances(c)['files']

for name_export in list_fam:
    creopyson.file_open(c, file_=name_export)
    creopyson.interface_export_file(c, file_type="DXF", filename=name_export, dirname=path_for_step)

creopyson.file_erase_not_displayed(c)


В рабочей папке создает папку dxf_%имя модели% и сохраняет в неё все экземпляры из таблице семейств

помоги разобраться, я уже не знаю как запустить, питон стоит пикреосон установлен, сервер запущен. пробую запускать через макрос - скрипт OS python script.py тишина, и не пойму как проверить работоспособность по другому

Link to post
Share on other sites
davidovka
16 минут назад, SLWRKX сказал:

запускать

В creo открой нужный файл (creo запущен должен быть только один, иначе проблемы с creoson сервером) и в командной строке выполни

python main.py

 

16 минут назад, SLWRKX сказал:

проверить

в командной строке выполни python, далее по очереди построчно пиши:

import creopyson
c = creopyson.Client()
c.connect()
print(creopyson.creo_pwd(c))

Если все нормально - выведет путь рабочей папки

print(creopyson.file.get_active(c))

выведет инфу об активной модели

creopyson.PNG

Edited by davidovka
Link to post
Share on other sites
12 минут назад, davidovka сказал:

В creo открой нужный файл (creo запущен должен быть только один, иначе проблемы с creoson сервером) и в командной строке выполни


python main.py

 

в командной строке выполни python, далее по очереди построчно пиши:


import creopyson
c = creopyson.Client()
c.connect()
print(creopyson.creo_pwd(c))

Если все нормально - выведет путь рабочей папки


print(creopyson.file.get_active(c))

выведет инфу об активной модели

creopyson.PNG

после проверки рабочей папки тишина, видимо неконнектит с сервером, 
интересно с 10 версией крео работает дело это?

 

сейчас я забрасываю main.py в рабочую папку, модель там же, далее в cmd cd рабочая_папка, и выполняю скрипт уже, все равно тишина, 
поэтому думаю все таки с сервером коннекта нет

RuntimeError: Unable to connect to Creo through J-Link

Link to post
Share on other sites
davidovka
10 минут назад, SLWRKX сказал:

10 версией крео

Не пробовал, в 4-9 работает. 

 

закрыть все версии creo, в диспетчере проверить отсутвие xtop.exe, запустить creo, запустить сервер

Сам сервер работает нормально? можно проверить так:

 

 

1.PNG

2.PNG

3.PNG

4.PNG

Edited by davidovka
  • Нравится 1
Link to post
Share on other sites
1 минуту назад, davidovka сказал:

Не пробовал, в 4-9 работает. 

Сам сервер работает нормально? можно проверить так:

 

 

1.PNG

2.PNG

3.PNG

4.PNG

 

 

работает , спасибо полезно!
, лишние окна закрыл, после этого скрипт хоть сразу отрабатывает - но экспортировать не хочет ругается что файла нет, хотя файл открыт, дальше копаю)) возможно на ру символы ругается в названии модели, потестирую сейчас 

Link to post
Share on other sites
1 минуту назад, davidovka сказал:

Скрины ошибок возможно ускорят решение проблем

C:\тест\валы>python main.py
Traceback (most recent call last):
  File "C:\тест\валы\main.py", line 21, in <module>
    creopyson.interface_export_file(c, file_type="DXF", filename=name_export, dirname=path_for_step)
  File "C:\Users\User\AppData\Local\Programs\Python\Python311\Lib\site-packages\creopyson\interface.py", line 141, in export_file
    return client._creoson_post("interface", "export_file", data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\User\AppData\Local\Programs\Python\Python311\Lib\site-packages\creopyson\connection.py", line 75, in _creoson_post
    raise RuntimeError(error_msg)
RuntimeError: File 'вал_inst2<вал>.prt' was not open

при этом, я открываю активную модель с таблицей семейства.

до запуска скрипта в заголовке крео -корректное название базовой модели , например вал.prt(активный)

 

далее запускаю скрипт , и уже пишет что файл не открыт , но при этом название уже не вал.prt а вал_inst2.prt тоесть что то да делает скрипт)))

Link to post
Share on other sites
davidovka
4 минуты назад, SLWRKX сказал:

main.py

проблемы с русмкими буквами в именах файлов

Link to post
Share on other sites
4 минуты назад, SLWRKX сказал:

C:\тест\валы>python main.py
Traceback (most recent call last):
  File "C:\тест\валы\main.py", line 21, in <module>
    creopyson.interface_export_file(c, file_type="DXF", filename=name_export, dirname=path_for_step)
  File "C:\Users\User\AppData\Local\Programs\Python\Python311\Lib\site-packages\creopyson\interface.py", line 141, in export_file
    return client._creoson_post("interface", "export_file", data)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\User\AppData\Local\Programs\Python\Python311\Lib\site-packages\creopyson\connection.py", line 75, in _creoson_post
    raise RuntimeError(error_msg)
RuntimeError: File 'вал_inst2<вал>.prt' was not open

при этом, я открываю активную модель с таблицей семейства.

до запуска скрипта в заголовке крео -корректное название базовой модели , например вал.prt(активный)

 

далее запускаю скрипт , и уже пишет что файл не открыт , но при этом название уже не вал.prt а вал_inst2.prt тоесть что то да делает скрипт)))

 

и еще прикол 1 вылез.

запускаю скрипт на чертеже:

RuntimeError: File '1_bnr_shildik_vali.drw' must be a solid

 

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

RuntimeError: DXF Export only allowed on drawings

 

)))

папки dxf_... создались но пустые)

 

Link to post
Share on other sites
1 час назад, davidovka сказал:

проблемы с русмкими буквами в именах файлов

... list_fam = creopyson.file_list_instances(c)['files']
  File "<stdin>", line 3
    list_fam = creopyson.file_list_instances(c)['files']
    ^^^^^^^^
SyntaxError: invalid syntax

Link to post
Share on other sites
davidovka
1 час назад, SLWRKX сказал:

DXF Export only allowed on drawings

увы, тут только тяжелая артиллерия Toolkit, а не creopyson

 

нужно конкретное ТЗ, тогда может кто-то и поможет 

Link to post
Share on other sites
Только что, davidovka сказал:

увы, тут только тяжелая артиллерия Toolkit, а не creopyson

 

нужно конкретное ТЗ, тогда может кто-то и поможет 

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

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

 

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    No registered users viewing this page.



  • Сообщения

    • ДОБРЯК
      Это же "Учебное пособие предназначено для выполнения курсового проекта по курсу «Надежность АД и ЭУ» " Какое отношение это учебное пособие имеет к реальному проектированию.:=) Если только реклама «САМАРСКИЙ ГОСУДАРСТВЕННЫЙ АЭРОКОСМИЧЕСКИЙ УНИВЕРСИТЕТ имени академика С.П. КОРОЛЕВА» 
    • Desmond
      Огромнейшее большущее спасибо! Завтра на работе скачаю, начну разбираться. Пытаюсь из китайского шлифовального станка сделать что-то стоящее и, чтобы наладчик спокойно работал. Так-то создал комплекс макропрограмм через переменные всякие, но хочется это ещё удобнее сделать для наладки.  Ещё раз большое спасибо всем, кто отозвался и помог. Хорошо тут у вас на форуме))))
    • unsleeper1
      Аналогичная проблема. Версия 2024 SP5.0.  Решения так и не нашёл. Перепробовал все настройки во вкладке импорта. Если импортировать как детали, то открываются все детали в сборке в отдельных окнах. Правда если импортировать телами, то такого нет. Однако хочется найти причину.
    • Radon
      https://repo.ssau.ru/bitstream/Uchebnye-posobiya/Raschet-parametrov-nadezhnosti-otvetstvennyh-detalei-aviacionnogo-GTD-Elektronnyi-resurs-ucheb-posobie-55083/1/Кочеров Е.П. Расчет параметров.pdf Возможно и был когда то, уже нет, у нас тоже отошли от часов в сторону циклов
    • Viktor2004
      там еще вот этот PD0105M.LNK.TXT Просто в винде все файлы с расширением LNK отображаются как ссылки, хотя это файл PD0105M.SRC PD0105M.MEX а MEX он нужен для повторной компилляции, если будете делать. Этот файл просто системный
    • Stas_SPb
      На поверхности, где надо прервать фаску, делаем выступающий элемент. Формируем фаску, она доходит до него и останавливается. На сделанном ранее выступающем элементе делаем вырез, равный выступающему. Выступ исчезает, фаска остается. Картинка не прикладывается, но по ссылке она есть:)
    • KsunReh
      Полностью согласен, что зависит от цикла и потребной эффективности охлаждения. Вы еще планируете трубчатые толкатели, с ними могут быть проблемы с охлаждением знаков, которые находятся внутри толкателей, Перегрев этих знаков может вызвать задир и клин толкателей. Я бы реально подумал в сторону плиты съема вместо 8 трубчатых толкателей.   Если говорить о самом простом охлаждении (без расчета на скоростные циклы и прецизионное литье), то я бы лично что-то такое на подвижке сделал:   технически элементарно, условия охлаждения колец примерно одинаковы, но у каждого второго кольца канал охлаждения пересекает разводящий литник, что не есть хорошо, конечно. А на неподвижной стороне просто прямые сквозные каналы. Это для простых форм.    
    • Mariakuznetsove
      Добрый день! Почему то при выводе изображений, пдф и пнг в большом разрешении все линии граней получаются рваные. Есть ли способ решить эту проблему? Сама не смогла найти.
    • maxx2000
      @Valedol тогда вообще нет смысла ему это считать, пусть программист(читай  технолог) считает. Ему это гораздо проще сделать по факту. 
    • Killerchik
      Канавка, в ней отверстие, в отверстии перегородка пластиковая, не доходящая до дна. Вода течёт по канавке, доходит до отверстия и перегородки, течёт до дна отверстия, перетекает на другую сторону перегородки, течёт по второй половине отверстия, вытекает в канавку и течёт дальше. Подсмотрел это на одной клиентской ПФ немецкой конструкции.
×
×
  • Create New...