Evalutate Surface With Code's surface normal is not the "same" direction with Grasshopper's "Evalutate Surface" Component

Hi @dale,

In my case, the input is a surface, but I still get the flipped normal direction using C#.

    S.SetDomain(0, new Interval(0.0, 1));
    S.SetDomain(1, new Interval(0.0, 1));

    Point3d cp = S.PointAt(0.5, 0.5);
    Vector3d nv = S.NormalAt(0.5, 0.5);

    centerPt = cp;
    normal = nv;

[normal.gh|attachment]

(upload://zrUZsMpS1egi2JMLZPep4xpDdTV.gh) (8.5 KB)
Can I know the reason behind this behavior? I’m attaching this example file.
Thank you in advance.

Dongyeopnormal.gh (8.5 KB)