VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkViewTheme.h,v $ 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00035 #ifndef __vtkViewTheme_h 00036 #define __vtkViewTheme_h 00037 00038 #include "vtkObject.h" 00039 00040 class VTK_INFOVIS_EXPORT vtkViewTheme : public vtkObject 00041 { 00042 public: 00043 static vtkViewTheme* New(); 00044 vtkTypeRevisionMacro(vtkViewTheme, vtkObject); 00045 void PrintSelf(ostream& os, vtkIndent indent); 00046 00048 00049 vtkSetMacro(PointSize, double); 00050 vtkGetMacro(PointSize, double); 00052 00054 00055 vtkSetMacro(LineWidth, double); 00056 vtkGetMacro(LineWidth, double); 00058 00060 00062 vtkSetVector3Macro(PointColor, double); 00063 vtkGetVector3Macro(PointColor, double); 00064 vtkSetMacro(PointOpacity, double); 00065 vtkGetMacro(PointOpacity, double); 00067 00069 00070 vtkSetVector2Macro(PointHueRange, double); 00071 vtkGetVector2Macro(PointHueRange, double); 00072 vtkSetVector2Macro(PointSaturationRange, double); 00073 vtkGetVector2Macro(PointSaturationRange, double); 00074 vtkSetVector2Macro(PointValueRange, double); 00075 vtkGetVector2Macro(PointValueRange, double); 00076 vtkSetVector2Macro(PointAlphaRange, double); 00077 vtkGetVector2Macro(PointAlphaRange, double); 00079 00081 00083 vtkSetVector3Macro(CellColor, double); 00084 vtkGetVector3Macro(CellColor, double); 00085 vtkSetMacro(CellOpacity, double); 00086 vtkGetMacro(CellOpacity, double); 00088 00090 00091 vtkSetVector2Macro(CellHueRange, double); 00092 vtkGetVector2Macro(CellHueRange, double); 00093 vtkSetVector2Macro(CellSaturationRange, double); 00094 vtkGetVector2Macro(CellSaturationRange, double); 00095 vtkSetVector2Macro(CellValueRange, double); 00096 vtkGetVector2Macro(CellValueRange, double); 00097 vtkSetVector2Macro(CellAlphaRange, double); 00098 vtkGetVector2Macro(CellAlphaRange, double); 00100 00102 00103 vtkSetVector3Macro(OutlineColor, double); 00104 vtkGetVector3Macro(OutlineColor, double); 00106 00108 00109 vtkSetVector3Macro(SelectedPointColor, double); 00110 vtkGetVector3Macro(SelectedPointColor, double); 00111 vtkSetMacro(SelectedPointOpacity, double); 00112 vtkGetMacro(SelectedPointOpacity, double); 00114 00116 00117 vtkSetVector3Macro(SelectedCellColor, double); 00118 vtkGetVector3Macro(SelectedCellColor, double); 00119 vtkSetMacro(SelectedCellOpacity, double); 00120 vtkGetMacro(SelectedCellOpacity, double); 00122 00124 00125 vtkSetVector3Macro(BackgroundColor, double); 00126 vtkGetVector3Macro(BackgroundColor, double); 00128 00130 00131 vtkSetVector3Macro(BackgroundColor2, double); 00132 vtkGetVector3Macro(BackgroundColor2, double); 00134 00136 00137 vtkSetVector3Macro(VertexLabelColor, double); 00138 vtkGetVector3Macro(VertexLabelColor, double); 00140 00142 00143 vtkSetVector3Macro(EdgeLabelColor, double); 00144 vtkGetVector3Macro(EdgeLabelColor, double); 00146 00148 00151 static vtkViewTheme* CreateOceanTheme(); 00152 static vtkViewTheme* CreateMellowTheme(); 00153 static vtkViewTheme* CreateNeonTheme(); 00155 00156 protected: 00157 vtkViewTheme(); 00158 ~vtkViewTheme(); 00159 00160 double PointSize; 00161 double LineWidth; 00162 00163 double PointColor[3]; 00164 double PointOpacity; 00165 double PointHueRange[2]; 00166 double PointSaturationRange[2]; 00167 double PointValueRange[2]; 00168 double PointAlphaRange[2]; 00169 00170 double CellColor[3]; 00171 double CellOpacity; 00172 double CellHueRange[2]; 00173 double CellSaturationRange[2]; 00174 double CellValueRange[2]; 00175 double CellAlphaRange[2]; 00176 00177 double OutlineColor[3]; 00178 00179 double SelectedPointColor[3]; 00180 double SelectedPointOpacity; 00181 double SelectedCellColor[3]; 00182 double SelectedCellOpacity; 00183 00184 double BackgroundColor[3]; 00185 double BackgroundColor2[3]; 00186 double VertexLabelColor[3]; 00187 double EdgeLabelColor[3]; 00188 00189 private: 00190 vtkViewTheme(const vtkViewTheme&); // Not implemented. 00191 void operator=(const vtkViewTheme&); // Not implemented. 00192 }; 00193 00194 #endif 00195