- Timestamp:
- Jun 27, 2012 9:58:34 AM (12 years ago)
- Location:
- branches/nanovis2/packages/vizservers/nanovis
- Files:
-
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/nanovis2/packages/vizservers/nanovis/Command.cpp
r3023 r3063 54 54 #include "Trace.h" 55 55 56 #if PLANE_CMD56 #ifdef PLANE_CMD 57 57 #include "PlaneRenderer.h" 58 58 #endif … … 101 101 static Tcl_ObjCmdProc GridCmd; 102 102 static Tcl_ObjCmdProc LegendCmd; 103 #if PLANE_CMD103 #ifdef PLANE_CMD 104 104 static Tcl_ObjCmdProc PlaneCmd; 105 105 #endif … … 2111 2111 } 2112 2112 2113 #if PLANE_CMD2113 #ifdef PLANE_CMD 2114 2114 static int 2115 2115 PlaneAddOp(ClientData clientData, Tcl_Interp *interp, int objc, … … 2231 2231 } 2232 2232 2233 #endif 2233 #endif /*PLANE_CMD*/ 2234 2234 2235 2235 /* … … 2298 2298 Tcl_CreateObjCommand(interp, "heightmap", HeightMapCmd, NULL, NULL); 2299 2299 Tcl_CreateObjCommand(interp, "legend", LegendCmd, NULL, NULL); 2300 #if PLANE_CMD2300 #ifdef PLANE_CMD 2301 2301 Tcl_CreateObjCommand(interp, "plane", PlaneCmd, NULL, NULL); 2302 2302 #endif -
branches/nanovis2/packages/vizservers/nanovis/EventPlayer.cpp
r2822 r3063 121 121 } 122 122 123 #if DO_RLE123 #ifdef DO_RLE 124 124 int sizes[2]; 125 125 status = read(socket_fd, &sizes, sizeof(sizes)); -
branches/nanovis2/packages/vizservers/nanovis/config.h
r3007 r3063 37 37 #define USE_HALF_FLOAT 38 38 39 #define XINETD /* Enable render server. */ 40 //#define EVENTLOG /* Enable event logging. */ 41 //#define DO_RLE /* Do run length compression. */ 39 /* 40 * Enable render server 41 */ 42 #define XINETD 42 43 43 #define KEEPSTATS 1 44 /* 45 * Enable event logging 46 */ 47 //#define EVENTLOG 48 49 /* 50 * Do run length compression 51 */ 52 //#define DO_RLE 53 54 /* 55 * Keep statistics 56 */ 57 #define KEEPSTATS 44 58 45 59 /* … … 48 62 #define WANT_TRACE 49 63 50 /* 51 * The following define controls whether the new or old load_volume_stream 52 * implementation is used to load DX data. The difference is that the old 53 * implementation doesn't do any interpolation of the points to a coarser 54 * mesh. Setting ISO_TEST to 1 will cause the old implementation to be 55 * used, which makes isosurfaces work correctly (FIXME: is this still 56 * true?) 57 * 58 * [In the future, we'll use the OpenDX library reader and determine at 59 * runtime if mesh decimation is required] 64 /* 65 * Controls whether DX data is downsampled. 60 66 */ 61 #define ISO_TEST 067 #define DOWNSAMPLE_DATA 62 68 63 69 /* … … 65 71 * volume 66 72 */ 67 #define FILTER_GRADIENTS 073 #define FILTER_GRADIENTS 68 74 69 75 /* 70 * The following define controls whether the plane* commands are 71 * registered in the interpreter. Right now it's off. [Are these 72 * commands still required?] 76 * Controls whether the plane* commands are registered in the 77 * interpreter. [Are these commands still required?] 73 78 */ 74 #define PLANE_CMD 0 79 //#define PLANE_CMD 75 80 76 81 #endif -
branches/nanovis2/packages/vizservers/nanovis/dxReader.cpp
r2953 r3063 231 231 double vmax = -DBL_MAX; 232 232 if (isrect) { 233 #if ISO_TEST 234 data = new float[nx * ny * nz * 4]; 235 memset(data, 0, nx*ny*nz*4); 236 #else // !ISO_TEST 233 #ifdef DOWNSAMPLE_DATA 237 234 Rappture::Mesh1D xgrid(x0, x0 + lx, nx); 238 235 Rappture::Mesh1D ygrid(y0, y0 + ly, ny); 239 236 Rappture::Mesh1D zgrid(z0, z0 + lz, nz); 240 237 Rappture::FieldRect3D field(xgrid, ygrid, zgrid); 241 #endif // ISO_TEST 238 #else // !DOWNSAMPLE_DATA 239 data = new float[nx * ny * nz * 4]; 240 memset(data, 0, nx*ny*nz*4); 241 #endif // DOWNSAMPLE_DATA 242 242 double dval[6]; 243 243 int nread = 0; … … 260 260 } 261 261 #endif 262 #if ISO_TEST 262 #ifdef DOWNSAMPLE_DATA 263 int nindex = iz*nx*ny + iy*nx + ix; 264 field.define(nindex, dval[p]); 265 #else // !DOWNSAMPLE_DATA 263 266 int nindex = (iz*nx*ny + iy*nx + ix) * 4; 264 267 data[nindex] = dval[p]; … … 272 275 nzero_min = dval[p]; 273 276 } 274 #else // !ISO_TEST 275 int nindex = iz*nx*ny + iy*nx + ix; 276 field.define(nindex, dval[p]); 277 #endif // ISO_TEST 277 #endif // DOWNSAMPLE_DATA 278 278 nread++; 279 279 if (++iz >= nz) { … … 294 294 } 295 295 296 #if ISO_TEST296 #ifndef DOWNSAMPLE_DATA 297 297 double dv = vmax - vmin; 298 298 if (dv == 0.0) { … … 313 313 computeSimpleGradient(data, nx, ny, nz, 314 314 dx, dy, dz); 315 #else // !ISO_TEST315 #else // DOWNSAMPLE_DATA 316 316 // figure out a good mesh spacing 317 317 int nsample = 30; 318 318 double dmin = pow((lx*ly*lz)/((nsample-1)*(nsample-1)*(nsample-1)), 0.333); 319 319 320 nx = (int)ceil(lx/dmin) ;321 ny = (int)ceil(ly/dmin) ;322 nz = (int)ceil(lz/dmin) ;320 nx = (int)ceil(lx/dmin) + 1; 321 ny = (int)ceil(ly/dmin) + 1; 322 nz = (int)ceil(lz/dmin) + 1; 323 323 324 324 #ifndef HAVE_NPOT_TEXTURES … … 342 342 343 343 int ngen = 0; 344 #if FILTER_GRADIENTS344 #ifdef FILTER_GRADIENTS 345 345 // Sobel filter expects a single float at 346 346 // each node … … 369 369 nzero_min = v; 370 370 } 371 #if FILTER_GRADIENTS371 #ifdef FILTER_GRADIENTS 372 372 // NOT normalized, -1 => out of bounds 373 373 v = (isnan(v)) ? -1.0 : v; … … 382 382 } 383 383 } 384 #if FILTER_GRADIENTS384 #ifdef FILTER_GRADIENTS 385 385 // computeGradient returns a new array with gradients 386 386 // filled in, so data is now 4 floats per node … … 394 394 #endif // FILTER_GRADIENTS 395 395 396 #endif // ISO_TEST396 #endif // DOWNSAMPLE_DATA 397 397 } else { 398 398 Rappture::Mesh1D zgrid(z0, z0 + (nz-1)*dz, nz); … … 439 439 double dmin = pow((lx*ly*lz)/((nsample-1)*(nsample-1)*(nsample-1)), 0.333); 440 440 441 nx = (int)ceil(lx/dmin) ;442 ny = (int)ceil(ly/dmin) ;443 nz = (int)ceil(lz/dmin) ;441 nx = (int)ceil(lx/dmin) + 1; 442 ny = (int)ceil(ly/dmin) + 1; 443 nz = (int)ceil(lz/dmin) + 1; 444 444 #ifndef HAVE_NPOT_TEXTURES 445 445 // must be an even power of 2 for older cards -
branches/nanovis2/packages/vizservers/nanovis/nanovis.cpp
r3011 r3063 121 121 122 122 PlaneRenderer *NanoVis::planeRenderer = NULL; 123 #if PLANE_CMD123 #ifdef PLANE_CMD 124 124 // pointers to 2D planes, currently handle up 10 125 125 int NanoVis::numPlanes = 10; … … 225 225 delete colorTableRenderer; 226 226 } 227 #if PLANE_CMD227 #ifdef PLANE_CMD 228 228 for (int i = 0; i < numPlanes; i++) { 229 229 TRACE("Deleting plane[%d]", i); … … 288 288 } 289 289 290 #if KEEPSTATS290 #ifdef KEEPSTATS 291 291 292 292 static int … … 406 406 #endif 407 407 408 #if KEEPSTATS408 #ifdef KEEPSTATS 409 409 writeStats("nanovis", code); 410 410 #endif … … 871 871 } 872 872 873 #if DO_RLE873 #ifdef DO_RLE 874 874 char rle[512*512*3]; 875 875 int rleSize; … … 1877 1877 doExit(90); 1878 1878 } 1879 #if DO_RLE1879 #ifdef DO_RLE 1880 1880 do_rle(); 1881 1881 int sizes[2] = { offsets_size*sizeof(offsets[0]), rle_size }; -
branches/nanovis2/packages/vizservers/nanovis/protocol-nanovis.txt
r3007 r3063 163 163 164 164 165 --- Colormaped Plane (if PLANE_CMD =1in config.h) ---165 --- Colormaped Plane (if PLANE_CMD is defined in config.h) --- 166 166 plane active <planeIdx> 167 167 Set the active plane [0,9], or -1 to disable … … 173 173 Enable a plane for rendering using the given transfer 174 174 function. Plane must first be added. 175 --- End Colormaped Plane (if PLANE_CMD =1in config.h) ---175 --- End Colormaped Plane (if PLANE_CMD is defined in config.h) --- 176 176 177 177 ================================================================================
Note: See TracChangeset
for help on using the changeset viewer.