[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18173] branches/blender2.5/blender/source : 2.5

Ton Roosendaal ton at blender.org
Tue Dec 30 14:16:16 CET 2008


Revision: 18173
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18173
Author:   ton
Date:     2008-12-30 14:16:14 +0100 (Tue, 30 Dec 2008)

Log Message:
-----------
2.5

Editmesh code cleaned and compiling/linking. A whopping
20k lines back! :)
Not that it does stuff... editmode in/out has to be done,
and loads of operators. Also linking/exporting editmesh
calls has to be reviewed.

Also: added a blender_test_break() mechanism in BKE.

Modified Paths:
--------------
    branches/blender2.5/blender/source/Makefile
    branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
    branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
    branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
    branches/blender2.5/blender/source/blender/editors/Makefile
    branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h
    branches/blender2.5/blender/source/blender/editors/include/ED_object.h
    branches/blender2.5/blender/source/blender/editors/mesh/Makefile
    branches/blender2.5/blender/source/blender/editors/mesh/SConscript
    branches/blender2.5/blender/source/blender/editors/object/object_edit.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawmesh.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/drawobject.c
    branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c
    branches/blender2.5/blender/source/blender/makesdna/DNA_scene_types.h
    branches/blender2.5/blender/source/blender/windowmanager/WM_api.h
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_event_system.c
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_subwindow.c
    branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
    branches/blender2.5/blender/source/blender/windowmanager/wm_window.h

Added Paths:
-----------
    branches/blender2.5/blender/source/blender/editors/include/ED_multires.h
    branches/blender2.5/blender/source/blender/editors/mesh/editface.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh.h
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_add.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_lib.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_loop.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_mods.c
    branches/blender2.5/blender/source/blender/editors/mesh/editmesh_tools.c
    branches/blender2.5/blender/source/blender/editors/mesh/meshtools.c

Modified: branches/blender2.5/blender/source/Makefile
===================================================================
--- branches/blender2.5/blender/source/Makefile	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/Makefile	2008-12-30 13:16:14 UTC (rev 18173)
@@ -161,7 +161,6 @@
 COMLIB += $(NAN_BMFONT)/lib/$(DEBUG_DIR)libbmfont.a
 COMLIB += $(NAN_PNG)/lib/libpng.a
 COMLIB += $(OCGDIR)/blender/yafray/$(DEBUG_DIR)libyafrayexport.a
-COMLIB += $(OCGDIR)/blender/blenlib/$(DEBUG_DIR)libblenlib.a
 
 ifeq ($(WITH_QUICKTIME), true)
     COMLIB += $(OCGDIR)/blender/blenderqt/$(DEBUG_DIR)libblenderqt.a
@@ -252,6 +251,7 @@
 PULIB += $(OCGDIR)/blender/ed_view3d/libed_view3d.a
 PULIB += $(OCGDIR)/blender/ed_interface/libed_interface.a
 PULIB += $(OCGDIR)/blender/ed_object/libed_object.a
+PULIB += $(OCGDIR)/blender/ed_mesh/libed_mesh.a
 PULIB += $(OCGDIR)/blender/ed_animation/libed_animation.a
 PULIB += $(OCGDIR)/blender/ed_transform/libed_transform.a
 PULIB += $(OCGDIR)/blender/ed_util/libed_util.a
@@ -260,6 +260,8 @@
 PULIB += $(OCGDIR)/blender/windowmanager/libwindowmanager.a
 PULIB += $(OCGDIR)/blender/python/$(DEBUG_DIR)libpython.a
 PULIB += $(OCGDIR)/blender/makesrna/$(DEBUG_DIR)librna.a
+# note, no idea but it suddenly doesn't compile :(
+PULIB += $(OCGDIR)/blender/blenlib/$(DEBUG_DIR)libblenlib.a
 
 ifeq ($(NAN_NO_KETSJI),true)
     PULIB += $(NAN_MOTO)/lib/libmoto.a

Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_blender.h	2008-12-30 13:16:14 UTC (rev 18173)
@@ -55,6 +55,10 @@
 void free_blender(void);
 void initglobals(void);
 
+/* set this callback when a UI is running */
+void set_blender_test_break_cb(void (*func)(void) );
+int blender_test_break(void);
+
 void pushdata(void *data, int len);
 void popfirst(void *data);
 void poplast(void *data);

Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c	2008-12-30 13:16:14 UTC (rev 18173)
@@ -90,7 +90,6 @@
 
 #include "BKE_utildefines.h" // O_BINARY FALSE
 
-
 Global G;
 UserDef U;
 ListBase WMlist= {NULL, NULL};
@@ -475,7 +474,27 @@
 	return (bfd?1:0);
 }
 
+/* *****************  testing for break ************* */
 
+static void (*blender_test_break_cb)(void)= NULL;
+
+void set_blender_test_break_cb(void (*func)(void) )
+{
+	blender_test_break_cb= func;
+}
+
+
+int blender_test_break(void)
+{
+	if (!G.background) {
+		if (blender_test_break_cb)
+			blender_test_break_cb();
+	}
+	
+	return (G.afbreek==1);
+}
+
+
 /* ***************** GLOBAL UNDO *************** */
 
 #define UNDO_DISK	0

Modified: branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h	2008-12-30 13:16:14 UTC (rev 18173)
@@ -172,6 +172,9 @@
 	 * never access this directly, use EM_set_actFace and EM_get_actFace */
 	EditFace *act_face; 
 	
+	/* copy from scene */
+	int selectmode;
+	
 	struct DerivedMesh *derivedCage, *derivedFinal;
 	/* the custom data layer mask that was last used to calculate
 	 * derivedCage and derivedFinal

Modified: branches/blender2.5/blender/source/blender/editors/Makefile
===================================================================
--- branches/blender2.5/blender/source/blender/editors/Makefile	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/Makefile	2008-12-30 13:16:14 UTC (rev 18173)
@@ -29,6 +29,6 @@
 # Bounces make to subdirectories.
 
 SOURCEDIR = source/blender/editors
-DIRS = animation object datafiles transform screen space_outliner space_time space_view3d interface util  space_api space_ipo space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer
+DIRS = mesh animation object datafiles transform screen space_outliner space_time space_view3d interface util  space_api space_ipo space_image space_node space_buttons space_info space_file space_sound space_action space_nla space_script space_text space_sequencer
 
 include nan_subdirs.mk

Modified: branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_mesh.h	2008-12-30 13:16:14 UTC (rev 18173)
@@ -28,6 +28,60 @@
 #ifndef ED_MESH_H
 #define ED_MESH_H
 
+struct View3D;
 
+// edge and face flag both
+#define EM_FGON		2
+// face flag
+#define EM_FGON_DRAW	1
+
+/* editbutflag */
+#define B_CLOCKWISE		1
+#define B_KEEPORIG		2
+#define B_BEAUTY		4
+#define B_SMOOTH		8
+#define B_BEAUTY_SHORT  	16
+#define B_AUTOFGON		32
+#define B_KNIFE			0x80
+#define B_PERCENTSUBD		0x40
+#define B_MESH_X_MIRROR		0x100
+#define B_JOINTRIA_UV		0x200
+#define B_JOINTRIA_VCOL		0X400
+#define B_JOINTRIA_SHARP	0X800
+#define B_JOINTRIA_MAT		0X1000
+
+
+/* editmesh.c */
+
+void		EM_init_index_arrays(EditMesh *em, int forVert, int forEdge, int forFace);
+void		EM_free_index_arrays(void);
+EditVert	*EM_get_vert_for_index(int index);
+EditEdge	*EM_get_edge_for_index(int index);
+EditFace	*EM_get_face_for_index(int index);
+int			EM_texFaceCheck(EditMesh *em);
+int			EM_vertColorCheck(EditMesh *em);
+
+
+/* editmesh_lib.c */
+
+EditFace	*EM_get_actFace(EditMesh *em, int sloppy);
+
+void		EM_select_edge(EditEdge *eed, int sel);
+void		EM_select_face_fgon(EditMesh *em, EditFace *efa, int val);
+void		EM_selectmode_flush(EditMesh *em);
+void		EM_deselect_flush(EditMesh *em);
+
+
+
+/* editmesh_mods.c */
+extern unsigned int em_vertoffs, em_solidoffs, em_wireoffs;
+
+int			EM_check_backbuf(unsigned int index);
+int			EM_mask_init_backbuf_border(struct View3D *v3d, short mcords[][2], short tot, short xmin, short ymin, short xmax, short ymax);
+void		EM_free_backbuf(void);
+int			EM_init_backbuf_border(struct View3D *v3d, short xmin, short ymin, short xmax, short ymax);
+int			EM_init_backbuf_circle(struct View3D *v3d, short xs, short ys, short rads);
+
+
 #endif /* ED_MESH_H */
 

Copied: branches/blender2.5/blender/source/blender/editors/include/ED_multires.h (from rev 18150, trunk/blender/source/blender/include/multires.h)
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_multires.h	                        (rev 0)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_multires.h	2008-12-30 13:16:14 UTC (rev 18173)
@@ -0,0 +1,59 @@
+/*
+ * $Id$
+ *
+ * ***** BEGIN GPL LICENSE BLOCK *****
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software  Foundation,
+ * Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
+ *
+ * The Original Code is Copyright (C) 2006 by Nicholas Bishop
+ * All rights reserved.
+ *
+ * The Original Code is: all of this file.
+ *
+ * Contributor(s): none yet.
+ *
+ * ***** END GPL LICENSE BLOCK *****
+ */ 
+
+#ifndef MULTIRES_H
+#define MULTIRES_H
+
+struct CustomData;
+struct EditMesh;
+struct Object;
+struct MDeformVert;
+struct Mesh;
+struct MultiresLevel;
+struct Multires;
+struct uiBlock;
+
+/* For canceling operations that don't work with multires on or on a non-base level */
+int multires_test();
+int multires_level1_test();
+
+void multires_draw_interface(struct uiBlock *block, unsigned short cx, unsigned short cy);
+
+void multires_make(void *ob, void *me);
+void multires_delete(void *ob, void *me);
+void multires_level_to_editmesh(struct Object *ob, struct Mesh *me, const int render);
+void multires_finish_mesh_update(struct Object *ob);
+void multires_subdivide(void *ob, void *me);
+void multires_del_lower(void *ob, void *me);
+void multires_del_higher(void *ob, void *me);
+void multires_set_level_cb(void *ob, void *me);
+void multires_edge_level_update_cb(void *ob, void *me);
+int multires_modifier_warning();
+
+#endif

Modified: branches/blender2.5/blender/source/blender/editors/include/ED_object.h
===================================================================
--- branches/blender2.5/blender/source/blender/editors/include/ED_object.h	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/include/ED_object.h	2008-12-30 13:16:14 UTC (rev 18173)
@@ -29,6 +29,7 @@
 #define ED_OBJECT_H
 
 struct wmWindowManager;
+struct Scene;
 struct Object;
 struct bContext;
 struct Base;
@@ -41,6 +42,9 @@
 	/* includes notifier */
 void ED_base_object_activate(struct bContext *C, struct Base *base);
 
+void ED_base_object_free_and_unlink(struct Scene *scene, struct Base *base);
+
+
 /* cleanup */
 int object_data_is_libdata(struct Object *ob);
 int object_is_libdata(struct Object *ob);

Modified: branches/blender2.5/blender/source/blender/editors/mesh/Makefile
===================================================================
--- branches/blender2.5/blender/source/blender/editors/mesh/Makefile	2008-12-30 11:10:59 UTC (rev 18172)
+++ branches/blender2.5/blender/source/blender/editors/mesh/Makefile	2008-12-30 13:16:14 UTC (rev 18173)
@@ -28,17 +28,19 @@
 #
 # Makes module object directory and bounces make to subdirectories.
 
-LIBNAME = ed_screen
+LIBNAME = ed_mesh
 DIR = $(OCGDIR)/blender/$(LIBNAME)
 

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list