| 748 | drawScaled(image, position, image->size, Scaler::Nearest); |
| 749 | } |
| 750 | void drawRotated(sp<Image> image, Vec2<float> center, Vec2<float> position, |
| 751 | float angle) override |
| 752 | { |
| 753 | auto size = image->size; |
| 754 | sp<RGBImage> rgbImage = std::dynamic_pointer_cast<RGBImage>(image); |
| 755 | if (rgbImage) |
| 756 | { |
| 757 | GLRGBImage *img = dynamic_cast<GLRGBImage *>(rgbImage->rendererPrivateData.get()); |
| 758 | if (!img) |
| 759 | { |
| 760 | img = new GLRGBImage(rgbImage, this); |
| 761 | image->rendererPrivateData.reset(img); |
| 762 | } |
| 763 | this->drawRgb(*img, position, size, Scaler::Linear, center, angle); |
| 764 | return; |
| 765 | } |
| 766 | |
| 767 | sp<PaletteImage> paletteImage = std::dynamic_pointer_cast<PaletteImage>(image); |
| 768 | LogError("Unsupported image type"); |
| 769 | } |
| 770 | void drawScaled(sp<Image> image, Vec2<float> position, Vec2<float> size, |
| 771 | Scaler scaler = Scaler::Linear) override |
| 772 | { |