Format danych

Dane wejściowe

Dane wejściowe powinny być podane w następującym formacie:

  • Nagłówek, zawierający cztery kolumny

    Ilość punktów w pliku 2 0 1

    !! 2 0 1 jest częścią konwencji zaczerpniętej ze starszego programu i jest wymagane - przynajmniej tymczasem - celem zachowania kompatybilności

  • Dane punktów:

    ID X Y Z 1

    ostatnia kolumna celem zachowania kompatybilności formatu danych. nie jest wymagana dla poprawnego działania programu

    Program nie ma ograniczeń co do ilości punktów definiowanych w pliku wejściowym

  • Linie nieciągłości

    Ilość linii nieciągłości 1

    Linie nieciągłości są definiowane przy użyciu identyfikatorów punktów zdefiniowanych powyżej

    ID linii nieciągłości ID punktu A ID punktu b 1

    ostatnia kolumna, podobnie jak powyżej, celem zachowania kompatybilności

  • Stopka

    Stopka pliku jest zdefiniowana jako linia zawierająca pojedynczy znak “0”

Plik wyjściowy

Plik wyjściowy jest zapisywany w opisanym poniżej formacie:

  • Nagłówek zawierający 3 kolumny

    Liczba zdefiniowanych trójkątów 3 0

    !! 3 0 jest wartością stałą, zachowaną celem kompatybilności ze starszym programem

  • Lista zdefiniownanych trójkątów:

    Identyfikator Punkt A Punkt B Punkt C

    !! Identyfikatory punktów są zgodne z identyfikatorami zdefiniowanymi w pliku wejściowym

Dodatkowe dane: Definicja zakresu (plik wejściowy)

Plik powinien zawierać listę punktów definiującą wielokąt będący granicą zakresu. Domykanie wielokątu następuje automatycznie. Plik definiowany jest w następujący sposób:

  • Nagłówek zawierający dwie kolumny:

    Liczba punktów definiująca wielokąt Format pliku

    Format może być zdefiniowany na dwa sposoby:

    Flaga formatu znaczenie
    0 lista punktów zdefiniowan trzema współrzędnymi: X, Y, Z
    1 lista identyfikatorów punktów z pliku wejściowego
  • Lista punktów zdefiniowana w sposób wyznaczony przez flagę w drugiej kolumnie nagłówka pliku

  • przykład (format 1, tylko identyfikatory punktów):

    7 1
    104
    115
    113
    114
    103
    102
    59

Dodatkowe dane: Plik sąsiadów (plik wyjściowy)

Plik zawierający informacje o trójkątach sąsiadujących z danym trójkątem. Zdefiniowany w następujący sposób:

  • Nagłówek zawierający dwie kolumny:

    Ilość trójkątów 3

    3 nie ma znaczenia dla programu, utrzymane dla zachowania kompatybilności

  • Dane o trójkątach sąsiadujących z danym trójkątem. Każda z linii będzie miała minimalnie 2, maksymalnie 4 kolumny

    • pierwsza kolumna: ID trójkąta (identyczne jak w pliku wyjściowym)
    • kolejne kolumny: ID trójkątów sąsiadujących

Jeśli linia zawiera mniej niż 4 kolumny, oznacza to, że trójkąt znajduje się na zewnątrz siatki

  • przykład:
219 3
0 134 20
1 21 22 208
2 81 207 4
3 143 71 112
4 128 2 187
5 84 14 18
...
  • w pliku powinno być łącznie 220 linii (wliczając nagłówek)
  • trójkąt o ID=0 ma tylko dwa sąsiadujące trójkąty (134 i 20), czyli znajduje się na zewnątrz siatki