diff options
author | Daniel Dunbar <daniel@zuster.org> | 2005-03-28 10:46:21 +0400 |
---|---|---|
committer | Daniel Dunbar <daniel@zuster.org> | 2005-03-28 10:46:21 +0400 |
commit | 8acfd730cff7f338386b0c99b660bb6412792803 (patch) | |
tree | f1690e25c40f6efd87b1f0c70168f0df27fbd858 /source/blender/blenkernel/BKE_DerivedMesh.h | |
parent | 09596b04a56632f5a63ede5e2a9feb5a4f2288b2 (diff) |
- added drawMapped{Verts,Edges,Faces}EMSelect calls to DerivedMesh with
implementations
- updated drawobject selection code to use DerivedMesh (last DispListMesh
usage in drawobject.c that needs to be replaced! Woot!)
- interface could still be a lot cleaner, mostly calculating indices for
the various things to pass to selection color routine is hacky.
Diffstat (limited to 'source/blender/blenkernel/BKE_DerivedMesh.h')
-rw-r--r-- | source/blender/blenkernel/BKE_DerivedMesh.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/source/blender/blenkernel/BKE_DerivedMesh.h b/source/blender/blenkernel/BKE_DerivedMesh.h index 8146cdea349..e66b36d9518 100644 --- a/source/blender/blenkernel/BKE_DerivedMesh.h +++ b/source/blender/blenkernel/BKE_DerivedMesh.h @@ -105,6 +105,14 @@ struct DerivedMesh { */ void (*drawFacesEM)(DerivedMesh *dm, int useColor, unsigned char *baseCol, unsigned char *selCol); + /* Draw mapped verts as bgl points + * o Call setColor(offset+index) for each vert, where index is the + * vert's index in the EditMesh. Return offset+count where count + * is the total number of mapped verts. + * o Only if mapped EditVert->h==0 + */ + int (*drawMappedVertsEMSelect)(DerivedMesh *dm, void (*setColor)(int index), int offset); + /* Draw mapped edges as lines * o Call setColor(offset+index) for each edge, where index is the * edge's index in the EditMesh. Return offset+count where count @@ -113,6 +121,14 @@ struct DerivedMesh { */ int (*drawMappedEdgesEMSelect)(DerivedMesh *dm, void (*setColor)(int index), int offset); + /* Draw mapped faces + * o Call setColor(offset+index) for each face, where index is the + * face's index in the EditMesh. Return offset+count where count + * is the total number of mapped faces. + * o Only if mapped EditFace->h==0 + */ + int (*drawMappedFacesEMSelect)(DerivedMesh *dm, void (*setColor)(int index), int offset); + void (*release)(DerivedMesh *dm); }; |