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

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


SLWRKX

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

День добрый.

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

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

 

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

 

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

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


UnPinned posts

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_%имя модели% и сохраняет в неё все экземпляры из таблице семейств

Изменено пользователем davidovka
Ссылка на сообщение
Поделиться на других сайтах
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_%имя модели% и сохраняет в неё все экземпляры из таблице семейств

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

Ссылка на сообщение
Поделиться на других сайтах
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 тишина, и не пойму как проверить работоспособность по другому

Ссылка на сообщение
Поделиться на других сайтах
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

Изменено пользователем davidovka
Ссылка на сообщение
Поделиться на других сайтах
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

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

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

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

 

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

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

 

 

1.PNG

2.PNG

3.PNG

4.PNG

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

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

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

 

 

1.PNG

2.PNG

3.PNG

4.PNG

 

 

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

Ссылка на сообщение
Поделиться на других сайтах
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 тоесть что то да делает скрипт)))

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

main.py

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

Ссылка на сообщение
Поделиться на других сайтах
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_... создались но пустые)

 

Ссылка на сообщение
Поделиться на других сайтах
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

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

DXF Export only allowed on drawings

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

 

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

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

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

 

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

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

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

 

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

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

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

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

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

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

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

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

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

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

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



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