You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.1 KiB
C

/*=========================================================================
Program: Visualization Toolkit
Module: vtkPolyDataItem.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
/**
* @class vtkPolyDataItem
* @brief Filter that translate a vtkPolyData 2D mesh into vtkContextItems.
*
* @warning
* The input vtkPolyData should be a 2D mesh.
*
*/
#ifndef vtkPolyDataItem_h
#define vtkPolyDataItem_h
#include "vtkContextItem.h"
#include "vtkRenderingContext2DModule.h" // For export macro
class vtkPolyData;
class vtkUnsignedCharArray;
class VTKRENDERINGCONTEXT2D_EXPORT vtkPolyDataItem : public vtkContextItem
{
public:
vtkTypeMacro(vtkPolyDataItem, vtkContextItem);
void PrintSelf(ostream& os, vtkIndent indent) override;
static vtkPolyDataItem* New();
/**
* Paint event for the item.
*/
bool Paint(vtkContext2D* painter) override;
/**
* Set the PolyData of the item.
*/
void SetPolyData(vtkPolyData* polyData);
/**
* Set mapped colors. User-selected scalars are mapped to a color lookup
* table externally.
*/
void SetMappedColors(vtkUnsignedCharArray* colors);
/**
* Get the image of the item.
*/
vtkGetObjectMacro(PolyData, vtkPolyData);
/**
* Set the position of the bottom corner of the image.
*/
vtkSetVector2Macro(Position, float);
/**
* Set the data scalar mode.
*/
vtkSetMacro(ScalarMode, int);
protected:
vtkPolyDataItem();
~vtkPolyDataItem() override;
class DrawHintsHelper;
DrawHintsHelper* HintHelper;
float Position[2];
vtkPolyData* PolyData;
vtkUnsignedCharArray* MappedColors;
int ScalarMode;
private:
vtkPolyDataItem(const vtkPolyDataItem&) = delete;
void operator=(const vtkPolyDataItem&) = delete;
};
#endif