public GregoryPatch(BezierSurfaceGregoryExt b1, BezierSurfaceGregoryExt b2, BezierSurfaceGregoryExt b3) { b1.ControlPoints[0, 3] = b2.ControlPoints[0, 0]; b2.ControlPoints[0, 3] = b3.ControlPoints[0, 0]; b3.ControlPoints[0, 3] = b1.ControlPoints[0, 0]; BezierSurfaces[0] = b1; BezierSurfaces[1] = b2; BezierSurfaces[2] = b3; gregorySubpatches[0] = new GregorySubpatch(b1, b2); gregorySubpatches[1] = new GregorySubpatch(b2, b3); gregorySubpatches[2] = new GregorySubpatch(b3, b1); }
public GregorySubpatch(BezierSurfaceGregoryExt b1, BezierSurfaceGregoryExt b2) { left = b1; right = b2; for (int i = 0; i < 20; i++) { ControlPoints[i] = new MyPoint(); } for (int i = 0; i < 4; i++) { for (int j = 0; j < 6; j++) { ControlP[i, j] = new MyPoint(); } } points = new List <List <MyPoint> >(); x = new BernsteinPolynomial(3); y = new BernsteinPolynomial(3); z = new BernsteinPolynomial(3); tx = new BernsteinPolynomial(3); ty = new BernsteinPolynomial(3); tz = new BernsteinPolynomial(3); }