Ĺadny brzuch
Jak zrobić zeby program obracał obraz o 180 stopnij ???
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
musisz "przezucac" piksele w petelce na druga strone obrazka
//gg:2574115
//e-mailmigajek@yahoo.com
//Zapraszam na moją stronkę:http://www.migsoft.prv.pl
Chyba źle sprecyzowałem pytanie, chodzi mi o to żeby cały pulpit, ikony, paski, ogólnie cały ekran był na odwrót. Po prostu tak jak by ktoś postawił sobie monitor do góry nogami :)
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
To musisz to robic caly czas rysując na ekranie, to sie robi GetWindowsDC i na tym co zwroci to rysujesz
//gg:2574115
//e-mailmigajek@yahoo.com
//Zapraszam na moją stronkę:http://www.migsoft.prv.pl
najprościej jednak postawić monitor do góry nogami :lol:
a na poważnie to najłatwiej ściągnąć obraz z pulpitu, obrócić i wyświetlić
ale oczywiście to będzie tylko odwrócony obrazek więc pasek, okna itp. nie będą działały, będa tylko na obrazku, jak zrobić żeby taki odwrócony pulpit działał :? w sumie sterowniki kart graficznych to umożliwiają... grzebiąc ustawieniach karty graficznej znalazłem taką opcję, tylko zastanawiam się do czego taki program miał by służyć :roll:
A mógł byś mi to dokładniej opisać ???
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
Ja tak może trochę zboczę z tematu, bo robię coś podobnego, ale tylko na Image i w Delphi. W zwykłej pętli while ... do zmienian piksele miejscami, ale to trwa za długo, bo aż 3 sek przy rozmiarach Image'a 531x401. Do Buttona wrzucam takie co:
procedure TForm1.Button1Click(Sender: TObject); var x, y : integer; col : TColor; begin x := 0; y := 0; while x <= Image1.Width do begin col := Image1.Canvas.Pixels[x, y]; Image2.Canvas.Pixels[Image1.Width - x - 1, Image2.Height - y - 1] := col; x := x + 1; if x = Image1.Width then begin x := 0; y := y + 1; end; if y - 1 = Image1.Height then begin x := Image1.Width + 1; y := y; end; end; end;
Czy można zoptymalizować ten kod, czy może należy zastosować jakieś bardziej zaawansowane "sztuczki":?
Ps. Hextor - sorry, że tak Ci się wchrzaniłem do tematu :(
Jak to do czego taki program miał by służyć ??? Żeby sobie jaja z kogoś porobić :)
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
zanotowane.pl doc.pisz.pl pdf.pisz.pl zsf.htw.pl
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
musisz "przezucac" piksele w petelce na druga strone obrazka
//gg:2574115
//e-mailmigajek@yahoo.com
//Zapraszam na moją stronkę:http://www.migsoft.prv.pl
Chyba źle sprecyzowałem pytanie, chodzi mi o to żeby cały pulpit, ikony, paski, ogólnie cały ekran był na odwrót. Po prostu tak jak by ktoś postawił sobie monitor do góry nogami :)
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
To musisz to robic caly czas rysując na ekranie, to sie robi GetWindowsDC i na tym co zwroci to rysujesz
//gg:2574115
//e-mailmigajek@yahoo.com
//Zapraszam na moją stronkę:http://www.migsoft.prv.pl
najprościej jednak postawić monitor do góry nogami :lol:
a na poważnie to najłatwiej ściągnąć obraz z pulpitu, obrócić i wyświetlić
ale oczywiście to będzie tylko odwrócony obrazek więc pasek, okna itp. nie będą działały, będa tylko na obrazku, jak zrobić żeby taki odwrócony pulpit działał :? w sumie sterowniki kart graficznych to umożliwiają... grzebiąc ustawieniach karty graficznej znalazłem taką opcję, tylko zastanawiam się do czego taki program miał by służyć :roll:
A mógł byś mi to dokładniej opisać ???
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl
Ja tak może trochę zboczę z tematu, bo robię coś podobnego, ale tylko na Image i w Delphi. W zwykłej pętli while ... do zmienian piksele miejscami, ale to trwa za długo, bo aż 3 sek przy rozmiarach Image'a 531x401. Do Buttona wrzucam takie co:
procedure TForm1.Button1Click(Sender: TObject); var x, y : integer; col : TColor; begin x := 0; y := 0; while x <= Image1.Width do begin col := Image1.Canvas.Pixels[x, y]; Image2.Canvas.Pixels[Image1.Width - x - 1, Image2.Height - y - 1] := col; x := x + 1; if x = Image1.Width then begin x := 0; y := y + 1; end; if y - 1 = Image1.Height then begin x := Image1.Width + 1; y := y; end; end; end;
Czy można zoptymalizować ten kod, czy może należy zastosować jakieś bardziej zaawansowane "sztuczki":?
Ps. Hextor - sorry, że tak Ci się wchrzaniłem do tematu :(
Jak to do czego taki program miał by służyć ??? Żeby sobie jaja z kogoś porobić :)
Wojna nigdy sie nie kończy, dla tych co walczyli.
Moja strona: http://www.hextor.prv.pl