图象处理(平移旋转)

    技术2022-05-11  24

    平移:

         Graphics^ graphics =this->CreateGraphics();     graphics->Clear(Color::White);     Bitmap^image = gcnew Bitmap("showboy.bmp");     Rectangle rect =Rectangle(0,0,234,90);     for(int i=0;i<30;i++)     {      graphics->DrawImage(image,rect);      graphics->TranslateTransform(10,0);      Thread::Sleep(100);      }

    旋转:

         Graphics^ graphics =this->CreateGraphics();     graphics->Clear(Color::White);     Bitmap^image = gcnew Bitmap("1923366.bmp");     Rectangle^ rect =Rectangle(0,0,this->ClientSize.Width,this->ClientSize.Height);     PointF^ center = gcnew PointF(rect->Width/4,rect->Height/4);     int offsetX = 0;     int offsetY =0;     offsetX=center->X-image->Width/2;                                 offsetY=center->Y-image->Width/2;     RectangleF picRect = RectangleF(offsetX,offsetY,image->Width,image->Height);     PointF^ Pcenter = gcnew PointF(picRect.X+picRect.Width/2,picRect.Y+picRect.Height/2);     for(int i=0;i<3601;i+=10)     {      graphics->TranslateTransform(Pcenter->X,Pcenter->Y);      graphics->RotateTransform(i);      graphics->TranslateTransform(-Pcenter->X,-Pcenter->Y);      graphics->DrawImage(image,picRect);      //graphics->TranslateTransform(10,0);      Thread::Sleep(100);       graphics->ResetTransform();


    最新回复(0)