-
Data: 2012-03-31 12:20:49
Temat: Re: iterowanie po kwadracie
Od: " M.M." <m...@g...pl> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]<f...@g...pl> napisał(a):
> M.M. <m...@g...pl> napisał(a):
>
> > <f...@g...pl> napisał(a):
> >
> > > jesli iteruje sie po kwadracie to robi sie to
> > > zwykle tak
> > >
> > > for(int j=0; j<200; j++)
> > > for(int i=0; i<200; i++)
> > > costam(i,j)
> > >
> > > jak przeiterowac po tym samym kwadracie 200x200
> > > gdy jest on przekrzywiony np o 7 stopni w prawo,
> > > - dane sa np wspolrzedne wierzcholkow)
> > >
> > > ??
> > Kolejne punkty leza na prostych, wiec punkt nastepny uzyskuje
> > sie przez dodanie dx i dy do punktu poprzedniego. Ze
> > wzorow na obrot trzeb wyliczyc start_x i start_y a
> > potem odpowiednio dodawac dx i dy.
> >
> > x = x_start;
> > y = y_start;
> > for( i=0 ; i<200 ; i++ ) {
> > xx = x;
> > yy = y;
> > for( j=0 ; j<200 ; j++ ) {
> > draw(xx,yy);
> > xx += dx2;
> > yy += dy2;
> > }
> > x += dx1;
> > y += dy1;
> > }
> >
>
> pytanie jednak czy to nie 'skipnie' pewnych punktow
> (chyba skipnie i beda dziury) - przydalaby sie taka
> metoda iterowania po kwadracie ktora by nie omijala
> punktow - wtedy np w odwrotnej metodzie rysowania
> obracanych bitmap nie trzebaby iterowac ekranu po
> otaczajacym wiekszym kwadracie i marnowac czesci obliczen
> tylko przeiterowac sam odwrocony kwadrat
Hmmm pewnie sa gotowe liby do tego celu :)
Ciekawe co ma QT. Wygląda zachęcająco:
http://doc.trolltech.com/solutions/4/qtanimationfram
ework/animation.html
Kiedyś musiałem zrobić na szybko aplikację z animacją. Przekopiowałem
ten przykład:
http://doc.qt.nokia.com/4.7-snapshot/examples-graphi
csview.html
Kilka rzeczy zmieniłem i działało choć nie bardzo rozumiałem dlaczego
działa. Może zrób tak samo?
A jeśli chcesz się koniecznie bawić...
Ja bym wyznaczył cztery punkty tego kwadrata. Potem bym wyliczył
krawędzie. Następnie bym wziął dwie górne krawędzie i potraktował
je jako funkcje łamaną górną. Dwie dolne krawędzie jako łamaną
dolną. Zakładamy że nie jest obrócony o wielokrotność 90 stopni.
Potem dziedzina <xmin,xmax>, dla obu łamanych będzie ona taka
sama...
for( x=xmin ; x<=xmax ; x++ )
for( y=lamana_gorna(x) ; y>=lamana_dolna(x) ; y-- )
draw( x , y );
Taki algorytm zejdzie w dol po wszystkich pixelach, czyli zadnego
nie ominie i nie bedzie dziury.
Żeby nie było pixelozy to trzeba sprawdzić ile procent skrajnych
pixeli należy do kwadrata i kolor ustalic mniej/wiecej tak:
ile_nalezy * kolor_kopiowany + (1-ile_nalezy) * kolor_biezacy
Pozdrawiam
--
Wysłano z serwisu Usenet w portalu Gazeta.pl -> http://www.gazeta.pl/usenet/
Następne wpisy z tego wątku
- 31.03.12 16:15 bartekltg
- 31.03.12 16:36
- 31.03.12 16:39 bartekltg
- 31.03.12 16:58
- 02.04.12 14:51 Adam Wysocki
- 02.04.12 16:37 bartekltg
- 06.04.12 16:31
- 08.04.12 07:13 darek
Najnowsze wątki z tej grupy
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
- Press Release - AEiC 2023, Ada-Europe Reliable Softw. Technol.
- Ada-Europe - AEiC 2023 early registration deadline approaching
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2023
- Ile cykli zajmuje mnożenie liczb 64-bitowych?
Najnowsze wątki
- 2024-05-26 O co chodzi?
- 2024-05-26 PJ autobus-tramwaj
- 2024-05-26 Renault Trafic i lampka z czerwonym STOP
- 2024-05-26 cena pięciocyfrowa
- 2024-05-26 Re: Jak dobra KE "okrada" złą Rosję "dla Ukrainy"
- 2024-05-25 supercap
- 2024-05-25 Sulzbach => Technischer Rollouter (d/m/w) <=
- 2024-05-25 Warszawa => Senior Account Manager <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Mid PHP Developer (Laravel) <=
- 2024-05-25 Warszawa => Interactive/Experience Designer <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Warszawa => SAP WM Consultant / Execution <=
- 2024-05-25 Warszawa => Key Account Manager <=
- 2024-05-25 Re: znów ten wrocław