Экспорт всех оформленных листов документа в отдельные DWG-файлы.

Автор Тема: Экспорт всех оформленных листов документа в отдельные DWG-файлы.  (Прочитано 2493 раз)

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

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Доброго времени суток.

В файле RevitAPI.chm имеется информация о методе с такой сигнатурой:

Код - C# [Выбрать]
  1. Document.Export(String, String, ICollection<ElementId>, DWGExportOptions)

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

Код - C# [Выбрать]
  1. DWGExportOptions.GetPredefinedOptions(document, name);

Однако предварительно созданных настроек может не иметься в RVT-файле. Как программно создать настройки, позволящие выполнить экспорт всех листов, как показано на скрине ниже?



При этом нужна возможность программно управлять и следующими опциями:


Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Андрей, добрый день.

Возможно вот эти статьи немного помогут.
Доступ к значению параметра "Экспортировать виды на листах и ссылки на внешние связи" в диалоге экспорта в формат САПР через API и Как добраться до настроек экспорта в DWG

Чтобы создать настройки экспорта в DWG, нужно воспользоватся методом ExportDWGSettings.Create
Набор видов для экспорта задается в методе Document.Export. Как добраться до параметра Naming в диалоге сохранения, пока не подскажу. Ищу

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Еще в справке написано:
Цитировать
Type: Autodesk.Revit.DB DWGExportOptions
Various options applicable to the DWG format. If a null reference ( Nothing in Visual Basic) , all options will be set to their respective default values.
Может и не нужно ничего настраивать?

Оффлайн Александр Пекшев aka Modis

  • ADN Club
  • *****
  • Сообщений: 1658
  • Карма: 366
  • Отец modplus.org
    • ModPlus
Как программно создать настройки, позволящие выполнить экспорт всех листов, как показано на скрине ниже?
Ну как мы уже в живую поговорили: то, что на первом скрине (с галочками) - это коллекция видов, которые нужно экспортировать.
В справке в примере это написано так:
Код - C# [Выбрать]
  1. // Export the active view
  2. ICollection<ElementId> views = new List<ElementId>();
  3. views.Add(view.Id);
Т.е. под ту сигнатуру, что указана в вопросе. Соответственно, наполнение этой коллекции нужными видами - это и есть простановка галочек.
Там есть еще подобная сигнатура
Код - C# [Выбрать]
  1. public bool Export(string folder, string name, ViewSet views,   DWFXExportOptions options)
Под нее пример у Тамика:
Код - C# [Выбрать]
  1.   DWGExportOptions options = new DWGExportOptions();
  2.   options.FileVersion = ( ACADVersion ) ( 4 );
  3.   ViewSet views = new ViewSet();
  4.   views.Insert( uiDoc.Document.ActiveView );
  5.   uiDoc.Document.Export( @"d:\temp", @"junk.dwg", views, options );
Ну а по настройкам, полагаю, Виктор Чекалин, дал достаточные хорошие ссылки

Оффлайн Андрей БушманАвтор темы

  • ADN Club
  • *****
  • Сообщений: 2000
  • Карма: 163
  • Пишу программки...
    • Блог
  • Skype: Compositum78
Благодарю за ответы, вечером дома буду читать, вникать.