diff options
author | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2010-08-09 15:32:55 +0400 |
---|---|---|
committer | Tamito Kajiyama <rd6t-kjym@asahi-net.or.jp> | 2010-08-09 15:32:55 +0400 |
commit | dd75ec490761640571a0d8e53a0d439091f2736f (patch) | |
tree | 25b3966862febbf3ee8c81ed45f7045c99f84016 /source/blender/editors/space_view3d | |
parent | 02b0967bd11dd6fd2454b37182d9f94ea451b603 (diff) | |
parent | c026b8066ddc1c42144d2e5132384ea7c1211050 (diff) |
Merged changes in the trunk up to revision 31190.
Diffstat (limited to 'source/blender/editors/space_view3d')
15 files changed, 27 insertions, 97 deletions
diff --git a/source/blender/editors/space_view3d/drawanimviz.c b/source/blender/editors/space_view3d/drawanimviz.c index 1bc51de4471..2de51c2dd92 100644 --- a/source/blender/editors/space_view3d/drawanimviz.c +++ b/source/blender/editors/space_view3d/drawanimviz.c @@ -38,25 +38,14 @@ #include "DNA_scene_types.h" #include "DNA_screen_types.h" #include "DNA_view3d_types.h" +#include "DNA_object_types.h" #include "BLI_blenlib.h" #include "BLI_math.h" #include "BLI_dlrbTree.h" -#include "BKE_anim.h" #include "BKE_animsys.h" #include "BKE_action.h" -#include "BKE_armature.h" -#include "BKE_constraint.h" -#include "BKE_context.h" -#include "BKE_depsgraph.h" -#include "BKE_DerivedMesh.h" -#include "BKE_global.h" -#include "BKE_main.h" -#include "BKE_modifier.h" -#include "BKE_nla.h" -#include "BKE_object.h" -#include "BKE_utildefines.h" #include "BIF_gl.h" #include "BIF_glutil.h" diff --git a/source/blender/editors/space_view3d/drawarmature.c b/source/blender/editors/space_view3d/drawarmature.c index 5e0c49e6224..3222f2396a4 100644 --- a/source/blender/editors/space_view3d/drawarmature.c +++ b/source/blender/editors/space_view3d/drawarmature.c @@ -39,6 +39,7 @@ #include "DNA_scene_types.h" #include "DNA_screen_types.h" #include "DNA_view3d_types.h" +#include "DNA_object_types.h" #include "BLI_blenlib.h" #include "BLI_math.h" @@ -47,15 +48,9 @@ #include "BKE_animsys.h" #include "BKE_action.h" #include "BKE_armature.h" -#include "BKE_constraint.h" -#include "BKE_context.h" -#include "BKE_depsgraph.h" -#include "BKE_DerivedMesh.h" #include "BKE_global.h" -#include "BKE_main.h" #include "BKE_modifier.h" #include "BKE_nla.h" -#include "BKE_object.h" #include "BKE_utildefines.h" #include "BIF_gl.h" diff --git a/source/blender/editors/space_view3d/drawmesh.c b/source/blender/editors/space_view3d/drawmesh.c index f0e2f33491c..fe055f194f6 100644 --- a/source/blender/editors/space_view3d/drawmesh.c +++ b/source/blender/editors/space_view3d/drawmesh.c @@ -43,16 +43,10 @@ #include "DNA_screen_types.h" #include "DNA_view3d_types.h" -#include "BKE_bmfont.h" -#include "BKE_displist.h" #include "BKE_DerivedMesh.h" #include "BKE_effect.h" -#include "BKE_global.h" #include "BKE_image.h" -#include "BKE_main.h" #include "BKE_material.h" -#include "BKE_mesh.h" -#include "BKE_object.h" #include "BKE_paint.h" #include "BKE_property.h" #include "BKE_utildefines.h" diff --git a/source/blender/editors/space_view3d/drawobject.c b/source/blender/editors/space_view3d/drawobject.c index 54775affe3f..d8c4a38e2aa 100644 --- a/source/blender/editors/space_view3d/drawobject.c +++ b/source/blender/editors/space_view3d/drawobject.c @@ -49,12 +49,10 @@ #include "BLI_rand.h" #include "BKE_anim.h" //for the where_on_path function -#include "BKE_curve.h" #include "BKE_constraint.h" // for the get_constraint_target function #include "BKE_DerivedMesh.h" #include "BKE_deform.h" #include "BKE_displist.h" -#include "BKE_effect.h" #include "BKE_font.h" #include "BKE_global.h" #include "BKE_image.h" @@ -68,9 +66,6 @@ #include "BKE_paint.h" #include "BKE_particle.h" #include "BKE_pointcache.h" -#include "BKE_property.h" -#include "BKE_softbody.h" -#include "BKE_smoke.h" #include "BKE_unit.h" #include "BKE_utildefines.h" #include "smoke_API.h" @@ -2727,7 +2722,8 @@ static int draw_mesh_object(Scene *scene, ARegion *ar, View3D *v3d, RegionView3D int do_alpha_pass= 0, drawlinked= 0, retval= 0, glsl, check_alpha; if(obedit && ob!=obedit && ob->data==obedit->data) { - if(ob_get_key(ob)); + if(ob_get_key(ob) || ob_get_key(obedit)); + else if(ob->modifiers.first || obedit->modifiers.first); else drawlinked= 1; } @@ -3107,7 +3103,7 @@ static int drawDispList(Scene *scene, View3D *v3d, RegionView3D *rv3d, Base *bas dl= lb->first; if(dl==NULL) return 1; - if(dl->nors==0) addnormalsDispList(ob, lb); + if(dl->nors==0) addnormalsDispList(lb); index3_nors_incr= 0; if( displist_has_faces(lb)==0) { @@ -3154,7 +3150,7 @@ static int drawDispList(Scene *scene, View3D *v3d, RegionView3D *rv3d, Base *bas dl= lb->first; if(dl==NULL) return 1; - if(dl->nors==NULL) addnormalsDispList(ob, lb); + if(dl->nors==NULL) addnormalsDispList(lb); if(draw_glsl_material(scene, ob, v3d, dt)) { GPU_begin_object_materials(v3d, rv3d, scene, ob, 1, NULL); diff --git a/source/blender/editors/space_view3d/drawvolume.c b/source/blender/editors/space_view3d/drawvolume.c index 79b22f41e30..406435bb149 100644 --- a/source/blender/editors/space_view3d/drawvolume.c +++ b/source/blender/editors/space_view3d/drawvolume.c @@ -45,7 +45,6 @@ #include "BLI_edgehash.h" #include "BLI_rand.h" -#include "BKE_anim.h" //for the where_on_path function #include "BKE_curve.h" #include "BKE_constraint.h" // for the get_constraint_target function #include "BKE_DerivedMesh.h" @@ -66,7 +65,6 @@ #include "BKE_particle.h" #include "BKE_property.h" #include "BKE_smoke.h" -#include "BKE_unit.h" #include "BKE_utildefines.h" #include "smoke_API.h" diff --git a/source/blender/editors/space_view3d/space_view3d.c b/source/blender/editors/space_view3d/space_view3d.c index c04c3498cb5..ac845ec7ea3 100644 --- a/source/blender/editors/space_view3d/space_view3d.c +++ b/source/blender/editors/space_view3d/space_view3d.c @@ -38,12 +38,8 @@ #include "BLI_math.h" #include "BLI_rand.h" -#include "BKE_action.h" #include "BKE_context.h" -#include "BKE_global.h" #include "BKE_screen.h" -#include "BKE_utildefines.h" -#include "BKE_image.h" #include "ED_screen.h" #include "ED_object.h" diff --git a/source/blender/editors/space_view3d/view3d_buttons.c b/source/blender/editors/space_view3d/view3d_buttons.c index f4ae87c5b60..5f3565c1088 100644 --- a/source/blender/editors/space_view3d/view3d_buttons.c +++ b/source/blender/editors/space_view3d/view3d_buttons.c @@ -47,19 +47,13 @@ #include "BLI_rand.h" #include "BKE_action.h" -#include "BKE_brush.h" #include "BKE_context.h" #include "BKE_curve.h" #include "BKE_customdata.h" #include "BKE_depsgraph.h" -#include "BKE_idprop.h" #include "BKE_main.h" #include "BKE_mesh.h" -#include "BKE_object.h" -#include "BKE_global.h" -#include "BKE_scene.h" #include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BKE_deform.h" #include "BIF_gl.h" diff --git a/source/blender/editors/space_view3d/view3d_draw.c b/source/blender/editors/space_view3d/view3d_draw.c index 69375674d94..840cedd8360 100644 --- a/source/blender/editors/space_view3d/view3d_draw.c +++ b/source/blender/editors/space_view3d/view3d_draw.c @@ -33,6 +33,7 @@ #include "DNA_armature_types.h" #include "DNA_camera_types.h" #include "DNA_customdata_types.h" +#include "DNA_object_types.h" #include "DNA_group_types.h" #include "DNA_key_types.h" #include "DNA_lamp_types.h" @@ -49,14 +50,11 @@ #include "BKE_context.h" #include "BKE_customdata.h" #include "BKE_image.h" -#include "BKE_ipo.h" #include "BKE_key.h" #include "BKE_object.h" #include "BKE_global.h" #include "BKE_paint.h" #include "BKE_scene.h" -#include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BKE_unit.h" #include "RE_pipeline.h" // make_stars @@ -2432,8 +2430,6 @@ void view3d_main_area_draw(const bContext *C, ARegion *ar) ob= OBACT; if(U.uiflag & USER_DRAWVIEWINFO) draw_selected_name(scene, ob, v3d); - - ED_region_draw_cb_draw(C, ar, REGION_DRAW_POST_PIXEL); /* XXX here was the blockhandlers for floating panels */ diff --git a/source/blender/editors/space_view3d/view3d_edit.c b/source/blender/editors/space_view3d/view3d_edit.c index 2e26988877f..d1c5429c1a8 100644 --- a/source/blender/editors/space_view3d/view3d_edit.c +++ b/source/blender/editors/space_view3d/view3d_edit.c @@ -41,16 +41,11 @@ #include "BLI_math.h" #include "BLI_rand.h" -#include "BKE_action.h" #include "BKE_context.h" -#include "BKE_depsgraph.h" #include "BKE_object.h" -#include "BKE_global.h" #include "BKE_paint.h" #include "BKE_report.h" #include "BKE_scene.h" -#include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BIF_gl.h" @@ -2396,7 +2391,7 @@ static int set_3dcursor_invoke(bContext *C, wmOperator *op, wmEvent *event) float dx, dy, fz, *fp = NULL, dvec[3], oldcurs[3]; short mx, my, mval[2]; // short ctrl= 0; // XXX - + int flip; fp= give_cursor(scene, v3d); // if(obedit && ctrl) lr_click= 1; @@ -2404,9 +2399,18 @@ static int set_3dcursor_invoke(bContext *C, wmOperator *op, wmEvent *event) mx= event->x - ar->winrct.xmin; my= event->y - ar->winrct.ymin; + project_short_noclip(ar, fp, mval); + flip= initgrabz(rv3d, fp[0], fp[1], fp[2]); + + /* reset the depth based on the view offset */ + if(flip) { + negate_v3_v3(fp, rv3d->ofs); - initgrabz(rv3d, fp[0], fp[1], fp[2]); + /* re initialize */ + project_short_noclip(ar, fp, mval); + flip= initgrabz(rv3d, fp[0], fp[1], fp[2]); + } if(mval[0]!=IS_CLIPPED) { short depth_used = 0; diff --git a/source/blender/editors/space_view3d/view3d_header.c b/source/blender/editors/space_view3d/view3d_header.c index 761ef436d48..5f61fac0727 100644 --- a/source/blender/editors/space_view3d/view3d_header.c +++ b/source/blender/editors/space_view3d/view3d_header.c @@ -36,23 +36,14 @@ #include "MEM_guardedalloc.h" -#include "BKE_action.h" -#include "BKE_brush.h" #include "BKE_context.h" -#include "BKE_curve.h" #include "BKE_depsgraph.h" -#include "BKE_displist.h" #include "BKE_effect.h" -#include "BKE_global.h" -#include "BKE_image.h" -#include "BKE_library.h" #include "BKE_main.h" #include "BKE_mesh.h" #include "BKE_modifier.h" #include "BKE_paint.h" -#include "BKE_particle.h" #include "BKE_screen.h" -#include "BKE_utildefines.h" /* for VECCOPY */ #include "ED_mesh.h" #include "ED_util.h" diff --git a/source/blender/editors/space_view3d/view3d_ops.c b/source/blender/editors/space_view3d/view3d_ops.c index 22fab5887ee..d230085716d 100644 --- a/source/blender/editors/space_view3d/view3d_ops.c +++ b/source/blender/editors/space_view3d/view3d_ops.c @@ -40,9 +40,6 @@ #include "BLI_math.h" #include "BLI_blenlib.h" -#include "BKE_context.h" -#include "BKE_global.h" -#include "BKE_utildefines.h" #include "RNA_access.h" diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c index fc3dea5fd22..0b1bdf00078 100644 --- a/source/blender/editors/space_view3d/view3d_select.c +++ b/source/blender/editors/space_view3d/view3d_select.c @@ -46,15 +46,8 @@ #include "BLI_rand.h" #include "BLI_linklist.h" -#include "BKE_action.h" #include "BKE_context.h" -#include "BKE_depsgraph.h" -#include "BKE_object.h" -#include "BKE_global.h" #include "BKE_paint.h" -#include "BKE_scene.h" -#include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BIF_gl.h" diff --git a/source/blender/editors/space_view3d/view3d_snap.c b/source/blender/editors/space_view3d/view3d_snap.c index b3763d6cb90..35c4d10cb94 100644 --- a/source/blender/editors/space_view3d/view3d_snap.c +++ b/source/blender/editors/space_view3d/view3d_snap.c @@ -37,27 +37,20 @@ #include "DNA_lattice_types.h" #include "DNA_meta_types.h" #include "DNA_scene_types.h" +#include "DNA_object_types.h" #include "BLI_blenlib.h" #include "BLI_math.h" #include "BLI_editVert.h" #include "BLI_linklist.h" -#include "BKE_action.h" -#include "BKE_anim.h" #include "BKE_armature.h" #include "BKE_context.h" #include "BKE_curve.h" #include "BKE_depsgraph.h" -#include "BKE_DerivedMesh.h" -#include "BKE_displist.h" -#include "BKE_global.h" #include "BKE_lattice.h" #include "BKE_main.h" -#include "BKE_mesh.h" -#include "BKE_modifier.h" #include "BKE_object.h" -#include "BKE_utildefines.h" #include "WM_api.h" #include "WM_types.h" diff --git a/source/blender/editors/space_view3d/view3d_toolbar.c b/source/blender/editors/space_view3d/view3d_toolbar.c index ac6d61fce18..7cb6921902c 100644 --- a/source/blender/editors/space_view3d/view3d_toolbar.c +++ b/source/blender/editors/space_view3d/view3d_toolbar.c @@ -41,19 +41,10 @@ #include "BLI_editVert.h" #include "BLI_rand.h" -#include "BKE_action.h" -#include "BKE_brush.h" #include "BKE_context.h" -#include "BKE_curve.h" -#include "BKE_customdata.h" -#include "BKE_depsgraph.h" #include "BKE_idprop.h" -#include "BKE_mesh.h" -#include "BKE_object.h" #include "BKE_global.h" -#include "BKE_scene.h" #include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BIF_gl.h" diff --git a/source/blender/editors/space_view3d/view3d_view.c b/source/blender/editors/space_view3d/view3d_view.c index 5e00d17cfab..aad91e74af9 100644 --- a/source/blender/editors/space_view3d/view3d_view.c +++ b/source/blender/editors/space_view3d/view3d_view.c @@ -35,6 +35,7 @@ #include "DNA_camera_types.h" #include "DNA_lamp_types.h" #include "DNA_scene_types.h" +#include "DNA_object_types.h" #include "MEM_guardedalloc.h" @@ -51,8 +52,6 @@ #include "BKE_main.h" #include "BKE_report.h" #include "BKE_scene.h" -#include "BKE_screen.h" -#include "BKE_utildefines.h" #include "BKE_depsgraph.h" /* for fly mode updating */ @@ -587,11 +586,13 @@ void viewvector(RegionView3D *rv3d, float coord[3], float vec[3]) normalize_v3(vec); } -void initgrabz(RegionView3D *rv3d, float x, float y, float z) +int initgrabz(RegionView3D *rv3d, float x, float y, float z) { - if(rv3d==NULL) return; + int flip= FALSE; + if(rv3d==NULL) return flip; rv3d->zfac= rv3d->persmat[0][3]*x+ rv3d->persmat[1][3]*y+ rv3d->persmat[2][3]*z+ rv3d->persmat[3][3]; - + if (rv3d->zfac < 0.0f) + flip= TRUE; /* if x,y,z is exactly the viewport offset, zfac is 0 and we don't want that * (accounting for near zero values) * */ @@ -604,6 +605,8 @@ void initgrabz(RegionView3D *rv3d, float x, float y, float z) // -- Aligorith, 2009Aug31 //if (rv3d->zfac < 0.0f) rv3d->zfac = 1.0f; if (rv3d->zfac < 0.0f) rv3d->zfac= -rv3d->zfac; + + return flip; } /* always call initgrabz */ |