-
Notifications
You must be signed in to change notification settings - Fork 0
/
Square.cpp
103 lines (81 loc) · 2.17 KB
/
Square.cpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
#include "Point.h"
#include "Square.h"
#include "ei_draw.h"
#include "Square.h"
#include <string>
#include <iostream>
Square::Square(ei_size_t size)
{
size.width = size.height;
_size = size;
//_top_left= Point(); Pas besoin de l'appeler car contructeur par défaut sera appelé
}
Square::Square(ei_size_t size , Point pt)
{
size.width = size.height;
_size = size;
_top_left = Point(pt);
}
Square::Square(ei_size_t size, unsigned int x , unsigned int y)
{
size.width = size.height;
_size = size;
_top_left.setX(x);
_top_left.setY(y);
}
int Square::getTopLeft_x() const {
return _top_left.getX();
}
int Square::getTopLeft_y() const {
return _top_left.getY();
}
Point Square::getTopLeft() const {
return _top_left;
}
ei_size_t Square::getSize() {
if(_size.width != _size.height)
_size.width = _size.height;
return _size;
}
int Square::getwidth() const {
return _size.width;
}
int Square::getheight() const {
return _size.height;
}
void Square::setheight( int height){
_size.height = height;
}
void Square::setwidth( int width){
_size.width = width;
}
void Square::set_pt_x( int x){
_top_left.setX(x);
}
void Square::set_pt_y( int y){
_top_left.setY(y);
}
Square::~Square(){}
void Square::draw(ei_surface_t surface, ei_surface_t r){
ei_point_t r_point;
r_point.x = _top_left.getX();
r_point.y = _top_left.getY();
ei_copy_surface(surface, r, &r_point, EI_TRUE);
hw_surface_unlock(r);
hw_surface_free(r);
}
void Square::setPosition(const Point &v){
_top_left.setX(v.getX());
_top_left.setY(v.getY());
}
void Square::setPosition(float x , float y){
_top_left.setX((int)x);
_top_left.setY((int)y);
}
void Square::setSpeed(const Point &speed){
_point_speed.setX(speed.getX());
_point_speed.setY(speed.getY());
}
Point Square::getSpeed()const{
return _point_speed;
}