4f5530c87e
TODO: Generate Points distinct from eachother
39 lines
1.1 KiB
C#
39 lines
1.1 KiB
C#
using CommunityToolkit.Mvvm.Input;
|
|
|
|
namespace DelauneyTriangulation.Models;
|
|
|
|
public static class Geometries
|
|
{
|
|
public sealed class Point(double x, double y, double z = 3)
|
|
{
|
|
public double X { get; } = x;
|
|
public double Y { get; } = y;
|
|
public double R { get; } = z;
|
|
|
|
public double Left => X - R;
|
|
public double Top => Y - R;
|
|
public double Size => 2 * R;
|
|
}
|
|
|
|
public sealed class Edge(double x1, double y1, double x2, double y2)
|
|
{
|
|
public double X1 { get; } = x1;
|
|
public double X2 { get; } = x2;
|
|
public double Y1 { get; } = y1;
|
|
public double Y2 { get; } = y2;
|
|
|
|
public Avalonia.Point Start => new(X1, Y1);
|
|
public Avalonia.Point End => new(X2, Y2);
|
|
}
|
|
|
|
public sealed class Circle(double x, double y, double r)
|
|
{
|
|
public double X { get; } = x;
|
|
public double Y { get; } = y;
|
|
public double R { get; } = r;
|
|
|
|
public double Left => X - R;
|
|
public double Top => Y - R;
|
|
public double Diameter => 2 * R;
|
|
}
|
|
} |