Przykład: Tworzenie i aktualizowanie atrybutu zdefiniowanego przez użytkownika
W tym przykładzie pokazano, jak utworzyć własny atrybut zdefiniowany przez użytkownika i zaktualizować model, tak aby była używana zmieniona definicja atrybutu.
Tworzenie atrybutu użytkownika
-
Utwórz nowy model i zapisz go.
Zdefiniowane przez użytkownika atrybuty w modelu są scalane z plików objects.inp, a Tekla Structures zapisuje definicję atrybutów w pliku environment.db w folderze modelu.
-
Zamknij model.
-
Utwórz plik wejściowy o nazwie objects.inp w folderze modelu, używając do tego standardowego edytora tekstu.
-
Wprowadź następujące informacje w pliku objects.inp. Aby uzyskać szczegółowe informacje na temat właściwości w ciągu atrybutu, zobacz objects.inp.
/***************************************************************************/ /* Part attributes */ /***************************************************************************/ part(0,"Part") { /* User defined tab page */ tab_page("My UDA tab") { /* User defined attribute */ attribute("MY UDA", "My UDA", string,"%s", no, none, "0,0", "0,0") { value("", 0) } } tab_page("My UDA tab", "My UDA tab", 19) modify (1) } /***************************************************************************/ /* Column attributes */ /***************************************************************************/ column(0,"j_column") { /* Reference to the user defined tab page that is defined above in */ /* the part() section: */ tab_page("My UDA tab", "My UDA tab", 19) modify (1)
Uwaga:Aby utworzyć atrybut użytkownika, który wpływa również na numerację, ustaw właściwość special_flag atrybutu na
yes
(w przykładzie powyżej zastosowanono
). Oprócz tego, tak jak w powyższym przykładzie, definicjatab_page
musi znajdować się w sekcjipart
, a sekcjacolumn
(beam
itd.) musi zawierać tylko odwołanie do niej. -
Zapisz objects.inp.
Testowanie atrybutu zdefiniowanego przez użytkownika
-
Otwórz model.
-
Utwórz słup stalowy.
-
Kliknij dwukrotnie słup stalowy, aby otworzyć jego właściwości w panelu właściwości.
-
Kliknij przycisk Więcej.
-
Przejdź do My UDA tab.
-
Wprowadź wartość w polu My UDA.
-
Kliknij Zmień.
-
Skopiuj słup stalowy.
-
Zaznacz pole My UDA nowego słupa stalowego.
Wartość atrybutu również została skopiowana.
-
Zamknij model.
Modyfikowanie atrybutu zdefiniowanego przez użytkownika tak, aby był niepowtarzalny
-
Otwórz plik objects.inp w folderze modelu przy użyciu standardowego edytora tekstu.
-
Wprowadź unique_ przed atrybutem zdefiniowanym przez użytkownika.
/***************************************************************************/ /* User-defined attributes */ /***************************************************************************/ part(0,"Part") { /* Common tab pages for part attributes */ tab_page("My UDA tab") { unique_attribute("MY UDA", "My UDA", string,"%s", no, none, "0,0", "0,0") { value("", 0) } } tab_page("My UDA tab", "My UDA tab", 19) modify (1) } /***************************************************************************/ /* Column attributes */ /***************************************************************************/ column(0,"j_column") { tab_page("My UDA tab", "My UDA tab", 19) modify (1) }
W tej sposób atrybut zdefiniowany przez użytkownika stanie się niepowtarzalny, co oznacza, że jego wartość nie zostanie skopiowana do innego elementu.
-
Zapisz objects.inp.
Testowanie unikalnego atrybutu zdefiniowanego przez użytkownika
-
Otwórz model.
-
Wprowadź wartość w polu My UDA dla słupa stalowego i kliknij Zmień.
-
Skopiuj słup stalowy.
-
Zaznacz pole My UDA nowego słupa.
-
Wartość została skopiowana, więc atrybut zdefiniowany przez użytkownika w modelu nie jest niepowtarzalny. Istnieje konflikt między definicjami w environment.db a objects.inp.
Aktualizacja definicji atrybutów zdefiniowanych przez użytkownika
-
W menu Plik kliknij opcję Diagnozuj i napraw, a następnie w obszarze Narzędzia kliknij opcję Diagnozuj i zmień definicje atrybutów.
Zostanie otwarte okno dialogowe Diagnozuj i zmień definicje atrybutów.
-
Wybierz My UDA w obszarze Attribute po lewej stronie.
Widać, że wartość w polu My UDA nie jest unikalna w aktualnej konfiguracji, ale jest unikalna w pliku objects.inp.
-
Wybierz definicję w obszarze po prawej stronie.
-
Kliknij polecenie Zmień bieżące ustawienia na wybrane ustawienia Objects.inp.
Teraz definicja atrybutu zdefiniowanego przez użytkownika zostanie zaktualizowana w modelu.
Jeśli teraz skopiujesz słup stalowy, który posiada wartość w obszarze My UDA, wartość nie zostanie skopiowana do nowej kolumny.