예제 #1
0
 public void SetAsStraight(Vector3 startPoint, Vector3 endPoint, float steps)
 {
     segmentType       = RFPathSegmentType.STRAIGHT;
     segmentSteps      = steps;
     segmentStartPoint = startPoint;
     segmentEndPoint   = endPoint;
 }
예제 #2
0
 public void SetAsBezier2D(Vector3 segStart, Vector3 cp1, Vector3 cp2, Vector3 segEnd, float steps)
 {
     segmentType       = RFPathSegmentType.BEZIER_CURVE;
     segmentSteps      = steps;
     segmentStartPoint = segStart;
     segmentEndPoint   = segEnd;
     controlPoint1     = cp1;
     controlPoint2     = cp2;
 }
예제 #3
0
 public void SetAsCatmulRom(Vector3 cp1, Vector3 segStart, Vector3 segEnd, Vector3 cp2, float steps, float talpha)
 {
     segmentType       = RFPathSegmentType.CATMULL_ROM_SPLINE;
     segmentSteps      = steps;
     segmentStartPoint = segStart;
     segmentEndPoint   = segEnd;
     controlPoint1     = cp1;
     controlPoint2     = cp2;
     alpha             = talpha;
 }
예제 #4
0
        /// <summary>
        /// Sets segment options based on lastSegment
        /// </summary>
        /// <param name="newPoint">New Endpoint for the segment </param>
        /// <param name="lastSegment">Segment to base startpoint and other options from</param>
        public void CreateNextFromOther(Vector3 newPoint, RFPathSegment lastSegment)
        {
            segmentType       = lastSegment.segmentType;
            segmentSteps      = lastSegment.segmentSteps;
            segmentStartPoint = lastSegment.segmentEndPoint;
            segmentEndPoint   = newPoint;

            ResetControlPoints(true);

            alpha = lastSegment.alpha;
        }
예제 #5
0
 public void SetAsFixed(List <Vector3> points)
 {
     segmentType   = RFPathSegmentType.FIXED;
     segmentPoints = new List <Vector3>(points);
 }