This interface represents a single circle(LCircle object). More...
Public Member Functions | |
| double | Concentric (ILCircle *circle) |
| void | Draw (BOOL bFill, HDC hdc, double zoomX, double zoomY, double panX, double panY) |
| void | FromAnnulusRegion (ILAnnulusRegion *val) |
| void | FromCircleRegion (ILCircleRegion *val) |
| ILArc * | GetArc (double aStart, double aEnd) |
| double | GetArea () |
| ILPoint * | GetCenter () |
| double | GetPerimeter () |
| LPVIntersectType | IntersectLine (ILLine *line, ILPoints **intersectPoints) |
| LPVPointTestResult | PointTest (ILPoint *point) |
| ILPolygon * | Resample (int num) |
| void | Set (double x, double y, double r) |
| ILAnnulusRegion * | ToAnnulusRegion (int inExp, int outExp) |
| ILCircleRegion * | ToCircleRegion () |
| ILCircle * | Transform (ILTransform *tf) |
| ILCircle * | Translate (double offsetX, double offsetY) |
Public Member Functions inherited from ILObject | |
| ILObject * | Copy () |
| LPVErrorCode | Load (LString filename) |
| void | Reset () |
| LPVErrorCode | Save (LString filename) |
| BOOL | Valid () |
Properties | |
| double | Radius [get, set] |
| The radius of the circle. | |
| double | X [get, set] |
| The x-coordinate of the circle's center point. | |
| double | Y [get, set] |
| The y-coordinate of the circle's center point. | |
This interface represents a single circle(LCircle object).
| double Concentric | ( | ILCircle * | circle | ) |
Evaluate whether this and the input circle are concentric
| [in] | circle | The input circle |
| result | Return the evaluation result, it's a value in (0, 1). For two perfect concentric circles, it's 1. |
| void Draw | ( | BOOL | bFill, |
| HDC | hdc, | ||
| double | zoomX, | ||
| double | zoomY, | ||
| double | panX, | ||
| double | panY | ||
| ) |
Draw the circle on HDC.
| [in] | bFill | Whether to fill the circle using current brush. |
| void FromAnnulusRegion | ( | ILAnnulusRegion * | val | ) |
Set placement of the circle from the input annulus region, the radii is set to the averaging of the inner and outer circle of the annulus region.
| void FromCircleRegion | ( | ILCircleRegion * | val | ) |
Set placement of the circle from the input circle region.
| ILArc* GetArc | ( | double | aStart, |
| double | aEnd | ||
| ) |
Create an arc starts clockwise from the aStart and ends to aEnd.
| [in] | aStart | The start angle in degrees |
| [in] | aEnd | The end angle in degrees |
| Return | the arc object |
| double GetArea | ( | ) |
Get the area of the circle
| val | Return the area value |
| ILPoint* GetCenter | ( | ) |
Get the center point of the circle
| double GetPerimeter | ( | ) |
Get the perimeter of the circle
| val | Return the perimeter value |
| LPVIntersectType IntersectLine | ( | ILLine * | line, |
| ILPoints ** | intersectPoints | ||
| ) |
Determines whether this circle intersects with the given line. Return the intersection points if they are intersected.
| [in] | line | The input line |
| [out] | intersectPoints | Output the intersection points, it should be an empty set for not-intersected case, or 1 point for tangent case, or 2 points for intersected case. |
| type | Return the intersection type depends on the count of intersection points which is on the line segment, Bounded (2), Partial (1) or Unbounded (0). |
| LPVPointTestResult PointTest | ( | ILPoint * | point | ) |
Determines whether the point is inside this circle, outside, or lies on the edge
| [in] | point | The input point |
| val | Return the test result |
| ILPolygon* Resample | ( | int | num | ) |
Resample the circle object into a closed polygon of the specified vertex count
| [in] | num | The count of the resampled vertexes, at least 3 |
| result | Return the resampling result polygon |
| void Set | ( | double | x, |
| double | y, | ||
| double | r | ||
| ) |
Set placement of the circle
| [in] | x | The x-coordinate of the circle's center point |
| [in] | y | The y-coordinate of the circle's center point |
| [in] | r | The radius of the circle |
| ILAnnulusRegion* ToAnnulusRegion | ( | int | inExp, |
| int | outExp | ||
| ) |
Generate an annulus region use the circle object with the given inside and outside expansion
| [in] | inExp | The expansion pixels from the circle's placement that generate the inner circle of the annulus region |
| [in] | outExp | The expansion pixels from the circle's placement that generate the outer circle of the annulus region |
| val | Return the circle region |
| ILCircleRegion* ToCircleRegion | ( | ) |
Generate a circle region use the circle object
| ILCircle* Transform | ( | ILTransform * | tf | ) |
Transform the circle via the given transformation and return a new circle. Note that for an affine or perspective transformation, the result circle is the bounding circle of the mapping result which may be an ellipse.
| [in] | tf | The transformation. |
| Return | the new circle |
| ILCircle* Translate | ( | double | offsetX, |
| double | offsetY | ||
| ) |
Translate the circle by the given offset and return a new circle
| [in] | offsetX | The x-coordinate of the offset |
| [in] | offsetY | The y-coordinate of the offset |
| result | Return the new circle |