Lines Matching defs:bpm
247 void OpenGLSurfaceEvaluator::inBPMEval(bezierPatchMesh* bpm)
252 int ustride = bpm->bpatch->dimension * bpm->bpatch->vorder;
253 int vstride = bpm->bpatch->dimension;
255 (bpm->bpatch->dimension == 3)? GL_MAP2_VERTEX_3 : GL_MAP2_VERTEX_4,
256 bpm->bpatch->umin,
257 bpm->bpatch->umax,
259 bpm->bpatch->uorder,
260 bpm->bpatch->vmin,
261 bpm->bpatch->vmax,
263 bpm->bpatch->vorder,
264 bpm->bpatch->ctlpoints);
266 bpm->vertex_array = (float*) malloc(sizeof(float)* (bpm->index_UVarray/2) * 3+1); /*in case the origional dimenion is 4, then we need 4 space to pass to evaluator.*/
267 assert(bpm->vertex_array);
268 bpm->normal_array = (float*) malloc(sizeof(float)* (bpm->index_UVarray/2) * 3);
269 assert(bpm->normal_array);
341 for(i=0; i<bpm->index_length_array; i++)
343 beginCallBack(bpm->type_array[i], userData);
344 for(j=0; j<bpm->length_array[i]; j++)
346 u = bpm->UVarray[k];
347 v = bpm->UVarray[k+1];
349 bpm->vertex_array+l,
350 bpm->normal_array+l);
352 normalCallBack(bpm->normal_array+l, userData);
353 vertexCallBack(bpm->vertex_array+l, userData);
1826 void OpenGLSurfaceEvaluator::inBPMEvalEM(bezierPatchMesh* bpm)
1835 if(bpm->bpatch != NULL)
1837 bezierPatch* p=bpm->bpatch;
1868 if(bpm->bpatch != NULL){
1869 bezierPatch* p = bpm->bpatch;
1883 if(bpm->bpatch_normal != NULL){
1884 bezierPatch* p = bpm->bpatch_normal;
1898 if(bpm->bpatch_color != NULL){
1899 bezierPatch* p = bpm->bpatch_color;
1913 if(bpm->bpatch_texcoord != NULL){
1914 bezierPatch* p = bpm->bpatch_texcoord;
1932 for(i=0; i<bpm->index_length_array; i++)
1935 if(bpm->type_array[i] == GL_POLYGON) //a mesh
1937 GLfloat *temp = bpm->UVarray+k;
1954 LOD_eval(bpm->length_array[i], bpm->UVarray+k, bpm->type_array[i],
1958 k+= 2*bpm->length_array[i];
1963 if( bpm->bpatch->umin == 2 && bpm->bpatch->umax == 3
1964 && bpm->bpatch->vmin ==2 && bpm->bpatch->vmax == 3)
1988 if( bpm->bpatch->umin == 1 && bpm->bpatch->umax == 2
1989 && bpm->bpatch->vmin ==2 && bpm->bpatch->vmax == 3)
2013 beginCallBack(bpm->type_array[i], userData);
2015 for(j=0; j<bpm->length_array[i]; j++)
2017 u = bpm->UVarray[k];
2018 v = bpm->UVarray[k+1];