Package com.example.renderer.factory
Class Ellipse
java.lang.Object
com.example.renderer.factory.Ellipse
- All Implemented Interfaces:
Shape
椭圆图形实现类
-
Constructor Summary
Constructors -
Method Summary
-
Constructor Details
-
Ellipse
public Ellipse()无参构造器,用于序列化和反射创建实例。 创建后需要通过setter方法设置属性。 -
Ellipse
public Ellipse(int x, int y, int width, int height) 构造指定位置和大小的椭圆- Parameters:
x
- 椭圆中心的X坐标y
- 椭圆中心的Y坐标width
- 椭圆的宽度height
- 椭圆的高度
-
-
Method Details
-
render
使用指定渲染器绘制椭圆。实现细节:
- 调用renderer.drawEllipse()方法进行实际绘制
- 传递椭圆的中心坐标和尺寸参数
- 不处理渲染器抛出的异常,由调用方处理
- Specified by:
render
in interfaceShape
- Parameters:
renderer
- 用于绘制椭圆的渲染器实现(非null)- Throws:
NullPointerException
- 如果renderer参数为null- See Also:
-
accept
接受访问者访问此椭圆对象- Specified by:
accept
in interfaceShape
- Parameters:
visitor
- 用于处理椭圆的访问者对象- Throws:
NullPointerException
- 如果visitor参数为null
-
move
public void move(int dx, int dy) 移动椭圆的位置。实现细节:
- 直接修改椭圆的中心坐标
- 不检查坐标溢出,由调用方确保参数合理
- 支持负值移动(向左/上移动)
-
getX
public int getX()获取椭圆中心X坐标。注意:返回的是椭圆的中心点X坐标,不是外接矩形的左上角X坐标。
-
getY
public int getY()获取椭圆中心Y坐标- Returns:
- 椭圆中心的Y坐标值
-
getWidth
public int getWidth()获取椭圆宽度- Returns:
- 椭圆的宽度值
-
getHeight
public int getHeight()获取椭圆高度。高度是椭圆在Y轴方向的直径长度。
-