Changes between Version 3 and Version 4 of wxGUIDevelopment/MapRendering
- Timestamp:
- 04/17/13 03:22:29 (12 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
wxGUIDevelopment/MapRendering
v3 v4 3 3 = Map rendering = 4 4 5 ''This page is about rendering in wxGUI. It contains proposals how to make it better. It it not about general map rendering in GRASS, however it may obviously interfere.''5 ''This page is about rendering in wxGUI. It contains proposals how to make it better. Proposals can be incomplete but complete proposals are better. It it not about general map rendering in GRASS, however it may obviously interfere.'' 6 6 7 7 == Introduction == … … 22 22 23 23 Related discussion on mailing list: 24 * [http://lists.osgeo.org/pipermail/grass-dev/2012-August/059099.html Speed map display in wxGUI on bigger monitors], ([http://osgeo-org.1560.x6.nabble.com/Speed-map-display-in-wxGUI-on-bigger-monitors-td4992997.html at Nabble]) 24 * [http://lists.osgeo.org/pipermail/grass-dev/2012-August/059099.html Speed map display in wxGUI on bigger monitors] ([http://osgeo-org.1560.x6.nabble.com/Speed-map-display-in-wxGUI-on-bigger-monitors-td4992997.html at Nabble]) 25 * [http://lists.osgeo.org/pipermail/grass-dev/2011-July/054947.html GRASS_RENDER_IMMEDIATE in GRASS7] ([http://osgeo-org.1560.x6.nabble.com/GRASS-RENDER-IMMEDIATE-in-GRASS7-td3995365.html at Nabble]) 25 26 26 27 Related changesets: … … 28 29 * r54465 fix for not updating statusbar (possibly slowed down the rendering) 29 30 * r52436 wxGUI: delete unused wx.Image instances when rendering 31 * r48040 show 'busy' mouse cursor while rendering 30 32 31 33 … … 38 40 About the last point, we are using rendering to files because displaying/drawing of maps is done by modules, not library functions (the functionality is in the library). Moreover, it is not safe to call GRASS library functions from GUI since they call `G_fatal_error()` which calls `exit()`, so on error the whole GUI ends (without an error because stderr is written into GUI console which ends too). 39 41 40 == Currently used options ==42 == Currently used methods == 41 43 42 44 * wxGUI renders to uncompressed PPM and uses `g.pnmcomp` … … 52 54 * Python loop was just so slow to be used 53 55 * wxNVIZ uses OpenGL 54 * TODO: provide basic info here 56 * the rendering library is in C 57 * in wxPython GUI used through ctypes 58 * data are accessed through the standard GRASS GIS library functions (thus `G_fatal_error()` and `exit()` are there) 59 * TODO: provide more details if necessary, or delete this comment 60 * `ximgview` (C application which uses X) 61 * reads BMP images generated by PNG or cairo driver and uses `GRASS_PNG_MAPPED=TRUE` to get constant file size 62 * TODO: only documentation was used, provide more details from code, probably same as wxWidgets version 63 * `wximgview` (C++ application which uses wxWidgets) 64 * reads BMP images generated by PNG or cairo driver and uses `GRASS_PNG_MAPPED=TRUE` to get constant file size 65 * uses time to look to the file then read the file in for loop 55 66 56 67 == Proposal: Do the composition in the wxGUI == … … 142 153 The idea of two different approaches for main GUI and monitors is not new. The current wxGUI (at least before r55230) uses different approach for layer rendering (the difference is the number of help files and the opacity handling). 143 154 144 ''( Sep 4, 2012, #1719)''155 ''(#1719, 2012-06-04)'' 145 156 146 157 == Proposal: Directly access data with !NumPy == … … 151 162 152 163 ''This is just a brief of what I have. I can provide further details if anyone is interested. (rashadkm, 2013-03-29)'' 164 165 166 == Proposal: Use memory-mapped files or shared memory for output of `d.*` modules == 167 168 TODO: Comments not included because this requires further analyses anyway. 169 170 ''(ychemin, 2013-04-15)''