我自己写的代码 可能比较简单 我实现了模拟图层的功能
源代码在线查看: arc.h
///////////////////////////////////////////////////////////
// Arc.h
// Implementation of the Class Arc
// Created on: 18-二月-2009 17:17:24
// Original author: pangyj
///////////////////////////////////////////////////////////
#if !defined(EA_338448F3_A260_465f_B227_7E6BD48A3DC0__INCLUDED_)
#define EA_338448F3_A260_465f_B227_7E6BD48A3DC0__INCLUDED_
#include "Point2D.h"
#include "ErrorStatus.h"
#include "GeometryPrimitive.h"
class Arc : public GeometryPrimitive
{
public:
Arc();
Arc(Point2D pt,double r,double ds,double de);
virtual ~Arc();
const Point2D & center()const;
ErrorStatus center(Point2D & pt);
ErrorStatus endAngle(double agle);
double endAngle()const;
double radius()const;
ErrorStatus radius(double agle);
virtual ErrorStatus read(fstream& f);
double startAngle()const;
ErrorStatus startAngle(double agle);
virtual ErrorStatus write(fstream& f);
virtual void list()const;
private:
Point2D centerPt;
double dEndAngle;
double dRadius;
double dStartAngle;
};
#endif // !defined(EA_338448F3_A260_465f_B227_7E6BD48A3DC0__INCLUDED_)