# Visual Basic Reference

# Circle Method

Draws a circle, ellipse, or arc on an object.

**Syntax**

*object***.Circle** [**Step**] **(* x, y*),**

*radius,*[

*color, start, end, aspect*]

The **Circle** method syntax has the following object qualifier and parts:

Part |
Description |

object |
Optional. Object expression that evaluates to an object in the Applies To list. If object is omitted, the Form with the focus is assumed to be object. |

Step |
Optional. Keyword specifying that the center of the circle, ellipse, or arc is relative to the current coordinates given by the CurrentX and CurrentY properties of object. |

(x, y) |
Required. Single values indicating the coordinates for the center point of the circle, ellipse, or arc. The ScaleMode property of object determines the units of measure used. |

radius |
Required. Single value indicating the radius of the circle, ellipse, or arc. The ScaleMode property of object determines the unit of measure used. |

color |
Optional. Long integer value indicating the RGB color of the circle's outline. If omitted, the value of the ForeColor property is used. You can use the RGB function or QBColor function to specify the color. |

start, end |
Optional. Single-precision values. When an arc or a partial circle or ellipse is drawn, start and end specify (in radians) the beginning and end positions of the arc. The range for both is 2 pi radians to 2 pi radians. The default value for start is 0 radians; the default for end is 2 * pi radians. |

aspect |
Optional. Single-precision value indicating the aspect ratio of the circle. The default value is 1.0, which yields a perfect (non-elliptical) circle on any screen. |

**Remarks**

To fill a circle, set the **FillColor** and **FillStyle** properties of the object on which the circle or ellipse is drawn. Only a closed figure can be filled. Closed figures include circles, ellipses, or pie slices (arcs with radius lines drawn at both ends).

When drawing a partial circle or ellipse, if *start* is negative, **Circle** draws a radius to *start*, and treats the angle as positive; if *end* is negative, **Circle** draws a radius to *end* and treats the angle as positive. The **Circle** method always draws in a counter-clockwise (positive) direction.

The width of the line used to draw the circle, ellipse, or arc depends on the setting of the **DrawWidth** property. The way the circle is drawn on the background depends on the setting of the **DrawMode** and **DrawStyle** properties.

When drawing pie slices, to draw a radius to angle 0 (giving a horizontal line segment to the right), specify a very small negative value for *start*, rather than zero.

You can omit an argument in the middle of the syntax, but you must include the argument's comma before including the next argument. If you omit an optional argument, omit the comma following the last argument you specify.

When **Circle** executes, the **CurrentX** and **CurrentY** properties are set to the center point specified by the arguments.

This method cannot be used in an **WithEnd With** block.