[Bf-blender-cvs] [96a2807e73e] blender2.8: Code cleanup: remove unneeded gla* 2D drawing functions.

Brecht Van Lommel noreply at git.blender.org
Tue Feb 13 20:19:03 CET 2018


Commit: 96a2807e73ed595493e7ffba000d78fb9309895f
Author: Brecht Van Lommel
Date:   Tue Feb 13 03:57:28 2018 +0100
Branches: blender2.8
https://developer.blender.org/rB96a2807e73ed595493e7ffba000d78fb9309895f

Code cleanup: remove unneeded gla* 2D drawing functions.

===================================================================

M	source/blender/editors/include/BIF_glutil.h
M	source/blender/editors/screen/glutil.c
M	source/blender/editors/space_image/image_draw.c
M	source/blender/editors/space_node/drawnode.c
M	source/blender/editors/space_node/node_draw.c

===================================================================

diff --git a/source/blender/editors/include/BIF_glutil.h b/source/blender/editors/include/BIF_glutil.h
index 3184ebee4d9..863d817d19a 100644
--- a/source/blender/editors/include/BIF_glutil.h
+++ b/source/blender/editors/include/BIF_glutil.h
@@ -107,38 +107,6 @@ void immDrawPixelsTexScaled_clipping(IMMDrawPixelsTexState *state,
                                      float x, float y, int img_w, int img_h, int format, int type, int zoomfilter, void *rect, float scaleX, float scaleY,
                                      float clip_min_x, float clip_min_y, float clip_max_x, float clip_max_y,
                                      float xzoom, float yzoom, float color[4]);
-/* 2D Drawing Assistance */
-
-/** Define a 2D area (viewport, scissor, matrices) for OpenGL rendering.
- *
- * glaDefine2DArea and glaBegin2DDraw set up an OpenGL state appropriate
- * for drawing using both vertex (Vertex, etc) and raster (RasterPos, Rect)
- * commands. All coordinates should be at integer positions. There is little
- * to no reason to use glVertex2f etc. functions during 2D rendering, and
- * thus no reason to +-0.5 the coordinates or perform other silly
- * tricks.
- *
- * \param screen_rect The screen rectangle to be defined for 2D drawing.
- */
-void glaDefine2DArea(struct rcti *screen_rect);
-
-/* TODO(merwin): put the following 2D code to use, or build new 2D code inspired & informd by it */
-
-#if 0  /* UNUSED */
-
-typedef struct gla2DDrawInfo gla2DDrawInfo;
-
-gla2DDrawInfo *glaBegin2DDraw(struct rcti *screen_rect, struct rctf *world_rect);
-void gla2DDrawTranslatePt(gla2DDrawInfo *di, float wo_x, float wo_y, int *r_sc_x, int *r_sc_y);
-void gla2DDrawTranslatePtv(gla2DDrawInfo *di, float world[2], int r_screen[2]);
-
-void glaEnd2DDraw(gla2DDrawInfo *di);
-
-/** Adjust the transformation mapping of a 2d area */
-void gla2DGetMap(gla2DDrawInfo *di, struct rctf *rect);
-void gla2DSetMap(gla2DDrawInfo *di, struct rctf *rect);
-
-#endif /* UNUSED */
 
 void set_inverted_drawing(int enable);
 void setlinestyle(int nr);
diff --git a/source/blender/editors/screen/glutil.c b/source/blender/editors/screen/glutil.c
index 7ce16efdb97..cd53655a0bb 100644
--- a/source/blender/editors/screen/glutil.c
+++ b/source/blender/editors/screen/glutil.c
@@ -354,142 +354,6 @@ void immDrawPixelsTex_clipping(IMMDrawPixelsTexState *state,
 	                                clip_min_x, clip_min_y, clip_max_x, clip_max_y, xzoom, yzoom, color);
 }
 
-/* 2D Drawing Assistance */
-
-void glaDefine2DArea(rcti *screen_rect)
-{
-	const int sc_w = BLI_rcti_size_x(screen_rect) + 1;
-	const int sc_h = BLI_rcti_size_y(screen_rect) + 1;
-
-	glViewport(screen_rect->xmin, screen_rect->ymin, sc_w, sc_h);
-	glScissor(screen_rect->xmin, screen_rect->ymin, sc_w, sc_h);
-
-	/* The GLA_PIXEL_OFS magic number is to shift the matrix so that
-	 * both raster and vertex integer coordinates fall at pixel
-	 * centers properly. For a longer discussion see the OpenGL
-	 * Programming Guide, Appendix H, Correctness Tips.
-	 */
-
-	gpuOrtho2D(GLA_PIXEL_OFS, sc_w + GLA_PIXEL_OFS, GLA_PIXEL_OFS, sc_h + GLA_PIXEL_OFS);
-	gpuLoadIdentity();
-}
-
-/* TODO(merwin): put the following 2D code to use, or build new 2D code inspired & informd by it */
-
-#if 0 /* UNUSED */
-
-struct gla2DDrawInfo {
-	int orig_vp[4], orig_sc[4];
-	float orig_projmat[16], orig_viewmat[16];
-
-	rcti screen_rect;
-	rctf world_rect;
-
-	float wo_to_sc[2];
-};
-
-void gla2DGetMap(gla2DDrawInfo *di, rctf *rect) 
-{
-	*rect = di->world_rect;
-}
-
-void gla2DSetMap(gla2DDrawInfo *di, rctf *rect) 
-{
-	int sc_w, sc_h;
-	float wo_w, wo_h;
-
-	di->world_rect = *rect;
-	
-	sc_w = BLI_rcti_size_x(&di->screen_rect);
-	sc_h = BLI_rcti_size_y(&di->screen_rect);
-	wo_w = BLI_rcti_size_x(&di->world_rect);
-	wo_h = BLI_rcti_size_y(&di->world_rect);
-	
-	di->wo_to_sc[0] = sc_w / wo_w;
-	di->wo_to_sc[1] = sc_h / wo_h;
-}
-
-/** Save the current OpenGL state and initialize OpenGL for 2D
- * rendering. glaEnd2DDraw should be called on the returned structure
- * to free it and to return OpenGL to its previous state. The
- * scissor rectangle is set to match the viewport.
- *
- * See glaDefine2DArea for an explanation of why this function uses integers.
- *
- * \param screen_rect The screen rectangle to be used for 2D drawing.
- * \param world_rect The world rectangle that the 2D area represented
- * by \a screen_rect is supposed to represent. If NULL it is assumed the
- * world has a 1 to 1 mapping to the screen.
- */
-gla2DDrawInfo *glaBegin2DDraw(rcti *screen_rect, rctf *world_rect) 
-{
-	gla2DDrawInfo *di = MEM_mallocN(sizeof(*di), "gla2DDrawInfo");
-	int sc_w, sc_h;
-	float wo_w, wo_h;
-
-	glGetIntegerv(GL_VIEWPORT, (GLint *)di->orig_vp);
-	glGetIntegerv(GL_SCISSOR_BOX, (GLint *)di->orig_sc);
-	gpuGetProjectionMatrix(di->orig_projmat);
-	gpuGetModelViewMatrix(di->orig_viewmat);
-
-	di->screen_rect = *screen_rect;
-	if (world_rect) {
-		di->world_rect = *world_rect;
-	}
-	else {
-		di->world_rect.xmin = di->screen_rect.xmin;
-		di->world_rect.ymin = di->screen_rect.ymin;
-		di->world_rect.xmax = di->screen_rect.xmax;
-		di->world_rect.ymax = di->screen_rect.ymax;
-	}
-
-	sc_w = BLI_rcti_size_x(&di->screen_rect);
-	sc_h = BLI_rcti_size_y(&di->screen_rect);
-	wo_w = BLI_rcti_size_x(&di->world_rect);
-	wo_h = BLI_rcti_size_y(&di->world_rect);
-
-	di->wo_to_sc[0] = sc_w / wo_w;
-	di->wo_to_sc[1] = sc_h / wo_h;
-
-	glaDefine2DArea(&di->screen_rect);
-
-	return di;
-}
-
-/**
- * Translate the (\a wo_x, \a wo_y) point from world coordinates into screen space.
- */
-void gla2DDrawTranslatePt(gla2DDrawInfo *di, float wo_x, float wo_y, int *r_sc_x, int *r_sc_y)
-{
-	*r_sc_x = (wo_x - di->world_rect.xmin) * di->wo_to_sc[0];
-	*r_sc_y = (wo_y - di->world_rect.ymin) * di->wo_to_sc[1];
-}
-
-/**
- * Translate the \a world point from world coordinates into screen space.
- */
-void gla2DDrawTranslatePtv(gla2DDrawInfo *di, float world[2], int r_screen[2])
-{
-	screen_r[0] = (world[0] - di->world_rect.xmin) * di->wo_to_sc[0];
-	screen_r[1] = (world[1] - di->world_rect.ymin) * di->wo_to_sc[1];
-}
-
-/**
- * Restores the previous OpenGL state and frees the auxiliary gla data.
- */
-void glaEnd2DDraw(gla2DDrawInfo *di)
-{
-	glViewport(di->orig_vp[0], di->orig_vp[1], di->orig_vp[2], di->orig_vp[3]);
-	glScissor(di->orig_vp[0], di->orig_vp[1], di->orig_vp[2], di->orig_vp[3]);
-	gpuLoadProjectionMatrix(di->orig_projmat);
-	gpuLoadMatrix(di->orig_viewmat);
-
-	MEM_freeN(di);
-}
-
-#endif /* UNUSED */
-
-
 /* *************** glPolygonOffset hack ************* */
 
 /**
diff --git a/source/blender/editors/space_image/image_draw.c b/source/blender/editors/space_image/image_draw.c
index 23c4fbbe45e..9442907c977 100644
--- a/source/blender/editors/space_image/image_draw.c
+++ b/source/blender/editors/space_image/image_draw.c
@@ -482,8 +482,6 @@ static void draw_image_buffer(const bContext *C, SpaceImage *sima, ARegion *ar,
 {
 	int x, y;
 
-	glaDefine2DArea(&ar->winrct);
-	
 	/* find window pixel coordinates of origin */
 	UI_view2d_view_to_region(&ar->v2d, fx, fy, &x, &y);
 
diff --git a/source/blender/editors/space_node/drawnode.c b/source/blender/editors/space_node/drawnode.c
index 27c4eb2fa3c..e9eddb222cd 100644
--- a/source/blender/editors/space_node/drawnode.c
+++ b/source/blender/editors/space_node/drawnode.c
@@ -3222,8 +3222,6 @@ void draw_nodespace_back_pix(const bContext *C, ARegion *ar, SpaceNode *snode, b
 		gpuPushMatrix();
 
 		/* somehow the offset has to be calculated inverse */
-		
-		glaDefine2DArea(&ar->winrct);
 		wmOrtho2_region_pixelspace(ar);
 		
 		x = (ar->winx - snode->zoom * ibuf->x) / 2 + snode->xof;
diff --git a/source/blender/editors/space_node/node_draw.c b/source/blender/editors/space_node/node_draw.c
index 231039b2e22..6f0e6d4cbf1 100644
--- a/source/blender/editors/space_node/node_draw.c
+++ b/source/blender/editors/space_node/node_draw.c
@@ -1404,7 +1404,6 @@ void drawnodespace(const bContext *C, ARegion *ar)
 				gpuPushMatrix();
 				gpuLoadIdentity();
 
-				glaDefine2DArea(&ar->winrct);
 				wmOrtho2_pixelspace(ar->winx, ar->winy);
 
 				WM_manipulatormap_draw(ar->manipulator_map, C, WM_MANIPULATORMAP_DRAWSTEP_2D);



More information about the Bf-blender-cvs mailing list