|
|
@ -328,12 +328,13 @@ public class Game : GameWindow { |
|
|
|
Texture active = textures[textureIndex]; |
|
|
|
|
|
|
|
// FIXME: make a function for scaling & centering one box on another.
|
|
|
|
double scaleX = 1.0 * geometry.PhotoBox.Size.X / active.Size.X; |
|
|
|
double scaleY = 1.0 * geometry.PhotoBox.Size.Y / active.Size.Y; |
|
|
|
double scale = Math.Min(scaleX, scaleY); |
|
|
|
int renderWidth = (int) (active.Size.X * scale); |
|
|
|
int renderHeight = (int) (active.Size.Y * scale); |
|
|
|
Box2i photoBox = Util.makeBox((int) geometry.PhotoBox.Center.X - renderWidth / 2, (int) geometry.PhotoBox.Center.Y - renderHeight / 2, renderWidth, renderHeight); |
|
|
|
float scaleX = 1f * geometry.PhotoBox.Size.X / active.Size.X; |
|
|
|
float scaleY = 1f * geometry.PhotoBox.Size.Y / active.Size.Y; |
|
|
|
float scale = Math.Min(scaleX, scaleY); |
|
|
|
|
|
|
|
Vector2i renderSize = (Vector2i) (((Vector2) active.Size) * scale); |
|
|
|
Vector2i center = (Vector2i) geometry.PhotoBox.Center; |
|
|
|
Box2i photoBox = Util.makeBox(center.X - renderSize.X / 2, center.Y - renderSize.Y / 2, renderSize.X, renderSize.Y); |
|
|
|
DrawTexture(active, photoBox); |
|
|
|
for (int i = 0; i < textures.Count; i++) { |
|
|
|
Box2i box = geometry.ThumbnailBoxes[i]; |
|
|
|