public static HeightMeasurements Null() { return(new HeightMeasurements() { AngleBottom = Angle.Null(), AngleTop = Angle.Null(), DistanceBottom = Distance.Null(), DistanceTop = Distance.Null(), VerticalOffset = DirectedDistance.Null() }); }
public static HeightMeasurements Create(Distance distanceTop, Angle angleTop, Distance distanceBottom, Angle angleBottom, DirectedDistance verticalOffset) { return(new HeightMeasurements() { AngleBottom = angleBottom, AngleTop = angleTop, DistanceBottom = distanceBottom, DistanceTop = distanceTop, VerticalOffset = verticalOffset }); }
private static Distance calculateOffset(Distance distanceTop, Angle angleTop, Distance distanceBottom, Angle angleBottom, DirectedDistance verticalOffset) { float offset = (float)(Math.Cos(angleBottom.Radians) * (double)distanceBottom.Feet - Math.Cos(angleTop.Radians) * (double)distanceBottom.Feet); if (offset == 0f) { return(Distance.Null()); } return(Distance.Create(Math.Abs(offset))); }
private static Distance calculateHeight(Distance distanceTop, Angle angleTop, Distance distanceBottom, Angle angleBottom, DirectedDistance verticalOffset) { float height = (float)(Math.Sin(angleTop.Radians) * (double)distanceTop.Feet + Math.Sin(angleBottom.Radians) * (double)distanceBottom.Feet + (double)verticalOffset.Feet); if (height == 0f) { return(Distance.Null()); } return(Distance.Create(height)); }