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

Spline item class. More...

#include <splineitem.h>

Inheritance diagram for SplineItem:
Inheritance graph
[legend]

Public Types

enum  { Type = UserType + Spline }
 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

 SplineItem (int degree=3, int derivOrder=0, double xLow=0, unsigned color=0, Symbol symbol=SolidLine, double fx=1, double fy=1, QGraphicsItem *parent=0, double xMin=0, double xMax=0, double deltaX=0, bool visible=true, FillStyle fillStyle=NoBrush, double xOffset=0, double yOffset=0, double relSize=1)
 Constructor. More...
 
 SplineItem (const SplineItem &a)
 Copy constructor. More...
 
 SplineItem (const KConfigGroup *plo, unsigned color=0, Symbol symbol=SolidLine, QGraphicsItem *parent=0)
 Constructor. More...
 
virtual ~SplineItem ()
 Destructor. More...
 
virtual QRectF boundingRect () const
 Calculates bounding rectangle. More...
 
int calcTable (bool logX) const
 Calculates spline value table. More...
 
int calcTable (const double *x, double *values, int n=1, int derivOrder=0, double xLow=0) const
 Calculates spline value table. More...
 
void copySpline (const SplineItem *a)
 Copies spline data. More...
 
int degree () const
 Returns degree of spline. More...
 
double deltaX () const
 Returns argument step size. More...
 
int derivOrder () const
 Returns order of derivative. More...
 
void exponent (int &expX, int &expY, double &fx, double &fy, bool logX) const
 Calculates normalization factors. More...
 
void exportTable (QTextStream &stream, char separator, char format, int precision) const
 Exports spline value table to file. More...
 
int fit (const ArrayItem *ai, double xMin, double xMax, double *chiSquare=0, int *numKnots=0, double smooth=0, FunItem::DataErrorStruct *err=0, double *avgErr=0)
 Performs smoothing spline fit. More...
 
int fit (const double *x, const double *y, const double *errors, int n, double xMin, double xMax, double *chiSquare=0, int *numKnots=0, double smooth=0, FunItem::DataErrorStruct *err=0, double *avgErr=0)
 Performs smoothing spline fit. More...
 
int interpolation (const double *x, const double *y, int n, double xMin, double xMax)
 Performs interpolating (non-smoothing) spline fit. More...
 
void limits (double &xMin, double &xMax, double &yMin, double &yMax, bool logX) const
 Calculates minimum and maximum values. More...
 
int numKnots () const
 Returns number of knots. More...
 
virtual void paint (QPainter *painter, const QStyleOptionGraphicsItem *option, QWidget *widget=0)
 Paints item. More...
 
int roots (QVector< double > &zero, int derivOrder=0, double offset=0) const
 Finds roots of a cubic spline or its derivatives. More...
 
void setDashOffset ()
 Sets offset for dashed lines. More...
 
void setDegree (int degree)
 Sets degree of spline. More...
 
void setDeltaX (double deltaX)
 Sets argument step size. More...
 
void setDerivOrder (int derivOrder)
 Sets order of derivative. More...
 
void setXLow (double xLow)
 Sets lower x limit for spline integral. More...
 
void setXMax (double xMax)
 Sets maximum argument value. More...
 
void setXMin (double xMin)
 Sets minimum argument value. More...
 
virtual QPainterPath shape () const
 Returns the shape of the plot item. More...
 
virtual int type () const
 Returns specific QGraphicsItem type number. More...
 
void writePlo (KConfigGroup *plo, char format, int precision) const
 Writes into plot file. More...
 
double xLow () const
 Returns lower x limit for spline integral. More...
 
double xMax () const
 Returns maximum argument value. More...
 
double xMin () const
 Returns minimum argument value. More...
 
double * xValues () const
 Returns pointer to x function value array. More...
 
double * yValues () const
 Returns pointer to y function value array. More...
 
- Public Member Functions inherited from ScaledItem
 ScaledItem ()
 Constructor. More...
 
 ScaledItem (const ScaledItem &a)
 Copy constructor. More...
 
 ScaledItem (const KConfigGroup *plo, Symbol symbol, unsigned color, QGraphicsItem *parent)
 Constructor. More...
 
 ScaledItem (FillStyle fillStyle, Symbol symbol, unsigned color, double fx, double fy, double xOffset, double yOffset, double relSize, QGraphicsItem *parent)
 Constructor. More...
 
virtual ~ScaledItem ()
 Destructor. More...
 
unsigned color () const
 Returns color. More...
 
FillStyle fillStyle () const
 Returns fill style. More...
 
bool isNormalized (double fx, double fy) const
 Checks if both normalization factors are equal to given values. More...
 
void normalize (double fx, double fy)
 Sets normalization factors. More...
 
double normX () const
 Returns normalization factor for x values. More...
 
double normY () const
 Returns normalization factor for y values. More...
 
QPixmap pixmap () const
 Returns decoration pixmap for item list. More...
 
void readPlo (const KConfigGroup *plo, Symbol symbol, unsigned color)
 Initializes corresponding to plot file. More...
 
void setColor (unsigned color)
 Sets color. More...
 
void setFillStyle (FillStyle style)
 Sets fill style. More...
 
void setNormX (double fx)
 Sets normalization factor for x values. More...
 
void setNormY (double fy)
 Sets normalization factor for y values. More...
 
void setProperties (const QTransform &m)
 Sets properties according to transformation matrix. More...
 
void setSize ()
 Sets size according to transformation matrix. More...
 
void setSymbol (Symbol symbol)
 Sets symbol type. More...
 
void setXOffset (double xOffset)
 Sets offset for x values. More...
 
void setYOffset (double yOffset)
 Sets offset for y values. More...
 
Symbol symbol () const
 Returns symbol type. More...
 
void update ()
 Applies changes and forces redrawing. More...
 
void updateGeometry ()
 Updates geometry. More...
 
void writePlo (KConfigGroup *plo, bool visible) const
 Writes into plot file. More...
 
double xOffset () const
 Returns offset for x values. More...
 
double yOffset () const
 Returns offset for y values. 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 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 contains (const QPointF &point) 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
 
virtual bool isObscuredBy (const QGraphicsItem *item) const
 
virtual QPainterPath opaqueArea () 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)
 

Static Public Member Functions

static int sortArrays (const double *x0, const double *y0, const double *errors0, int &n, FunItem::DataErrorStruct *err, double *x, double *y, double *errors)
 Sorts arrays and calculates error column. More...
 
- Static Public Member Functions inherited from ScaledItem
static void exponent (double a, int &iExp, double &f)
 Calculates normalization factor. More...
 
static bool limits (double &xMin, double &xMax, const double *values, int n)
 Calculates minimum and maximum values of an array. 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 Member Functions

void paintCond (QPainter *painter) const
 Paints or calculates bounding area. More...
 
- Protected Member Functions inherited from ScaledItem
double length (const double *x, const double *y, int n) const
 Calculates line length. More...
 
void plotArray (QPainter *painter, const double *x, const double *y, int n) const
 Plots array. More...
 
void setProperties ()
 Sets properties according to transformation matrix. 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 mouseReleaseEvent (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

bool logXo
 
int m_degree
 
int m_numKnots
 
int m_derivOrder
 
int degreeo
 
int numKnotso
 
int derivOrdero
 
double m_xMin
 
double m_xMax
 
double m_deltaX
 
double m_xLow
 
double xMino
 
double xMaxo
 
double deltaXo
 
double xLowo
 
QVector< double > m_xValues
 
QVector< double > m_yValues
 
QVector< double > t
 
QVector< double > c
 
- Protected Attributes inherited from ScaledItem
FillStyle m_fillStyle
 
Symbol m_symbol
 
unsigned m_color
 
double m_normX
 
double m_normY
 
double m_xOffset
 
double m_yOffset
 
double dydx
 
double myDashOffset
 
QPen m_pen
 
QPainterPath bPath
 
QRectF bRect
 
QRectF symbRect
 
QTransform m_matrix
 
- Protected Attributes inherited from KplItem
double m_relSize
 

Additional Inherited Members

- Public Attributes inherited from QGraphicsItem
typedef GraphicsItemFlags
 
- 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

Spline item class.

Class for smoothing spline items for plotting spline interpolations, derivatives or integrals by lines or markers.

Author
Werner Stille

Member Enumeration Documentation

anonymous enum

Specific QGraphicsItem type number for function type()

Enumerator
Type 

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

Constructor & Destructor Documentation

SplineItem::SplineItem ( int  degree = 3,
int  derivOrder = 0,
double  xLow = 0,
unsigned  color = 0,
Symbol  symbol = SolidLine,
double  fx = 1,
double  fy = 1,
QGraphicsItem parent = 0,
double  xMin = 0,
double  xMax = 0,
double  deltaX = 0,
bool  visible = true,
FillStyle  fillStyle = NoBrush,
double  xOffset = 0,
double  yOffset = 0,
double  relSize = 1 
)

Constructor.

Initializes corresponding to arguments.

Parameters
degreedegree of spline.
derivOrderorder of derivative.
xLowlower x limit for spline integral.
colorcolor for plot.
symbolsymbol type.
fxnormalization factor for x values.
fynormalization factor for y values.
parentpointer to parent item.
xMinminimum argument value.
xMaxmaximum argument value.
deltaXargument step size.
visibletrue for visible item.
fillStyle> 0 for filled polygon representation.
xOffsetoffset for x values.
yOffsetoffset for x values.
relSizerelative size of lines or symbols.
SplineItem::SplineItem ( const SplineItem a)

Copy constructor.

SplineItem::SplineItem ( const KConfigGroup *  plo,
unsigned  color = 0,
Symbol  symbol = SolidLine,
QGraphicsItem parent = 0 
)

Constructor.

Initializes corresponding to plot file.

Parameters
plopointer to KConfigGroup object containing item data.
colordefault color for function plot.
symboldefault symbol type.
parentpointer to parent item.
virtual SplineItem::~SplineItem ( )
virtual

Destructor.

Member Function Documentation

virtual QRectF SplineItem::boundingRect ( ) const
virtual

Calculates bounding rectangle.

Implements QGraphicsItem.

int SplineItem::calcTable ( bool  logX) const

Calculates spline value table.

Parameters
logXtrue for logarithmic steps
Returns
number of rows.
int SplineItem::calcTable ( const double *  x,
double *  values,
int  n = 1,
int  derivOrder = 0,
double  xLow = 0 
) const

Calculates spline value table.

Parameters
xarray with x values.
valuesarray for y values.
nnumber of points.
derivOrderorder of derivative.
xLowlower x limit in case of spline integral.
Returns
error code.
void SplineItem::copySpline ( const SplineItem a)

Copies spline data.

Parameters
apointer to source item.
int SplineItem::degree ( ) const
inline

Returns degree of spline.

double SplineItem::deltaX ( ) const
inline

Returns argument step size.

int SplineItem::derivOrder ( ) const
inline

Returns order of derivative.

void SplineItem::exponent ( int &  expX,
int &  expY,
double &  fx,
double &  fy,
bool  logX 
) const

Calculates normalization factors.

Parameters
expXreference to logarithm of x normalization factor.
expYreference to logarithm of x normalization factor.
fxreference to x normalization factor.
fyreference to y normalization factor.
logXtrue for logarithmic x axis.
void SplineItem::exportTable ( QTextStream stream,
char  separator,
char  format,
int  precision 
) const

Exports spline value table to file.

Parameters
streamstream for output file.
separatorcolumn separator character.
formatC format character.
precisionnumber of digits.
int SplineItem::fit ( const ArrayItem ai,
double  xMin,
double  xMax,
double *  chiSquare = 0,
int *  numKnots = 0,
double  smooth = 0,
FunItem::DataErrorStruct err = 0,
double *  avgErr = 0 
)

Performs smoothing spline fit.

Parameters
aipointer to array item.
xMinlower boundary of approximation interval.
xMaxupper boundary of approximation interval.
chiSquarechi-square.
numKnotsnumber of knots.
smoothsmoothing factor.
errpointer to structure containing the data error settings.
avgErraverage error.
Returns
error code.
int SplineItem::fit ( const double *  x,
const double *  y,
const double *  errors,
int  n,
double  xMin,
double  xMax,
double *  chiSquare = 0,
int *  numKnots = 0,
double  smooth = 0,
FunItem::DataErrorStruct err = 0,
double *  avgErr = 0 
)

Performs smoothing spline fit.

Parameters
xarray with x values.
yarray with y values.
errorsarray with error values.
nnumber of points.
xMinlower boundary of approximation interval.
xMaxupper boundary of approximation interval.
chiSquarechi-square.
numKnotsnumber of knots.
smoothsmoothing factor.
errpointer to structure containing the data error settings.
avgErraverage error.
Returns
error code.
int SplineItem::interpolation ( const double *  x,
const double *  y,
int  n,
double  xMin,
double  xMax 
)

Performs interpolating (non-smoothing) spline fit.

Parameters
xarray with x values.
yarray with y values.
nnumber of points.
xMinlower boundary of approximation interval.
xMaxupper boundary of approximation interval.
Returns
error code.
void SplineItem::limits ( double &  xMin,
double &  xMax,
double &  yMin,
double &  yMax,
bool  logX 
) const

Calculates minimum and maximum values.

Parameters
xMinreference to minimum of x values.
xMaxreference to maximum of x values.
yMinreference to minimum of y values.
yMaxreference to maximum of y values.
logXtrue for logarithmic x axis.
int SplineItem::numKnots ( ) const
inline

Returns number of knots.

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

Paints item.

Implements QGraphicsItem.

void SplineItem::paintCond ( QPainter painter) const
protected

Paints or calculates bounding area.

Parameters
painterQPainter object, 0 for calculating bounding area.
int SplineItem::roots ( QVector< double > &  zero,
int  derivOrder = 0,
double  offset = 0 
) const

Finds roots of a cubic spline or its derivatives.

Parameters
zeroarray for roots.
derivOrderorder of derivative.
offsetvalue of the spline or derivative.
Returns
error code.
void SplineItem::setDashOffset ( )

Sets offset for dashed lines.

void SplineItem::setDegree ( int  degree)
inline

Sets degree of spline.

Parameters
degreedegree.
void SplineItem::setDeltaX ( double  deltaX)
inline

Sets argument step size.

Parameters
deltaXstep size.
void SplineItem::setDerivOrder ( int  derivOrder)
inline

Sets order of derivative.

Parameters
derivOrderorder.
void SplineItem::setXLow ( double  xLow)
inline

Sets lower x limit for spline integral.

Parameters
xLowlower x limit.
void SplineItem::setXMax ( double  xMax)
inline

Sets maximum argument value.

Parameters
xMaxmaximum argument value.
void SplineItem::setXMin ( double  xMin)
inline

Sets minimum argument value.

Parameters
xMinminimum argument value.
virtual QPainterPath SplineItem::shape ( ) const
virtual

Returns the shape of the plot item.

Reimplemented from QGraphicsItem.

static int SplineItem::sortArrays ( const double *  x0,
const double *  y0,
const double *  errors0,
int &  n,
FunItem::DataErrorStruct err,
double *  x,
double *  y,
double *  errors 
)
static

Sorts arrays and calculates error column.

Parameters
x0array with x values.
y0array with y values.
errors0array with error values.
nnumber of points.
errpointer to structure containing the data error settings.
xarray for sorted x values.
yarray for y values.
errorsarray for error values.
Returns
error code.
virtual int SplineItem::type ( ) const
inlinevirtual

Returns specific QGraphicsItem type number.

Reimplemented from QGraphicsItem.

void SplineItem::writePlo ( KConfigGroup *  plo,
char  format,
int  precision 
) const

Writes into plot file.

Parameters
ploKConfigGroup object.
formatC format character.
precisionnumber of digits.
double SplineItem::xLow ( ) const
inline

Returns lower x limit for spline integral.

double SplineItem::xMax ( ) const
inline

Returns maximum argument value.

double SplineItem::xMin ( ) const
inline

Returns minimum argument value.

double* SplineItem::xValues ( ) const

Returns pointer to x function value array.

double* SplineItem::yValues ( ) const

Returns pointer to y function value array.


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