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

xymplmk.h

Go to the documentation of this file.
00001 //* Módulo   : xymplmk.h                                                         
00002 // _Desc_    : Declara classe XYPolarMarkMask.
00003 // _Autores_ : Carlos Henrique Levy e Jaudênia Cavalcante.                       
00004 // _Data_    : 30 set 96.                                                           
00005 
00006 #ifndef __XYPOLARMARKMASK_H
00007 #define __XYPOLARMARKMASK_H
00008 
00009 #include "xympl.h"
00010 
00011 //* XYPolarMarkMask 
00012 //    Classe especializada que representa através de marcas um conjunto de   
00013 // dados pontuais num gráfico polar.                                         
00014 class XYPolarMarkMask : public XYPolarMask
00015 {
00016    public:
00017 
00018  //* Construtores e Destrutor
00019    //* Construtor A
00020    XYPolarMarkMask (
00021         XYText* name,            // nome da máscara
00022         XYSeries* series,        // servidor de dados
00023         const XYPolarAxis* axis, // eixo na direção x
00024         long color,              // cor da marca
00025         int size,                // tamanho da marca
00026         MarkStyle mark,          // estilo da marca
00027         xybool visible = xytrue);    // visibilidade
00028 
00029    //* Construtor B
00030    XYPolarMarkMask (
00031         XYSeries* series,        // servidor de dados
00032         const XYPolarAxis* axis, // eixo na direção x
00033         long color,              // cor da marca
00034         int size,                // tamanho da marca
00035         MarkStyle mark,          // estilo da marca
00036         xybool visible = xytrue);    // visibilidade
00037 
00038    //* Destrutor da classe XYPolarMarkMask
00039    virtual ~XYPolarMarkMask (void) {};
00040 
00041  //* Define/Consulta atributos
00042    //* Define tamanho da máscara
00043    virtual void size (int s);
00044    //* Consulta tamanho da máscara
00045    virtual int size (void) const;
00046 
00047    //* Define estilo de marca para a máscara
00048    virtual void mark (XYMask::MarkStyle m);
00049    //* Consulta estilo de marca para a máscara
00050    virtual int mark (void) const;
00051 
00052  //* Métodos de Pick
00053    //* Retorna xytrue se o ponto estiver sobre a máscara
00054    virtual xybool pick (int px, int py);
00055 
00056    //* Retorna xytrue se a máscara estiver interior a região de "fence"
00057    virtual xybool fence (int x0, int y0, int x1, int y1);
00058 
00059  //* Métodos de Draw
00060    //* Desenha o ícone representativo da máscara
00061    virtual void drawIcon (int xmin, int ymin, int xmax, int ymax) const;
00062 
00063    //* Desenha máscara polar de marcas
00064    virtual void draw (void);
00065    //* Desenha máscara polar de marcas numa região
00066    virtual void draw (int xmin, int ymin, int xmax, int ymax) const;
00067 
00068  //* BoundingBox
00069    //* Retorna menor retângulo que contém a máscara polar de marcas, suas coordenadas são dadas em pixel
00070    virtual void boundingBox (int& bxmin, int& bymin, int& bxmax, int& bymax) const;     
00071 
00072    private:
00073 
00074    int  _size;        // tamanho da marca
00075    MarkStyle _mark;   // plus, star, circle, x, box, diamond, ...
00076 };
00077 
00078 #endif
00079 

XY
Tecgraf / PUC-Rio - Computer Graphics Technology Group