Exemplo n.º 1
0
std::string Grid::saveToString() {
  TSVSerialiser tsv;
  tsv.writeLine("grid");

  tsv << xEnabled() << xMinEnabled();
  tsv << yEnabled() << yMinEnabled();

  tsv << majPenX().color().name();
  tsv << majPenX().style() - 1;
  tsv << majPenX().widthF();

  tsv << minPenX().color().name();
  tsv << minPenX().style() - 1;
  tsv << minPenX().widthF();

  tsv << majPenY().color().name();
  tsv << majPenY().style() - 1;
  tsv << majPenY().widthF();

  tsv << minPenY().color().name();
  tsv << minPenY().style() - 1;
  tsv << minPenY().widthF();

  tsv << xZeroLineEnabled() << yZeroLineEnabled();
  tsv << xAxis() << yAxis();
  tsv << testRenderHint(QwtPlotItem::RenderAntialiased);
  return tsv.outputLines();
}
Exemplo n.º 2
0
QString Grid::saveToString()
{
    QString s = "grid\t";
    s += QString::number(xEnabled())+"\t";
    s += QString::number(xMinEnabled())+"\t";
    s += QString::number(yEnabled())+"\t";
    s += QString::number(yMinEnabled())+"\t";

    s += majPenX().color().name()+"\t";
    s += QString::number(majPenX().style() - 1)+"\t";
    s += QString::number(majPenX().widthF())+"\t";

    s += minPenX().color().name()+"\t";
    s += QString::number(minPenX().style() - 1)+"\t";
    s += QString::number(minPenX().widthF())+"\t";

    s += majPenY().color().name()+"\t";
    s += QString::number(majPenY().style() - 1)+"\t";
    s += QString::number(majPenY().widthF())+"\t";

    s += minPenY().color().name()+"\t";
    s += QString::number(minPenY().style() - 1)+"\t";
    s += QString::number(minPenY().widthF())+"\t";

    s += QString::number(xZeroLineEnabled())+"\t";
    s += QString::number(yZeroLineEnabled())+"\t";
    s += QString::number(xAxis())+"\t";
    s += QString::number(yAxis())+"\t";
    s += QString::number(testRenderHint(QwtPlotItem::RenderAntialiased))+"\n";
    return s;
}
Exemplo n.º 3
0
/*!
  \brief Draw the grid

  The grid is drawn into the bounding rectangle such that
  gridlines begin and end at the rectangle's borders. The X and Y
  maps are used to map the scale divisions into the drawing region
  screen.
  \param painter  Painter
  \param mx X axis map
  \param my Y axis
  \param r Contents rect of the plot canvas
  */
void Grid::draw(QPainter *painter,
		const QwtScaleMap &mx, const QwtScaleMap &my,
		const QRect &r) const
{

	double x_factor = (double)painter->device()->logicalDpiX()/(double)plot()->logicalDpiX();
	double y_factor = (double)painter->device()->logicalDpiY()/(double)plot()->logicalDpiY();

	//  draw minor X gridlines
	QPen pen = minPen();
	pen.setWidthF(pen.widthF() * x_factor);
	painter->setPen(pen);

	if (xMinEnabled()){
		drawLines(painter, r, Qt::Vertical, mx,
				xScaleDiv().ticks(QwtScaleDiv::MinorTick));
		drawLines(painter, r, Qt::Vertical, mx,
				xScaleDiv().ticks(QwtScaleDiv::MediumTick));
	}

	//  draw minor Y gridlines
	pen = d_min_pen_y;
	pen.setWidthF(pen.widthF() * y_factor);
	painter->setPen(pen);

	if (yMinEnabled()){
		drawLines(painter, r, Qt::Horizontal, my,
				yScaleDiv().ticks(QwtScaleDiv::MinorTick));
		drawLines(painter, r, Qt::Horizontal, my,
				yScaleDiv().ticks(QwtScaleDiv::MediumTick));
	}

	//  draw major X gridlines
	pen = majPen();
	pen.setWidthF(pen.widthF() * x_factor);
	painter->setPen(pen);

	if (xEnabled()){
		drawLines(painter, r, Qt::Vertical, mx,
				xScaleDiv().ticks (QwtScaleDiv::MajorTick));
	}

	//  draw major Y gridlines
	pen = d_maj_pen_y;
	pen.setWidthF(pen.widthF() * y_factor);
	painter->setPen(pen);

	if (yEnabled()){
		drawLines(painter, r, Qt::Horizontal, my,
				yScaleDiv().ticks (QwtScaleDiv::MajorTick));
	}
}
Exemplo n.º 4
0
/*!
  \brief Draw the grid

  The grid is drawn into the bounding rectangle such that
  gridlines begin and end at the rectangle's borders. The X and Y
  maps are used to map the scale divisions into the drawing region
  screen.
  \param painter  Painter
  \param mx X axis map
  \param my Y axis
  \param r Contents rect of the plot canvas
  */
void Grid::draw(QPainter *painter,
                const QwtScaleMap &mx, const QwtScaleMap &my,
                const QRect &r) const
{
    //  draw minor X gridlines
    painter->setPen(minPen());

    if (xMinEnabled()) {
        drawLines(painter, r, Qt::Vertical, mx,
                  xScaleDiv().ticks(QwtScaleDiv::MinorTick));
        drawLines(painter, r, Qt::Vertical, mx,
                  xScaleDiv().ticks(QwtScaleDiv::MediumTick));
    }

    //  draw minor Y gridlines
    painter->setPen(d_min_pen_y);

    if (yMinEnabled()) {
        drawLines(painter, r, Qt::Horizontal, my,
                  yScaleDiv().ticks(QwtScaleDiv::MinorTick));
        drawLines(painter, r, Qt::Horizontal, my,
                  yScaleDiv().ticks(QwtScaleDiv::MediumTick));
    }

    //  draw major X gridlines
    painter->setPen(majPen());

    if (xEnabled()) {
        drawLines(painter, r, Qt::Vertical, mx,
                  xScaleDiv().ticks (QwtScaleDiv::MajorTick));
    }

    //  draw major Y gridlines
    painter->setPen(d_maj_pen_y);

    if (yEnabled()) {
        drawLines(painter, r, Qt::Horizontal, my,
                  yScaleDiv().ticks (QwtScaleDiv::MajorTick));
    }
}