Main MRPT website > C++ reference for MRPT 1.4.0
Classes | Macros | Typedefs | Enumerations | Variables
mathplot.h File Reference
#include <mrpt/gui/link_pragmas.h>
#include <vector>
#include <wx/defs.h>
#include <wx/menu.h>
#include <wx/scrolwin.h>
#include <wx/event.h>
#include <wx/dynarray.h>
#include <wx/pen.h>
#include <wx/dcmemory.h>
#include <wx/string.h>
#include <wx/print.h>
#include <wx/image.h>
#include <deque>

Go to the source code of this file.

Classes

class  mpLayer
 Plot layer, abstract base class. More...
 
class  mpInfoLayer
 Base class to create small rectangular info boxes mpInfoLayer is the base class to create a small rectangular info box in transparent overlay over plot layers. More...
 
class  mpInfoCoords
 Implements an overlay box which shows the mouse coordinates in plot units. More...
 
class  mpInfoLegend
 Implements the legend to be added to the plot This layer allows you to add a legend to describe the plots in the window. More...
 
class  mpFX
 Abstract base class providing plot and labeling functionality for functions F:X->Y. More...
 
class  mpFY
 Abstract base class providing plot and labeling functionality for functions F:Y->X. More...
 
class  mpFXY
 Abstract base class providing plot and labeling functionality for a locus plot F:N->X,Y. More...
 
class  mpProfile
 Abstract base class providing plot and labeling functionality for functions F:Y->X. More...
 
class  mpScaleX
 Plot layer implementing a x-scale ruler. More...
 
class  mpScaleY
 Plot layer implementing a y-scale ruler. More...
 
class  mpWindow
 Canvas for plotting mpLayer implementations. More...
 
class  mpFXYVector
 A class providing graphs functionality for a 2D plot (either continuous or a set of points), from vectors of data. More...
 
class  mpText
 Plot layer implementing a text string. More...
 
class  mpPrintout
 Printout class used by mpWindow to draw in the objects to be printed. More...
 
class  mpMovableObject
 This virtual class represents objects that can be moved to an arbitrary 2D location+rotation. More...
 
class  mpCovarianceEllipse
 A 2D ellipse, described by a 2x2 covariance matrix. More...
 
class  mpPolygon
 An arbitrary polygon, descendant of mpMovableObject. More...
 
class  mpBitmapLayer
 This virtual class represents objects that can be moved to an arbitrary 2D location+rotation. More...
 

Macros

#define WXDLLIMPEXP_MATHPLOT   GUI_IMPEXP
 
#define X_BORDER_SEPARATION   40
 
#define Y_BORDER_SEPARATION   60
 
Label alignment constants
#define mpALIGNMASK   0x03
 
#define mpALIGN_RIGHT   0x00
 Aligns label to the right. More...
 
#define mpALIGN_CENTER   0x01
 Aligns label to the center. More...
 
#define mpALIGN_LEFT   0x02
 Aligns label to the left. More...
 
#define mpALIGN_TOP   mpALIGN_RIGHT
 Aligns label to the top. More...
 
#define mpALIGN_BOTTOM   mpALIGN_LEFT
 Aligns label to the bottom. More...
 
#define mpALIGN_BORDER_BOTTOM   0x04
 Aligns X axis to bottom border. More...
 
#define mpALIGN_BORDER_TOP   0x05
 Aligns X axis to top border. More...
 
#define mpX_NORMAL   0x00
 Set label for X axis in normal mode. More...
 
#define mpX_TIME   0x01
 Set label for X axis in time mode: the value is represented as minutes:seconds.milliseconds if time is less than 2 minutes, hours:minutes:seconds otherwise. More...
 
#define mpX_HOURS   0x02
 Set label for X axis in hours mode: the value is always represented as hours:minutes:seconds. More...
 
#define mpX_DATE   0x03
 Set label for X axis in date mode: the value is always represented as yyyy-mm-dd. More...
 
#define mpX_DATETIME   0x04
 Set label for X axis in datetime mode: the value is always represented as yyyy-mm-ddThh:mm:ss. More...
 
#define mpALIGN_BORDER_LEFT   mpALIGN_BORDER_BOTTOM
 Aligns Y axis to left border. More...
 
#define mpALIGN_BORDER_RIGHT   mpALIGN_BORDER_TOP
 Aligns Y axis to right border. More...
 
#define mpALIGN_NE   0x00
 Aligns label to north-east. More...
 
#define mpALIGN_NW   0x01
 Aligns label to north-west. More...
 
#define mpALIGN_SW   0x02
 Aligns label to south-west. More...
 
#define mpALIGN_SE   0x03
 Aligns label to south-east. More...
 
Constants defining mouse modes for mpWindow
#define mpMOUSEMODE_DRAG   0
 Mouse panning drags the view. More...
 
#define mpMOUSEMODE_ZOOMBOX   1
 Mouse panning creates a zoom box. More...
 

Typedefs

typedef enum __mp_Layer_Type mpLayerType
 
typedef std::deque< mpLayer * > wxLayerList
 Define the type for the list of layers inside mpWindow. More...
 

Enumerations

enum  {
  mpID_FIT = 2000, mpID_ZOOM_IN, mpID_ZOOM_OUT, mpID_CENTER,
  mpID_LOCKASPECT, mpID_HELP_MOUSE, mpID_PRINT
}
 Command IDs used by mpWindow. More...
 
enum  __mp_Layer_Type {
  mpLAYER_UNDEF, mpLAYER_AXIS, mpLAYER_PLOT, mpLAYER_INFO,
  mpLAYER_BITMAP
}
 

Variables

class WXDLLIMPEXP_MATHPLOT mpLayer
 
class WXDLLIMPEXP_MATHPLOT mpFX
 
class WXDLLIMPEXP_MATHPLOT mpFY
 
class WXDLLIMPEXP_MATHPLOT mpFXY
 
class WXDLLIMPEXP_MATHPLOT mpFXYVector
 
class WXDLLIMPEXP_MATHPLOT mpScaleX
 
class WXDLLIMPEXP_MATHPLOT mpScaleY
 
class WXDLLIMPEXP_MATHPLOT mpWindow
 
class WXDLLIMPEXP_MATHPLOT mpText
 
class WXDLLIMPEXP_MATHPLOT mpPrintout
 

Macro Definition Documentation

#define mpALIGN_BORDER_BOTTOM   0x04

Aligns X axis to bottom border.

For mpScaleX

Definition at line 503 of file mathplot.h.

#define mpALIGN_BORDER_LEFT   mpALIGN_BORDER_BOTTOM

Aligns Y axis to left border.

For mpScaleY

Definition at line 517 of file mathplot.h.

#define mpALIGN_BORDER_RIGHT   mpALIGN_BORDER_TOP

Aligns Y axis to right border.

For mpScaleY

Definition at line 519 of file mathplot.h.

#define mpALIGN_BORDER_TOP   0x05

Aligns X axis to top border.

For mpScaleX

Definition at line 505 of file mathplot.h.

#define mpALIGN_BOTTOM   mpALIGN_LEFT

Aligns label to the bottom.

For use with mpFY.

Definition at line 501 of file mathplot.h.

#define mpALIGN_CENTER   0x01

Aligns label to the center.

For use with mpFX and mpFY.

Definition at line 495 of file mathplot.h.

#define mpALIGN_LEFT   0x02

Aligns label to the left.

For use with mpFX.

Definition at line 497 of file mathplot.h.

#define mpALIGN_NE   0x00

Aligns label to north-east.

For use with mpFXY.

Definition at line 521 of file mathplot.h.

Referenced by mpMovableObject::SetCoordinateBase().

#define mpALIGN_NW   0x01

Aligns label to north-west.

For use with mpFXY.

Definition at line 523 of file mathplot.h.

#define mpALIGN_RIGHT   0x00

Aligns label to the right.

For use with mpFX.

Definition at line 493 of file mathplot.h.

#define mpALIGN_SE   0x03

Aligns label to south-east.

For use with mpFXY.

Definition at line 527 of file mathplot.h.

#define mpALIGN_SW   0x02

Aligns label to south-west.

For use with mpFXY.

Definition at line 525 of file mathplot.h.

#define mpALIGN_TOP   mpALIGN_RIGHT

Aligns label to the top.

For use with mpFY.

Definition at line 499 of file mathplot.h.

#define mpALIGNMASK   0x03

Definition at line 491 of file mathplot.h.

#define mpMOUSEMODE_DRAG   0

Mouse panning drags the view.

Mouse mode for mpWindow.

Definition at line 810 of file mathplot.h.

#define mpMOUSEMODE_ZOOMBOX   1

Mouse panning creates a zoom box.

Mouse mode for mpWindow.

Definition at line 812 of file mathplot.h.

#define mpX_DATE   0x03

Set label for X axis in date mode: the value is always represented as yyyy-mm-dd.

Definition at line 513 of file mathplot.h.

#define mpX_DATETIME   0x04

Set label for X axis in datetime mode: the value is always represented as yyyy-mm-ddThh:mm:ss.

Definition at line 515 of file mathplot.h.

#define mpX_HOURS   0x02

Set label for X axis in hours mode: the value is always represented as hours:minutes:seconds.

Definition at line 511 of file mathplot.h.

#define mpX_NORMAL   0x00

Set label for X axis in normal mode.

Definition at line 507 of file mathplot.h.

#define mpX_TIME   0x01

Set label for X axis in time mode: the value is represented as minutes:seconds.milliseconds if time is less than 2 minutes, hours:minutes:seconds otherwise.

Definition at line 509 of file mathplot.h.

#define WXDLLIMPEXP_MATHPLOT   GUI_IMPEXP

Definition at line 77 of file mathplot.h.

#define X_BORDER_SEPARATION   40

Definition at line 112 of file mathplot.h.

#define Y_BORDER_SEPARATION   60

Definition at line 113 of file mathplot.h.

Typedef Documentation

typedef std::deque<mpLayer*> wxLayerList

Define the type for the list of layers inside mpWindow.

Definition at line 817 of file mathplot.h.

Enumeration Type Documentation

anonymous enum

Command IDs used by mpWindow.

Enumerator
mpID_FIT 

Fit view to match bounding box of all layers.

mpID_ZOOM_IN 

Zoom into view at clickposition / window center.

mpID_ZOOM_OUT 

Zoom out.

mpID_CENTER 

Center view on click position.

mpID_LOCKASPECT 

Lock x/y scaling aspect.

mpID_HELP_MOUSE 

Shows information about the mouse commands.

mpID_PRINT 

JL: Prints the graph.

Definition at line 131 of file mathplot.h.

Enumerator
mpLAYER_UNDEF 

Layer type undefined.

mpLAYER_AXIS 

Axis type layer.

mpLAYER_PLOT 

Plot type layer.

mpLAYER_INFO 

Info box type layer.

mpLAYER_BITMAP 

Bitmap type layer.

Definition at line 146 of file mathplot.h.

Variable Documentation

Definition at line 120 of file mathplot.h.

Definition at line 122 of file mathplot.h.

Definition at line 123 of file mathplot.h.

Definition at line 121 of file mathplot.h.

Definition at line 119 of file mathplot.h.

Definition at line 128 of file mathplot.h.

Definition at line 124 of file mathplot.h.

Definition at line 125 of file mathplot.h.

Definition at line 127 of file mathplot.h.

Definition at line 126 of file mathplot.h.

Referenced by mpWindow::mpWindow().




Page generated by Doxygen 1.8.11 for MRPT 1.4.0 SVN:Unversioned directory at Sun Jul 10 11:38:36 UTC 2016