Сохранение детали в Inventor

Автор Тема: Сохранение детали в Inventor  (Прочитано 9971 раз)

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

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Сохранение детали в Inventor
« : 22-03-2016, 15:29:11 »
Код - C# [Выбрать]
  1. doc.SaveAs(System.Windows.Forms.Application.StartupPath + @".\Параметры\Параметры.doc");

Этот код, позволяет сохранить документ MS Word автоматически без моего участия  в корень проекта.

Вопрос: Как мне сделать тоже самое с сохранением детали, которая отстраивается в Inventor?

Я пробовал таким образом, но тщетно:
Код - C# [Выбрать]
  1. oPartDocument[Днище].SaveAs(System.Windows.Forms.Application.StartupPath + @".\Параметры\Параметры\Днище.ipt");
« Последнее редактирование: 23-03-2016, 04:36:54 от Алексей123456789 »

Отмечено как Решение Алексей123456789 22-03-2016, 23:31:48

Оффлайн R.I.Chernov

  • ADN Club
  • *****
  • Сообщений: 568
  • Карма: 18
Re: Сохранение детали в Inventor
« Ответ #1 : 22-03-2016, 17:07:55 »
Не совсем понятно, что именно вам требуется.
Если задача: "Сохранить текущую деталь под новым именем в папку проекта", то в VBA это делается так:
Код - Visual Basic [Выбрать]
  1. Sub test()
  2.     Dim oDoc As Inventor.Document
  3.     Set oDoc = ThisApplication.ActiveDocument
  4.    
  5.     Dim oProject  As DesignProject
  6.     Set oProject = ThisApplication.DesignProjectManager.ActiveDesignProject
  7.    
  8.     Dim NewName As String
  9.     NewName = "My Detail.ipt"
  10.    
  11.     Call oDoc.SaveAs(oProject.WorkspacePath & "\" & NewName, False)
  12. End Sub

Если это не совсем то, что вам нужно было, поясните подробно, что именно требуется.
В программировании я новичок...но ненадолго! ;)

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: Сохранение детали в Inventor
« Ответ #2 : 22-03-2016, 18:29:39 »
Код - C# [Выбрать]
  1. Имя_нового_документа("Днище");
  2. oPartDoc[Днище].DisplayName = "Днище";
- вот так выглядит создание нового документа у меня в коде

Код - C# [Выбрать]
  1.  Сохранить_Модель("Днище", "Сохранить модель Днища");
- а вот так сохранение.
Реализовано оно через метод SaveFileDialog , который находится выше.

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

То есть нажал кнопку на форме построить модель, модель отстроилась и автоматически сохранилась без всяких уведомлений и предложений куда и под каким именем сохранять. Как это сделать на c#, если нет возможности показать как на c#, то можно и на другом языке, попробую разобраться.
« Последнее редактирование: 23-03-2016, 04:38:05 от Алексей123456789 »

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: Сохранение детали в Inventor
« Ответ #3 : 22-03-2016, 18:37:27 »
Код - C# [Выбрать]
  1.         private void Сохранить_Модель(string oPartDocName, string Text)
  2.         {
  3.             saveFileDialog1.Filter = "Inventor Part Document|*.ipt";
  4.  
  5.             saveFileDialog1.Title = Text;
  6.  
  7.             saveFileDialog1.FileName = oPartDoc[oPartDocName].DisplayName;
  8.  
  9.             if (saveFileDialog1.ShowDialog() == DialogResult.OK)
  10.             {
  11.                 if (!string.IsNullOrWhiteSpace(saveFileDialog1.FileName))
  12.                 {
  13.                     oPartDoc[oPartDocName].SaveAs(saveFileDialog1.FileName, false);
  14.                     oFileName[oPartDocName] = saveFileDialog1.FileName;
  15.                 }
  16.             }
  17.         }
- а вот сам метод для сохранения, которых находится выше кода построения
« Последнее редактирование: 23-03-2016, 04:36:17 от Алексей123456789 »

Оффлайн R.I.Chernov

  • ADN Club
  • *****
  • Сообщений: 568
  • Карма: 18
Re: Сохранение детали в Inventor
« Ответ #4 : 22-03-2016, 18:42:18 »
Честно признаюсь, совсем не понял, в чем написан ваш код, и как правильно его читать. Так что советовать буду "теоретически".

То есть нажал кнопку на форме построить модель, модель отстроилась и автоматически сохранилась без всяких уведомлений и предложений куда и под каким именем сохранять.
Воспроизведите у себя код, аналогичный тому, что я привел выше. Внутри него поместите настройки имени для модели, так как новая модель сама себе имя не придумает. Ддя того, чтобы не всплывало диалоговое окно используйте "ThisApplication.SilentOperation = True", после строки сохранения не забудьте изменить значение обратно на false, или у вас ни одно диалоговое окно инвентора не будет отображаться до закрытия программы.
В программировании я новичок...но ненадолго! ;)

Оффлайн R.I.Chernov

  • ADN Club
  • *****
  • Сообщений: 568
  • Карма: 18
Re: Сохранение детали в Inventor
« Ответ #5 : 22-03-2016, 18:50:35 »
а вот сам метод для сохранения
Я не силен в C#. Так что приведенный вами метод не могу до конца осмыслить.
Покопался ща в C# попытался написать так отключение диалоговых окон: oApp.SilentOperation=true , где oApp - это Inventor.Application, вроде должно заработать.
В программировании я новичок...но ненадолго! ;)

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Сохранение детали в Inventor
« Ответ #6 : 22-03-2016, 19:12:43 »
System.Windows.Forms.Application.StartupPath
Этот путь к запускаемому файлу в котором находится API-ишный exe-файл, это  не имеет отношения к корневой папке проекта в Инвентор.
Корневая папка проекта находится как пишет R.I.Chernov,

Код - Visual Basic [Выбрать]
  1. ThisApplication.DesignProjectManager.ActiveDesignProject.WorkspacePath

Ну и как пишет R.I.Chernov, что бы скрыть диалог:
Цитировать
"ThisApplication.SilentOperation = True"

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13886
  • Карма: 1788
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Сохранение детали в Inventor
« Ответ #7 : 22-03-2016, 21:42:25 »
Алексей123456789
Приветствую на форуме! Прочитай у меня в подписи как следует форматировать код для форума.
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: Сохранение детали в Inventor
« Ответ #8 : 22-03-2016, 21:56:46 »
Хорошо

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: Сохранение детали в Inventor
« Ответ #9 : 22-03-2016, 22:01:25 »
Извиняюсь, думал, не в мой адрес.
« Последнее редактирование: 23-03-2016, 04:39:08 от Алексей123456789 »

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13886
  • Карма: 1788
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Сохранение детали в Inventor
« Ответ #10 : 22-03-2016, 23:08:57 »
Хорошо
Что хорошо? Мне нужно повторить? Или дописать в Правила, что код в виде картинок на форуме запрещён?
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн Алексей123456789Автор темы

  • ADN OPEN
  • Сообщений: 30
  • Карма: 0
Re: Сохранение детали в Inventor
« Ответ #11 : 22-03-2016, 23:31:04 »
Извиняюсь, больше не повториться, не заметил, что обращение ко мне.
Ребята, все кто помогал, Благодарю, решил вопрос со вставкой в сборку.

Оффлайн Александр Ривилис

  • Administrator
  • *****
  • Сообщений: 13886
  • Карма: 1788
  • Рыцарь ObjectARX
  • Skype: rivilis
Re: Сохранение детали в Inventor
« Ответ #12 : 22-03-2016, 23:34:23 »
Извиняюсь, больше не повториться
Извинения будут приняты, если по правилам вставишь код, который решает твою задачу. :)
Не забывайте про правильное Форматирование кода на форуме
Создание и добавление Autodesk Screencast видео в сообщение на форуме
Если Вы задали вопрос и на форуме появился правильный ответ, то не забудьте про кнопку Решение

Оффлайн mikazakov

  • ADN
  • *
  • Сообщений: 752
  • Карма: 195
  • Skype: mikazakov@mail.ru
Re: Сохранение детали в Inventor
« Ответ #13 : 23-03-2016, 08:25:07 »
Благодарю, решил вопрос со вставкой в сборку.
Про вставку в сборку не в конкретные координаты , а в стиле инвентора можно почитать здесь:

http://modthemachine.typepad.com/my_weblog/2015/12/placing-a-part-in-inventor-with-user-interaction.html