Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Rendering/vtkLabeledDataMapper.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkLabeledDataMapper.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00068 #ifndef __vtkLabeledDataMapper_h
    00069 #define __vtkLabeledDataMapper_h
    00070
    00071 #include "vtkMapper2D.h"
    00072
    00073 class vtkDataSet;
    00074 class vtkTextMapper;
    00075 class vtkTextProperty;
    00076
    00077 #define VTK_LABEL_IDS        0
    00078 #define VTK_LABEL_SCALARS    1
    00079 #define VTK_LABEL_VECTORS    2
    00080 #define VTK_LABEL_NORMALS    3
    00081 #define VTK_LABEL_TCOORDS    4
    00082 #define VTK_LABEL_TENSORS    5
    00083 #define VTK_LABEL_FIELD_DATA 6
    00084
    00085 class VTK_RENDERING_EXPORT vtkLabeledDataMapper : public vtkMapper2D
    00086 {
    00087 public:
    00090   static vtkLabeledDataMapper *New();
    00091
    00092   vtkTypeRevisionMacro(vtkLabeledDataMapper,vtkMapper2D);
    00093   void PrintSelf(ostream& os, vtkIndent indent);
    00094
    00096
    00102   vtkSetStringMacro(LabelFormat);
    00103   vtkGetStringMacro(LabelFormat);
    00105
    00107
    00112   vtkSetMacro(LabeledComponent,int);
    00113   vtkGetMacro(LabeledComponent,int);
    00115
    00117
    00119   vtkSetClampMacro(FieldDataArray,int,0,VTK_LARGE_INTEGER);
    00120   vtkGetMacro(FieldDataArray,int);
    00122
    00124
    00125   virtual void SetInput(vtkDataSet*);
    00126   vtkGetObjectMacro(Input, vtkDataSet);
    00128
    00130
    00134   vtkSetMacro(LabelMode, int);
    00135   vtkGetMacro(LabelMode, int);
    00136   void SetLabelModeToLabelIds() {this->SetLabelMode(VTK_LABEL_IDS);};
    00137   void SetLabelModeToLabelScalars() {this->SetLabelMode(VTK_LABEL_SCALARS);};
    00138   void SetLabelModeToLabelVectors() {this->SetLabelMode(VTK_LABEL_VECTORS);};
    00139   void SetLabelModeToLabelNormals() {this->SetLabelMode(VTK_LABEL_NORMALS);};
    00140   void SetLabelModeToLabelTCoords() {this->SetLabelMode(VTK_LABEL_TCOORDS);};
    00141   void SetLabelModeToLabelTensors() {this->SetLabelMode(VTK_LABEL_TENSORS);};
    00142   void SetLabelModeToLabelFieldData()
    00143             {this->SetLabelMode(VTK_LABEL_FIELD_DATA);};
    00145
    00147
    00148   virtual void SetLabelTextProperty(vtkTextProperty *p);
    00149   vtkGetObjectMacro(LabelTextProperty,vtkTextProperty);
    00151
    00152 #ifndef VTK_REMOVE_LEGACY_CODE
    00153
    00154
    00158   virtual void SetFontFamily(int val);
    00159   virtual int GetFontFamily();
    00160   void SetFontFamilyToArial()   { this->SetFontFamily(VTK_ARIAL);  };
    00161   void SetFontFamilyToCourier() { this->SetFontFamily(VTK_COURIER);};
    00162   void SetFontFamilyToTimes()   { this->SetFontFamily(VTK_TIMES);  };
    00164 #endif
    00165
    00166 #ifndef VTK_REMOVE_LEGACY_CODE
    00167
    00168
    00171   virtual void SetFontSize(int size);
    00172   virtual int GetFontSize();
    00174 #endif
    00175
    00176 #ifndef VTK_REMOVE_LEGACY_CODE
    00177
    00178
    00181   virtual void SetBold(int val);
    00182   virtual int GetBold();
    00183   vtkBooleanMacro(Bold, int);
    00185 #endif
    00186
    00187 #ifndef VTK_REMOVE_LEGACY_CODE
    00188
    00189
    00192   virtual void SetItalic(int val);
    00193   virtual int GetItalic();
    00194   vtkBooleanMacro(Italic, int);
    00196 #endif
    00197
    00198 #ifndef VTK_REMOVE_LEGACY_CODE
    00199
    00200
    00203   virtual void SetShadow(int val);
    00204   virtual int GetShadow();
    00205   vtkBooleanMacro(Shadow, int);
    00207 #endif
    00208
    00210
    00211   void RenderOpaqueGeometry(vtkViewport* viewport, vtkActor2D* actor);
    00212   void RenderOverlay(vtkViewport* viewport, vtkActor2D* actor);
    00214
    00218   virtual void ReleaseGraphicsResources(vtkWindow *);
    00219
    00220 protected:
    00221   vtkLabeledDataMapper();
    00222   ~vtkLabeledDataMapper();
    00223
    00224   vtkDataSet *Input;
    00225   vtkTextProperty *LabelTextProperty;
    00226
    00227   char  *LabelFormat;
    00228   int   LabelMode;
    00229   int   LabeledComponent;
    00230   int   FieldDataArray;
    00231
    00232   vtkTimeStamp BuildTime;
    00233
    00234 private:
    00235   int NumberOfLabels;
    00236   int NumberOfLabelsAllocated;
    00237   vtkTextMapper **TextMappers;
    00238
    00239 private:
    00240   vtkLabeledDataMapper(const vtkLabeledDataMapper&);  // Not implemented.
    00241   void operator=(const vtkLabeledDataMapper&);  // Not implemented.
    00242 };
    00243
    00244 #endif
    00245