|
From: <kin...@us...> - 2004-02-10 01:26:55
|
Update of /cvsroot/teem/teem/src/limn In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24821 Modified Files: io.c obj.c renderLimn.c Log Message: sorry, still debugging Index: io.c =================================================================== RCS file: /cvsroot/teem/teem/src/limn/io.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** io.c 9 Feb 2004 22:48:01 -0000 1.9 --- io.c 9 Feb 2004 23:47:32 -0000 1.10 *************** *** 27,30 **** --- 27,31 ---- limnVertex *vert; int vii; limnPart *part; int partIdx; + limnLook *look; fprintf(file, "parts: %d\n", obj->partNum); *************** *** 34,40 **** for (vii=0; vii<part->vertIdxNum; vii++) { vert = obj->vert + part->vertIdx[vii]; ! fprintf(file, "part %d | %d(%d): " "w=(%g,%g,%g)\tv=(%g,%g,%g)\ts(%g,%g,%g)\n", ! partIdx, vii, part->vertIdx[vii], vert->world[0], vert->world[1], vert->world[2], vert->view[0], vert->view[1], vert->view[2], --- 35,41 ---- for (vii=0; vii<part->vertIdxNum; vii++) { vert = obj->vert + part->vertIdx[vii]; ! fprintf(file, "part %d==%d | %d(%d): " "w=(%g,%g,%g)\tv=(%g,%g,%g)\ts(%g,%g,%g)\n", ! partIdx, vert->partIdx, vii, part->vertIdx[vii], vert->world[0], vert->world[1], vert->world[2], vert->view[0], vert->view[1], vert->view[2], *************** *** 44,50 **** for (eii=0; eii<part->edgeIdxNum; eii++) { edge = obj->edge + part->edgeIdx[eii]; ! fprintf(file, "part %d | %d(%d): " "vert(%d,%d), face(%d,%d)\n", ! partIdx, eii, part->edgeIdx[eii], edge->vertIdxIdx[0], edge->vertIdxIdx[1], edge->faceIdxIdx[0], edge->faceIdxIdx[1]); --- 45,51 ---- for (eii=0; eii<part->edgeIdxNum; eii++) { edge = obj->edge + part->edgeIdx[eii]; ! fprintf(file, "part %d==%d | %d(%d): " "vert(%d,%d), face(%d,%d)\n", ! partIdx, edge->partIdx, eii, part->edgeIdx[eii], edge->vertIdxIdx[0], edge->vertIdxIdx[1], edge->faceIdxIdx[0], edge->faceIdxIdx[1]); *************** *** 53,57 **** for (fii=0; fii<part->faceIdxNum; fii++) { face = obj->face + part->faceIdx[fii]; ! fprintf(file, "part %d | %d(%d): [", partIdx, fii, part->faceIdx[fii]); for (si=0; si<face->sideNum; si++) { fprintf(file, "%d", part->vertIdx[face->vertIdxIdx[si]]); --- 54,59 ---- for (fii=0; fii<part->faceIdxNum; fii++) { face = obj->face + part->faceIdx[fii]; ! fprintf(file, "part %d==%d | %d(%d): [", ! partIdx, face->partIdx, fii, part->faceIdx[fii]); for (si=0; si<face->sideNum; si++) { fprintf(file, "%d", part->vertIdx[face->vertIdxIdx[si]]); *************** *** 59,64 **** fprintf(file, ","); } ! fprintf(file, "]; wn = (%g,%g,%g)\n", face->worldNormal[0], face->worldNormal[1], face->worldNormal[2]); } } --- 61,72 ---- fprintf(file, ","); } ! fprintf(file, "]; wn = (%g,%g,%g)", face->worldNormal[0], face->worldNormal[1], face->worldNormal[2]); + if (face->lookIdx) { + look = obj->look + face->lookIdx; + fprintf(file, "; RGB=(%g,%g,%g)", + look->rgba[0], look->rgba[1], look->rgba[2]); + } + fprintf(file, "\n"); } } Index: obj.c =================================================================== RCS file: /cvsroot/teem/teem/src/limn/obj.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** obj.c 9 Feb 2004 22:48:01 -0000 1.16 --- obj.c 9 Feb 2004 23:47:32 -0000 1.17 *************** *** 68,74 **** --- 68,102 ---- } + void + _limnObjectPartEmpty(limnPart *part) { + + if (part) { + airArrayNuke(part->vertIdxArr); + airArrayNuke(part->edgeIdxArr); + airArrayNuke(part->faceIdxArr); + } + return; + } + + void + _limnObjectFaceEmpty(limnFace *face) { + + if (face) { + airFree(face->vertIdxIdx); + airFree(face->edgeIdxIdx); + } + return; + } + limnObject * limnObjectNix(limnObject *obj) { + int partIdx, faceIdx; + for (partIdx=0; partIdx<obj->partNum; partIdx++) { + _limnObjectPartEmpty(obj->part + partIdx); + } + for (faceIdx=0; faceIdx<obj->faceNum; faceIdx++) { + _limnObjectFaceEmpty(obj->face + faceIdx); + } airArrayNuke(obj->vertArr); airArrayNuke(obj->edgeArr); Index: renderLimn.c =================================================================== RCS file: /cvsroot/teem/teem/src/limn/renderLimn.c,v retrieving revision 1.17 retrieving revision 1.18 diff -C2 -d -r1.17 -r1.18 *** renderLimn.c 9 Feb 2004 22:48:01 -0000 1.17 --- renderLimn.c 9 Feb 2004 23:47:32 -0000 1.18 *************** *** 106,110 **** part = obj->part + face->partIdx; for (vii=0; vii<face->sideNum; vii++) { ! vert = obj->vert + part->vertIdx[vii]; fprintf(win->file, "%g %g %s\n", vert->device[0], vert->device[1], vii ? "L" : "M"); --- 106,110 ---- part = obj->part + face->partIdx; for (vii=0; vii<face->sideNum; vii++) { ! vert = obj->vert + part->vertIdx[face->vertIdxIdx[vii]]; fprintf(win->file, "%g %g %s\n", vert->device[0], vert->device[1], vii ? "L" : "M"); *************** *** 148,152 **** fprintf(win->file, "%g %g M ", vert0->device[0], vert0->device[1]); fprintf(win->file, "%g %g L ", vert1->device[0], vert1->device[1]); ! fprintf(win->file, "%g W ", win->ps.lineWidth[edge->type]); fprintf(win->file, "S\n"); } --- 148,152 ---- fprintf(win->file, "%g %g M ", vert0->device[0], vert0->device[1]); fprintf(win->file, "%g %g L ", vert1->device[0], vert1->device[1]); ! fprintf(win->file, "%g W 0 Gr ", win->ps.lineWidth[edge->type]); fprintf(win->file, "S\n"); } *************** *** 183,187 **** limnObjectDepthSortParts(obj); ! _limnPSPreamble(obj, cam, win); --- 183,187 ---- limnObjectDepthSortParts(obj); ! _limnPSPreamble(obj, cam, win); *************** *** 222,228 **** */ } else { ! /* this part is either a lone face or a solid */ ! ! /* draw the front-facing, shaded faces */ for (fii=0; fii<part->faceIdxNum; fii++) { face = obj->face + part->faceIdx[fii]; --- 222,227 ---- */ } else { ! /* this part is either a lone face or a solid: ! draw the front-facing, shaded faces */ for (fii=0; fii<part->faceIdxNum; fii++) { face = obj->face + part->faceIdx[fii]; |