6 #include <Framework/IShape.h>
45 void SetPos(
double X座標,
double Y座標)
override
53 void Move(
double X移動量,
double Y移動量)
override
61 double GetX()
const override
66 double GetY()
const override
71 double GetW()
const override
76 double GetH()
const override
85 it->MultiZoom(X倍率, Y倍率);
99 void Draw(
const Color &描画色)
const override;
103 return shape->
Hit(
this);
107 for (
auto itA : this->
shapes)
109 for (
auto itB : complex->
shapes)
111 if (itA->Hit(itB))
return true;
116 bool Hit(
const Point *point)
const override;
117 bool Hit(
const Line *line)
const override;
118 bool Hit(
const Rect *rect)
const override;
119 bool Hit(
const Circle *circle)
const override;
Complex(IShape *shape)
コンストラクタ.
Definition: Complex.h:28
矩形を表す図形クラス.
Definition: Rect.h:22
void Rotate(double 回転する角度) override
回転する.
Definition: Complex.h:91
太さのある線を表す図形クラス.
Definition: Line.h:20
IShape * Clone(double x, double y) const override
同じ形の図形を作る.
Definition: Complex.h:33
std::vector< IShape * > shapes
保持するShape
Definition: Complex.h:23
void Move(double X移動量, double Y移動量) override
相対座標で移動.
Definition: Complex.h:53
点を表す図形クラス.
Definition: Point.h:22
衝突判定可能な図形の抽象クラス.
Definition: IShape.h:21
virtual bool Hit(const IShape *iShape) const =0
衝突判定.
void Draw(const Color &描画色) const override
描画する.
Definition: ShapeDraw.h:10
複合図形を表すクラス.
Definition: Complex.h:20
色を表すクラス.
Definition: Color.h:11
double GetH() const override
高さを取得.
Definition: Complex.h:76
double GetY() const override
Y座標を取得.
Definition: Complex.h:66
double GetW() const override
幅を取得.
Definition: Complex.h:71
bool Hit(const Complex *complex) const override
衝突判定.
Definition: Complex.h:105
double zoomX
図形の拡大率
Definition: IPosition.h:14
void MultiZoom(double X倍率, double Y倍率) override
縦横別で拡大率を掛け算する.
Definition: Complex.h:81
void SetPos(double X座標, double Y座標) override
指定座標に移動.
Definition: Complex.h:45
円を表す図形クラス.
Definition: Circle.h:20
double zoomY
図形の拡大率
Definition: IPosition.h:15
double GetX() const override
X座標を取得.
Definition: Complex.h:61
bool Hit(const IShape *shape) const override
衝突判定.
Definition: Complex.h:101