// create an Nth order infinite polynomial surface // poly { N [sturm] } // N = order of poly, M terms where M = (N+1)*(N+2)*(N+3)/6 poly { 5, // order of polynomial (2...7) < // x^5, x^4y, x^4z, x^4, 0, 0, 0, 0, // x^3y^2, x^3yz, x^3y, x^3z^2, 0, 0, 0, 0, // x^3z, x^3, x^2y^3, x^2y^2z, 0, 0, 0, 0, // x^2y^2, x^2yz^2, x^2yz, x^2y, 0, 0, 0, 0, // x^2z^3, x^2z^2, x^2z, x^2, 0, 0, 0, 0, // xy^4, xy^3z, xy^3, xy^2z^2, 0, 0, 0, 0, // xy^2z, xy^2, xyz^3, xyz^2, 0, 0, 0, 0, // xyz, xy, xz^4, xz^3, 0, 0, 0, 0, // xz^2, xz, x, y^5, 0, 0, 0, 0, // y^4z, y^4, y^3z^2, y^3z, 0, 0, 0, 0, // y^3, y^2z^3, y^2z^2, y^2z, 0, 0, 0, 0, // y^2, yz^4, yz^3, yz^2, 0, 0, 0, 0, // yz, y, z^5, z^4, 0, 0, 0, 0, // z^3, z^2, z, C 0, 0, 0, 0 > sturm // optional, slower but reduces speckles }