ADN Open CIS
Сообщество программистов Autodesk в СНГ

29/03/2014

API для восстановления чертежа - новый API в AutoCAD 2015

В течении продолжительного времени сообщество программистов просило дать возможность восстановления чертежей с помощью API. Этот запрос наконец-то был реализован в AutoCAD 2015. Теперь класс коллекции документов (DocumentCollection) приобрел новый метод AppContextRecoverDocument, которому передается имя чертежа для восстановления. Этот API присутствует и в ObjectARX и в .NET. В ObjectARX используется метод AcApDocManager::appContextRecoverDocument().

Код - C#: [Выделить]
  1. [CommandMethod("RecoverTest", CommandFlags.Session)]
  2. Public void RecoverTest() // Этот метод может иметь любое имя
  3. {
  4.     Document doc =
  5.         Application.DocumentManager.MdiActiveDocument;
  6.     DocumentCollection docs = Application.DocumentManager;
  7.     Editor ed = doc.Editor;
  8.  
  9.     OpenFileDialog file =
  10.         new OpenFileDialog("Выберите файл для восстановления ", null,
  11.                             "dwg;dxf", "Восстановление",
  12.           OpenFileDialog.OpenFileDialogFlags.DoNotTransferRemoteFiles);
  13.             
  14.     // Показываем диалоговое окно и выбираем файл
  15.     System.Windows.Forms.DialogResult dr =  file.ShowDialog();
  16.     if (dr != System.Windows.Forms.DialogResult.OK)
  17.            return;
  18.     try
  19.     {
  20.         // вызываем  AppContextRecoverDocument для восстановления выбранного чертежа.
  21.         docs.AppContextRecoverDocument(file.Filename);
  22.     }
  23.     catch
  24.     {
  25.         ed.WriteMessage("Невозможно восстановить чертеж \n");
  26.     }
  27. }

Источник: http://adndevblog.typepad.com/autocad/2014/03/recover-api-new-api-in-autocad-2015-1.html

Обсуждение: http://adn-cis.org/forum/index.php?topic=641

Опубликовано 29.03.2014
Отредактировано 02.04.2014 в 21:22:30