Class EllipsePositionsEnumerator
A custom enumerator used to iterate over all positions on the outside of an ellipse efficiently.
Generally, you should use GetEllipse(Point, Point) to get an instance of this, rather than creating one yourself.
Namespace: SadRogue.Primitives
Assembly: TheSadRogue.Primitives.dll
Syntax
public sealed class EllipsePositionsEnumerator : ValueType, IEnumerator<Point>, IEnumerator, IDisposable, IEnumerable<Point>, IEnumerable
Remarks
This type is a struct, and as such is much more efficient when used in a foreach loop than a function returning IEnumerable<Point> by using "yield return". This type does implement IEnumerable<T>, so you can pass it to functions which require one (for example, System.LINQ). However, this will have reduced performance due to boxing of the iterator.
Constructors
EllipsePositionsEnumerator(Point, Point)
Creates an enumerator which iterates over all positions on the outside of the given ellipse.
Declaration
public EllipsePositionsEnumerator(Point f1, Point f2)
Parameters
Type | Name | Description |
---|---|---|
Point | f1 | The first focus point of the ellipse. |
Point | f2 | The second focus point of the ellipse. |
Properties
Current
The current value for enumeration.
Declaration
public Point Current { get; }
Property Value
Type | Description |
---|---|
Point |
Methods
GetEnumerator()
Returns this enumerator.
Declaration
public EllipsePositionsEnumerator GetEnumerator()
Returns
Type | Description |
---|---|
EllipsePositionsEnumerator | This enumerator. |
MoveNext()
Advances the iterator to the next position.
Declaration
public bool MoveNext()
Returns
Type | Description |
---|---|
Boolean | True if the a new position on the outside of the ellipse exists; false otherwise. |
ToEnumerable()
Obsolete.
Declaration
public IEnumerable<Point> ToEnumerable()
Returns
Type | Description |
---|---|
IEnumerable<Point> |