用类和easyx画一把剑
时间: 2023-11-13 14:11:15 浏览: 82
基于EasyX库的画板
好的,以下是我为您提供的类和easyx画一把剑的代码:
```cpp
#include <graphics.h>
#include <cmath>
class Sword {
private:
int x, y, length, thickness;
COLORREF color;
public:
Sword(int x_, int y_, int length_, int thickness_, COLORREF color_)
: x(x_), y(y_), length(length_), thickness(thickness_), color(color_) { }
void draw() {
setfillcolor(color);
setlinecolor(color);
setlinestyle(PS_SOLID, thickness);
// 画剑柄
int handle_length = length / 5;
int handle_x = x - handle_length, handle_y = y;
rectangle(handle_x, handle_y - thickness / 2, x, y + thickness / 2);
// 画剑身
int blade_length = length - handle_length;
int blade_x = x + blade_length, blade_y = y;
line(x, y, blade_x, blade_y);
// 画剑尖
int tip_length = blade_length / 4;
int tip_x = blade_x - tip_length * cos(45), tip_y = blade_y - tip_length * sin(45);
line(blade_x, blade_y, tip_x, tip_y);
line(tip_x, tip_y, blade_x - tip_length * sin(45), blade_y + tip_length * cos(45));
}
};
int main() {
initgraph(640, 480);
Sword sword(320, 240, 200, 8, RGB(255, 255, 255));
sword.draw();
getch();
closegraph();
return 0;
}
```
以上代码使用了Sword类,表示一把剑,通过构造函数传入剑的位置、大小、颜色等参数,通过draw函数绘制出剑的形状。在main函数中创建了一把剑,然后调用其draw函数进行绘制。
阅读全文