瀏覽代碼

nviz: Add width & height to render_window struct; Make sure to set the viewport on renderer initialization

git-svn-id: https://svn.osgeo.org/grass/grass/trunk@72966 15284696-431f-4ddb-bdfa-cd5b030d7da7
Huidae Cho 6 年之前
父節點
當前提交
0cacb23a30
共有 2 個文件被更改,包括 10 次插入0 次删除
  1. 1 0
      include/nviz.h
  2. 9 0
      lib/nviz/render.c

+ 1 - 0
include/nviz.h

@@ -136,6 +136,7 @@ struct render_window
     HGLRC contextId;		/* rendering context */
     HBITMAP bitmapId;
 #endif
+    int width, height;
 };
 
 #include <grass/defs/nviz.h>

+ 9 - 0
lib/nviz/render.c

@@ -52,6 +52,9 @@ void Nviz_init_render_window(struct render_window *rwin)
     rwin->contextId = NULL;
     rwin->bitmapId = NULL;
 #endif
+
+    rwin->width = 0;
+    rwin->height = 0;
 }
 
 /*!
@@ -174,6 +177,10 @@ int Nviz_create_render_window(struct render_window *rwin, void *display,
     rwin->contextId = wglCreateContext(rwin->displayId);
     /* TODO */
 #endif
+
+    rwin->width = width;
+    rwin->height = height;
+
     return 0;
 }
 
@@ -211,5 +218,7 @@ int Nviz_make_current_render_window(const struct render_window *rwin)
     wglMakeCurrent(rwin->displayId, rwin->contextId);
 #endif
 
+    GS_set_viewport(0, rwin->width, 0, rwin->height);
+
     return 1;
 }