Initial commit
This commit is contained in:
commit
b7d90b9afe
16245 files changed
+3396666
No files matched your search
@@ -0,0 +1,108 @@
|
||||
/**
|
||||
* @RDE_HEADER@
|
||||
* Interface
|
||||
* $Id$
|
||||
* $HeadURL$
|
||||
* $Author$
|
||||
*/
|
||||
|
||||
#include <QtWidgets/QApplication>
|
||||
#include <QMainWindow>
|
||||
#include <QPainter>
|
||||
#include <QImage>
|
||||
#include <QSvgGenerator>
|
||||
#include <QSvgRenderer>
|
||||
|
||||
void renderImpactSymbol(QPainter& painter)
|
||||
{
|
||||
// From SymbolDictionaryExtendedImpl::renderImpactSymbol
|
||||
|
||||
QColor color = Qt::red;
|
||||
int size = 100;
|
||||
bool filled = false;
|
||||
|
||||
|
||||
QPen pen(color);
|
||||
pen.setWidth(2);
|
||||
painter.setPen(pen);
|
||||
|
||||
const int sizeHalf = size/2.0;
|
||||
|
||||
QPointF center(sizeHalf, sizeHalf);
|
||||
|
||||
// circle
|
||||
if (filled)
|
||||
painter.setBrush( color );
|
||||
painter.drawEllipse(center, sizeHalf*0.5, sizeHalf*0.5);
|
||||
|
||||
// // lines
|
||||
// QLine newLine(0, sizeHalf, size, sizeHalf);
|
||||
// painter.drawLine(newLine);
|
||||
|
||||
// QTransform trans;
|
||||
// trans.translate(sizeHalf, sizeHalf);
|
||||
// trans.rotate(45);
|
||||
// trans.translate(-sizeHalf, -sizeHalf);
|
||||
|
||||
// newLine = trans.map(newLine);
|
||||
// painter.drawLine(newLine);
|
||||
|
||||
// newLine = trans.map(newLine);
|
||||
// painter.drawLine(newLine);
|
||||
|
||||
// newLine = trans.map(newLine);
|
||||
// painter.drawLine(newLine);
|
||||
}
|
||||
|
||||
|
||||
|
||||
int main (int argc, char* argv[])
|
||||
{
|
||||
QApplication app ( argc, argv );
|
||||
|
||||
// under windows for ArcGIS 10.2.6 and higher
|
||||
#ifdef Q_OS_WIN
|
||||
QCoreApplication::setAttribute( Qt::AA_UseOpenGLES );
|
||||
#endif
|
||||
|
||||
int fullSize = 100;
|
||||
QImage image(fullSize, fullSize, QImage::Format_ARGB32);
|
||||
image.fill(qRgba(0,0,0,0));
|
||||
|
||||
{
|
||||
// Image:
|
||||
QPainter painterI(&image);
|
||||
renderImpactSymbol(painterI);
|
||||
painterI.end();
|
||||
image.save(QLatin1String("dummy.png"));
|
||||
|
||||
// SaveSvg:
|
||||
QSvgGenerator generator;
|
||||
generator.setFileName(QLatin1String("dummy.svg"));
|
||||
generator.setSize(QSize(100, 100));
|
||||
generator.setViewBox(QRect(0, 0, 100, 100));
|
||||
generator.setTitle(QLatin1String("SVG Generator Example Drawing"));
|
||||
generator.setDescription(QLatin1String("An SVG drawing created by the SVG Generator"));
|
||||
|
||||
QPainter painterSvg;
|
||||
painterSvg.begin(&generator);
|
||||
renderImpactSymbol(painterSvg);
|
||||
painterSvg.end();
|
||||
}
|
||||
|
||||
{
|
||||
QSvgRenderer svgRenderer;
|
||||
QImage image(fullSize, fullSize, QImage::Format_ARGB32);
|
||||
image.fill(qRgba(0,0,0,0));
|
||||
|
||||
QPainter painter(&image);
|
||||
svgRenderer.load(QLatin1String("manualDummy.svg"));
|
||||
svgRenderer.render(&painter);
|
||||
painter.end();
|
||||
|
||||
image.save(QLatin1String("manualDummy.png"));
|
||||
}
|
||||
|
||||
|
||||
return app.exec();
|
||||
}
|
||||
Reference in new issue
Block a user