Show / Hide Table of Contents

    Class InfiniteLine

    An infinite line. Parameterization of the line is -infinity -> 0 (Origin) -> +infinity

    Inheritance
    System.Object
    Curve
    InfiniteLine
    Implements
    ICurve
    ITransformable<Curve>
    Inherited Members
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: Elements.Geometry
    Assembly: Hypar.Elements.dll
    Syntax
    public class InfiniteLine : Curve, ICurve, ITransformable<Curve>

    Constructors

    InfiniteLine(Vector3, Vector3)

    Create an infinite line.

    Declaration
    public InfiniteLine(Vector3 origin, Vector3 direction)
    Parameters
    Type Name Description
    Vector3 origin
    Vector3 direction

    Properties

    Direction

    The direction of the line.

    Declaration
    public Vector3 Direction { get; }
    Property Value
    Type Description
    Vector3

    Origin

    The origin of the line.

    Declaration
    public Vector3 Origin { get; }
    Property Value
    Type Description
    Vector3

    Methods

    ParameterAtDistanceFromParameter(Double, Double)

    Get the parameter at a distance from the start parameter along the curve.

    Declaration
    public override double ParameterAtDistanceFromParameter(double distance, double start)
    Parameters
    Type Name Description
    System.Double distance

    The distance from the start parameter.

    System.Double start

    The parameter from which to measure the distance.

    Returns
    Type Description
    System.Double
    Overrides
    Curve.ParameterAtDistanceFromParameter(Double, Double)

    PointAt(Double)

    Get the point on the line at the parameter.

    Declaration
    public override Vector3 PointAt(double u)
    Parameters
    Type Name Description
    System.Double u
    Returns
    Type Description
    Vector3
    Overrides
    Curve.PointAt(Double)

    TransformAt(Double)

    Get a transform whose XY plane is perpendicular to the curve, and whose positive Z axis points along the curve.

    Declaration
    public override Transform TransformAt(double u)
    Parameters
    Type Name Description
    System.Double u

    The parameter along the Line at which to calculate the Transform.

    Returns
    Type Description
    Transform

    A transform.

    Overrides
    Curve.TransformAt(Double)

    Transformed(Transform)

    Create a transformed copy of this curve. Use of non-affine transforms (i.e. scale) will result in unpredictable results for curve methods such as Length().

    Declaration
    public override Curve Transformed(Transform transform)
    Parameters
    Type Name Description
    Transform transform

    The transform to apply.

    Returns
    Type Description
    Curve
    Overrides
    Curve.Transformed(Transform)

    Implements

    ICurve
    ITransformable<T>