Skip to content

CIRCLE

来源: https://www.freebasic.net/wiki/wikka.php?wakka=KeyPgCircle 最后更新: 2024-12-06

绘制椭圆或圆的图形语句。

语法

Circle [target ,] [STEP] (x, y), radius [, [color] [, [start] [, [end] [, [aspect] [, F]]]]]

参数

  • target — 可选;指定要绘制的图像缓冲区(来自 ImageCreateGet (Graphics))。默认为屏幕当前工作页面。
  • STEP — 表示坐标相对于当前图形光标位置。
  • (x, y) — 椭圆/圆的圆心坐标。
  • radius — 圆的半径;对于椭圆,为半长轴(最长半径)。
  • color — 颜色属性。如果省略,使用当前前景颜色。
  • start — 起始角度(弧度,范围 -2π 到 2π)。如果为负值,则从圆心到该点绘制一条线。
  • end — 终止角度。可以小于起始角度。如果指定了 start,默认值为 2π。
  • aspect — 纵横比(高度/宽度比)。ScreenRes 模式默认值为 1.0;Screen 模式自动计算以产生完美圆形。
  • F — 填充标志。如果指定,则用所选颜色填充圆/椭圆。

说明

Circle 根据给定参数绘制圆、椭圆或弧。

纵横比规则:

  • 如果 aspect < 1.0:radius 为 x 轴半径。
  • 如果 aspect >= 1.0:radius 为 y 轴半径。

纵横比公式:ratio = (y_radius / x_radius) * pixel_aspect_ratio

Window 和/或 View (Graphics) 设置的自定义坐标系会影响绘制。Circle 完成后,当前图形光标位置被设置为提供的圆心。

注意:Circle 绘制的曲线可能会在某些位置出现像素重绘。

示例

vb
' Set 640x480 mode, 256 colors
Screen 18
' Draws a circle in the center
Circle (320, 240), 200, 15
' Draws a filled ellipse
Circle (320, 240), 200, 2, , , 0.2, F
' Draws a small arc
Circle (320, 240), 200, 4, 0.83, 1.67, 3
Sleep

与 QB 的区别

  • target 是 FreeBASIC 新增的。
  • FreeBASIC 使用不同的算法,因此每个像素的结果可能有所不同。
  • 填充圆/椭圆的 F 标志是 FreeBASIC 新增的。

另请参阅

基于 FreeBASIC 官方文档翻译 如有侵权请联系我们删除
FreeBASIC 是开源项目,与微软公司无隶属关系