Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGeoffrey Bantle <hairbat@yahoo.com>2008-02-25 07:53:37 +0300
committerGeoffrey Bantle <hairbat@yahoo.com>2008-02-25 07:53:37 +0300
commitd566fe665ad1c9f5a1078fba76f230fdd8675452 (patch)
treed07bbfbe316bf789438236934697d61595150d22 /source/blender/blenkernel/BKE_bmesh.h
parent3023458aa7319a100cfb248a3ace72de5f854670 (diff)
-> Bevel
Fixed the following problems with Bevel code -meshes with 2 edged faces left over at the end would cause buffer overrun whens converting from a Bmesh to a Derived Mesh. The conversion process now checks for both double edges and faces and removes them when present. -BME_reverse_loop euler had a bug that was causing the corruption of radial cycle. This would lead to the bevel tool hanging for a long time and possibly crashing. -Added optimization of BME_reverse loop so that it no longer does tiny allocations but instead uses an area of 'scratch' memory. The same thing will be done to the Make Face euler soon -Added proper call to selection flushing for editmode. -Some miscellaneous cleanups and removal of unneeded debug printfs.
Diffstat (limited to 'source/blender/blenkernel/BKE_bmesh.h')
-rw-r--r--source/blender/blenkernel/BKE_bmesh.h18
1 files changed, 5 insertions, 13 deletions
diff --git a/source/blender/blenkernel/BKE_bmesh.h b/source/blender/blenkernel/BKE_bmesh.h
index 6a2209618d5..ba85833863e 100644
--- a/source/blender/blenkernel/BKE_bmesh.h
+++ b/source/blender/blenkernel/BKE_bmesh.h
@@ -67,20 +67,18 @@ typedef struct BME_Mesh
struct CustomData vdata, edata, pdata, ldata; /*Custom Data Layer information*/
struct DerivedMesh *derivedFinal, *derivedCage;
struct RetopoPaintData *retopo_paint_data; /*here for temporary code compatibility only*/
- //BME_ElementList selection;
+ /*some temporary storage used by loop reverse and make face eulers*/
+ struct BME_Edge **edar;
+ int edarlen;
int lastDataMask;
} BME_Mesh;
-//60, 52, 52, 12 704
-//60, 52, 84
-
-
typedef struct BME_Vert
{
struct BME_Vert *next, *prev;
int EID;
- float co[3]; /*vertex location. Actually pointer to custom data block*/
- float no[3]; /*vertex normal. Actually pointer to custom data block*/
+ float co[3];
+ float no[3];
struct BME_Edge *edge; /*first edge in the disk cycle for this vertex*/
void *data; /*custom vertex data*/
int eflag1, eflag2; /*reserved for use by eulers*/
@@ -122,7 +120,6 @@ typedef struct BME_Poly
{
struct BME_Poly *next, *prev;
int EID;
- //~ float no[3];
struct BME_Loop *loopbase; /*First editloop around Polygon.*/
struct ListBase holes; /*list of inner loops in the face*/
unsigned int len; /*total length of the face. Eulers should preserve this data*/
@@ -156,7 +153,6 @@ struct BME_Loop *BME_loop_find_loop(struct BME_Poly *f, struct BME_Vert *v);
/*MESH CREATION/DESTRUCTION*/
struct BME_Mesh *BME_make_mesh(void);
void BME_free_mesh(struct BME_Mesh *bm);
-struct BME_Mesh *BME_copy_mesh(struct BME_Mesh *bm);
/*FULL MESH VALIDATION*/
int BME_validate_mesh(struct BME_Mesh *bm, int halt);
/*ENTER/EXIT MODELLING LOOP*/
@@ -181,10 +177,6 @@ struct BME_Poly *BME_JFKE(struct BME_Mesh *bm, struct BME_Poly *f1, struct BME_P
/*NORMAL FLIP(Is its own inverse)*/
int BME_loop_reverse(struct BME_Mesh *bm, struct BME_Poly *f);
-/*TOOLS CODE*/
-struct BME_Loop *BME_inset_edge(struct BME_Mesh *bm, struct BME_Loop *l, struct BME_Poly *f);
-struct BME_Poly *BME_inset_poly(struct BME_Mesh *bm, struct BME_Poly *f);
-
/* bevel tool defines */
/* element flags */
#define BME_BEVEL_ORIG 1