GeometriCS/intersections/IntersectionPlaneToPlane.cs
Zdeněk Borovec ad0599f481 Decided on architecture
A sizeable commit, I know, but I wanted to try and write a few aspects before deciding to settle on a system. This one seems to be fine so far. But I would still not rely on it not changing.
2024-04-18 01:29:47 +02:00

57 lines
1.6 KiB
C#

namespace GeometriCS
{
/// <summary>
/// Intersection between two planes, double precision.
/// </summary>
public struct IntersectionPlaneToPlaned
{
/// <summary>
/// Possible statuses the intersection can be.
/// </summary>
public enum Statuses
{
/// <summary>
/// Intersection is valid.
/// </summary>
SUCCESS,
/// <summary>
/// The two intersecting planes are coplanar.
/// </summary>
COPLANAR,
}
/// <summary>
/// First of the intersecting planes.
/// </summary>
public Planed Plane1 { get; }
/// <summary>
/// The second intersecting plane.
/// </summary>
public Planed Plane2 { get; }
/// <summary>
/// Status of the intersection.
/// </summary>
public Statuses Status { get; }
/// <summary>
/// Resulting intersection line between the two planes.
/// </summary>
public Line3d? Result { get; }
/// <summary>
/// Constructor for Planed to Planed intersection.
/// </summary>
/// <param name="plane1">First of the intersecting planes.</param>
/// <param name="plane2">Second of the intersecting planes.</param>
public IntersectionPlaneToPlaned(Planed plane1, Planed plane2)
{
Plane1 = plane1;
Plane2 = plane2;
// Process the intersection.
throw new NotImplementedException();
}
}
}