BIMHome v1.0.0
BIMHome接口文档说明
Ellipse2D.h
浏览该文件的文档.
1/************************************************************************
2* @file Ellipse2D.h
3*
4* @brief 二维椭圆
5*
6* @details 二维椭圆
7*
8* @author lirf
9*
10* @version 1.0
11*
12* @date 2025-6-7
13*
14* @license 北京华科软科技有限公司
15*
16*************************************************************************/
17
18#ifndef BIMHOMEBASE_ELLIPSE2D_H
19#define BIMHOMEBASE_ELLIPSE2D_H
20
21#include "Base/Math/Geometry/Curve2D.h"
22
23namespace Base
24{
25 //椭圆
26 class BaseExport Ellipse2D :public Curve2D
27 {
28 public:
30
39 Ellipse2D(Base::Vector2d CenterPoint, Base::Vector2d MajorAxisDir, double MajorRadius, double MinorRadius);
40 virtual ~Ellipse2D();
41 virtual Geometry2D* copy(void) const;
42
49
55
60 double getMajorRadius(void) const;
61
67 void setMajorRadius(double Radius);
68
73 double getMinorRadius(void) const;
74
80 void setMinorRadius(double Radius);
81
87
94
95 bool isClosed();
96 double getLength();
97 private:
100 double mMajorRadius;//主轴半径
101 double mMinorRadius;//副轴半径
102 };
103}
104
105#endif
Definition Curve2D.h:28
double mMajorRadius
Definition Ellipse2D.h:100
double getMinorRadius(void) const
获取副轴半径
double getMajorRadius(void) const
获取主轴半径
void setMajorAxisDir(Base::Vector2d newdir)
设置主轴方向
Base::Vector2d mCenterPoint
Definition Ellipse2D.h:98
Base::Vector2d getMajorAxisDir() const
获取主轴方向
void setMinorRadius(double Radius)
设置副轴半径
Base::Vector2d mMajorAxisDir
Definition Ellipse2D.h:99
void setMajorRadius(double Radius)
设置主轴半径
double mMinorRadius
Definition Ellipse2D.h:101
Base::Vector2d getCenterPoint() const
获取圆心
Ellipse2D(Base::Vector2d CenterPoint, Base::Vector2d MajorAxisDir, double MajorRadius, double MinorRadius)
构造二维椭圆
virtual Geometry2D * copy(void) const
double getLength()
void setCenterPoint(Base::Vector2d center)
设置圆心
virtual ~Ellipse2D()
Definition Ellipse2D.h:27
Definition Geometry2D.h:72
Vector2d 类,表示二维空间中的向量
Definition Vector2D.h:58
Definition BaseFigureFactory.h:24