Class: Camera::Image
- Inherits:
-
Ruby2D::Image
- Object
- Ruby2D::Image
- Camera::Image
- Defined in:
- lib/ruby2d/camera/image.rb
Overview
Wraps existing variables as well as adding new methods so that it can be handled by the Camera Module
Instance Method Summary collapse
-
#_draw ⇒ Object
Recalculates real coordiantes Use after changing variables.
- #add ⇒ Object
-
#initialize(path, opts = {}) ⇒ Image
constructor
A new instance of Image.
- #remove ⇒ Object
- #z=(z) ⇒ Object
Constructor Details
Instance Method Details
#_draw ⇒ Object
Recalculates real coordiantes Use after changing variables
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/ruby2d/camera/image.rb', line 9 def _draw return if @hide temp_angle = Camera.angle * (Math::PI / 180) half_width = Window.width * 0.5 half_height = Window.height * 0.5 offset_x = @x + (@width / 2) offset_y = @y + (@height / 2) temp_x = (((offset_x - Camera.x) * Math.cos(temp_angle)) - ((offset_y - Camera.y) * Math.sin(temp_angle))) \ * Camera.zoom + half_width - (width * Camera.zoom / 2) temp_y = (((offset_x - Camera.x) * Math.sin(temp_angle)) + ((offset_y - Camera.y) * Math.cos(temp_angle))) \ * Camera.zoom + half_height - (height * Camera.zoom / 2) temp_rotate = rotate + Camera.angle temp_width = width * Camera.zoom temp_height = height * Camera.zoom draw(x: temp_x, y: temp_y, width: temp_width, height: temp_height, rotate: temp_rotate, color: [color.r, color.g, color.b, color.a]) end |
#add ⇒ Object
46 47 48 |
# File 'lib/ruby2d/camera/image.rb', line 46 def add @hide = false end |
#remove ⇒ Object
42 43 44 |
# File 'lib/ruby2d/camera/image.rb', line 42 def remove @hide = true end |
#z=(z) ⇒ Object
37 38 39 40 |
# File 'lib/ruby2d/camera/image.rb', line 37 def z=(z) super(z) Ruby2D::Camera._sort_by_z end |