[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [36382] trunk/blender/source/blender: fix for minor glitch when setting the camera in local view ( camera could try to smooth view into its self).

Campbell Barton ideasman42 at gmail.com
Sat Apr 30 05:37:03 CEST 2011


Revision: 36382
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=36382
Author:   campbellbarton
Date:     2011-04-30 03:36:59 +0000 (Sat, 30 Apr 2011)
Log Message:
-----------
fix for minor glitch when setting the camera in local view (camera could try to smooth view into its self).

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/view3d_view.c
    trunk/blender/source/blender/makesdna/DNA_scene_types.h

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_view.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2011-04-29 17:32:42 UTC (rev 36381)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_view.c	2011-04-30 03:36:59 UTC (rev 36382)
@@ -472,7 +472,7 @@
 	Object *ob = CTX_data_active_object(C);
 
 	if(ob) {
-		Object *camera_old= (rv3d->persp == RV3D_CAMOB && scene->camera) ? scene->camera : NULL;
+		Object *camera_old= (rv3d->persp == RV3D_CAMOB) ? V3D_CAMERA_SCENE(scene, v3d) : NULL;
 		rv3d->persp= RV3D_CAMOB;
 		v3d->camera= ob;
 		if(v3d->scenelock)

Modified: trunk/blender/source/blender/makesdna/DNA_scene_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_scene_types.h	2011-04-29 17:32:42 UTC (rev 36381)
+++ trunk/blender/source/blender/makesdna/DNA_scene_types.h	2011-04-30 03:36:59 UTC (rev 36382)
@@ -1053,6 +1053,9 @@
 #define BASACT			(scene->basact)
 #define OBACT			(BASACT? BASACT->object: NULL)
 
+#define V3D_CAMERA_LOCAL(v3d) ((!(v3d)->scenelock && (v3d)->camera) ? (v3d)->camera : NULL)
+#define V3D_CAMERA_SCENE(scene, v3d) ((!(v3d)->scenelock && (v3d)->camera) ? (v3d)->camera : (scene)->camera)
+
 #define ID_NEW(a)		if( (a) && (a)->id.newid ) (a)= (void *)(a)->id.newid
 #define ID_NEW_US(a)	if( (a)->id.newid) {(a)= (void *)(a)->id.newid; (a)->id.us++;}
 #define ID_NEW_US2(a)	if( ((ID *)a)->newid) {(a)= ((ID *)a)->newid; ((ID *)a)->us++;}




More information about the Bf-blender-cvs mailing list