Przykład: Tworzenie i aktualizowanie atrybutu zdefiniowanego przez użytkownika

Tekla Structures
2023
Tekla Structures

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.

Przykład: Tworzenie atrybutu użytkownika

  1. Utwórz nowy model i zapisz go.

    Atrybuty użytkownika w modelu są scalane z plików objects.inp, a Tekla Structures zapisuje definicje atrybutów w pliku environment.db w folderze modelu.

  2. Zamknij model.

  3. Utwórz plik wejściowy o nazwie objects.inp w folderze modelu, używając do tego standardowego edytora tekstu.

  4. W pliku objects.inp wprowadź następujące informacje:

    /***************************************************************************/
    /* 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)}

    W tym przykładzie właściwość special_flag jest ustawiona na wartość no. Aby utworzyć atrybut użytkownika, który wpływa również na numerację, ustaw właściwość special_flag atrybutu na yes.

  5. Zapisz plik.

Przykład: Testowanie atrybutu zdefiniowanego przez użytkownika

  1. Otwórz model.

  2. Utwórz słup stalowy.

  3. Kliknij dwukrotnie słup stalowy, aby otworzyć jego właściwości w panelu właściwości.

  4. Kliknij przycisk Więcej.

  5. Przejdź na kartę My UDA.

  6. Wprowadź wartość w polu My UDA.

  7. Kliknij Zmień.

  8. Skopiuj słup stalowy.

  9. Zaznacz pole wyboru My UDA dla nowego słupa stalowego.

    Wartość atrybutu również zostaje skopiowana.

  10. Zamknij model.

Przykład: Modyfikowanie atrybutu zdefiniowanego przez użytkownika tak, aby był niepowtarzalny

  1. Otwórz plik objects.inp w folderze modelu przy użyciu standardowego edytora tekstu.

  2. 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)
     }

    Dodanie unique_ przed atrybutem użytkownika powoduje, że atrybut użytkownika staje się niepowtarzalny. Wartość atrybutu użytkownika nie jest kopiowana do innego elementu.

  3. Zapisz plik.

Przykład: Testowanie unikalnego atrybutu zdefiniowanego przez użytkownika

  1. Otwórz model.

  2. Wprowadź wartość w polu My UDA dla słupa stalowego i kliknij Zmień.

  3. Skopiuj słup stalowy.

  4. Zaznacz pole wyboru My UDA dla nowego słupa.

  5. 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.

Przykład: Aktualizacja definicji atrybutów zdefiniowanych przez użytkownika

  1. W menu Plik kliknij pozycję Diagnozuj i napraw i

  2. W sekcji Narzędzia kliknij Diagnozuj i zmień definicje atrybutów.

    Zostanie otwarte okno dialogowe Diagnozuj i zmień definicje atrybutów.

  3. 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.

  4. Wybierz definicję w obszarze po prawej stronie.

  5. 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.

Przykład: Dodaj stronę karty do definicji atrybutów użytkownika

Kolejność wyświetlania strony karty jest określona przez ostatnią liczbę w wierszu definicji. Należy unikać używania tych samych numerów stron, które są już używane w object.inp file w środowisku common.

  1. Zdefiniuj zawartość strony karty.

    tab_page("","jd_Parameters",3)
    {
         attribute("PROJECT_COMMENT", "j_proj_comment", string, "%s", no, none, "0.0", "0.0")
         {
              value("", 0)
         } 
    }
  2. Dodaj zawartość strony karty do obiektów rysunków dla rysunków zestawczych i rysunków zbiorczych.

    /***************************************************************************/
    /* Drawing attributes - GA */
    /***************************************************************************/
    gadrawing(0,"j_GA_drawing")
    {
         tab_page("DR_Workflow","jd_Workflow",8)
         tab_page("DR_Parameters","jd_Parameters",9)
         modify(1)
    }
    /***************************************************************************/
    /* Drawing attributes - multi */
    /***************************************************************************/
    multidrawing(0,"j_Multi_drawing")
    {
         tab_page("DR_Workflow","jd_Workflow",8)
         tab_page("DR_Parameters","jd_Parameters",9)
         modify(1)
    }
Czy to było pomocne?
Wstecz
Dalej