Integracja makr w środowisku Revit IDE

Poniżej opisano etapy procesu wbudowania makra w projekt makr programu Revit. Temat ten można pominąć, jeśli przykłady opisane w części Użycie przykładów Revit Macro dostępnych w narzędziach SDK spełniają wymagania użytkownika.

W tym rozdziale wyjaśniono, gdzie w projektach IDE należy utworzyć foldery odpowiadające zasobom w systemie plików, jak dodać niezbędne odniesienia oraz jak zdefiniować właściwości. Te etapy zostały przeprowadzone w makrach znajdujących się w pliku Revit_Macro_Samples.rvt dostarczonym wraz z narzędziami SDK.

Dodawanie żądanych odniesień

Jeśli w makrze utworzonym przez użytkownika jest wyświetlany interfejs użytkownika, do projektu należy dodać żądane odniesienia. Na przykład w makrze SDK SampleRooms należy utworzyć odniesienia do komponentów:

  1. System.Windows.Forms
  2. System.Drawing

Najpierw w Menedżerze makr wybierz rodzaj projektu i kliknij opcję Edytuj.

W środowisku IDE przejdź do Project Explorer. Domyślnie znajduje się on po prawej stronie ekranu.

Dla projektu makra (przykład: AppCSharp), kliknij prawym przyciskiem myszy sekcję odniesień i wybierz opcję Dodaj odniesienie z menu.

W oknie dialogowym Dodaj odniesienie znajdź i wybierz z listy System.Drawing i System.Windows.Forms. Aby wybrać wiele komponentów, przytrzymaj klawisz Ctrl. Przykładowo:

Po zakończeniu wybierania kliknij przycisk OK.

Project Explorer środowiska IDE zostaje uaktualniony o poniższe odniesienia:

Tworzenie folderów w środowisku Revit IDE

W Project Explorer środowiska IDE kliknij prawym przyciskiem myszy projekt makra i wybierz opcję Add New Folder. Przykładowo:

Nazwij folderu. W tym przykładzie nazywa się on Samples. Następnie prawym przyciskiem myszy kliknij pozycję folderu Samples i kliknij kolejno opcję Add New Folder, aby dodać folder podrzędny np. Rooms.

Poza środowiskiem IDE użyj Eksploratora Windows, aby przejść do folderów instalacyjnych programu Revit oraz wyszukać folder AppHookup. Zwróć uwagę, że w tym położeniu \Samples\Roomszostaną utworzone odpowiednie podfoldery.

Kopiowanie makra do folderu systemu plików

Pozostając poza środowiskiem Revit IDE, skopiuj pliki makra do utworzonego podfolderu.

Uwaga: Jeśli utworzone makro wykorzystuje plik RESX, należy go również skopiować.

Dodawanie istniejących plików do projektu makra w środowisku IDE

Wróć do środowiska Revit IDE. Kontynuując omawiany przykład, w Project Explorer kliknij prawym przyciskiem myszy folder utworzony dla makra i w menu kliknij kolejno opcje Add -> Existing Item. Przykładowo:

W wynikowym oknie dialogowym IDE w folderze instalacyjnym programu Revit przejdź do odpowiedniego podfolderu w systemie plików (np. katalog Revit SDK Macro Sample) i zaznacz wszystkie pliki tworzące makro, a następnie kliknij przycisk Dodaj.

W tym przykładzie odświeżone środowisko IDE Project Explorer dla GetTimeElapsed_CSharp zawiera:

Tworzenie i budowanie makra

Po dodaniu plików do projektu można przejść do napisania metody uruchamiającej makro. Na przykład w języku C#:

///
Sample Rooms testpublic
void RunSampleRooms(){
SamplesRoom
sample = new SamplesRoom(this);sample.Run();
}

Należy pamiętać o dodaniu dyrektywy using do obszaru nazw makra. Przykładowo:

using Revit.SDK.Samples.Rooms.CS;

Zapisz projekt, a następnie w menu paska narzędzi środowiska IDE kliknij opcję Build. Uruchom Menedżer makr w programie Revit, następnie na liście kategorii wybierz makro. Próbka Rooms w narzędziach SDK może być zakodowana jako makro poziomu dokumentu. W takim przypadku w celu uruchomienia makra w projekcieAppCSharp pokazanym na ekranach w tej sekcji, mogą być wymagane zmiany w kodzie.

Gdy makro zostanie uruchomione z poziomu Menedżera makr, pobiera ono dane z modelu i wyświetla podsumowanie. Przykład:

Właściwości pliku Resources.resx

Należy zauważyć, że istnieje zależność między jednym z przykładowych makr programu Revit o nazwie GridCreation a plikiem resources.resx. Przed rozpoczęciem eksperymentów na przykładzie GridCreation należy ustawić plik ResX w środowisku Revit macro IDE. Ta czynność została wcześniej wykonana w przykładach makr poziomu dokumentu znajdujących się w pliku Revit_Macro_Samples.rvt (w narzędziach SDK). Jednak w przypadku makr tworzonych przez użytkownika może być konieczne zdefiniowanie właściwości w pliku resources.resx projektu. W tym rozdziale jest przedstawiony odpowiedni przykład.

W Project Explorer przejdź do folderu Properties danego makra. Na przykład: TwojeMakro Samples GridCreation Properties.

Zaznacz plik resources.resx.

W panelu Właściwości wybierz właściwość Niestandardowe narzędzie i wprowadź wartość ResXFileCodeGenerator w kolumnie.