Bounce.LevelEditor.Editor.drawSpaceObject C# (CSharp) Метод

drawSpaceObject() приватный Метод

private drawSpaceObject ( SpaceObject obj, PaintEventArgs e ) : void
obj SpaceObject
e PaintEventArgs
Результат void
        private void drawSpaceObject(SpaceObject obj, PaintEventArgs e)
        {
            Image img = Image.FromFile(currdir + "\\" + obj.TextureName + ".png");

            //In order to do rotations and scaling in windows forms, we need to determine where
            // the upper right, upper left, and lower left corners map to. We determine these, and
            // tell the graphics to draw the image.

            //Find the new point for the upper-left corner
            DrawPoint upper_left = Conversion.Vector2ToDrawPoint(obj.mapPointOnImage(0, 0));

            //Find the new point for the upper-right corner
            float x_ur = obj.getOriginalWidth();
            float y_ur = 0;

            DrawPoint upper_right = Conversion.Vector2ToDrawPoint(
                obj.mapPointOnImage(x_ur, y_ur));

            //Find the new point for the lower-left corner
            float x_ll = 0;
            float y_ll = obj.getOriginalHeight();

            DrawPoint lower_left = Conversion.Vector2ToDrawPoint(obj.mapPointOnImage(x_ll, y_ll));

            //Define the point mapping.
            DrawPoint[] destmapping = {upper_left, upper_right, lower_left};
            DrawRect srcrect = new DrawRect(0,0,img.Width / obj.NumberOfFrames,img.Height);

            //Draw the image with the specified position and scaling.
            e.Graphics.DrawImage(img, destmapping, srcrect, GraphicsUnit.Pixel);
        }