graphic13


Borland C++ Builder dla początkujących Efekt obrotu bitmapy o 90 stopni zgodnie ze wskazówkami zegara Aby po kliknięciu przycisku Button1 bitmapa, która jest załadowana do komponentu Image1 została obrócona o 90 stopni zgodnie ze wskazówkami zegara tworzymy w zdarzeniu OnClick przycisku Button1 dynamicznie obiekt TBitmap reprezentujący bitmapę, ustawiamy jej rozmiary, a następnie za pomocą dwóch pętli for rysujemy na niej w odpowiednich miejscach piksele z obrazka Image1 (da to efekt obrotu bitmapy o 90 stopni zgodnie ze wskazówkami zegara), na końcu przypisujemy tymczasową bitmapę do komponentu Image1 i usuwamy ją z pamięci: Unit1.cpp void __fastcall TForm1::Button1Click(TObject *Sender) {    int x, y;    int width, height;    Graphics::TBitmap* tmpBMP = new Graphics::TBitmap;    tmpBMP->Height = Image1->Width;    tmpBMP->Width = Image1->Height;    width = Image1->Width-1;    height = Image1->Height-1;    for (y = 0; y Pixels[height-y][x] = Image1->Canvas->Pixels[x][y];          Application->ProcessMessages();       }    Image1->Width = tmpBMP->Width;    Image1->Height = tmpBMP->Height;    Image1->Picture->Bitmap->Assign(tmpBMP);    delete tmpBMP; }

Wyszukiwarka

Podobne podstrony:
graphic02
graphics
graphic11
graphite pet
graphic26
Graphics
representing graphical user interfaces64834
graphic23
Graphic Design For Everyone 01
graphic33
graphic12
Graphics2D
graphic15

więcej podobnych podstron