类 Ellipse
java.lang.Object
com.example.renderer.factory.Ellipse
- 所有已实现的接口:
Shape
椭圆图形实现类。
表示一个由中心坐标(x,y)和宽度(width)、高度(height)定义的椭圆。 实现了Shape接口,支持以下操作:
- 渲染 - 通过render()方法使用指定渲染器绘制
- 移动 - 通过move()方法改变位置
- 访问者模式 - 通过accept()方法支持扩展操作
典型用法:
Ellipse ellipse = new Ellipse(100, 100, 80, 40);
ellipse.render(renderer); // 绘制椭圆
ellipse.move(10, 5); // 移动椭圆
- 从以下版本开始:
- 2025-06-24
- 版本:
- 1.0
- 作者:
- DeepSeek-Coder, Aider+SillconFlow-DeepSeek, Aider+SillconFlow-Deepseek-R1
-
构造器概要
构造器 -
方法概要
修饰符和类型方法说明voidaccept(ExportVisitor visitor) 接受访问者访问此椭圆对象。clone()创建并返回当前椭圆的一个深拷贝int获取椭圆高度值(像素)。intgetWidth()获取椭圆宽度值(像素)。intgetX()获取椭圆中心X坐标值(像素)。intgetY()获取椭圆中心Y坐标值(像素)。voidmove(int dx, int dy) 移动椭圆的位置。void使用指定渲染器绘制椭圆。voidsetHeight(int height) 设置椭圆的新高度值voidsetWidth(int width) 设置椭圆的新宽度值voidsetX(int x) 设置椭圆中心的新X坐标voidsetY(int y) 设置椭圆中心的新Y坐标toString()从接口继承的方法 com.example.renderer.factory.Shape
validatePosition
-
构造器详细资料
-
Ellipse
public Ellipse()无参构造器,用于序列化和反射创建实例。 创建后需要通过setter方法设置属性。- 从以下版本开始:
- 2025-06-29
-
Ellipse
public Ellipse(int x, int y, int width, int height) 构造指定位置和大小的椭圆此构造器创建一个中心在(x,y)处,宽度为width,高度为height的椭圆。
- 参数:
x- 椭圆中心的X坐标y- 椭圆中心的Y坐标width- 椭圆的宽度height- 椭圆的高度- 从以下版本开始:
- 2025-06-29
-
-
方法详细资料
-
render
使用指定渲染器绘制椭圆。实现细节:
- 调用renderer.drawEllipse()方法进行实际绘制
- 传递椭圆的中心坐标和尺寸参数
- 不处理渲染器抛出的异常,由调用方处理
- 指定者:
render在接口中Shape- 参数:
renderer- 用于绘制椭圆的渲染器实现(非null)- 抛出:
NullPointerException- 如果renderer参数为null- 从以下版本开始:
- 2025-06-24
- 另请参阅:
-
accept
接受访问者访问此椭圆对象。实现访问者模式,将访问请求转发给访问者的visitEllipse方法。
- 指定者:
accept在接口中Shape- 参数:
visitor- 用于处理椭圆的访问者对象(非null)- 抛出:
NullPointerException- 如果visitor参数为null- 从以下版本开始:
- 2025-06-29
-
move
public void move(int dx, int dy) 移动椭圆的位置。实现细节:
- 直接修改椭圆的中心坐标
- 不检查坐标溢出,由调用方确保参数合理
- 支持负值移动(向左/上移动)
-
getX
public int getX()获取椭圆中心X坐标值(像素)。- 返回:
- 椭圆中心的X坐标值(像素)
- 从以下版本开始:
- 2025-06-29
-
getY
public int getY()获取椭圆中心Y坐标值(像素)。- 返回:
- 椭圆中心的Y坐标值(像素)
- 从以下版本开始:
- 2025-06-29
-
setX
public void setX(int x) 设置椭圆中心的新X坐标- 参数:
x- 椭圆的新X坐标值- 从以下版本开始:
- 2025-06-29
-
setY
public void setY(int y) 设置椭圆中心的新Y坐标- 参数:
y- 椭圆的新Y坐标值- 从以下版本开始:
- 2025-06-29
-
getWidth
public int getWidth()获取椭圆宽度值(像素)。宽度是椭圆在X轴方向的直径长度。
- 返回:
- 椭圆的宽度值(像素)
- 从以下版本开始:
- 2025-06-29
-
setWidth
public void setWidth(int width) 设置椭圆的新宽度值- 参数:
width- 椭圆的新宽度值(像素)- 从以下版本开始:
- 2025-06-29
-
getHeight
public int getHeight()获取椭圆高度值(像素)。高度是椭圆在Y轴方向的直径长度。
- 返回:
- 椭圆的高度值(像素)
- 从以下版本开始:
- 2025-06-29
-
setHeight
public void setHeight(int height) 设置椭圆的新高度值- 参数:
height- 椭圆的新高度值(像素)- 从以下版本开始:
- 2025-06-29
-
clone
创建并返回当前椭圆的一个深拷贝此方法通过调用Object.clone()实现拷贝, 适用于只包含基本类型字段的对象。
-
toString
-