[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18268] branches/blender2.5/blender/source /blender: 2.5
Ton Roosendaal
ton at blender.org
Fri Jan 2 20:10:37 CET 2009
Revision: 18268
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18268
Author: ton
Date: 2009-01-02 20:10:35 +0100 (Fri, 02 Jan 2009)
Log Message:
-----------
2.5
>From the anti-globalization department:
G.obedit terminated!
Wherever possible, use CTX_data_edit_object(C) to get this
now. It's stored in scene now, and the screen context has
it defined.
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h
branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
branches/blender2.5/blender/source/blender/blenkernel/intern/anim.c
branches/blender2.5/blender/source/blender/blenkernel/intern/armature.c
branches/blender2.5/blender/source/blender/blenkernel/intern/blender.c
branches/blender2.5/blender/source/blender/blenkernel/intern/curve.c
branches/blender2.5/blender/source/blender/blenkernel/intern/depsgraph.c
branches/blender2.5/blender/source/blender/blenkernel/intern/displist.c
branches/blender2.5/blender/source/blender/blenkernel/intern/exotic.c
branches/blender2.5/blender/source/blender/blenkernel/intern/font.c
branches/blender2.5/blender/source/blender/blenkernel/intern/lattice.c
branches/blender2.5/blender/source/blender/blenkernel/intern/material.c
branches/blender2.5/blender/source/blender/blenkernel/intern/mball.c
branches/blender2.5/blender/source/blender/blenkernel/intern/modifier.c
branches/blender2.5/blender/source/blender/blenkernel/intern/multires.c
branches/blender2.5/blender/source/blender/blenkernel/intern/object.c
branches/blender2.5/blender/source/blender/blenkernel/intern/particle_system.c
branches/blender2.5/blender/source/blender/blenkernel/intern/shrinkwrap.c
branches/blender2.5/blender/source/blender/blenlib/BLI_editVert.h
branches/blender2.5/blender/source/blender/blenloader/intern/readfile.c
branches/blender2.5/blender/source/blender/blenloader/intern/readfile.h
branches/blender2.5/blender/source/blender/editors/mesh/editmesh.c
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/mesh_intern.h
branches/blender2.5/blender/source/blender/editors/mesh/meshtools.c
branches/blender2.5/blender/source/blender/editors/object/object_edit.c
branches/blender2.5/blender/source/blender/editors/space_outliner/outliner.c
branches/blender2.5/blender/source/blender/editors/space_view3d/drawarmature.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/space_view3d.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_draw.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_edit.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_header.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_select.c
branches/blender2.5/blender/source/blender/editors/space_view3d/view3d_view.c
branches/blender2.5/blender/source/blender/editors/transform/transform.c
branches/blender2.5/blender/source/blender/editors/transform/transform_constraints.c
branches/blender2.5/blender/source/blender/editors/transform/transform_conversions.c
branches/blender2.5/blender/source/blender/editors/transform/transform_generics.c
branches/blender2.5/blender/source/blender/editors/transform/transform_manipulator.c
branches/blender2.5/blender/source/blender/editors/transform/transform_orientations.c
branches/blender2.5/blender/source/blender/editors/transform/transform_snap.c
branches/blender2.5/blender/source/blender/editors/util/editmode_undo.c
branches/blender2.5/blender/source/blender/editors/util/undo.c
branches/blender2.5/blender/source/blender/makesdna/DNA_armature_types.h
branches/blender2.5/blender/source/blender/makesdna/DNA_curve_types.h
branches/blender2.5/blender/source/blender/makesdna/DNA_customdata_types.h
branches/blender2.5/blender/source/blender/makesdna/DNA_lattice_types.h
branches/blender2.5/blender/source/blender/makesdna/DNA_meta_types.h
branches/blender2.5/blender/source/blender/radiosity/intern/source/radpreprocess.c
branches/blender2.5/blender/source/blender/render/intern/source/convertblender.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_files.c
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h 2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_DerivedMesh.h 2009-01-02 19:10:35 UTC (rev 18268)
@@ -443,14 +443,15 @@
float (*vertCos)[3],
CustomDataMask dataMask);
-DerivedMesh *editmesh_get_derived_base(struct EditMesh *em);
-DerivedMesh *editmesh_get_derived_cage(struct EditMesh *em, CustomDataMask dataMask);
-DerivedMesh *editmesh_get_derived_cage_and_final(struct EditMesh *em, DerivedMesh **final_r,
+DerivedMesh *editmesh_get_derived_base(struct Object *, struct EditMesh *em);
+DerivedMesh *editmesh_get_derived_cage(struct Object *, struct EditMesh *em, CustomDataMask dataMask);
+DerivedMesh *editmesh_get_derived_cage_and_final(struct Object *, struct EditMesh *em, DerivedMesh **final_r,
CustomDataMask dataMask);
+void makeDerivedMesh(struct Object *ob, struct EditMesh *em, CustomDataMask dataMask);
/* returns an array of deform matrices for crazyspace correction, and the
number of modifiers left */
-int editmesh_get_first_deform_matrices(struct EditMesh *em, float (**deformmats)[3][3],
+int editmesh_get_first_deform_matrices(struct Object *, struct EditMesh *em, float (**deformmats)[3][3],
float (**deformcos)[3]);
void weight_to_rgb(float input, float *fr, float *fg, float *fb);
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h 2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_displist.h 2009-01-02 19:10:35 UTC (rev 18268)
@@ -85,7 +85,7 @@
extern void count_displist(struct ListBase *lb, int *totvert, int *totface);
extern void freedisplist(struct ListBase *lb);
extern int displist_has_faces(struct ListBase *lb);
-extern void makeDerivedMesh(struct Object *ob, struct EditMesh *em, CustomDataMask dataMask);
+
extern void makeDispListSurf(struct Object *ob, struct ListBase *dispbase, int forRender);
extern void makeDispListCurveTypes(struct Object *ob, int forOrco);
extern void makeDispListMBall(struct Object *ob);
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h 2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_font.h 2009-01-02 19:10:35 UTC (rev 18268)
@@ -67,7 +67,7 @@
int style_to_sel(int style, int toggle);
int mat_to_sel(void);
-int getselection(int *start, int *end);
+int getselection(struct Object *ob, int *start, int *end);
void chtoutf8(unsigned long c, char *o);
void wcs2utf8s(char *dst, wchar_t *src);
Modified: branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h 2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/BKE_global.h 2009-01-02 19:10:35 UTC (rev 18268)
@@ -68,7 +68,6 @@
struct Main *main;
struct Scene *scene; /* denk aan file.c */
struct bScreen *curscreen;
- struct Object *obedit;
char editModeTitleExtra[64];
/* fonts, allocated global data */
Modified: branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c
===================================================================
--- branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c 2009-01-02 17:43:56 UTC (rev 18267)
+++ branches/blender2.5/blender/source/blender/blenkernel/intern/DerivedMesh.c 2009-01-02 19:10:35 UTC (rev 18268)
@@ -2396,11 +2396,10 @@
return 1;
}
-static void editmesh_calc_modifiers(EditMesh *em, DerivedMesh **cage_r,
+static void editmesh_calc_modifiers(Object *ob, EditMesh *em, DerivedMesh **cage_r,
DerivedMesh **final_r,
CustomDataMask dataMask)
{
- Object *ob = G.obedit;
ModifierData *md;
float (*deformedVerts)[3] = NULL;
CustomDataMask mask;
@@ -2694,58 +2693,59 @@
{
Mesh *me = ob->data;
float min[3], max[3];
-
+ int needMapping= 0; //
+
clear_mesh_caches(ob);
- if(ob!=G.obedit) {
- Object *obact = G.scene->basact?G.scene->basact->object:NULL;
- int editing = (FACESEL_PAINT_TEST)|(G.f & G_PARTICLEEDIT);
- int needMapping = editing && (ob==obact);
+// XXX Object *obact = scene->basact?scene->basact->object:NULL;
+// int editing = (FACESEL_PAINT_TEST)|(G.f & G_PARTICLEEDIT);
+// int needMapping = editing && (ob==obact);
+// if( (G.f & G_WEIGHTPAINT) && ob==obact ) {
+ if(dataMask & CD_MASK_WEIGHTPAINT) {
+ MCol *wpcol = (MCol*)calc_weightpaint_colors(ob);
+ int layernum = CustomData_number_of_layers(&me->fdata, CD_MCOL);
+ int prevactive = CustomData_get_active_layer(&me->fdata, CD_MCOL);
+ int prevrender = CustomData_get_render_layer(&me->fdata, CD_MCOL);
- if( (G.f & G_WEIGHTPAINT) && ob==obact ) {
- MCol *wpcol = (MCol*)calc_weightpaint_colors(ob);
- int layernum = CustomData_number_of_layers(&me->fdata, CD_MCOL);
- int prevactive = CustomData_get_active_layer(&me->fdata, CD_MCOL);
- int prevrender = CustomData_get_render_layer(&me->fdata, CD_MCOL);
+ /* ugly hack here, we temporarily add a new active mcol layer with
+ weightpaint colors in it, that is then duplicated in CDDM_from_mesh */
+ CustomData_add_layer(&me->fdata, CD_MCOL, CD_ASSIGN, wpcol, me->totface);
+ CustomData_set_layer_active(&me->fdata, CD_MCOL, layernum);
+ CustomData_set_layer_render(&me->fdata, CD_MCOL, layernum);
- /* ugly hack here, we temporarily add a new active mcol layer with
- weightpaint colors in it, that is then duplicated in CDDM_from_mesh */
- CustomData_add_layer(&me->fdata, CD_MCOL, CD_ASSIGN, wpcol, me->totface);
- CustomData_set_layer_active(&me->fdata, CD_MCOL, layernum);
- CustomData_set_layer_render(&me->fdata, CD_MCOL, layernum);
+ mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
+ &ob->derivedFinal, 0, 1,
+ needMapping, dataMask, -1);
- mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
- &ob->derivedFinal, 0, 1,
- needMapping, dataMask, -1);
+ CustomData_free_layer_active(&me->fdata, CD_MCOL, me->totface);
+ CustomData_set_layer_active(&me->fdata, CD_MCOL, prevactive);
+ CustomData_set_layer_render(&me->fdata, CD_MCOL, prevrender);
+ }
+ else {
+ mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
+ &ob->derivedFinal, G.rendering, 1,
+ needMapping, dataMask, -1);
+ }
- CustomData_free_layer_active(&me->fdata, CD_MCOL, me->totface);
- CustomData_set_layer_active(&me->fdata, CD_MCOL, prevactive);
- CustomData_set_layer_render(&me->fdata, CD_MCOL, prevrender);
- } else {
- mesh_calc_modifiers(ob, NULL, &ob->derivedDeform,
- &ob->derivedFinal, G.rendering, 1,
- needMapping, dataMask, -1);
- }
+ INIT_MINMAX(min, max);
- INIT_MINMAX(min, max);
+ ob->derivedFinal->getMinMax(ob->derivedFinal, min, max);
- ob->derivedFinal->getMinMax(ob->derivedFinal, min, max);
+ if(!ob->bb)
+ ob->bb= MEM_callocN(sizeof(BoundBox), "bb");
+ boundbox_set_from_min_max(ob->bb, min, max);
- if(!ob->bb)
- ob->bb= MEM_callocN(sizeof(BoundBox), "bb");
- boundbox_set_from_min_max(ob->bb, min, max);
+ ob->derivedFinal->needsFree = 0;
+ ob->derivedDeform->needsFree = 0;
+ ob->lastDataMask = dataMask;
- ob->derivedFinal->needsFree = 0;
- ob->derivedDeform->needsFree = 0;
- ob->lastDataMask = dataMask;
- }
}
-static void editmesh_build_data(EditMesh *em, CustomDataMask dataMask)
+static void editmesh_build_data(Object *obedit, EditMesh *em, CustomDataMask dataMask)
{
float min[3], max[3];
- clear_mesh_caches(G.obedit);
+ clear_mesh_caches(obedit);
if (em->derivedFinal) {
if (em->derivedFinal!=em->derivedCage) {
@@ -2760,16 +2760,16 @@
em->derivedCage = NULL;
}
- editmesh_calc_modifiers(em, &em->derivedCage, &em->derivedFinal, dataMask);
+ editmesh_calc_modifiers(obedit, em, &em->derivedCage, &em->derivedFinal, dataMask);
em->lastDataMask = dataMask;
INIT_MINMAX(min, max);
em->derivedFinal->getMinMax(em->derivedFinal, min, max);
- if(!G.obedit->bb)
- G.obedit->bb= MEM_callocN(sizeof(BoundBox), "bb");
- boundbox_set_from_min_max(G.obedit->bb, min, max);
+ if(!obedit->bb)
+ obedit->bb= MEM_callocN(sizeof(BoundBox), "bb");
+ boundbox_set_from_min_max(obedit->bb, min, max);
em->derivedFinal->needsFree = 0;
em->derivedCage->needsFree = 0;
@@ -2778,7 +2778,7 @@
void makeDerivedMesh(Object *ob, EditMesh *em, CustomDataMask dataMask)
{
if (em) {
- editmesh_build_data(em, dataMask);
+ editmesh_build_data(ob, em, dataMask);
} else {
mesh_build_data(ob, dataMask);
}
@@ -2950,7 +2950,7 @@
/***/
-DerivedMesh *editmesh_get_derived_cage_and_final(EditMesh *em, DerivedMesh **final_r,
+DerivedMesh *editmesh_get_derived_cage_and_final(Object *obedit, EditMesh *em, DerivedMesh **final_r,
CustomDataMask dataMask)
{
/* if there's no derived mesh or the last data mask used doesn't include
@@ -2958,27 +2958,27 @@
*/
if(!em->derivedCage ||
(em->lastDataMask & dataMask) != dataMask)
- editmesh_build_data(em, dataMask);
+ editmesh_build_data(obedit, em, dataMask);
*final_r = em->derivedFinal;
return em->derivedCage;
}
-DerivedMesh *editmesh_get_derived_cage(EditMesh *em, CustomDataMask dataMask)
+DerivedMesh *editmesh_get_derived_cage(Object *obedit, EditMesh *em, CustomDataMask dataMask)
{
/* if there's no derived mesh or the last data mask used doesn't include
* the data we need, rebuild the derived mesh
*/
if(!em->derivedCage ||
(em->lastDataMask & dataMask) != dataMask)
- editmesh_build_data(em, dataMask);
+ editmesh_build_data(obedit, em, dataMask);
return em->derivedCage;
}
-DerivedMesh *editmesh_get_derived_base(EditMesh *em)
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list