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:
authorTon Roosendaal <ton@blender.org>2004-11-03 14:25:27 +0300
committerTon Roosendaal <ton@blender.org>2004-11-03 14:25:27 +0300
commit691302f28dcf515cc99b1d7ad0c9e41970ab1fdd (patch)
tree9ba7ce787651c9715c9829b654477a18e34bf5c6 /source/blender/src/editmesh_add.c
parent318fb94c4b4c15c66737493436929393357b963c (diff)
Two fixes;
- The function "convex()" in editmesh_lib() actually did not deliver a proper test for convex at all. It was checking only if a quad could be subdivided into 2 trias. Code for adding face (FKEY) used this call in total confusing manner. That code was there in 1.40 already, cannot find any clue what it was supposed todo... :) Recoded convex() to deliver a proper test. FKEY will give warning on attempt to make convex faces now. - Added undo-free for editmode undo on file load
Diffstat (limited to 'source/blender/src/editmesh_add.c')
-rw-r--r--source/blender/src/editmesh_add.c17
1 files changed, 5 insertions, 12 deletions
diff --git a/source/blender/src/editmesh_add.c b/source/blender/src/editmesh_add.c
index 6fb6f3ddf3f..7b0388226cd 100644
--- a/source/blender/src/editmesh_add.c
+++ b/source/blender/src/editmesh_add.c
@@ -294,7 +294,6 @@ void addedgeface_mesh(void)
EditVert *eve, *neweve[4];
EditEdge *eed;
EditFace *efa;
- float con1, con2, con3;
short amount=0;
if( (G.vd->lay & G.obedit->lay)==0 ) return;
@@ -352,18 +351,12 @@ void addedgeface_mesh(void)
if(tria==2) join_triangles();
else {
- con1= convex(neweve[0]->co, neweve[1]->co, neweve[2]->co, neweve[3]->co);
- con2= convex(neweve[0]->co, neweve[2]->co, neweve[3]->co, neweve[1]->co);
- con3= convex(neweve[0]->co, neweve[3]->co, neweve[1]->co, neweve[2]->co);
-
- if(con1>=con2 && con1>=con3)
- efa= addfacelist(neweve[0], neweve[1], neweve[2], neweve[3], NULL, NULL);
- else if(con2>=con1 && con2>=con3)
- efa= addfacelist(neweve[0], neweve[2], neweve[3], neweve[1], NULL, NULL);
- else
- efa= addfacelist(neweve[0], neweve[2], neweve[1], neweve[3], NULL, NULL);
- EM_select_face(efa, 1);
+ if( convex(neweve[0]->co, neweve[1]->co, neweve[2]->co, neweve[3]->co) ) {
+ efa= addfacelist(neweve[0], neweve[1], neweve[2], neweve[3], NULL, NULL);
+ EM_select_face(efa, 1);
+ }
+ else error("The selected vertices form a concave quad");
}
}