예제 #1
0
 private void GetKnotsForSeg(int segIndx, out SplineKnot segBegin, out SplineKnot segEnd)
 {
     if (closeShape && (segIndx == knots.Count - 1))
     {
         segBegin = knots[segIndx];
         segEnd   = knots[0];
     }
     else
     {
         segBegin = knots[segIndx];
         segEnd   = knots[segIndx + 1];
     }
 }
예제 #2
0
        private void FillSegBuffer(SplineKnot segBegin, SplineKnot segEnd)
        {
            if (segList == null)
            {
                segList = new List <Vector3>();
            }
            segList.Clear();

            segList.Add(segBegin.transform.position);
            if (segBegin.Type != SplineKnot.KnotType.Corner)
            {
                segList.Add(segBegin.transform.TransformPoint(segBegin.LocalB));
            }

            if (segEnd.Type != SplineKnot.KnotType.Corner)
            {
                segList.Add(segEnd.transform.TransformPoint(segEnd.LocalA));
            }
            segList.Add(segEnd.transform.position);
        }