11 #include <vtkContext2D.h>
12 #include <vtkImageData.h>
13 #include <vtkObjectFactory.h>
15 #include <vtkSmartPointer.h>
16 #include <vtkTextProperty.h>
19 namespace context_items {
46 params[3] = radius - 1;
76 const std::string &_text) {
85 painter->GetBrush()->SetColor(
87 static_cast<unsigned char>((255.0 * GetOpacity())));
88 painter->GetPen()->SetColor(
90 static_cast<unsigned char>((255.0 * GetOpacity())));
91 painter->DrawWedge(params[0], params[1], params[2], params[3], 0.0, 360.0);
97 painter->GetBrush()->SetColor(
99 static_cast<unsigned char>((255.0 * GetOpacity())));
100 painter->GetPen()->SetColor(
102 static_cast<unsigned char>((255.0 * GetOpacity())));
103 painter->DrawEllipse(params[0], params[1], params[2], params[2]);
109 painter->GetPen()->SetColor(
111 static_cast<unsigned char>((255.0 * GetOpacity())));
112 float p[] = {params[0], params[1], params[2], params[1], params[2],
113 params[3], params[0], params[3], params[0], params[1]};
115 painter->DrawPoly(p, 5);
121 painter->GetBrush()->SetColor(
123 static_cast<unsigned char>((255.0 * GetOpacity())));
124 painter->GetPen()->SetColor(
126 static_cast<unsigned char>((255.0 * GetOpacity())));
127 painter->DrawRect(params[0], params[1], params[2], params[3]);
133 painter->GetPen()->SetColor(
135 static_cast<unsigned char>((255.0 * GetOpacity())));
136 painter->DrawLine(params[0], params[1], params[2], params[3]);
142 painter->GetBrush()->SetColor(
144 static_cast<unsigned char>((255.0 * GetOpacity())));
145 painter->GetPen()->SetColor(
147 static_cast<unsigned char>((255.0 * GetOpacity())));
148 painter->DrawPolygon(¶ms[0],
static_cast<int>(params.size() / 2));
154 painter->GetPen()->SetColor(
156 static_cast<unsigned char>((255.0 * GetOpacity())));
157 painter->DrawPoint(params[0], params[1]);
163 painter->GetPen()->SetColor(
165 static_cast<unsigned char>((255.0 * GetOpacity())));
166 painter->DrawPoints(¶ms[0],
static_cast<int>(params.size() / 2));
172 vtkTextProperty *text_property = painter->GetTextProp();
173 text_property->SetColor(255.0 *
colors[0], 255.0 *
colors[1],
175 text_property->SetOpacity(GetOpacity());
176 text_property->SetFontFamilyToArial();
177 text_property->SetFontSize(fontSize_);
178 text_property->SetJustificationToLeft();
179 bold_ ? text_property->BoldOn() : text_property->BoldOff();
180 text_property->ShadowOff();
181 painter->DrawString(params[0], params[1], text.c_str());
196 memcpy(point_colors,
rgb, 3 *
sizeof(
unsigned char));
201 int nb_points(params.size() / 2);
202 if (
size <= 0)
size = 2.3 * painter->GetPen()->GetWidth();
204 painter->GetPen()->SetWidth(
size);
205 painter->GetPen()->SetColor(
207 static_cast<unsigned char>((255.0 * GetOpacity())));
208 painter->DrawPointSprites(0, ¶ms[0], nb_points);
209 painter->GetPen()->SetWidth(1);
210 painter->GetPen()->SetColor(
211 point_colors[0], point_colors[1], point_colors[2],
212 static_cast<unsigned char>((255.0 * GetOpacity())));
213 painter->DrawPointSprites(0, ¶ms[0], nb_points);
vtkStandardNewMacro(Point)
virtual void set(float _x, float _y, float _r)
virtual bool Paint(vtkContext2D *painter) override
virtual bool Paint(vtkContext2D *painter) override
virtual bool Paint(vtkContext2D *painter) override
virtual void set(float _x_1, float _y_1, float _x_2, float _y_2)
virtual bool Paint(vtkContext2D *painter) override
void setPointColors(unsigned char r, unsigned char g, unsigned char b)
virtual bool Paint(vtkContext2D *painter) override
virtual void set(float _x, float _y)
virtual bool Paint(vtkContext2D *painter) override
virtual bool Paint(vtkContext2D *painter) override
virtual bool Paint(vtkContext2D *painter) override
virtual bool Paint(vtkContext2D *painter) override
virtual void set(float _x, float _y, float _w, float _h)
virtual bool Paint(vtkContext2D *painter) override
virtual void set(float x, float y, const std::string &_text)
std::vector< float > params