libkpl  5.0
A Library for Graphical Presentation of Data Sets and Functions
Public Types | Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | List of all members
Fun3DItem Class Reference

3D function item class. More...

#include <fun3ditem.h>

Inheritance diagram for Fun3DItem:
Inheritance graph
[legend]

Public Types

enum  { Type = UserType + Function3D }
 Specific QGraphicsItem type number for function type() More...
 
- Public Types inherited from ThreeDItem
enum  Mode3D { AlongX, AlongZ, Grid }
 3D mode. More...
 
- Public Types inherited from FrameItem
enum  GridMode {
  FrameOnly, Axes, AxesWithLabels, Grid,
  GridWithLabels
}
 Grid mode. More...
 
enum  { Type = UserType + Frame }
 Specific QGraphicsItem type number for function type() More...
 
- Public Types inherited from KplItem
enum  FillStyle {
  NoBrush, SolidPattern, HorPattern, VerPattern,
  CrossPattern, BDiagPattern, FDiagPattern, DiagCrossPattern
}
 Fill styles. More...
 
enum  ItemType {
  Frame = 1, Array, Function, ParFunction,
  Spline, Array3D, Function3D, Legend,
  Text, Line, Arrow, Arc,
  Rectangle, Ellipse, Image, ScaleBar
}
 Item types. More...
 
enum  PenType { FramePen, GridPen, DataPen }
 Pen types. More...
 
enum  Symbol {
  Invisible = -17, FilledOctagon, FilledHourglass, FilledTriangle,
  FilledSquare, FilledDiamond, FilledCircle, Umbrella,
  Ypsilon, Plus, Cross, OpenOctagon,
  OpenHourglass, OpenTriangle, OpenSquare, OpenDiamond,
  Dot, OpenCircle, SolidLine, DashLine1,
  DashLine2, DotLine1, DashLine3, DashDotLine,
  DashLine4, DashLine5, DotLine2
}
 Symbol types. More...
 

Public Member Functions

 Fun3DItem (double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, unsigned colorData=0, bool logX=false, bool logY=false, bool logZ=false, GridMode gridMode=AxesWithLabels, Mode3D mode3D=Grid, double xMax=15, double yMax=10, double zMax=15, const QString &textX="", const QString &textY="", const QString &textZ="", const QString &header="", double relSize=1, int numDigX=-1, int numDigY=-1, int numDigZ=-1, int minTicX=5, int minTicY=2, int minTicZ=5, int expX=0, int expY=0, int expZ=0, double xMin=0, double yMin=0, double zMin=0, double xTic=5, double yTic=2, double zTic=5, double deltaX=0, double deltaZ=0, double phi=20, double theta=-20, double bx=7.5, double by=7.5, double bz=7.5, double xr=7.5, double yr=4, double fx=1, double fy=1, double fz=1, const QString &name="", const QUrl &url=QUrl(), bool showFrame=true, bool collapsed=false, bool visible=true)
 Constructor. More...
 
 Fun3DItem (const Fun3DItem &f)
 Copy constructor. More...
 
 Fun3DItem (const KConfigGroup *plo, const QUrl &urlPlo, double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, unsigned colorData=0, GridMode gridMode=AxesWithLabels)
 Constructor. More...
 
 ~Fun3DItem ()
 Destructor. More...
 
int calcTable () const
 Calculates function value table. More...
 
void exportTable (QTextStream &stream, char separator, char format, int precision) const
 Exports function value table to file. More...
 
const QLibrarylibY () const
 Returns pointer to library for y function. More...
 
QString nameY () const
 Returns y function name. More...
 
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
 Paints item. More...
 
double * parY ()
 Returns y function parameter array pointer. More...
 
bool setFuncY (const QUrl &url, const QString &name)
 Resolves y function address. More...
 
void setPar (int i, double value)
 Sets parameter. More...
 
virtual int type () const
 Returns specific QGraphicsItem type number. More...
 
void update ()
 Applies changes and forces redrawing. More...
 
const QUrlurlY () const
 Returns URL of y function library. More...
 
void writePlo (KConfigGroup *plo, const QUrl &urlPlo, bool absolute, char format, int precision) const
 Writes into plot file. More...
 
- Public Member Functions inherited from ThreeDItem
 ThreeDItem (double x0=4, double y0=3, double width=15, double height=10, unsigned colFrame=0, unsigned colGrid=0, unsigned colData=0, bool logX=false, bool logY=false, bool logZ=false, GridMode gridMode=AxesWithLabels, Mode3D mode3D=Grid, double xMax=15, double yMax=10, double zMax=15, const QString &textX="", const QString &textY="", const QString &textZ="", const QString &header="", double relSize=1, int numDigX=-1, int numDigY=-1, int numDigZ=-1, int minTicX=5, int minTicY=2, int minTicZ=5, int expX=0, int expY=0, int expZ=0, double xMin=0, double yMin=0, double zMin=0, double xTic=5, double yTic=2, double zTic=5, double deltaX=0, double deltaZ=0, double phi=20, double theta=-20, double boxX=7.5, double boxY=7.5, double boxZ=7.5, double xRef=7.5, double yRef=4, double fx=1, double fy=1, double fz=1, bool showFrame=true, bool collapsed=false, bool visible=true)
 Constructor. More...
 
 ThreeDItem (const ThreeDItem &a)
 Copy constructor. More...
 
 ThreeDItem (const KConfigGroup *plo, double x0, double y0, double width, double height, unsigned colorFrame, unsigned colorGrid, unsigned colorData, GridMode gridMode)
 Constructor. More...
 
 ~ThreeDItem ()
 Destructor. More...
 
virtual QRectF boundingRect () const
 Calculates bounding rectangle. More...
 
double boxX () const
 Returns x box width in cm. More...
 
double boxY () const
 Returns y box width in cm. More...
 
double boxZ () const
 Returns z box width in cm. More...
 
unsigned colorData () const
 Returns color for data. More...
 
double deltaX () const
 Returns x step size of grid. More...
 
double deltaZ () const
 Returns z step size of grid. More...
 
void exportTable (QTextStream &stream, char separator, char format, int precision) const
 Exports value table to file. More...
 
int expZ () const
 Returns logarithm of normalization factor for z axis. More...
 
double fX () const
 Returns normalization factor for x values. More...
 
double fY () const
 Returns normalization factor for y values. More...
 
double fZ () const
 Returns normalization factor for z values. More...
 
bool logZ () const
 Returns true for logarithmic z axis. More...
 
int minTicZ () const
 Returns number of intervals between major tics of z axis. More...
 
Mode3D mode3D () const
 Returns 0 for lines parallel to x, 1 for lines parallel to z, 2 for x,z grid.
 
int numDigZ () const
 Returns number of digits for z axis. More...
 
void paintCond (QPainter *painter, PSGraph *ps=0) const
 Paints or calculates bounding area. More...
 
double phi () const
 Returns angle of rotation about y axis in deg. More...
 
void setBoxX (double width)
 Sets x box width in cm. More...
 
void setBoxY (double width)
 Sets y box width in cm. More...
 
void setBoxZ (double width)
 Sets z box width in cm. More...
 
void setColorData (unsigned color)
 Sets color for data. More...
 
void setDeltaX (double dx)
 Sets x step size of grid. More...
 
void setDeltaZ (double dz)
 Sets z step size of grid. More...
 
void setExpZ (int e)
 Sets exponent of z normalization factor. More...
 
void setFX (double fx)
 Sets x normalization factor. More...
 
void setFY (double fy)
 Sets y normalization factor. More...
 
void setFZ (double fz)
 Sets z normalization factor. More...
 
void setLogZ (bool logZ)
 Sets logarithmic mode of z axis. More...
 
void setMinTicZ (int minTicZ)
 Sets number of intervals between major tics of z axis. More...
 
void setMode3D (Mode3D mode3D)
 Sets 3D mode. More...
 
void setNumDigZ (int numDigZ)
 Sets number of digits for z axis. More...
 
void setPhi (double phi)
 Sets angle of rotation about y axis. More...
 
void setProperties (const QTransform &m)
 Sets properties according to transformation matrix. More...
 
void setShowFrame (bool showFrame)
 Sets frame mode. More...
 
void setTextZ (const QString &text)
 Sets z axis text. More...
 
void setTheta (double theta)
 Sets angle of rotation about y axis. More...
 
void setXRef (double xRef)
 Sets x position of center of box bottom plane. More...
 
void setYRef (double yRef)
 Sets y position of center of box bottom plane. More...
 
void setZMax (double zMax)
 Sets upper z data limit. More...
 
void setZMin (double zMin)
 Sets lower z data limit. More...
 
void setZTic (double zTic)
 Sets z tic distance. More...
 
bool showFrame () const
 Returns true for shown frame. More...
 
QString textZ () const
 Returns z axis text. More...
 
double theta () const
 Returns angle of rotation about y axis in deg. More...
 
void update ()
 Applies changes and forces redrawing. More...
 
void writePlo (KConfigGroup *plo) const
 Writes into plot file. More...
 
double xRef () const
 Returns x position of center of box bottom plane. More...
 
double yRef () const
 Returns y position of center of box bottom plane. More...
 
double ** yValues () const
 Returns pointer to y value array. More...
 
double zMax () const
 Returns upper z data limit user units. More...
 
double zMin () const
 Returns lower z data limit user units. More...
 
double zTic () const
 Returns distance between major tics of z axis. More...
 
- Public Member Functions inherited from FrameItem
 FrameItem (double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, bool logX=false, bool logY=false, GridMode gridMode=AxesWithLabels, double xMax=15, double yMax=10, const QString &textX="", const QString &textY="", const QString &header="", double relSize=1, int numDigX=-1, int numDigY=-1, int minTicX=5, int minTicY=2, int expX=0, int expY=0, double xMin=0, double yMin=0, double xTic=5, double yTic=2, bool collapsed=false, bool visible=true, double xOffset=0, double yOffset=0, bool xBottom=true, bool xTop=false, bool yLeft=true, bool yRight=false)
 Constructor. More...
 
 FrameItem (const FrameItem &a)
 Copy constructor. More...
 
 FrameItem (const KConfigGroup *plo, double x0=4, double y0=3, double width=15, double height=10, unsigned colorFrame=0, unsigned colorGrid=0, GridMode gridMode=AxesWithLabels)
 Constructor. More...
 
virtual ~FrameItem ()
 Destructor. More...
 
void autoScale (double xmi, double xma, double fx, double ymi, double yma, double fy)
 Calculates and sets the scaling parameters. More...
 
void autoScale (bool autoNorm=true)
 Calculates and sets the scaling parameters. More...
 
bool calcAutoScale (bool autoNorm, const QList< QGraphicsItem * > &items, double &fx, double &fy)
 Calculates scaling parameters for a frame item and all its child items. More...
 
QRectF clipRect () const
 Returns clipping rectangle. More...
 
unsigned colorFrame () const
 Returns color for frame and labels. More...
 
unsigned colorGrid () const
 Returns color for grids and tics. More...
 
int expX () const
 Returns logarithm of normalization factor for x axis. More...
 
int expY () const
 Returns logarithm of normalization factor for y axis. More...
 
GridMode gridMode () const
 Returns grid mode. More...
 
QString header () const
 Returns heading text. More...
 
double height () const
 Returns height in cm. More...
 
bool collapsed () const
 Returns collapse state for list view. More...
 
bool logX () const
 Returns true for logarithmic x axis. More...
 
bool logY () const
 Returns true for logarithmic y axis. More...
 
QPointF mapFromUser (const QPointF &p) const
 Maps from user to pixel coordinates. More...
 
QPointF mapToUser (const QPointF &p) const
 Maps from pixel to user coordinates. More...
 
QRectF mapToUser (const QRectF &rect) const
 Maps from pixel to user coordinates. More...
 
int minTicX () const
 Returns number of intervals between major tics of x axis. More...
 
int minTicY () const
 Returns number of intervals between major tics of y axis. More...
 
double normX () const
 Returns normalization factor for x values. More...
 
double normY () const
 Returns normalization factor for y values. More...
 
int numDigX () const
 Returns number of digits for x axis. More...
 
int numDigY () const
 Returns number of digits for y axis. More...
 
QPointF rectPos () const
 Returns position in cm units. More...
 
void setColorFrame (unsigned color)
 Sets color for frame and labels. More...
 
void setColorGrid (unsigned color)
 Sets color for grids and tics. More...
 
void setExpX (int expX)
 Sets exponent of x normalization factor. More...
 
void setExpY (int expY)
 Sets exponent of y normalization factor. More...
 
void setGridMode (GridMode gridMode)
 Sets grid mode. More...
 
void setHeight (double height)
 Sets height. More...
 
void setLogX (bool logX)
 Sets logarithmic mode of x axis. More...
 
void setLogY (bool logY)
 Sets logarithmic mode of y axis. More...
 
void setMinTicX (int minTicX)
 Sets number of intervals between major tics of x axis. More...
 
void setMinTicY (int minTicY)
 Sets number of intervals between major tics of y axis. More...
 
void setNumDigX (int numDigX)
 Sets number of digits for x axis. More...
 
void setNumDigY (int numDigY)
 Sets number of digits for y axis. More...
 
void setProperties (const QTransform &m)
 Sets properties according to transformation matrix. More...
 
void setHeader (const QString &text)
 Sets heading text. More...
 
void setTextX (const QString &text)
 Sets x axis text. More...
 
void setTextY (const QString &text)
 Sets y axis text. More...
 
void setWidth (double width)
 Sets width. More...
 
void setX0 (double x0)
 Sets left page margin. More...
 
void setXBottom (bool xBottom)
 Sets bottom side label mode. More...
 
void setXMax (double xMax)
 Sets upper x data limit. More...
 
void setXMin (double xMin)
 Sets lower x data limit. More...
 
void setXOffset (double xOffset)
 Sets x offset. More...
 
void setXTic (double xTic)
 Sets x tick distance. More...
 
void setXTop (bool xTop)
 Sets top side label mode. More...
 
void setY0 (double y0)
 Sets bottom page margin. More...
 
void setYLeft (bool yLeft)
 Sets left side label mode. More...
 
void setYMax (double yMax)
 Sets upper y data limit. More...
 
void setYMin (double yMin)
 Sets lower y data limit. More...
 
void setYOffset (double yOffset)
 Sets y offset. More...
 
void setYRight (bool yRight)
 Sets right side label mode. More...
 
void setYTic (double yTic)
 Sets y tick distance. More...
 
QPointF steps () const
 Returns user units steps for one pixel steps. More...
 
QString textX () const
 Returns x axis text. More...
 
QString textY () const
 Returns y axis text. More...
 
void toggleCollapsed ()
 Toggles collapse state. More...
 
void update ()
 Applies changes and forces redrawing. More...
 
void updatePos (QPointF p)
 Sets position. More...
 
bool valid (double x, double y) const
 Checks coordinates for validity. More...
 
double width () const
 Returns width in cm. More...
 
void writePlo (KConfigGroup *plo) const
 Writes into plot file. More...
 
double x0 () const
 Returns left page margin in cm. More...
 
bool xBottom () const
 Returns true for x axis labels on bottom side. More...
 
double xMax () const
 Returns x value of right data window margin in user units. More...
 
double xMin () const
 Returns x value of left data window margin in user units. More...
 
double xOffset () const
 Returns offset for first major x tick. More...
 
double xTic () const
 Returns distance between major tics of x axis. More...
 
bool xTop () const
 Returns true for x axis labels on top side. More...
 
double y0 () const
 
bool yLeft () const
 Returns true for y axis labels on left side. More...
 
bool yRight () const
 Returns true for y axis labels on right side. More...
 
double yMax () const
 Returns y value of upper data window margin in user units. More...
 
double yMin () const
 Returns y value of lower data window margin in user units. More...
 
double yOffset () const
 Returns offset for first major y tick. More...
 
double yTic () const
 Returns distance between major tics of y axis. More...
 
- Public Member Functions inherited from KplItem
 KplItem (double relSize=1)
 Constructor. More...
 
 KplItem (const KplItem &a)
 Copy constructor. More...
 
 KplItem (const KConfigGroup *plo)
 Constructor. More...
 
virtual ~KplItem ()
 Destructor. More...
 
void readPlo (const KConfigGroup *plo)
 Initializes corresponding to plot file. More...
 
double relSize () const
 Returns relative size of item. More...
 
void setRelSize (double relSize)
 Sets relative size of item. More...
 
void writePlo (KConfigGroup *plo, bool visible=true) const
 Writes into plot file. More...
 
- Public Member Functions inherited from QGraphicsRectItem
 QGraphicsRectItem (QGraphicsItem *parent)
 
 QGraphicsRectItem (const QRectF &rect, QGraphicsItem *parent)
 
 QGraphicsRectItem (qreal x, qreal y, qreal width, qreal height, QGraphicsItem *parent)
 
QRectF rect () const
 
void setRect (const QRectF &rectangle)
 
void setRect (qreal x, qreal y, qreal width, qreal height)
 
virtual QPainterPath shape () const
 
virtual bool contains (const QPointF &point) const
 
virtual bool isObscuredBy (const QGraphicsItem *item) const
 
virtual QPainterPath opaqueArea () const
 
- Public Member Functions inherited from QAbstractGraphicsShapeItem
 QAbstractGraphicsShapeItem (QGraphicsItem *parent)
 
QPen pen () const
 
void setPen (const QPen &pen)
 
QBrush brush () const
 
void setBrush (const QBrush &brush)
 
- Public Member Functions inherited from QGraphicsItem
 QGraphicsItem (QGraphicsItem *parent)
 
QGraphicsScenescene () const
 
QGraphicsItemparentItem () const
 
QGraphicsItemtopLevelItem () const
 
QGraphicsObjectparentObject () const
 
QGraphicsWidgetparentWidget () const
 
QGraphicsWidgettopLevelWidget () const
 
QGraphicsWidgetwindow () const
 
QGraphicsItempanel () const
 
void setParentItem (QGraphicsItem *newParent)
 
QList< QGraphicsItem * > children () const
 
QList< QGraphicsItem * > childItems () const
 
bool isWidget () const
 
bool isWindow () const
 
bool isPanel () const
 
QGraphicsObjecttoGraphicsObject ()
 
const QGraphicsObjecttoGraphicsObject () const
 
QGraphicsItemGroupgroup () const
 
void setGroup (QGraphicsItemGroup *group)
 
GraphicsItemFlags flags () const
 
void setFlag (GraphicsItemFlag flag, bool enabled)
 
void setFlags (GraphicsItemFlags flags)
 
CacheMode cacheMode () const
 
void setCacheMode (CacheMode mode, const QSize &logicalCacheSize)
 
PanelModality panelModality () const
 
void setPanelModality (PanelModality panelModality)
 
bool isBlockedByModalPanel (QGraphicsItem **blockingPanel) const
 
QString toolTip () const
 
void setToolTip (const QString &toolTip)
 
QCursor cursor () const
 
void setCursor (const QCursor &cursor)
 
bool hasCursor () const
 
void unsetCursor ()
 
bool isVisible () const
 
bool isVisibleTo (const QGraphicsItem *parent) const
 
void setVisible (bool visible)
 
void hide ()
 
void show ()
 
bool isEnabled () const
 
void setEnabled (bool enabled)
 
bool isSelected () const
 
void setSelected (bool selected)
 
bool acceptDrops () const
 
void setAcceptDrops (bool on)
 
qreal opacity () const
 
qreal effectiveOpacity () const
 
void setOpacity (qreal opacity)
 
QGraphicsEffectgraphicsEffect () const
 
void setGraphicsEffect (QGraphicsEffect *effect)
 
Qt::MouseButtons acceptedMouseButtons () const
 
void setAcceptedMouseButtons (Qt::MouseButtons buttons)
 
bool acceptsHoverEvents () const
 
void setAcceptsHoverEvents (bool enabled)
 
bool acceptHoverEvents () const
 
void setAcceptHoverEvents (bool enabled)
 
bool acceptTouchEvents () const
 
void setAcceptTouchEvents (bool enabled)
 
bool filtersChildEvents () const
 
void setFiltersChildEvents (bool enabled)
 
bool handlesChildEvents () const
 
void setHandlesChildEvents (bool enabled)
 
bool isActive () const
 
void setActive (bool active)
 
bool hasFocus () const
 
void setFocus (Qt::FocusReason focusReason)
 
void clearFocus ()
 
QGraphicsItemfocusProxy () const
 
void setFocusProxy (QGraphicsItem *item)
 
QGraphicsItemfocusItem () const
 
void grabMouse ()
 
void ungrabMouse ()
 
void grabKeyboard ()
 
void ungrabKeyboard ()
 
QPointF pos () const
 
qreal x () const
 
void setX (qreal x)
 
qreal y () const
 
void setY (qreal y)
 
QPointF scenePos () const
 
void setPos (const QPointF &pos)
 
void setPos (qreal x, qreal y)
 
void moveBy (qreal dx, qreal dy)
 
void ensureVisible (const QRectF &rect, int xmargin, int ymargin)
 
void ensureVisible (qreal x, qreal y, qreal w, qreal h, int xmargin, int ymargin)
 
QMatrix matrix () const
 
QMatrix sceneMatrix () const
 
void setMatrix (const QMatrix &matrix, bool combine)
 
void resetMatrix ()
 
QTransform transform () const
 
QTransform sceneTransform () const
 
QTransform deviceTransform (const QTransform &viewportTransform) const
 
QTransform itemTransform (const QGraphicsItem *other, bool *ok) const
 
void setTransform (const QTransform &matrix, bool combine)
 
void resetTransform ()
 
void rotate (qreal angle)
 
void scale (qreal sx, qreal sy)
 
void shear (qreal sh, qreal sv)
 
void translate (qreal dx, qreal dy)
 
void setRotation (qreal angle)
 
qreal rotation () const
 
void setScale (qreal factor)
 
qreal scale () const
 
QList< QGraphicsTransform * > transformations () const
 
void setTransformations (const QList< QGraphicsTransform * > &transformations)
 
QPointF transformOriginPoint () const
 
void setTransformOriginPoint (const QPointF &origin)
 
void setTransformOriginPoint (qreal x, qreal y)
 
virtual void advance (int phase)
 
qreal zValue () const
 
void setZValue (qreal z)
 
void stackBefore (const QGraphicsItem *sibling)
 
QRectF childrenBoundingRect () const
 
QRectF sceneBoundingRect () const
 
bool isClipped () const
 
QPainterPath clipPath () const
 
virtual bool collidesWithItem (const QGraphicsItem *other, Qt::ItemSelectionMode mode) const
 
virtual bool collidesWithPath (const QPainterPath &path, Qt::ItemSelectionMode mode) const
 
QList< QGraphicsItem * > collidingItems (Qt::ItemSelectionMode mode) const
 
bool isObscured (const QRectF &rect) const
 
bool isObscured (qreal x, qreal y, qreal w, qreal h) const
 
QRegion boundingRegion (const QTransform &itemToDeviceTransform) const
 
qreal boundingRegionGranularity () const
 
void setBoundingRegionGranularity (qreal granularity)
 
void update (const QRectF &rect)
 
void update (qreal x, qreal y, qreal width, qreal height)
 
void scroll (qreal dx, qreal dy, const QRectF &rect)
 
QPointF mapToItem (const QGraphicsItem *item, const QPointF &point) const
 
QPointF mapToParent (const QPointF &point) const
 
QPointF mapToScene (const QPointF &point) const
 
QPolygonF mapToItem (const QGraphicsItem *item, const QRectF &rect) const
 
QPolygonF mapToParent (const QRectF &rect) const
 
QPolygonF mapToScene (const QRectF &rect) const
 
QRectF mapRectToItem (const QGraphicsItem *item, const QRectF &rect) const
 
QRectF mapRectToParent (const QRectF &rect) const
 
QRectF mapRectToScene (const QRectF &rect) const
 
QPolygonF mapToItem (const QGraphicsItem *item, const QPolygonF &polygon) const
 
QPolygonF mapToParent (const QPolygonF &polygon) const
 
QPolygonF mapToScene (const QPolygonF &polygon) const
 
QPainterPath mapToItem (const QGraphicsItem *item, const QPainterPath &path) const
 
QPainterPath mapToParent (const QPainterPath &path) const
 
QPainterPath mapToScene (const QPainterPath &path) const
 
QPointF mapFromItem (const QGraphicsItem *item, const QPointF &point) const
 
QPointF mapFromParent (const QPointF &point) const
 
QPointF mapFromScene (const QPointF &point) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, const QRectF &rect) const
 
QPolygonF mapFromParent (const QRectF &rect) const
 
QPolygonF mapFromScene (const QRectF &rect) const
 
QRectF mapRectFromItem (const QGraphicsItem *item, const QRectF &rect) const
 
QRectF mapRectFromParent (const QRectF &rect) const
 
QRectF mapRectFromScene (const QRectF &rect) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, const QPolygonF &polygon) const
 
QPolygonF mapFromParent (const QPolygonF &polygon) const
 
QPolygonF mapFromScene (const QPolygonF &polygon) const
 
QPainterPath mapFromItem (const QGraphicsItem *item, const QPainterPath &path) const
 
QPainterPath mapFromParent (const QPainterPath &path) const
 
QPainterPath mapFromScene (const QPainterPath &path) const
 
QPointF mapToItem (const QGraphicsItem *item, qreal x, qreal y) const
 
QPointF mapToParent (qreal x, qreal y) const
 
QPointF mapToScene (qreal x, qreal y) const
 
QPolygonF mapToItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapToParent (qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapToScene (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToParent (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectToScene (qreal x, qreal y, qreal w, qreal h) const
 
QPointF mapFromItem (const QGraphicsItem *item, qreal x, qreal y) const
 
QPointF mapFromParent (qreal x, qreal y) const
 
QPointF mapFromScene (qreal x, qreal y) const
 
QPolygonF mapFromItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapFromParent (qreal x, qreal y, qreal w, qreal h) const
 
QPolygonF mapFromScene (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromItem (const QGraphicsItem *item, qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromParent (qreal x, qreal y, qreal w, qreal h) const
 
QRectF mapRectFromScene (qreal x, qreal y, qreal w, qreal h) const
 
bool isAncestorOf (const QGraphicsItem *child) const
 
QGraphicsItemcommonAncestorItem (const QGraphicsItem *other) const
 
bool isUnderMouse () const
 
QVariant data (int key) const
 
void setData (int key, const QVariant &value)
 
Qt::InputMethodHints inputMethodHints () const
 
void setInputMethodHints (Qt::InputMethodHints hints)
 
void installSceneEventFilter (QGraphicsItem *filterItem)
 
void removeSceneEventFilter (QGraphicsItem *filterItem)
 

Public Attributes

double(* funcY )(double, double, const double *)
 
- Public Attributes inherited from QGraphicsItem
typedef GraphicsItemFlags
 

Protected Member Functions

void unload ()
 Unloads y function library. More...
 
- Protected Member Functions inherited from ThreeDItem
void axis3D (QPainter *painter, double vMin, double vMax, double tic, int minTic, double f, double scale, double xAxis, double zAxis, double ticLen, int numDig, Axis axis, bool log, PSGraph *ps=0) const
 Plots 3D axis. More...
 
void drawText (QPainter *painter, const QString &text, double x, double y, TextItem::Alignment alignment, PSGraph *ps, double dir=0) const
 Plots text. More...
 
void frame3D (QPainter *painter, int iBack, PSGraph *ps=0) const
 Plots 3D frame. More...
 
void line3D (QPainter *painter, double x1, double y1, double z1, double x2, double y2, double z2, PSGraph *ps=0) const
 Draws line in 3D space. More...
 
void plotArray3D (QPainter *painter, PSGraph *ps=0) const
 Plots 3D data. More...
 
void plot3D (QPainter *painter, bool xArray, bool yArray, bool zArray, const double *xData, const double *yData, const double *zData, double xScale, double yScale, double zScale, bool firstLine, int n, double xOffset, double yOffset, double *vertex, PSGraph *ps=0) const
 Plots curve in 3D space. More...
 
void plotArray (QPainter *painter, const double *x, const double *y, int n, PSGraph *ps=0) const
 Plots array. More...
 
void raster3d (QPainter *painter, PSGraph *ps=0) const
 Draws frame and axes of 3D plot. More...
 
void setProperties ()
 Sets properties according to transformation matrix. More...
 
double xFrom3d (double x, double z) const
 Calculates 2D x value. More...
 
double yFrom3d (double x, double y, double z) const
 Calculates 2D y value. More...
 
- Protected Member Functions inherited from FrameItem
void drawText (QPainter *painter, const QString &text, double x, double y, TextItem::Alignment alignment, double dir=0) const
 Plots text. More...
 
double incLog (double &x, double f) const
 Increment logarithm for next major axis tick. More...
 
virtual void mouseReleaseEvent (QGraphicsSceneMouseEvent *event)
 Updates position. More...
 
int number (double v, int numDig, QString &label) const
 Prepares number label. More...
 
void paintCond (QPainter *painter) const
 Paints or calculates bounding area. More...
 
void setProperties ()
 Sets properties according to transformation matrix. More...
 
double tick (double tic, bool log) const
 Calculates actual distance between major tics. More...
 
- Protected Member Functions inherited from KplItem
QPenchangePenWidth (QPen &pen, double width) const
 Changes pen width. More...
 
QPen createPen (QGraphicsItem *item, unsigned color=0, PenType penType=DataPen, Symbol symbol=SolidLine) const
 Creates pen for plot item. More...
 
double penWidth (const QGraphicsItem *item, PenType penType=DataPen) const
 Calculates pen width for plot item. More...
 
- Protected Member Functions inherited from QGraphicsItem
void updateMicroFocus ()
 
virtual bool sceneEventFilter (QGraphicsItem *watched, QEvent *event)
 
virtual bool sceneEvent (QEvent *event)
 
virtual void contextMenuEvent (QGraphicsSceneContextMenuEvent *event)
 
virtual void dragEnterEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dragLeaveEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dragMoveEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void dropEvent (QGraphicsSceneDragDropEvent *event)
 
virtual void focusInEvent (QFocusEvent *event)
 
virtual void focusOutEvent (QFocusEvent *event)
 
virtual void hoverEnterEvent (QGraphicsSceneHoverEvent *event)
 
virtual void hoverMoveEvent (QGraphicsSceneHoverEvent *event)
 
virtual void hoverLeaveEvent (QGraphicsSceneHoverEvent *event)
 
virtual void keyPressEvent (QKeyEvent *event)
 
virtual void keyReleaseEvent (QKeyEvent *event)
 
virtual void mousePressEvent (QGraphicsSceneMouseEvent *event)
 
virtual void mouseMoveEvent (QGraphicsSceneMouseEvent *event)
 
virtual void mouseDoubleClickEvent (QGraphicsSceneMouseEvent *event)
 
virtual void wheelEvent (QGraphicsSceneWheelEvent *event)
 
virtual void inputMethodEvent (QInputMethodEvent *event)
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery query) const
 
virtual QVariant itemChange (GraphicsItemChange change, const QVariant &value)
 
void prepareGeometryChange ()
 

Protected Attributes

double(* funcYo )(double, double, const double *)
 
double m_parY [FunItem::NumParMax]
 
double parYo [FunItem::NumParMax]
 
QString m_nameY
 
QUrl m_urlY
 
QLibrarym_libY
 
- Protected Attributes inherited from ThreeDItem
bool m_showFrame
 
bool m_logZ
 
bool logXo
 
bool logZo
 
int m_numDigZ
 
int m_minTicZ
 
int m_expZ
 
Mode3D m_mode3D
 
int nx
 
int nz
 
unsigned m_colorData
 
double m_zMin
 
double m_zMax
 
double m_deltaX
 
double m_deltaZ
 
double m_zTic
 
double m_phi
 
double m_theta
 
double m_boxX
 
double m_boxY
 
double m_boxZ
 
double m_xRef
 
double m_yRef
 
double m_fX
 
double m_fY
 
double m_fZ
 
double zminl
 
double xStep
 
double zStep
 
double xMino
 
double xMaxo
 
double deltaXo
 
double zMino
 
double zMaxo
 
double deltaZo
 
double scalx
 
double scaly
 
double scalz
 
double scal3D
 
double phio
 
double thetao
 
double xOff3D
 
double yOff3D
 
double ** m_yValues
 
double vertex [16]
 
QTransform m3D
 
QVector< double > yMin3D
 
QVector< double > yMax3D
 
QString m_textZ
 
- Protected Attributes inherited from FrameItem
bool m_logX
 
bool m_logY
 
bool m_xBottom
 
bool m_xTop
 
bool m_yLeft
 
bool m_yRight
 
bool m_collapsed
 
int m_numDigX
 
int m_numDigY
 
int m_minTicX
 
int m_minTicY
 
int m_expX
 
int m_expY
 
GridMode m_gridMode
 
unsigned m_colorFrame
 
unsigned m_colorGrid
 
double m_x0
 
double m_y0
 
double m_width
 
double m_height
 
double m_xMin
 
double m_xMax
 
double m_yMin
 
double m_yMax
 
double m_xTic
 
double m_yTic
 
double m_xOffset
 
double m_yOffset
 
double m_normX
 
double m_normY
 
double xminl
 
double xmaxl
 
double yminl
 
double ymaxl
 
QString m_textX
 
QString m_textY
 
QString m_header
 
QRectF bRect
 
QRectF cRect
 
QTransform md
 
QTransform m_inv
 
QTransform m_matrix
 
- Protected Attributes inherited from KplItem
double m_relSize
 

Additional Inherited Members

- Static Public Member Functions inherited from FrameItem
static void autoScale (double &xMin, double &xMax, double &tick, int &minTic, int &numDig, double xmi, double xma, double f, double c, bool log)
 Calculates scaling parameters. More...
 
static bool valid (double v, bool log=false)
 Checks a double value for validity. More...
 
- Static Public Member Functions inherited from KplItem
static QUrl absoluteUrl (const QString &path, const QUrl &urlPlo)
 Constructs absolute file URL. More...
 
static QBrush createBrush (unsigned color, FillStyle fillStyle=NoBrush)
 Creates brush. More...
 
static QPen createPen (double width, unsigned color, PenType penType, Symbol symbol)
 Creates pen. More...
 
static void paintSymbol (QPainter *painter, const QRectF &rect, Symbol symbol=OpenCircle)
 Paints symbol. More...
 
static QPixmap pixmap (Symbol symbol)
 Returns black decoration pixmap of plot symbol for use in dialog GUI. More...
 
static QPixmap pixmap (QPen pen, Symbol symbol=SolidLine)
 Returns decoration pixmap of plot symbol for use in item lists. More...
 
static QString path (const QUrl &urlPlo, const QUrl &url, bool absolute=false)
 Constructs absolute or (if possible) relative file path. More...
 
static void resetDashOffset ()
 Resets offset for dashed lines. More...
 
static unsigned rgb (const QString &color)
 Converts rgb string to QRgb. More...
 
static unsigned rgbQt1 (unsigned rgb)
 Converts QRgb to Qt1 QRgb. More...
 
- Protected Types inherited from ThreeDItem
enum  Axis { X, Y, Z }
 3D mode. More...
 
- Static Protected Member Functions inherited from KplItem
static double parentWidth (const QGraphicsItem *item)
 Returns width of item's parent frame or width of scene if the item has no parent item. More...
 
static double penWidthFactor (PenType penType)
 Returns factor to calculate pen width from frame width. More...
 
- Static Protected Attributes inherited from KplItem
static double m_dashOffset
 

Detailed Description

3D function item class.

Provides methods for 3D plotting of functions.

Author
Werner Stille

Member Enumeration Documentation

anonymous enum

Specific QGraphicsItem type number for function type()

Enumerator
Type 

Specific QGraphicsItem type number of Fun3DItem for function type().

Constructor & Destructor Documentation

Fun3DItem::Fun3DItem ( double  x0 = 4,
double  y0 = 3,
double  width = 15,
double  height = 10,
unsigned  colorFrame = 0,
unsigned  colorGrid = 0,
unsigned  colorData = 0,
bool  logX = false,
bool  logY = false,
bool  logZ = false,
GridMode  gridMode = AxesWithLabels,
Mode3D  mode3D = Grid,
double  xMax = 15,
double  yMax = 10,
double  zMax = 15,
const QString textX = "",
const QString textY = "",
const QString textZ = "",
const QString header = "",
double  relSize = 1,
int  numDigX = -1,
int  numDigY = -1,
int  numDigZ = -1,
int  minTicX = 5,
int  minTicY = 2,
int  minTicZ = 5,
int  expX = 0,
int  expY = 0,
int  expZ = 0,
double  xMin = 0,
double  yMin = 0,
double  zMin = 0,
double  xTic = 5,
double  yTic = 2,
double  zTic = 5,
double  deltaX = 0,
double  deltaZ = 0,
double  phi = 20,
double  theta = -20,
double  bx = 7.5,
double  by = 7.5,
double  bz = 7.5,
double  xr = 7.5,
double  yr = 4,
double  fx = 1,
double  fy = 1,
double  fz = 1,
const QString name = "",
const QUrl url = QUrl(),
bool  showFrame = true,
bool  collapsed = false,
bool  visible = true 
)

Constructor.

Initializes corresponding to arguments.

Parameters
x0left page margin in centimeters.
y0bottom page margin in centimeters.
widthwidth in centimeters.
heightheight in centimeters.
colorFramecolor for frame and labels.
colorGridcolor for grids and tics.
colorDatacolor for data plot.
logXtrue for logarithmic x axis.
logYtrue for logarithmic y axis.
logZtrue for logarithmic y axis.
gridModegrid mode.
mode3D3D mode.
xMaxmaximum x value.
yMaxmaximum y value.
zMaxmaximum z value.
textXx axis text.
textYy axis text.
textZz axis text.
headerheading text.
relSizerelative size of text, markers and lines.
numDigXnumber of digits for x axis.
numDigYnumber of digits for y axis.
numDigZnumber of digits for z axis.
minTicXnumber of intervals between major tics of x axis.
minTicYnumber of intervals between major tics of y axis.
minTicZnumber of intervals between major tics of z axis.
expXlogarithm of normalization factor for x axis.
expYlogarithm of normalization factor for y axis.
expZlogarithm of normalization factor for z axis.
xMinminimum x value.
yMinminimum y value.
zMinminimum z value.
xTicdistance between major tics of x axis.
yTicdistance between major tics of y axis.
zTicdistance between major tics of z axis.
deltaXx step size.
deltaZz step size.
phiangle of rotation about y axis in deg.
thetatilt angle of y axis in deg.
bxx box width in cm.
byy box width in cm.
bzz box width in cm.
xrx position of center of box bottom plane.
yry position of center of box bottom plane.
fxnormalization factor for x values.
fynormalization factor for y values.
fznormalization factor for z values.
namefunction name.
urlURL of the function library.
showFrametrue to show frame.
collapsedtrue for collapsed in list view.
visibletrue for visible item.
Fun3DItem::Fun3DItem ( const Fun3DItem f)

Copy constructor.

Fun3DItem::Fun3DItem ( const KConfigGroup *  plo,
const QUrl urlPlo,
double  x0 = 4,
double  y0 = 3,
double  width = 15,
double  height = 10,
unsigned  colorFrame = 0,
unsigned  colorGrid = 0,
unsigned  colorData = 0,
GridMode  gridMode = AxesWithLabels 
)

Constructor.

Initializes corresponding to plot file.

Parameters
plopointer to KConfigGroup object containing item data.
urlPloURL of plot file.
x0default value for left page margin in centimeters.
y0default value for bottom page margin in centimeters.
widthdefault value for width in centimeters.
heightdefault value for height in centimeters.
colorFramedefault value for color for frame and labels.
colorGriddefault value for color for grids and tics.
colorDatacolor for data plot.
gridModedefault grid mode.
Fun3DItem::~Fun3DItem ( )

Destructor.

Member Function Documentation

int Fun3DItem::calcTable ( ) const

Calculates function value table.

Returns
number of data points.
void Fun3DItem::exportTable ( QTextStream stream,
char  separator,
char  format,
int  precision 
) const

Exports function value table to file.

Parameters
streamstream for output file.
separatorcolumn separator character.
formatC format character.
precisionprecision.
const QLibrary* Fun3DItem::libY ( ) const
inline

Returns pointer to library for y function.

QString Fun3DItem::nameY ( ) const
inline

Returns y function name.

virtual void Fun3DItem::paint ( QPainter painter,
const QStyleOptionGraphicsItem option,
QWidget widget = 0 
)
virtual

Paints item.

Reimplemented from ThreeDItem.

double* Fun3DItem::parY ( )
inline

Returns y function parameter array pointer.

bool Fun3DItem::setFuncY ( const QUrl url,
const QString name 
)

Resolves y function address.

Parameters
urlURL of the function library.
namefunction name.
Returns
true for success.
void Fun3DItem::setPar ( int  i,
double  value 
)
inline

Sets parameter.

Parameters
iparameter index.
valuevalue.
virtual int Fun3DItem::type ( ) const
inlinevirtual

Returns specific QGraphicsItem type number.

Reimplemented from FrameItem.

void Fun3DItem::unload ( )
protected

Unloads y function library.

void Fun3DItem::update ( )

Applies changes and forces redrawing.

const QUrl& Fun3DItem::urlY ( ) const
inline

Returns URL of y function library.

void Fun3DItem::writePlo ( KConfigGroup *  plo,
const QUrl urlPlo,
bool  absolute,
char  format,
int  precision 
) const

Writes into plot file.

Parameters
ploKConfigGroup object.
urlPloURL of plot file.
absolutetrue to save absolute paths.
formatformat character for value display.
precisionprecision (number of digits) for value display.

The documentation for this class was generated from the following file: