Reguły i formularze w iLogic

Przeglądarka iLogic wyświetla listę reguł iLogic, formularzy, formularzy globalnych oraz reguł zewnętrznych.

W Przeglądarce iLogic reguły są uporządkowane na dwóch kartach:

Formularze są uporządkowane na dwóch kartach:

Reguły w iLogic

Reguła jest niewielkim programem Visual Basic (VB.NET), który może monitorować i kontrolować inne parametry, elementy lub komponenty Inventor.

iLogic umieszcza reguły w postaci obiektów bezpośrednio w dokumentach części, zespołów i rysunków. Reguły definiują i sterują wartościami parametrów i atrybutów projektu. Kontrolując te wartości, użytkownik może ustalić zachowanie atrybutów, elementów i komponentów modelu.

Dane są zapisywane i przechowywane bezpośrednio w dokumentach tak samo, jak elementy projektu geometrycznego.

Parametry w regułach

W regułach można stosować standardowe nazwy parametrów Inventor jako zmienne Visual Basic. Po uruchomieniu reguły wartość parametru zostaje przyporządkowana zmiennej. W przypadku parametrów numerycznych wartość jest liczną rzeczywistą wyrażoną w jednostkach dokumentu zdefiniowanych w opcjach Narzędzia Ustawienia dokumentu. Parametry tekstowe stają się zmiennymi ciągów w regule. Parametry prawda/fałsz stają się zmiennymi logicznymi.

Parametry mogą przyjmować dwie różne postacie:

  • Zmienne VB.NET połączone z parametrami numerycznymi lub nienumerycznymi. Zmienne podświetlone są na niebiesko:

    Po uruchomieniu reguły iLogic odczytuje i pobiera wartości dla tych parametrów z modelu do reguły. Po zakończeniu działania reguły iLogic zapisuje zmienione wartości z powrotem w modelu.

    Aby zapisać wartości zanim reguła zakończy działanie, należy użyć funkcji RuleParametersOutput. Funkcja ta jest przydatna, jeśli potrzebna jest natychmiastowa zmiana modelu.

  • Parametry uzyskane dzięki funkcji Parameter. Na przykład:

    Jeśli wartości są przypisywane przy użyciu tej metody, zapis wartości następuje natychmiast, przed przejściem do kolejnego wiersza w regule. Jeśli wartość jest odczytywana przy użyciu funkcji Parametr, jej odczyt następuje natychmiast z modelu Inventor.

Domyślne nazwy obiektów w regułach

Przed użyciem jednej z poniższych nazw obiektów programu Autodesk Inventor w regule należy zmienić nazwę obiektu, jeśli jest ona nazwą domyślną nadaną podczas tworzenia.

  • element
  • szkic
  • element konstrukcyjny
  • szyk
  • wiązanie
  • wiązanie iMate

Znaczenie nazwy powinno być jasne. Zmiana nazwy ułatwia sprawdzenie działania reguły.

Zmiana nazwy domyślnej ułatwia również przenoszenie plików. W innych wersjach językowych programu Autodesk Inventor domyślne nazwy obiektów są tłumaczone na język właściwy danej wersji. Zmiana nazw następuje automatycznie w przeglądarce modeli, lecz nie w regułach iLogic. Może to spowodować, że reguła nie będzie w stanie odnaleźć obiektów przy pomocy nazw domyślnych. Jeśli ktoś inny wykorzystuje model w programie Inventor w innej wersji językowej, nazwy domyślne muszą zostać zmienione. Dotyczy to wyłącznie obiektów, których nazwy pojawiają się w regule/ Funkcje pomiarowe mogą np. korzystać z nazw elementów konstrukcyjnych. Jeśli elementy konstrukcyjne istnieją, lecz nie są wykorzystywane w funkcjach pomiarowych, to zmiana ich nazwy nie jest konieczna. Wyjątkiem od tego zalecenia są zagnieżdżone arkusze kalkulacyjne Excel. Nie należy zmieniać ich nazw.

W nieanglojęzycznych wersjach programu Autodesk Inventor należy używać w regułach nazw w języku angielskim. Na przykład:

"3rd Party:Embedding 1"
Uwaga: Niektóre obiekty, np. wiązania iMate, pozwalają wybrać nazwę podczas ich tworzenia.

W trackie obowiązywania reguły

Reguły są zwykle uruchamiane automatycznie w odpowiedzi na zmiany wartości parametrów, jeśli parametry są wykorzystywane bezpośrednio jako zmienne w regule. Reguły mogą być również uruchamiane przez zdarzenia.

Reguła jest uruchamiana natychmiast po zakończeniu jej edycji chyba, że została wyłączona. W trakcie działania reguły zmiany parametrów nie powodują uaktualnienia modelu aż do momentu zakończenia działania reguły. W razie potrzeby można wymusić skutek zmian parametrów na jeden z poniższych sposobów:

  • funkcja Parameter
  • funkcja RuleParametersOutput() w regule

Kolejność reguł

  • Reguły są uruchamiane w kolejności, w której figurują w przeglądarce, chyba że zaznaczono inaczej przez wstawienie funkcji iLogicVb.RunRule("nazwaReguły").
  • Jeśli więcej niż jedna reguła zawiera odniesienie do parametru, który ulega zmianie, jako pierwsza uruchamiana jest reguła znajdująca się pierwsza w kolejności na liście. Sposób zmiany parametru nie ma na to wpływu.
  • Można użyć polecenia Zdarzenie wyzwolenia procedur, aby zmienić kolejność reguł na liście powiązanej ze zdarzeniami w dokumencie, niezależnie od głównej listy w Przeglądarce iLogic.

W jaki sposób reguła jest przetwarzana

Po utworzeniu lub edycji reguły jej tekst jest przetwarzany w prawidłowy kod VB.NET, a następnie kompilowany. Niektóre nazwy parametrów Inventor nie są prawidłowymi nazwami zmiennych VB.NET. Aby zapewnić obsługę pełnego zakresu nazw parametrów Inventor, iLogic wewnętrznie podstawia nowe nazwy zmiennych za parametry Inventor.

Słowa kluczowe jako nazwy parametrów

Choć można używać słów kluczowych języka Visual Basic jako nazw parametrów, nie jest to zalecane w przypadku nowych dokumentów. Podczas dodawania reguł do istniejących dokumentów nie trzeba jednak zwykle zmieniać nazw parametrów. Jeśli nazwa jest identyczna ze słowem kluczowym, a słowo to jest wymagane w regule, można:

  • Zmienić nazwę parametru Inventor, jeśli to możliwe (zalecane).
  • Użyć słowa kluczowego w regule, stosując inną wielkość liter. Na przykład można użyć nazwy Class, jeśli parametr Inventor nosi nazwę class. W nazwach parametrów Inventor wielkość liter ma znaczenie, lecz nie w języku VB. W naszym przykładzie class zostaje zastąpione inną nazwą zanim VB rozpozna kod, lecz Class pozostaje bez zmian.

Wewnętrzna konwersja reguł

Tekst reguły jest wewnętrznie przekształcany w prawidłowy kod VB.NET, który jest niewidoczny i jest przechowywany wraz z regułą. Ten typ przechowywania sprawia, że iLogic nie musi generować kodu za każdym razem, gdy reguła jest uruchamiana. Kod zmienia się tylko wtedy, gdy reguła jest poddawana edycji.

Komunikaty o błędach kompilatora VB dotyczą właśnie tego kodu pośredniego. Rzadko, w przypadku złożonego kodu, może wystąpić błąd nie dotyczący kodu reguły. W takim wypadku należy uprościć kod. Jeśli to konieczne, sprawdź czy masz instrukcje Sub Main() i End Sub.

Gdy iLogic przekształca regułę w prawidłowy kod VB.NET do kompilacji, zastępuje jednostki współczynnikami konwersji.

Jednostki w regułach

Jednostek Inventor można używać w regułach w taki sam sposób, jak w standardowych równaniach parametrów Inventor.

  • Reguły nie wymagają jednostek. Załóżmy na przykład, że parametrowi przypisano liczbę która nie jest bezjednostkowa, lecz w wyrażeniu brak określenia jednostek. W takim wypadku iLogic przyjmuje, że liczba wykorzystuje jednostki dokumentu odpowiadające danemu parametrowi. Ten typ założenia ma również zastosowanie w jednostkach złożonych, np. km/h. Jednostki dokumentu są definiowane w oknie Narzędzia Ustawienia dokumentu Jednostki w Inventor.
  • Nazwy jednostek mogą być stosowane wyłącznie bezpośrednio za wartościami numerycznymi w tekście reguły. Nie wolno ich stosować za parametrami, zmiennymi lub wyrażeniami.

Przykład - jednostki dokumentu

W tym przykładzie plik części wykorzystuje jednostki dokumentu - cale:

d0 = 4.5 in
d18 = 7.2 in
sum = d0 + d18MessageBox.Show(sum,”Document Units - Inches”)

Jeśli nie zaznaczono inaczej, iLogic przyjmuje, że jednostki wartości numerycznych są zdefiniowane jako jednostki dokumentu. W tym przypadku suma wynosi 11.7. Wyświetlane jest okno wiadomości zawierające wartość i wskazujące, że jednostki dokumentu są wyrażone w calach.

Aby przypisać wartość 7.2 mm do parametru d18 zamiast wartości 7.2 in, określ, że parametr d18 jest wyrażony w milimetrach:

d0 = 4.5 in
d18 = 7.2 mm
sum = d0 + d18
MessageBox.Show(sum,”Document Units - Inches”)

W tym przypadku suma wynosi 4.78346456692913. Wyświetlane jest okno wiadomości zawierające wartość i wskazujące, że jednostki dokumentu są wyrażone w calach.

Aby wykonać powyższe obliczenie dla pliku części o jednostkach dokumentu wyrażanych w milimetrach, dodaj jednostkę cal dla każdego parametru wyrażanego w calach (np. d0 = 4.5 in).

Jeśli jednostka długości została pominięta w instrukcji, iLogic korzysta z wartości jednostki dokumentu.

Przykład - mieszane jednostki dokumentu

W tym przykładzie plik części wykorzystuje jednostki dokumentu - cale. W edytorze parametrów iLogic:

  • Dla parametru x jest ustawiona wartość 1 in.
  • Dla parametru y jest ustawiona wartość 12.5 mm.

Reguła została zapisana w następujący sposób:

result = x + y
MessageBox.Show(result,“Mixed Units Defined in Parameter Editor”)

Podczas dodawania iLogic przekształca wartość parametru y z 12.5 mm na .4921 cali. Wyświetlane jest okno wiadomości zawierające wartość 1.49212598425197 i wskazujące, że w edytorze parametrów zostały zdefiniowane jednostki mieszane.

Jeśli natomiast jako jednostki dokumentu są zdefiniowane milimetry, iLogic przekształca wartość parametru x z 1 in na 25.4 mm. Wyświetlane jest okno wiadomości zawierające wartość 37.9 i wskazujące, że w edytorze parametrów zostały zdefiniowane jednostki mieszane.

Nazwy jednostek

Specyfikacje jednostek są wdrażane zanim wykonane zostanie jakiekolwiek działanie matematyczne i mają pierwszeństwo w stosunku do wszelkich innych operatorów. Nazwy jednostek:

  • Można stosować wyłącznie bezpośrednio za wartościami numerycznymi w tekście reguły.
  • Nie można stosować po parametrach, zmiennych ani wyrażeniach.
  • Muszą zawierać spację pomiędzy liczbą a jednostką.

Poniżej znajdują się przykłady prawidłowego zastosowania nazw jednostek:

12 in
144 in
144 in^2
125.2 mm
60 mi/hr

W regułach można używać specyfikacji jednostek złożonych. Specyfikacje jednostek złożonych stosują się do formatu Inventor. Aby zamieścić skomplikowaną specyfikację jednostki w regule, utwórz dla niej równanie w oknie dialogowym Parametry. Następnie użyj polecenia Pobierz bieżący stan na tym parametrze w Edytorze reguł.

Reguły zewnętrzne

Reguł zewnętrznych można używać jako reguł iLogic lub jako małych programów uruchamianych ręcznie (podobnie jak makra VBA). Są one przechowywane w plikach tekstowych lub VB, poza dokumentami Inventor (części, zespołu lub rysunku). Można je uruchomić ręcznie lub przy pomocy innych reguł.

Podczas przeglądania listy reguł zewnętrznych w Przeglądarce iLogic lista jest identyczna w przypadku wszystkich otwartych dokumentów. Nie jest ona przypisana do indywidualnych dokumentów.

Reguły zewnętrzne można również uruchamiać jako reguły sterowane zdarzeniami.

Kreatory

iLogic zawiera kilka kreatorów, za pomocą których możesz utworzyć zaawansowane reguły dla określonych zadań. Kreatory te są dostępne w karcie Kreatory okna dialogowego Edycja reguły.

  • Utwórz regułę dla dialogu - Używaj niestandardowego okna dialogowego, by sterować wartościami parametrów.
  • Pobierz bieżący widok - Pobierz orientację widoku i wartości przybliżenia.
  • Okno wiadomości - Stwórz regułę wyświetlającą okno wiadomości Windows.
  • Granice parametrów - Wyznacz minimalne i maksymalne wartości dla parametrów.

Formularze

Utwórz niestandardowy interfejs użytkownika i połącz go z parametrami, właściwościami i regułami części, zespołu lub dokumentu rysunku programu Inventor.

Używając metody przeciągania i upuszczania, zaprojektuj interfejs użytkownika bez konieczności programowania. Używając elementów sterujących, wprowadź zmiany do istniejącego projektu. Definicje formularzy mogą być określone dla dokumentu i zapisane wraz z projektem bądź zapisane do użycia w wielu dokumentach.

Uwaga: Tworzenie formularzy nie wymaga reguł.