Changeset 2865 for trunk/packages/vizservers
- Timestamp:
- Mar 18, 2012, 7:10:04 PM (13 years ago)
- Location:
- trunk/packages/vizservers/vtkvis
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/packages/vizservers/vtkvis/RpVtkRenderer.cpp
r2759 r2865 519 519 { 520 520 TRACE("Initializing axes"); 521 #ifdef USE_CUSTOM_AXES 522 if (_cubeAxesActor == NULL) 523 _cubeAxesActor = vtkSmartPointer<vtkRpCubeAxesActor>::New(); 524 #else 521 525 if (_cubeAxesActor == NULL) 522 526 _cubeAxesActor = vtkSmartPointer<vtkCubeAxesActor>::New(); 527 #endif 523 528 _cubeAxesActor->SetCamera(_renderer->GetActiveCamera()); 524 529 _cubeAxesActor->GetProperty()->LightingOff(); … … 1088 1093 * \param[in] width Pixel width of legend (aspect controls orientation) 1089 1094 * \param[in] height Pixel height of legend (aspect controls orientation) 1095 * \param[in] opaque Flag to control if legend is rendered opaque or translucent 1090 1096 * \param[in] numLabels Number of labels to render (includes min/max) 1091 1097 * \param[in,out] imgData Pointer to array to fill with image bytes. Array … … 1154 1160 * \param[in] width Pixel width of legend (aspect controls orientation) 1155 1161 * \param[in] height Pixel height of legend (aspect controls orientation) 1162 * \param[in] opaque Flag to control if legend is rendered opaque or translucent 1156 1163 * \param[in] numLabels Number of labels to render (includes min/max) 1157 1164 * \param[in,out] imgData Pointer to array to fill with image bytes. Array … … 1217 1224 * \param[in] width Pixel width of legend (aspect controls orientation) 1218 1225 * \param[in] height Pixel height of legend (aspect controls orientation) 1226 * \param[in] opaque Flag to control if legend is rendered opaque or translucent 1219 1227 * \param[in] numLabels Number of labels to render (includes min/max) 1220 1228 * \param[in,out] imgData Pointer to array to fill with image bytes. Array … … 1981 1989 outerGutter = (outerGutter > 15 ? 15 : outerGutter); 1982 1990 1991 int imgWidthPx = _windowWidth - pxOffsetX - outerGutter; 1983 1992 int imgHeightPx = _windowHeight - pxOffsetY - outerGutter; 1984 int imgWidthPx = _windowWidth - pxOffsetX - outerGutter;1985 1993 1986 1994 double imgAspect = width / height; … … 1990 1998 1991 1999 if (imgAspect >= winAspect) { 1992 pxToWorld = width / imgWidthPx;2000 pxToWorld = width / (double)imgWidthPx; 1993 2001 } else { 1994 pxToWorld = height / imgHeightPx;2002 pxToWorld = height / (double)imgHeightPx; 1995 2003 } 1996 2004 -
trunk/packages/vizservers/vtkvis/RpVtkRenderer.h
r2757 r2865 17 17 #include <vtkCubeAxesActor.h> 18 18 #ifdef USE_CUSTOM_AXES 19 #include "vtkRpCubeAxesActor.h" 19 20 #include "vtkRpCubeAxesActor2D.h" 20 21 #else 22 #include <vtkCubeAxesActor.h> 21 23 #include <vtkCubeAxesActor2D.h> 22 24 #endif … … 89 91 typedef std::string ColorMapId; 90 92 typedef std::string FieldId; 93 94 // Data sets 95 96 void addDataSet(const DataSetId& id); 97 98 void deleteDataSet(const DataSetId& id); 99 100 DataSet *getDataSet(const DataSetId& id); 101 102 void getDataSetNames(std::vector<std::string>& names); 103 104 bool setData(const DataSetId& id, char *data, int nbytes); 105 106 bool setDataFile(const DataSetId& id, const char *filename); 107 108 bool setDataSetActiveScalars(const DataSetId& id, const char *scalarName); 109 110 bool setDataSetActiveVectors(const DataSetId& id, const char *vectorName); 111 112 bool getScalarValueAtPixel(const DataSetId& id, int x, int y, double *value); 113 114 bool getScalarValue(const DataSetId& id, double x, double y, double z, double *value); 115 116 bool getVectorValueAtPixel(const DataSetId& id, int x, int y, double vector[3]); 117 118 bool getVectorValue(const DataSetId& id, double x, double y, double z, double vector[3]); 119 120 void setDataSetShowBounds(const DataSetId& id, bool state); 121 122 void setDataSetOutlineColor(const DataSetId& id, float color[3]); 123 124 void setDataSetOpacity(const DataSetId& id, double opacity); 125 126 void setDataSetVisibility(const DataSetId& id, bool state); 127 128 void setUseCumulativeDataRange(bool state, bool onlyVisible = false); 129 130 bool getUseCumulativeRange(); 131 132 bool getCumulativeDataRange(double *range, const char *name, 133 int numComponents, 134 int component = -1); 135 136 bool getCumulativeDataRange(double *range, const char *name, 137 DataSet::DataAttributeType type, 138 int numComponents, 139 int component = -1); 140 141 // Render window 142 143 /// Get the VTK render window object this Renderer uses 144 vtkRenderWindow *getRenderWindow() 145 { 146 return _renderWindow; 147 } 148 149 void setWindowSize(int width, int height); 150 151 int getWindowWidth() const; 152 153 int getWindowHeight() const; 154 155 // Camera controls 156 157 void setViewAngle(int height); 158 159 vtkCamera *getVtkCamera() 160 { 161 if (_renderer != NULL) 162 return _renderer->GetActiveCamera(); 163 else 164 return NULL; 165 } 166 167 void setCameraMode(CameraMode mode); 168 169 CameraMode getCameraMode() const; 170 171 void resetCamera(bool resetOrientation = true); 172 173 void resetCameraClippingRange(); 174 175 void setCameraZoomRegionPixels(int x, int y, int width, int height); 176 177 void setCameraZoomRegion(double x, double y, double width, double height); 178 179 void getCameraZoomRegion(double xywh[4]) const; 180 181 void getScreenWorldCoords(double xywh[4]) const; 182 183 void rotateCamera(double yaw, double pitch, double roll); 184 185 void setCameraOrientation(const double quat[4], bool absolute = true); 186 187 void panCamera(double x, double y, bool absolute = true); 188 189 void zoomCamera(double z, bool absolute = true); 190 191 void setCameraOrientationAndPosition(const double position[3], 192 const double focalPoint[3], 193 const double viewUp[3]); 194 195 void getCameraOrientationAndPosition(double position[3], 196 double focalPoint[3], 197 double viewUp[3]); 198 199 // Rendering an image 200 201 void setBackgroundColor(float color[3]); 202 203 void setClipPlane(Axis axis, double ratio, int direction); 204 205 void setUseTwoSidedLighting(bool state); 206 207 void setUseDepthPeeling(bool state); 208 209 void eventuallyRender(); 210 211 bool render(); 212 213 void getRenderedFrame(vtkUnsignedCharArray *imgData); 214 215 // Axes 216 217 void setAxesFlyMode(AxesFlyMode mode); 218 219 void setAxesVisibility(bool state); 220 221 void setAxesGridVisibility(bool state); 222 223 void setAxesLabelVisibility(bool state); 224 225 void setAxesTickVisibility(bool state); 226 227 void setAxesTickPosition(AxesTickPosition pos); 228 229 void setAxesColor(double color[3]); 230 231 void setAxisVisibility(Axis axis, bool state); 232 233 void setAxisGridVisibility(Axis axis, bool state); 234 235 void setAxisLabelVisibility(Axis axis, bool state); 236 237 void setAxisTickVisibility(Axis axis, bool state); 238 239 void setAxisTitle(Axis axis, const char *title); 240 241 void setAxisUnits(Axis axis, const char *units); 242 243 // Colormaps 244 245 void addColorMap(const ColorMapId& id, ColorMap *colorMap); 246 247 void deleteColorMap(const ColorMapId& id); 248 249 ColorMap *getColorMap(const ColorMapId& id); 250 251 bool renderColorMap(const ColorMapId& id, 252 const DataSetId& dataSetID, 253 LegendType legendType, 254 const char *fieldName, 255 DataSet::DataAttributeType type, 256 std::string& title, 257 double range[2], 258 int width, int height, 259 bool opaque, 260 int numLabels, 261 vtkUnsignedCharArray *imgData); 262 263 bool renderColorMap(const ColorMapId& id, 264 const DataSetId& dataSetID, 265 LegendType legendType, 266 const char *fieldName, 267 std::string& title, 268 double range[2], 269 int width, int height, 270 bool opaque, 271 int numLabels, 272 vtkUnsignedCharArray *imgData); 273 274 bool renderColorMap(const ColorMapId& id, 275 const DataSetId& dataSetID, 276 LegendType legendType, 277 std::string& title, 278 double range[2], 279 int width, int height, 280 bool opaque, 281 int numLabels, 282 vtkUnsignedCharArray *imgData); 283 284 // Generic VtkGraphicsObject methods 285 286 template<class GraphicsObject> 287 GraphicsObject *getGraphicsObject(const DataSetId& id); 288 289 template<class GraphicsObject> 290 bool addGraphicsObject(const DataSetId& id); 291 292 template<class GraphicsObject> 293 void deleteGraphicsObject(const DataSetId& id); 294 295 template<class GraphicsObject> 296 void setGraphicsObjectColorMap(const DataSetId& id, const ColorMapId& colorMapId); 297 298 template<class GraphicsObject> 299 void setGraphicsObjectVolumeSlice(const DataSetId& id, Axis axis, double ratio); 300 301 // Prop/Prop3D properties 302 303 template<class GraphicsObject> 304 void setGraphicsObjectOrientation(const DataSetId& id, double quat[4]); 305 306 template<class GraphicsObject> 307 void setGraphicsObjectOrientation(const DataSetId& id, double angle, double axis[3]); 308 309 template<class GraphicsObject> 310 void setGraphicsObjectPosition(const DataSetId& id, double pos[3]); 311 312 template<class GraphicsObject> 313 void setGraphicsObjectScale(const DataSetId& id, double scale[3]); 314 315 template<class GraphicsObject> 316 void setGraphicsObjectTransform(const DataSetId& id, vtkMatrix4x4 *trans); 317 318 template<class GraphicsObject> 319 void setGraphicsObjectVisibility(const DataSetId& id, bool state); 320 321 // Actor properties 322 323 template<class GraphicsObject> 324 void setGraphicsObjectColor(const DataSetId& id, float color[3]); 325 326 template<class GraphicsObject> 327 void setGraphicsObjectEdgeVisibility(const DataSetId& id, bool state); 328 329 template<class GraphicsObject> 330 void setGraphicsObjectEdgeColor(const DataSetId& id, float color[3]); 331 332 template<class GraphicsObject> 333 void setGraphicsObjectEdgeWidth(const DataSetId& id, float edgeWidth); 334 335 template<class GraphicsObject> 336 void setGraphicsObjectAmbient(const DataSetId& id, double coeff); 337 338 template<class GraphicsObject> 339 void setGraphicsObjectDiffuse(const DataSetId& id, double coeff); 340 341 template<class GraphicsObject> 342 void setGraphicsObjectSpecular(const DataSetId& id, double coeff, double power); 343 344 template<class GraphicsObject> 345 void setGraphicsObjectLighting(const DataSetId& id, bool state); 346 347 template<class GraphicsObject> 348 void setGraphicsObjectOpacity(const DataSetId& id, double opacity); 349 350 template<class GraphicsObject> 351 void setGraphicsObjectPointSize(const DataSetId& id, float size); 352 353 template<class GraphicsObject> 354 void setGraphicsObjectWireframe(const DataSetId& id, bool state); 355 356 // 2D Contour plots 357 358 bool addContour2D(const DataSetId& id, int numContours); 359 360 bool addContour2D(const DataSetId& id, const std::vector<double>& contours); 361 362 void setContour2DContours(const DataSetId& id, int numContours); 363 364 void setContour2DContourList(const DataSetId& id, const std::vector<double>& contours); 365 366 // 3D Contour (isosurface) plots 367 368 bool addContour3D(const DataSetId& id, int numContours); 369 370 bool addContour3D(const DataSetId& id, const std::vector<double>& contours); 371 372 void setContour3DContours(const DataSetId& id, int numContours); 373 374 void setContour3DContourList(const DataSetId& id, const std::vector<double>& contours); 375 376 // Cutplanes 377 378 void setCutplaneOutlineVisibility(const DataSetId& id, bool state); 379 380 void setCutplaneSliceVisibility(const DataSetId& id, Axis axis, bool state); 381 382 void setCutplaneColorMode(const DataSetId& id, 383 Cutplane::ColorMode mode, 384 const char *name, double range[2] = NULL); 385 386 void setCutplaneColorMode(const DataSetId& id, 387 Cutplane::ColorMode mode, 388 DataSet::DataAttributeType type, 389 const char *name, double range[2] = NULL); 390 391 // Glyphs 392 393 bool addGlyphs(const DataSetId& id, Glyphs::GlyphShape shape); 394 395 void setGlyphsShape(const DataSetId& id, Glyphs::GlyphShape shape); 396 397 void setGlyphsColorMode(const DataSetId& id, 398 Glyphs::ColorMode mode, 399 const char *name, 400 double range[2] = NULL); 401 402 void setGlyphsScalingMode(const DataSetId& id, 403 Glyphs::ScalingMode mode, 404 const char *name, 405 double range[2] = NULL); 406 407 void setGlyphsNormalizeScale(const DataSetId& id, bool normalize); 408 409 void setGlyphsScaleFactor(const DataSetId& id, double scale); 410 411 // Height maps 412 413 bool addHeightMap(const DataSetId& id, int numContours, double heightScale); 414 415 bool addHeightMap(const DataSetId& id, const std::vector<double>& contours, double heightScale); 416 417 void setHeightMapHeightScale(const DataSetId& id, double scale); 418 419 void setHeightMapNumContours(const DataSetId& id, int numContours); 420 421 void setHeightMapContourList(const DataSetId& id, const std::vector<double>& contours); 422 423 void setHeightMapContourSurfaceVisibility(const DataSetId& id, bool state); 424 425 void setHeightMapContourLineVisibility(const DataSetId& id, bool state); 426 427 void setHeightMapContourEdgeColor(const DataSetId& id, float color[3]); 428 429 void setHeightMapContourEdgeWidth(const DataSetId& id, float edgeWidth); 430 431 // Molecules 432 433 void setMoleculeAtomScaling(const DataSetId& id, Molecule::AtomScaling scaling); 434 435 void setMoleculeAtomVisibility(const DataSetId& id, bool state); 436 437 void setMoleculeBondVisibility(const DataSetId& id, bool state); 438 439 // Color-mapped surfaces 440 441 void setPseudoColorColorMode(const DataSetId& id, 442 PseudoColor::ColorMode mode, 443 const char *name, double range[2] = NULL); 444 445 void setPseudoColorColorMode(const DataSetId& id, 446 PseudoColor::ColorMode mode, 447 DataSet::DataAttributeType type, 448 const char *name, double range[2] = NULL); 449 450 // Streamlines 451 452 void setStreamlinesNumberOfSeedPoints(const DataSetId& id, int numPoints); 453 454 void setStreamlinesSeedToMeshPoints(const DataSetId& id); 455 456 void setStreamlinesSeedToFilledMesh(const DataSetId& id, int numPoints); 457 458 bool setStreamlinesSeedToMeshPoints(const DataSetId& id, 459 char *data, size_t nbytes); 460 461 bool setStreamlinesSeedToFilledMesh(const DataSetId& id, 462 char *data, size_t nbytes, 463 int numPoints); 464 465 void setStreamlinesSeedToRake(const DataSetId& id, 466 double start[3], double end[3], 467 int numPoints); 468 469 void setStreamlinesSeedToDisk(const DataSetId& id, 470 double center[3], double normal[3], 471 double radius, double innerRadius, 472 int numPoints); 473 474 void setStreamlinesSeedToPolygon(const DataSetId& id, 475 double center[3], double normal[3], 476 double angle, double radius, 477 int numSides); 478 479 void setStreamlinesSeedToFilledPolygon(const DataSetId& id, 480 double center[3], double normal[3], 481 double angle, double radius, 482 int numSides, int numPoints); 483 484 void setStreamlinesLength(const DataSetId& id, double length); 485 486 void setStreamlinesTypeToLines(const DataSetId& id); 487 488 void setStreamlinesTypeToTubes(const DataSetId& id, int numSides, double radius); 489 490 void setStreamlinesTypeToRibbons(const DataSetId& id, double width, double angle); 491 492 void setStreamlinesSeedVisibility(const DataSetId& id, bool state); 493 494 void setStreamlinesColorMode(const DataSetId& id, 495 Streamlines::ColorMode mode, 496 const char *name, double range[2] = NULL); 497 498 void setStreamlinesColorMode(const DataSetId& id, 499 Streamlines::ColorMode mode, 500 DataSet::DataAttributeType type, 501 const char *name, double range[2] = NULL); 502 503 void setStreamlinesSeedColor(const DataSetId& id, float color[3]); 504 505 // Volumes 506 507 void setVolumeSampleDistance(const DataSetId& id, double distance); 508 509 private: 91 510 typedef std::tr1::unordered_map<DataSetId, DataSet *> DataSetHashmap; 92 511 typedef std::tr1::unordered_map<FieldId, double *> FieldRangeHashmap; … … 104 523 typedef std::tr1::unordered_map<DataSetId, Volume *> VolumeHashmap; 105 524 106 // Data sets107 108 void addDataSet(const DataSetId& id);109 110 void deleteDataSet(const DataSetId& id);111 112 DataSet *getDataSet(const DataSetId& id);113 114 void getDataSetNames(std::vector<std::string>& names);115 116 bool setData(const DataSetId& id, char *data, int nbytes);117 118 bool setDataFile(const DataSetId& id, const char *filename);119 120 bool setDataSetActiveScalars(const DataSetId& id, const char *scalarName);121 122 bool setDataSetActiveVectors(const DataSetId& id, const char *vectorName);123 124 bool getScalarValueAtPixel(const DataSetId& id, int x, int y, double *value);125 126 bool getScalarValue(const DataSetId& id, double x, double y, double z, double *value);127 128 bool getVectorValueAtPixel(const DataSetId& id, int x, int y, double vector[3]);129 130 bool getVectorValue(const DataSetId& id, double x, double y, double z, double vector[3]);131 132 void setDataSetShowBounds(const DataSetId& id, bool state);133 134 void setDataSetOutlineColor(const DataSetId& id, float color[3]);135 136 void setDataSetOpacity(const DataSetId& id, double opacity);137 138 void setDataSetVisibility(const DataSetId& id, bool state);139 140 void setUseCumulativeDataRange(bool state, bool onlyVisible = false);141 142 bool getUseCumulativeRange();143 144 bool getCumulativeDataRange(double *range, const char *name,145 int numComponents,146 int component = -1);147 148 bool getCumulativeDataRange(double *range, const char *name,149 DataSet::DataAttributeType type,150 int numComponents,151 int component = -1);152 153 // Render window154 155 /// Get the VTK render window object this Renderer uses156 vtkRenderWindow *getRenderWindow()157 {158 return _renderWindow;159 }160 161 void setWindowSize(int width, int height);162 163 int getWindowWidth() const;164 165 int getWindowHeight() const;166 167 // Camera controls168 169 void setViewAngle(int height);170 171 vtkCamera *getVtkCamera()172 {173 if (_renderer != NULL)174 return _renderer->GetActiveCamera();175 else176 return NULL;177 }178 179 void setCameraMode(CameraMode mode);180 181 CameraMode getCameraMode() const;182 183 void resetCamera(bool resetOrientation = true);184 185 void resetCameraClippingRange();186 187 void setCameraZoomRegionPixels(int x, int y, int width, int height);188 189 void setCameraZoomRegion(double x, double y, double width, double height);190 191 void getCameraZoomRegion(double xywh[4]) const;192 193 void getScreenWorldCoords(double xywh[4]) const;194 195 void rotateCamera(double yaw, double pitch, double roll);196 197 void setCameraOrientation(const double quat[4], bool absolute = true);198 199 void panCamera(double x, double y, bool absolute = true);200 201 void zoomCamera(double z, bool absolute = true);202 203 void setCameraOrientationAndPosition(const double position[3],204 const double focalPoint[3],205 const double viewUp[3]);206 207 void getCameraOrientationAndPosition(double position[3],208 double focalPoint[3],209 double viewUp[3]);210 211 // Rendering an image212 213 void setBackgroundColor(float color[3]);214 215 void setClipPlane(Axis axis, double ratio, int direction);216 217 void setUseTwoSidedLighting(bool state);218 219 void setUseDepthPeeling(bool state);220 221 void eventuallyRender();222 223 bool render();224 225 void getRenderedFrame(vtkUnsignedCharArray *imgData);226 227 // Axes228 229 void setAxesFlyMode(AxesFlyMode mode);230 231 void setAxesVisibility(bool state);232 233 void setAxesGridVisibility(bool state);234 235 void setAxesLabelVisibility(bool state);236 237 void setAxesTickVisibility(bool state);238 239 void setAxesTickPosition(AxesTickPosition pos);240 241 void setAxesColor(double color[3]);242 243 void setAxisVisibility(Axis axis, bool state);244 245 void setAxisGridVisibility(Axis axis, bool state);246 247 void setAxisLabelVisibility(Axis axis, bool state);248 249 void setAxisTickVisibility(Axis axis, bool state);250 251 void setAxisTitle(Axis axis, const char *title);252 253 void setAxisUnits(Axis axis, const char *units);254 255 // Colormaps256 257 void addColorMap(const ColorMapId& id, ColorMap *colorMap);258 259 void deleteColorMap(const ColorMapId& id);260 261 ColorMap *getColorMap(const ColorMapId& id);262 263 bool renderColorMap(const ColorMapId& id,264 const DataSetId& dataSetID,265 LegendType legendType,266 const char *fieldName,267 DataSet::DataAttributeType type,268 std::string& title,269 double range[2],270 int width, int height,271 bool opaque,272 int numLabels,273 vtkUnsignedCharArray *imgData);274 275 bool renderColorMap(const ColorMapId& id,276 const DataSetId& dataSetID,277 LegendType legendType,278 const char *fieldName,279 std::string& title,280 double range[2],281 int width, int height,282 bool opaque,283 int numLabels,284 vtkUnsignedCharArray *imgData);285 286 bool renderColorMap(const ColorMapId& id,287 const DataSetId& dataSetID,288 LegendType legendType,289 std::string& title,290 double range[2],291 int width, int height,292 bool opaque,293 int numLabels,294 vtkUnsignedCharArray *imgData);295 296 // Generic VtkGraphicsObject methods297 298 template<class GraphicsObject>299 GraphicsObject *getGraphicsObject(const DataSetId& id);300 301 template<class GraphicsObject>302 bool addGraphicsObject(const DataSetId& id);303 304 template<class GraphicsObject>305 void deleteGraphicsObject(const DataSetId& id);306 307 template<class GraphicsObject>308 void setGraphicsObjectColorMap(const DataSetId& id, const ColorMapId& colorMapId);309 310 template<class GraphicsObject>311 void setGraphicsObjectVolumeSlice(const DataSetId& id, Axis axis, double ratio);312 313 // Prop/Prop3D properties314 315 template<class GraphicsObject>316 void setGraphicsObjectOrientation(const DataSetId& id, double quat[4]);317 318 template<class GraphicsObject>319 void setGraphicsObjectOrientation(const DataSetId& id, double angle, double axis[3]);320 321 template<class GraphicsObject>322 void setGraphicsObjectPosition(const DataSetId& id, double pos[3]);323 324 template<class GraphicsObject>325 void setGraphicsObjectScale(const DataSetId& id, double scale[3]);326 327 template<class GraphicsObject>328 void setGraphicsObjectTransform(const DataSetId& id, vtkMatrix4x4 *trans);329 330 template<class GraphicsObject>331 void setGraphicsObjectVisibility(const DataSetId& id, bool state);332 333 // Actor properties334 335 template<class GraphicsObject>336 void setGraphicsObjectColor(const DataSetId& id, float color[3]);337 338 template<class GraphicsObject>339 void setGraphicsObjectEdgeVisibility(const DataSetId& id, bool state);340 341 template<class GraphicsObject>342 void setGraphicsObjectEdgeColor(const DataSetId& id, float color[3]);343 344 template<class GraphicsObject>345 void setGraphicsObjectEdgeWidth(const DataSetId& id, float edgeWidth);346 347 template<class GraphicsObject>348 void setGraphicsObjectAmbient(const DataSetId& id, double coeff);349 350 template<class GraphicsObject>351 void setGraphicsObjectDiffuse(const DataSetId& id, double coeff);352 353 template<class GraphicsObject>354 void setGraphicsObjectSpecular(const DataSetId& id, double coeff, double power);355 356 template<class GraphicsObject>357 void setGraphicsObjectLighting(const DataSetId& id, bool state);358 359 template<class GraphicsObject>360 void setGraphicsObjectOpacity(const DataSetId& id, double opacity);361 362 template<class GraphicsObject>363 void setGraphicsObjectPointSize(const DataSetId& id, float size);364 365 template<class GraphicsObject>366 void setGraphicsObjectWireframe(const DataSetId& id, bool state);367 368 // 2D Contour plots369 370 bool addContour2D(const DataSetId& id, int numContours);371 372 bool addContour2D(const DataSetId& id, const std::vector<double>& contours);373 374 void setContour2DContours(const DataSetId& id, int numContours);375 376 void setContour2DContourList(const DataSetId& id, const std::vector<double>& contours);377 378 // 3D Contour (isosurface) plots379 380 bool addContour3D(const DataSetId& id, int numContours);381 382 bool addContour3D(const DataSetId& id, const std::vector<double>& contours);383 384 void setContour3DContours(const DataSetId& id, int numContours);385 386 void setContour3DContourList(const DataSetId& id, const std::vector<double>& contours);387 388 // Cutplanes389 390 void setCutplaneOutlineVisibility(const DataSetId& id, bool state);391 392 void setCutplaneSliceVisibility(const DataSetId& id, Axis axis, bool state);393 394 void setCutplaneColorMode(const DataSetId& id,395 Cutplane::ColorMode mode,396 const char *name, double range[2] = NULL);397 398 void setCutplaneColorMode(const DataSetId& id,399 Cutplane::ColorMode mode,400 DataSet::DataAttributeType type,401 const char *name, double range[2] = NULL);402 403 // Glyphs404 405 bool addGlyphs(const DataSetId& id, Glyphs::GlyphShape shape);406 407 void setGlyphsShape(const DataSetId& id, Glyphs::GlyphShape shape);408 409 void setGlyphsColorMode(const DataSetId& id,410 Glyphs::ColorMode mode,411 const char *name,412 double range[2] = NULL);413 414 void setGlyphsScalingMode(const DataSetId& id,415 Glyphs::ScalingMode mode,416 const char *name,417 double range[2] = NULL);418 419 void setGlyphsNormalizeScale(const DataSetId& id, bool normalize);420 421 void setGlyphsScaleFactor(const DataSetId& id, double scale);422 423 // Height maps424 425 bool addHeightMap(const DataSetId& id, int numContours, double heightScale);426 427 bool addHeightMap(const DataSetId& id, const std::vector<double>& contours, double heightScale);428 429 void setHeightMapHeightScale(const DataSetId& id, double scale);430 431 void setHeightMapNumContours(const DataSetId& id, int numContours);432 433 void setHeightMapContourList(const DataSetId& id, const std::vector<double>& contours);434 435 void setHeightMapContourSurfaceVisibility(const DataSetId& id, bool state);436 437 void setHeightMapContourLineVisibility(const DataSetId& id, bool state);438 439 void setHeightMapContourEdgeColor(const DataSetId& id, float color[3]);440 441 void setHeightMapContourEdgeWidth(const DataSetId& id, float edgeWidth);442 443 // Molecules444 445 void setMoleculeAtomScaling(const DataSetId& id, Molecule::AtomScaling scaling);446 447 void setMoleculeAtomVisibility(const DataSetId& id, bool state);448 449 void setMoleculeBondVisibility(const DataSetId& id, bool state);450 451 // Color-mapped surfaces452 453 void setPseudoColorColorMode(const DataSetId& id,454 PseudoColor::ColorMode mode,455 const char *name, double range[2] = NULL);456 457 void setPseudoColorColorMode(const DataSetId& id,458 PseudoColor::ColorMode mode,459 DataSet::DataAttributeType type,460 const char *name, double range[2] = NULL);461 462 // Streamlines463 464 void setStreamlinesNumberOfSeedPoints(const DataSetId& id, int numPoints);465 466 void setStreamlinesSeedToMeshPoints(const DataSetId& id);467 468 void setStreamlinesSeedToFilledMesh(const DataSetId& id, int numPoints);469 470 bool setStreamlinesSeedToMeshPoints(const DataSetId& id,471 char *data, size_t nbytes);472 473 bool setStreamlinesSeedToFilledMesh(const DataSetId& id,474 char *data, size_t nbytes,475 int numPoints);476 477 void setStreamlinesSeedToRake(const DataSetId& id,478 double start[3], double end[3],479 int numPoints);480 481 void setStreamlinesSeedToDisk(const DataSetId& id,482 double center[3], double normal[3],483 double radius, double innerRadius,484 int numPoints);485 486 void setStreamlinesSeedToPolygon(const DataSetId& id,487 double center[3], double normal[3],488 double angle, double radius,489 int numSides);490 491 void setStreamlinesSeedToFilledPolygon(const DataSetId& id,492 double center[3], double normal[3],493 double angle, double radius,494 int numSides, int numPoints);495 496 void setStreamlinesLength(const DataSetId& id, double length);497 498 void setStreamlinesTypeToLines(const DataSetId& id);499 500 void setStreamlinesTypeToTubes(const DataSetId& id, int numSides, double radius);501 502 void setStreamlinesTypeToRibbons(const DataSetId& id, double width, double angle);503 504 void setStreamlinesSeedVisibility(const DataSetId& id, bool state);505 506 void setStreamlinesColorMode(const DataSetId& id,507 Streamlines::ColorMode mode,508 const char *name, double range[2] = NULL);509 510 void setStreamlinesColorMode(const DataSetId& id,511 Streamlines::ColorMode mode,512 DataSet::DataAttributeType type,513 const char *name, double range[2] = NULL);514 515 void setStreamlinesSeedColor(const DataSetId& id, float color[3]);516 517 // Volumes518 519 void setVolumeSampleDistance(const DataSetId& id, double distance);520 521 private:522 525 static void printCameraInfo(vtkCamera *camera); 523 526 … … 601 604 vtkSmartPointer<vtkPlane> _userClipPlanes[6]; 602 605 vtkSmartPointer<vtkPlaneCollection> _activeClipPlanes; 603 vtkSmartPointer<vtkCubeAxesActor> _cubeAxesActor; // For 3D view604 606 #ifdef USE_CUSTOM_AXES 607 vtkSmartPointer<vtkRpCubeAxesActor> _cubeAxesActor; // For 3D view 605 608 vtkSmartPointer<vtkRpCubeAxesActor2D> _cubeAxesActor2D; // For 2D view 606 609 #else 610 vtkSmartPointer<vtkCubeAxesActor> _cubeAxesActor; // For 3D view 607 611 vtkSmartPointer<vtkCubeAxesActor2D> _cubeAxesActor2D; // For 2D view 608 612 #endif
Note: See TracChangeset
for help on using the changeset viewer.