Home | History | Annotate | Download | only in math

Lines Matching refs:CN

114  * control net cn.
118 _math_horner_bezier_surf(GLfloat * cn, GLfloat * out, GLfloat u, GLfloat v,
121 GLfloat *cp = cn + uorder * vorder * dim;
131 GLfloat *ucp = &cn[j * dim];
155 else /* uorder=1 -> cn defines a curve in v */
156 _math_horner_bezier_curve(cn, out, v, dim, vorder);
164 for (i = 0; i < uorder; i++, cn += uinc) {
165 /* For constant i all cn[i][j] (j=0..vorder) are located */
169 _math_horner_bezier_curve(cn, &cp[i * dim], v, dim, vorder);
175 else /* vorder=1 -> cn defines a curve in u */
176 _math_horner_bezier_curve(cn, out, u, dim, uorder);
191 * values in the control net cn.
195 _math_de_casteljau_surf(GLfloat * cn, GLfloat * out, GLfloat * du,
199 GLfloat *dcn = cn + uorder * vorder * dim;
212 #define CN(I,J,K) cn[(I)*uinc+(J)*dim+(K)]
218 du[k] = vs * (CN(1, 0, k) - CN(0, 0, k)) +
219 v * (CN(1, 1, k) - CN(0, 1, k));
222 dv[k] = us * (CN(0, 1, k) - CN(0, 0, k)) +
223 u * (CN(1, 1, k) - CN(1, 0, k));
226 out[k] = us * (vs * CN(0, 0, k) + v * CN(0, 1, k)) +
227 u * (vs * CN(1, 0, k) + v * CN(1, 1, k));
233 DCN(1, 0) = CN(1, 0, k) - CN(0, 0, k);
234 DCN(0, 0) = us * CN(0, 0, k) + u * CN(1, 0, k);
238 DCN(1, j + 1) = CN(1, j + 1, k) - CN(0, j + 1, k);
242 DCN(0, j + 1) = us * CN(0, j + 1, k) + u * CN(1, j + 1, k);
270 DCN(0, 1) = CN(0, 1, k) - CN(0, 0, k);
271 DCN(0, 0) = vs * CN(0, 0, k) + v * CN(0, 1, k);
274 DCN(i + 1, 1) = CN(i + 1, 1, k) - CN(i + 1, 0, k);
278 DCN(i + 1, 0) = vs * CN(i + 1, 0, k) + v * CN(i + 1, 1, k);
307 DCN(i, 0) = us * CN(i, 0, k) + u * CN(i + 1, 0, k);
309 DCN(i, j + 1) = us * CN(i, j + 1, k) + u * CN(i + 1, j + 1, k);
339 DCN(i, 0) = us * CN(i, 0, k) + u * CN(i + 1, 0, k);
341 DCN(i, j + 1) = us * CN(i, j + 1, k) + u * CN(i + 1, j + 1, k);
394 DCN(i, 0) = us * CN(i, 0, k) + u * CN(i + 1, 0, k);
396 DCN(i, j + 1) = us * CN(i, j + 1, k) + u * CN(i + 1, j + 1, k);
445 #undef CN