diff options
| author | Simon Robertshaw <simon@hardwired.org.uk> | 2012-10-29 09:36:16 (GMT) |
|---|---|---|
| committer | Simon Robertshaw <simon@hardwired.org.uk> | 2012-10-29 09:36:16 (GMT) |
| commit | e08bc6680bb766305486fdbe1d8e6cb6482993af (patch) | |
| tree | f49cb18b69540d06ddc33f4f7be75370045a81c7 /src/graphics/Graphics.cpp | |
| parent | 9b4f710e28bd7d14bec0ce67d19d75cb6a67c5a6 (diff) | |
| download | powder-e08bc6680bb766305486fdbe1d8e6cb6482993af.zip powder-e08bc6680bb766305486fdbe1d8e6cb6482993af.tar.gz | |
Format: Buffer to pti, Save renderer
Diffstat (limited to 'src/graphics/Graphics.cpp')
| -rw-r--r-- | src/graphics/Graphics.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/graphics/Graphics.cpp b/src/graphics/Graphics.cpp index 0fa5935..11dcac3 100644 --- a/src/graphics/Graphics.cpp +++ b/src/graphics/Graphics.cpp @@ -32,6 +32,25 @@ VideoBuffer::VideoBuffer(VideoBuffer * old): std::copy(old->Buffer, old->Buffer+(old->Width*old->Height), Buffer); }; +void VideoBuffer::Resize(float factor, bool resample) +{ + int newWidth = ((float)Width)*factor; + int newHeight = ((float)Height)*factor; + pixel * newBuffer; + if(resample) + newBuffer = Graphics::resample_img(Buffer, Width, Height, newWidth, newHeight); + else + newBuffer = Graphics::resample_img_nn(Buffer, Width, Height, newWidth, newHeight); + + if(newBuffer) + { + delete[] Buffer; + Buffer = newBuffer; + Width = newWidth; + Height = newHeight; + } +} + int VideoBuffer::SetCharacter(int x, int y, int c, int r, int g, int b, int a) { int i, j, w, bn = 0, ba = 0; |
