Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

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

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

OpenLink – открытие связанных файлов – 3Д-Моделей и Чертежа

Автор KrissKross, 13.10.18, 13:16:48

« предыдущая - следующая »

0 Пользователей и 1 гость просматривают эту тему.

KrissKross

OpenLink - утилита предназначена для открытия связанных файлов - 3Д-Моделей и Чертежей

Как работает:

Если текущая вкладка - Чертеж:

  • Ищет первую ссылку на 3Д-Модель

  • Открывает 3Д-Модель

  • В 3Д-модели - Создаёт/Обновляет Свойства

  •      
    • Прописывает полный путь к Чертежу в свойство - DrawingLink

    •            
    • Формат листов чертежа в свойство -

    •              
      • Для Компас версии 18 - Форматы листов документа
        (Появилось такое замечательное свойство в крайней версии, которое участвует в создании спецификации - базовыми средствами Компаса)

      •                    
      • Для Компас версии ниже 18 - DrawingFormat
        (Может кому пригодится, например, при создании Отчета)





Если текущая вкладка - 3Д-Модель (Деталь или Сборка)
  • Ищет свойство - DrawingLink

  •          
    • Если находит - открывает файл Чертежа

    •                  
    • Если нет - появится - Диалог выбора файла чертежа

    •                      
      • В 3Д-модели - Создаёт/Обновляет Свойство - DrawingLink

      •                            
      • Примечание:
        Свойство - Форматы листов документа / DrawingFormat - не обновляется, (дабы избежать моргания вкладок, при переключении туда-сюда)

      •                            
      • Открывает файл Чертежа





В планах - реализовать:
  • В Сборке открывать - Чертежи для всех выделенных компонентов:

  • Утилита/помощник - CreateLinkToFolder

  •        
    • Выбираем папку с проектом

    •          
    • открываются все Чертежи в выбранной папке

    •          
    • для связанных 3Д-Моделей создаются/заполняются свойства - DrawingLink и Форматы листов документа / DrawingFormat




Тестирование:
Компас v.18 и 17 (должно пойти и на более ранних версиях)
.Net Framework 4.6.1

Особенности работы:
•   Всплывающее окно с сообщениями - само закрывается через 3 сек - можно не нажимать Ок
•   Если у Вас вдруг используются в 3Д-Модели Свойства DrawingLink и DrawingFormat - значения будут перезаписаны

Надеюсь,
что возможности OpenLink будут реализованы в базовом функционале Компас-3Д

Уф   :o:- такая простая утилита, а столько текста
+ Благодарностей: 6

Вират Лакх

0) Интересная штукенция. Спасибо. Аскону брать с Вас пример. А теперь буду рвать и плющить :)

ЦитироватьИщет первую ссылку на 3Д-Модель

1) Предлагаю искать не первую, а которая активная / главная в основной надписи.

ЦитироватьОткрывает 3Д-Модель

2) Когда модель уже открыта, "переключается" на нее медленнее, чем вручную на вкладку переключиться.

ЦитироватьВ 3Д-модели - Создаёт/Обновляет Свойства

3) Когда обновляет свойства в модели:
а) если старое значение свойства равно новому, то обновлять не нужно. Иначе из-за этого при закрытии модели компас просит сохранить файл. А чего его сохранять и задавать лишние вопросы, когда ничего не изменилось.
б) если открывает с диска (не переключается на открытую вкладку) модель и создает или всё-таки обновляет, то можно после этого сразу сохранить файл, чтобы компас опять-таки не просил сохранить файл. Работа программы должна быть максимум незаметной.
в) по возвращении в чертеж, компас просит перестроить модель (не всегда), не перечеркивая геометрию. Тоже нужно что-то с этим порешать. Отчасти это уйдет после пункта (а).

ЦитироватьДля Компас версии ниже 18 - DrawingFormat

4) A2@4~3 - так записывает кратные форматы. Может через английский "x" лучше?

5) Для сборок и подсборок может создавать свойство типа SpcFormat? То бишь на чем оформлена спецификация. Для случаев, когда её располагают на листе чертежа, например, формата А3. В 18-й версии "Форматы листов документа" какого документа: чертежа или спецификации?

6) Для любителей спецификацию ставить в cdw можно научиться их друг от друга отделять, чтобы в свойствах было правильно. А то в обоих свойствах будут перечислены все форматы. У меня есть кое-какой опыт в этом, можем, если есть желание дописать это. Можно варианты работы программы вместо настроек сделать как параметры при запуске.

7) Форматы он по-простому перечисляет, т.е. два раза может написать А4. Может стоит обработку ввести с сортировкой по ГОСТ? Тоже есть алгоритм.

ЦитироватьЕсли нет - появится - Диалог выбора файла чертежа

8) Про выбор чертежа:
а) долго открывает окно выбора файла.
б) у появившегося окна в задвигалке надо бы написать не "Чертежи Компас-3Д" (к тому же с русской Д), а как у компаса "КОМПАС-Чертежи (*.cdw)"

9) Если в DrawingLink неправильный путь указан, то можно тоже вызывать окно для указания правильного пути.

Уф! Такая простая утилита, а столько замечаний :)
+ Благодарностей: 3

Вират Лакх

15.10.18, 05:55:45 #2 Последнее редактирование: 15.10.18, 08:30:17 от Вират Лакх
10) Ахтунг! При добавлении этой программы в утилиты компаса v16.1 и на пользовательскую панель инструментов при последующем запуске он падает! Помогает только замена KOMPAS.dsk на резервную копию или сброс настроек.
Ложная тревога :shu:
+ Благодарностей: 1

ТрындецЪ

Цитата: Вират Лакх от 15.10.18, 05:55:45
10) Ахтунг! При добавлении этой программы в утилиты компаса v16.1 и на пользовательскую панель инструментов при последующем запуске он падает! Помогает только замена KOMPAS.dsk на резервную копию или сброс настроек.

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

Вират Лакх

У меня сейчас калькулятор, комплектовщик, которые были изначально, + 8 макросов. Итого 10, больше он не разрешил. Работает. Интересное ограничение, конечно. Может это зависит от exe или pyw, а может и не зависит... Будем считать, что дело не в программе, а в компасе.
+ Благодарностей: 1

KrissKross

И так есть рабочая версия, теперь будем улучшать с учетом замечаний/предложений.
Цитировать1) Предлагаю искать не первую, а которая активная / главная в основной надписи.

Проверил - Компас таки берет значения из первого вставленного источника
Цитировать2) Когда модель уже открыта, "переключается" на нее медленнее, чем вручную на вкладку переключиться.

Введу проверку на наличие на вкладках, затем открыть с диска
Цитироватьесли старое значение свойства равно новому, то обновлять не нужно. Иначе из-за этого при закрытии модели компас просит сохранить файл. А чего его сохранять и задавать лишние вопросы, когда ничего не изменилось.

Верное предложение - добавлю проверку
Цитироватьесли открывает с диска (не переключается на открытую вкладку) модель и создает или всё-таки обновляет, то можно после этого сразу сохранить файл, чтобы компас опять-таки не просил сохранить файл. Работа программы должна быть максимум незаметной.

Тут думал, но пришел к выводу,что пользователь сам решает сохранять или нет
Цитировать4) A2@4~3 - так записывает кратные форматы. Может через английский "x" лучше?

Согласен - для DrawingFormat  введу обозначение в читаем форме, но русскую - х
Цитировать5) Для сборок и подсборок может создавать свойство типа SpcFormat? То бишь на чем оформлена спецификация. Для случаев, когда её располагают на листе чертежа, например, формата А3.

SpcFormat - введу
Алгоритм следующий:
Если ссылается на *.a3d (3Д-Сборка)
Проверяем спецификацию на листе, если
Да   SpcFormat = формат первого листа чертежа
Нет SpcFormat = А4,
и тут неопределенность - если Сборочный чертеж многолистовой со спецификацией на листе - какой формат писать в SpcFormat
ЦитироватьВ 18-й версии "Форматы листов документа" какого документа: чертежа или спецификации?

Документации нет, но скорее всего - чертежа
Цитировать6) Для любителей спецификацию ставить в cdw можно научиться их друг от друга отделять, чтобы в свойствах было правильно. А то в обоих свойствах будут перечислены все форматы. У меня есть кое-какой опыт в этом, можем, если есть желание дописать это. Можно варианты работы программы вместо настроек сделать как параметры при запуске.

Тут не совсем понятно, если Спецификация - оформлена в формате cdw, значит она не имеет ссылок на 3Д-модель, поэтому и открывать нечего
Цитировать7) Форматы он по-простому перечисляет, т.е. два раза может написать А4. Может стоит обработку ввести с сортировкой по ГОСТ? Тоже есть алгоритм.

Интересно посмотреть, но только в отдельной теме - там все обсудим
Цитировать8) Про выбор чертежа:
а) долго открывает окно выбора файла.

Подумаю, как ускорить - может создавать Диалог в фоне - затем показывать
Цитироватьб) у появившегося окна в задвигалке надо бы написать не "Чертежи Компас-3Д" (к тому же с русской Д), а как у компаса "КОМПАС-Чертежи (*.cdw)"

:)
Цитировать9) Если в DrawingLink неправильный путь указан, то можно тоже вызывать окно для указания правильного пути.

Да, добавлю проверку, на существование файла

+ Благодарностей: 1

Вират Лакх

1) да, берет. Но надо брать то, что главное в штампе.
3б) может измените решение? ) Попробуйте так и сяк. Кажется, лучше сохранять. Это не напрягает комп вроде.
3в) проверим после второго релиза.
5) кажись, по ЕСКД надо сп располагать на первом листе (это же спецификация в первую очередь). Поэтому можно считать, что все равно первого листа.
6) имеет ссылки. Это натуральная Спецификация с привязанными моделями. Та же сп на листе, только в рамке на отдельном листе.
8) в фоне - это крайняя мера. На питоне даже вроде не тормозит, а у вас как-то не то...
+ Благодарностей: 1

KrissKross

OpenLink-v.2
Что изменилось:
1.   При открытии файла, документ сначала ищется во вкладках, если не находит, открывается с диска.
2.   При присвоении значения свойства, введена проверка на изменение значения.
Если значение свойства не изменилось - значение не перезаписывается.
3.   Значение свойства DrawingFormat - записывается через «х», если кратность формата больше 1, например - А4х3.
4.   Для Сборочных чертежей (признак - наличие ссылки на 3Д-Сборку (расширение файла *.a3d)) - в 3Д-Сборке создается свойство SpcFormat
     a.   Значение (по умолчанию) = А4
     b.   При наличии Спецификации на листе = Формат первого листа чертежа
+ Благодарностей: 5

Вират Лакх

16.10.18, 05:27:26 #8 Последнее редактирование: 16.10.18, 08:02:45 от Вират Лакх
1) Вы со мной не согласны на счет основной надписи? Не пойму ваше мнение. Если что, можно сделать варианты работы программы через указание параметра при запуске как в программе PDF-конвертере в соседней ветке.
2) получше переключение стало, но до оригинала не дотягивает. Скорее всего тут уходит время на запуск программы, подключение к компасу и так далее. Вряд ли можно улучшить. Спасибо. Это реализовано как для пути чертеж -> модель, так и в обратном направлении?
3) а) реализовано. спасибо.
б) если не согласны, то тоже предлагаю как параметр указывать.
в) что бы такого сделать, чтобы при изменении свойства в модели чертеж не просил перестраиваться? по ходу никак, кроме отключения у компаса запросов... заманал. надо будет как-нибудь раскрыть тему отключения ненужных запросов.
4) спасибо.
5) сделано. благодарю.
6) отдельная тема, потом как-нибудь.
7) не забудем сделать.
8) Как это можно делать в фоне, если программа запускается и сразу выполняет это действие?
9) сделано, спасибо.
10) См. картинки.
11) На кнопке можно попробовать сделать обратный отчет до закрытия в секундах.
12) Если чертеж не сохранен, то предлагаю не просто ругаться, а вызвать окно сохранения (по принципу "критикуешь - предлагай"). Если есть ссылка на модель, программа же может его открыть. С открытием модели можно выдать запрос на сохранение чертежа (код тоже есть, если надо). Если сохранит юзер, то прописать в свойство модели. Если нет, то "на нет и суда нет". Надо посмотреть, что быстрее: переключиться и спросить или спросить, а потом переключаться.
13) Предлагаю отдельный раздел нового функционала - это работа со спецификацией и объектами спецификации. Если мы находимся на СП, то открывать его ссылки, а не текущего документа (можно на выбор пользователя). В 16 версии зря сделали, что после открытия модели компас возвращает нас обратно в сп + дойти до кнопки далеко. В новых версиях это переделали по-моему. Там опять же, какая ссылка первая стоит.
14) Более мощная реализация - это создание библиотеки, которая запускается с компасом и подписывается на события. Например, можно в таком случае обновлять формат чертежа в модели при сохранении чертежа. И много еще чего.
upd.
15) Во! Идея! Можно еще хлеще программу сделать. Если геометрия не выделена, то работаем как сейчас. А если есть выделенное, то пытаемся выйти на модель и открываем её (для сборочных чертежей).
5') Может еще технологические сборки учитывать?
+ Благодарностей: 1

KrissKross

Добрый день!
Благодарю за полезные предложения
Мое мнение не перегружать существующую версию, дабы соблюсти грамотный баланс  - простоты/легкости и функционала
С одной стороны: простоты использования и «легкости» запуска
С другой: реализация базового функционала, как говорится 20/80

А для расширения функционала - создать отдельную тему
Где начнем с ТЗ, для структурированного описания необходимых потребностей
И выработаем не противоречащие друг другу требования
Как говорится,
правильно поставленный вопрос (ТЗ) - уже половина ответа
+ Благодарностей: 1

Vin

Цитата: KrissKross от 16.10.18, 09:03:09
Добрый день!
Благодарю за полезные предложения
Мое мнение не перегружать существующую версию, дабы соблюсти грамотный баланс  - простоты/легкости и функционала
С одной стороны: простоты использования и «легкости» запуска
С другой: реализация базового функционала, как говорится 20/80

А для расширения функционала - создать отдельную тему
Где начнем с ТЗ, для структурированного описания необходимых потребностей
И выработаем не противоречащие друг другу требования
Как говорится,
правильно поставленный вопрос (ТЗ) - уже половина ответа


Написание ТЗ коллективом форума приведёт к рождению шедевра, похлеще письма дяди Фёдора.
Тут или пишет один, или автор программы на своё усмотрение принимает решение о принятии того или иного предложения.
+ Благодарностей: 1

Falcon555

24.01.19, 13:43:39 #11 Последнее редактирование: 24.01.19, 14:00:46 от Falcon555
А можно как-то иконку программы вытащить в окно Компаса? А еще лучше горячую кнопку на нее назначить.

evgs

У меня в v18.1 открывается только модель по сборочному чертежу. Хотелось бы видеть такую реализацию: открывается по любому из трех документов (модель, сборочный чертеж, спецификация) все недостающие.

KrissKross

Странно - только что проверил
связь 3Д модель - Чертеж = работает в обе стороны

для того чтобы заработала связь
от 3Д модель до -> Чертежа
необходимо сначала открыть Чертеж - на нем запустить утилиту OpenLink
произойдет следующее
откроется 3Д модель и в первый раз будет создано свойство DrawingLink, в котором будет содержится ссылка на Чертеж
в дальнейшем это свойство создаваться не будет и будет использования для чтения и открытия файла Чертежа

по Спецификации
вроде уже в 18 версии Компаса и появилась возможность открывать 3Д модель или Чертеж по выделенной позиции в спецификации - слева в панели свойств/параметров