TwojePC.pl © 2001 - 2024
|
|
A R C H I W A L N A W I A D O M O Ś Ć |
|
|
|
Algorytm do wczytywania danych z TStringList w c++ Builder , coolman 18/08/04 22:05 W sumie to mam problem z petali i zmiennymi :P Jak zrobic zeby program wczytal pierwsze 7 linijek..potem wykorzystal je i wyrysowal w openGlu(to umiem) a nastepnie odczytal kolejne 7 i wyrysowal je w openGlu...macie pomysl lub namiary na jakas WWW ?http://jet.blog.pl - hmmm.... , john565 18/08/04 22:29
a nie lepiej w pamięć to wrzucić, tzn cały plik z danymi, a dopiero potem obrabiać, konwertować na grafike ??f*ck - ___ , coolman 18/08/04 22:33
Tylko ze w pliku sa same liczby...i kazda z nich oznacza XYZ wierzcholka kwadratu.jest jedna procedura rysujaca ktora ma zmienne..a ja chce zrobic petle ktora bedzie mi rysowac za kazdym przejsciem inna figure..http://jet.blog.pl - wiesz w sumie nie kumam o co ci chodzi , john565 18/08/04 23:16
powiedzmy że plik wygląda tak
44
56
78
.
.
.
66
42
11
procedura odczytyująca zapisuje kolejno do tablicy tx[i],ty[i],tz[i], t tymczasowe tx ty tz, i wczytujesz tak po 3 liczby w każdym cyklu asz nie skończy się plik, oczywiście dajesz se jakomś zmienną punkt_max na której zakończyłeś zapisywanie danych do tx[i],ty[i],tz[i], po prostu to bedzie te 'i' które było w momencie osiągnięcia końca pliku,a potrem rzucasz to do pętli rysującej
natomiast jeśli chodzi o kilka figór robiłbym w ten sposób
plik wyglądałbvy następująco
7
54
3
54
32
21
32
1
43
-999999
..
to by była moja pierwsza figura, tu na przykład trójkąt, zastosowałbym tablice dwuwymiarowe tx[nr_figury,i],ty[nr_figury,i],tz[nr_figury,i], dodatkowo tablice jednowymiarową iw[nr_figury], działało by to w ten sposób że dane sie wczytują do tx,ty,tz pod pierwszy nr_figury, który oznacza figóre de momentu gdy napotka na -99999, wtedy i jest zapsywane do tablicy iw czyli llości wierzchołków, i jest zerowane a numer figury podnoszony o jeden, i tak to sie dzieje asz do uzyskana końca pliku, musisz se jescze ustalić taką zmienną jak figura max, w którym będzie przechowywany numer osatniej figóry, czyli ilość wszystkich, następnie tworzysz procedure rysującą, ale teraz nie uzależniasz jej od -99999, ale od liczby zawsartej w tablicy iw[nr_figury] odpowiedającej liczbie wierzchołków w każdj z nich
mam nadzieje że troche pomogłem, wiedz że zamiat tych zmiennych mógłbyś see strzelić jakomś klase którea by to mieściła, na c++ sie nie znam za dobrze ale wydaje mi sie że coś umiem jeśli chodzi o programiwanie, jakby jakieś wątpliwości pisz, jakby to nie było to o co ci chodziło to sprecyzuj bardziejf*ck - ___ , coolman 18/08/04 23:31
Mam narysowac trojkaty(2D) ktory jest okreslone wspolrzednymi wypisanymi tak
1//x
2//y
//
4//x
5//y
//
6//x
7//y
jak bedzie juz wpisana 6 wartosc ma wyrysowac trojkat i czytac dalej plik i znowu odczytac kolejny trojkat..procedura rysujaca jest tylko jedna i ona musi kozystac z jednych zmiennych!Potrzebny jest mi algorytm szybkiego czytaina i wpisywania..rysowania..czytania dalej..wpisywania w te same wartosci co wczesniej..rysowania...itd..http://jet.blog.pl - niestey.... , john565 19/08/04 00:16
nie pomoge ci bo nie znam sie za mocno na c, i nie wiem jakbyci tu pokazać sposób implementacji, :((,a le jakby jakieś pytna miał to wal na maila, bo moze ci jakoś teoretycznie bede potrafił pomócf*ck
- odp , Zajkos 19/08/04 09:33
coś takiego, ale pisze z pamieci wiec moze być coś nei tak w nazwach/parametrach funkcji
TStringlist Lista=new TStringList();
Lista->LoadFromFile("nazwapliku.txt");
int akt_poz=0; // aktualna pozycja w pliku
int x[6]; // tablica z kolejnymi współrzędnymi trójkata
while (akt_poz+5<Lista->Items->Count) //sprawdza czy starczy danych na kolejny trojkat
{for (int i=0;i<6;i++)
{x[i]=Lista->Strings[i].ToIntDef(0);} // zamienia AnsiString na int, nie pamietam dokłądnie sładni tej funkcji
akt_poz+=6;
// tu funkcja rysująca
} |
|
|
|
|
All rights reserved ® Copyright and Design 2001-2024, TwojePC.PL |
|
|
|
|