internal TurnCircleArcSegment(IArcSegment arcSegment, Constants.TurnDirection direction, Constants.CircleOrigin circleOrigin) { ArcSegment = arcSegment; m_Direction = direction; m_CircleOrigin = circleOrigin; AngleToXAxisAtEndPoint = arcSegment.AngleToXAxisAtEndPoint; AngleToXAxisAtStartPoint = arcSegment.AngleToXAxisAtStartPoint; }
public TurnCircle([NotNull] ICircle circle, Constants.CircleSide side, Constants.CircleOrigin origin, Constants.TurnDirection turnDirection) { m_Circle = circle; m_Side = side; m_Origin = origin; m_TurnDirection = turnDirection; m_Radius = new Distance(Circle.Radius); }
public IPolylineSegment Reverse() { var arcSegment = ArcSegment.Reverse() as IArcSegment; Constants.CircleOrigin origin = m_CircleOrigin == Constants.CircleOrigin.Start ? Constants.CircleOrigin.Finish : Constants.CircleOrigin.Start; var reverse = new TurnCircleArcSegment(arcSegment, m_Direction, origin); return(reverse); }
public TurnCircleArcSegment([NotNull] ICircle circle, Constants.TurnDirection direction, Constants.CircleOrigin circleOrigin, [NotNull] Point startPoint, [NotNull] Point endPoint) { ArcSegment = new ArcSegment(circle, startPoint, endPoint, direction); m_Direction = direction; m_CircleOrigin = circleOrigin; AngleToXAxisAtEndPoint = ArcSegment.AngleToXAxisAtEndPoint; AngleToXAxisAtStartPoint = ArcSegment.AngleToXAxisAtStartPoint; }