Beispiel #1
0
 public List <PointF> GetPath()
 {
     if (arap == null)
     {
         return(null);
     }
     return(arap.GetPath());
 }
Beispiel #2
0
        public static ARAPDeformation Combine(ARAPDeformation arap1, ARAPDeformation arap2, CharacterRange sectionRange1, CharacterRange sectionRange2)
        {
            var arap = new ARAPDeformation();

            // パスの統合
            var path1 = arap1.GetPath();
            var path2 = arap2.GetPath();
            var path  = CombinePath(path1, path2, sectionRange1, sectionRange2);

            // メッシュの統合
            CombineMesh(arap1, arap2, path, arap);

            // partの統合。接合面付近のpartを同じにする


            throw new NotImplementedException();
        }
Beispiel #3
0
        public static void SetPathControlPoints(ARAPDeformation arap)
        {
            if (arap == null)
            {
                return;
            }

            arap.ClearControlPoints();

            var path = arap.GetPath();

            if (path == null)
            {
                return;
            }

            for (int i = 0; i < path.Count; i++)
            {
                arap.AddControlPoint(arap.meshPointList[i], arap.orgMeshPointList[i]);
            }
        }