#include "Simple_window.h"
#include"Graph.h"
using namespace Graph_lib;
struct Box:Shape
{
Box(Point pp1,Point pp2,Point pp3,Point pp4,int rr)
:p1(pp1),p2(pp2),p3(pp3),p4(pp4),r(rr)
{
add(p1);
add(p2);
add(p3);
add(p4);
}
void draw_lines() const;
private:
Point p1,p2,p3,p4;
int r;
};
void Box::draw_lines()const
{
if(color().visibility())
{
fl_arc(p1.x-r,p1.y-r,r+r,r+r,90,180);
fl_arc(p2.x-r,p2.y-r,r+r,r+r,0,90);
fl_arc(p3.x-r,p3.y-r,r+r,r+r,270,360);
fl_arc(p4.x-r,p4.y-r,r+r,r+r,180,270);
fl_line(p1.x,p1.y-r,p2.x,p2.y-r);
fl_line(p2.x+r,p2.y,p3.x+r,p3.y);
fl_line(p3.x,p3.y+r,p4.x,p4.y+r);
fl_line(p1.x-r,p1.y,p4.x-r,p4.y);
}
}
int main()
{
Point xy(200,200);
Simple_window win(xy,400,400,"Practice_2");
Point p1(100,150);
Point p2(200,150);
Point p3(200,200);
Point p4(100,200);
Box b(p1,p2,p3,p4,50);
win.attach(b);
win.wait_for_button();
}
定义一个Box类来绘制一个圆角矩形。
U13 习题2
最新推荐文章于 2022-09-27 16:48:27 发布