22 #ifndef EDGEEXTREMITYGLYPH_H_
23 #define EDGEEXTREMITYGLYPH_H_
25 #include <tulip/Node.h>
26 #include <tulip/Edge.h>
27 #include <tulip/Color.h>
28 #include <tulip/Size.h>
29 #include <tulip/Coord.h>
30 #include <tulip/Matrix.h>
31 #include <tulip/Plugin.h>
32 #include <tulip/PluginLister.h>
33 #include <tulip/Glyph.h>
36 static const std::string EEGLYPH_CATEGORY = QObject::trUtf8(
"Edge extremity").toStdString();
38 typedef Matrix<float, 4> MatrixGL;
39 class GlGraphInputData;
41 class TLP_GL_SCOPE EdgeExtremityGlyph:
public Plugin {
43 virtual std::string category()
const {
44 return EEGLYPH_CATEGORY;
46 std::string icon()
const {
47 return ":/tulip/gui/icons/32/plugin_glyph.png";
51 virtual ~EdgeExtremityGlyph();
52 virtual void draw(edge e, node n,
const Color& glyphColor,
const Color &borderColor,
float lod) = 0;
53 void get2DTransformationMatrix(
const Coord &src,
const Coord &dest,
const Size &glyphSize, MatrixGL& transformationMatrix, MatrixGL& scalingMatrix);
54 void get3DTransformationMatrix(
const Coord &src,
const Coord &dest,
const Size &glyphSize, MatrixGL& transformationMatrix, MatrixGL& scalingMatrix);
56 GlGraphInputData *edgeExtGlGraphInputData;