lechoo Napisano 10 Listopad 2003 Napisano 10 Listopad 2003 No coz, tym razem frekwencja slabiutka :( Zobaczymy jak bedzie nastepnym razem. A ponizej moja wersja skryptu: summary_file = createFile \"C:\\summary.txt\" scene_file = maxFileName if scene_file == \"\" then scene_file = \"Untitled\" format \"File name: %\\n\" scene_file to:summary_file format \"Time & Date: %\\n\\n\" localTime to:summary_file format \"Lp.\\tName\\tPosition\\n\" to:summary_file for i in 1 to selection.count do ( format \"%.\\t%\\t%\\n\" i selection.name selection.pos to:summary_file ) close summary_file Mysle ze jesli chodzi o operacje na pliku czyli createFile i close to polecenia te nie wymagaja komentarza. Nazwe pliku ze scena zwraca polecenie maxFileName, jesli scene nie byla jeszcze zapisywana zwrocony zostanie lancuch o zerowej dlugosci. Date i czas zwraca polecenie localTime.
lechoo Napisano 10 Listopad 2003 Autor Napisano 10 Listopad 2003 Autor: Bart utility Statystyka \"Statystyka\" ( label l1 \"\" edittext Sciezka \"Sciezka\" text:\"c:\\dane.txt\" label l2 \"\" button create \"Zapisz statystyke do pliku\" on create pressed do ( out_name = Sciezka.text out_file = createfile out_name indeks = \"Lp. Nazwa Pozycja\" spacja = \" \" format \"Nazwa pliku: \" to:out_file format \"%\\n\" maxFileName to:out_file format \"Czas i data: \" to:out_file format \"%\\n\\n\" localTime to:out_file format \"%\\n\" indeks to:out_file for i in 1 to selection.count do ( format \"%.\" i to:out_file format \"%\" spacja to:out_file format \"%\" selection.name to:out_file format \"%\" spacja to:out_file format \"%\\n\" selection.pos to:out_file ) close out_file edit out_name ) ) Wersja duzo bardziej przejrzysta niz w moim wykonaniu z prosty interfejsem umozliwiajacym podanie nazwy pliku. Na koncu bardzo fajna rzecz o ktorej nie pomyslalem czyli \"edit out_name\" ktore wyswietla w nowym oknie tresc nowoutworzonego pliku.
lechoo Napisano 10 Listopad 2003 Autor Napisano 10 Listopad 2003 Autor: Sypo -- zapis do pliku summary_file = createFile \"C:\\dane.txt\" out_file = summary_file -- tekst w pliku format \"File Location: \" to:out_file format \"%\" out_file to:out_file format \"\\n\" to:out_file format \"\\n\" to:out_file format \"Lp. Name Position\" to:out_file format \"\\n\" to:out_file for i = 1 to selection.count do ( format \"%. %,%\" i selection.name selection.pos to:out_file format \"\\n\" to:out_file ) close out_file edit out_file Brak czasu wygenerowania statystyki. Co do nazwy pliku, w temacie chodzilo o plik ze scena a nie ze statystyka, ale to drobnostka. To co najwarzniejsze czyli statystyka tworzy sie dobrze. Na koncu podales zmienna o zlym typie w poleceniu edit. Zmienna out_file jest typu filestream (reprezentuje plik i umozliwia wykonywanie na nim operacji np. zamkniecia jak linijke wyrzej), natomiast edit potrzebuje zmiennej typu string, czyli sciezki do pliku wiec prawidlowo byloby np. edit \"C:\\dane.txt\"
lechoo Napisano 10 Listopad 2003 Autor Napisano 10 Listopad 2003 Autor: VGTsXVII utility UtilityExample \"Zad 03\" ( --dane wstepne group \"wybor danych do zapisu\" ( checkbox nazwa \"Nazwa\" checked:true checkbox pozycja \"wspolrzedne\" checked:true checkbox kolor \"Kolor siatki\" checked:false checkbox vert \"Vertex\'y - ilosc\" checked:false checkbox face \"Face\'y - ilosc\" checked:false ) button zapis \"zapisz do pliku\" on zapis pressed do ( --przygotowanie zmiennych godz = 0 min = 0 sek = 0 --obliczenie aktualnego czasu sek = timestamp() / 1000 while sek > 60 do ( min = min+1 sek = sek-60 ) while min > 60 do ( godz = godz + 1 min = min-60 ) --stworzenie pliku i wpisywanie danych plik_nazwa = getsavefilename types:\"Spis obiektów|*.txt|\" if plik_nazwa != undefined then ( plik = createfile plik_nazwa zaznaczone = getcurrentselection() format \"Czas wygenerowania statystyki: %:%:%\\n\\n\" godz min sek to:plik format \"Zapisane dane o zaznaczonych obiektach:\\n\" to:plik format \"LICZBA PORZADKOWA\\n\" to:plik if nazwa.checked==true then format \"%\\n\" \"NAZWA\" to:plik if pozycja.checked==true then format \"%\\n\" \"WSPOLRZEDNE\" to:plik if kolor.checked==true then format \"%\\n\" \"KOLOR\" to:plik if vert.checked==true then format \"%\\n\" \"ILOSC VERTEX\'OW\" to:plik if face.checked==true then format \"%\\n\" \"ILOSC FACE\'OW\" to:plik format \"--------------------\\n\" \"kolor\" to:plik for i = 1 to zaznaczone.count do ( format \"%\\n\" i to:plik if nazwa.checked == true then (format \"%\\n\" zaznaczone.name to:plik) if pozycja.checked == true then (format \"%\\n\" zaznaczone.position to:plik) if kolor.checked == true then (format \"%\\n\" zaznaczone.wirecolor to:plik) if vert.checked == true or face.checked == true then kopia=snapshotasmesh zaznaczone if vert.checked == true then (format \"%\\n\" kopia.numverts to:plik) if face.checked == true then (format \"%\\n\" kopia.numfaces to:plik) format \"--------------------\\n\" to:plik ) close plik edit plik_nazwa ) ) ) W tym skrypcie jest zdecydowanie najwiecej ekstra dodatkow. Po pierwsze: plik_nazwa = getsavefilename types:\"Spis obiektów|*.txt|\" Polecenie to powoduje wyswietlenie zwyklego windowsowego dialogu umozliwiajacego wybor nazwy i katalogu dla pliku. Po drugie pierwsze polecenia umozliwiajace operacje na meshu numverts (ilosc vertexow) i numfaces (ilosc faceow). Tym zajmiemy sie jeszcze dokladnie w ktoryms z nastepnych tematow. Widze tu tylko jeden slaby punkt. Co bedzie jesli wsrod zaznaczonych obiektow bedzie np. swiatlo omni? Zwroccie uwage na sposob obliczania czasu stworzenia statystyki przy pomocy timestamp(), ktore to polecenie zwraca ilosc milisekund od polnocy. Musiales sie z tym niezle namordowac :)
lechoo Napisano 10 Listopad 2003 Autor Napisano 10 Listopad 2003 Na koniec link do wszystkich skryptow: tematy03.zip W ciagu kilku dni nastepny temat ktory bedzie rozwinieciem tego, dodamy do skryptu kilka przydatnych rzeczy.
Sypo Napisano 12 Listopad 2003 Napisano 12 Listopad 2003 Witam! :-) Ściągając tematy03.zip ściąga i się tematy01.zip :-) Mam nadzieję że to nie znowu mój komp wariuje:-)
lechoo Napisano 12 Listopad 2003 Autor Napisano 12 Listopad 2003 Dzieki za zwrocenie uwagi. Juz poprawilem.
Rekomendowane odpowiedzi
Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto
Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.
Zarejestruj nowe konto
Załóż nowe konto. To bardzo proste!
Zarejestruj sięZaloguj się
Posiadasz już konto? Zaloguj się poniżej.
Zaloguj się