예제 #1
0
        void update_curvature(int vid)
        {
            double angle_sum = 0;

            exterior_angle_sums.TryGetValue(vid, out angle_sum);
            foreach (int tid in fillmesh.VtxTrianglesItr(vid))
            {
                Index3i et  = fillmesh.GetTriangle(tid);
                int     idx = IndexUtil.find_tri_index(vid, ref et);
                angle_sum += fillmesh.GetTriInternalAngleR(tid, idx);
            }
            curvatures[vid] = angle_sum - MathUtil.TwoPI;
        }