Commit 2f66a816 authored by Jan Möbius's avatar Jan Möbius
Browse files

Merge branch 'master' into poisson_disk_square

parents da4127b8 d2e0a012
......@@ -60,9 +60,7 @@
#include <OpenFlipper/common/GlobalOptions.hh>
//#include <QGLWidget>
#include <../ObjectTypes/TriangleMesh/TriangleMesh.hh>
#include <../ObjectTypes/PolyMesh/PolyMesh.hh>
#include "PluginFunctions.hh"
#include "PluginFunctionsCore.hh"
namespace PluginFunctions {
......
......@@ -351,6 +351,7 @@ void addGlobalNode(ACG::SceneGraph::BaseNode* _node);
* The node will be added at the top of the scenegraph, before all other nodes except
* The scenegraphs real node. It will therefore influence all nodes in the scenegraph.
*/
DLLEXPORT
void addGlobalStatusNode(ACG::SceneGraph::BaseNode* _node);
/** \brief Add scenegraph node modifing object rendering
......
......@@ -84,6 +84,7 @@
#include <OpenFlipper/common/ViewerProperties.hh>
#include <ACG/QtWidgets/QtSceneGraphWidget.hh>
#include <OpenFlipper/BasePlugin/PluginFunctionsSceneGraphWidget.hh>
namespace PluginFunctions {
......@@ -169,10 +170,6 @@ void removeObjectFromMap(int _objectId);
* @{ */
//=======================================
/// Add a scenegraph generator ( the handled type will be extracted from the generator)
DLLEXPORT
void addSceneGraphGenerator(ACG::QtWidgets::SceneGraphWidgetGenerator* _generator);
DLLEXPORT
QMap< std::string ,ACG::QtWidgets::SceneGraphWidgetGenerator* > getSceneGraphGeneratorList();
......
/*===========================================================================*\
* *
* OpenFlipper *
* Copyright (c) 2001-2015, RWTH-Aachen University *
* Department of Computer Graphics and Multimedia *
* All rights reserved. *
* www.openflipper.org *
* *
*---------------------------------------------------------------------------*
* This file is part of OpenFlipper. *
*---------------------------------------------------------------------------*
* *
* Redistribution and use in source and binary forms, with or without *
* modification, are permitted provided that the following conditions *
* are met: *
* *
* 1. Redistributions of source code must retain the above copyright notice, *
* this list of conditions and the following disclaimer. *
* *
* 2. Redistributions in binary form must reproduce the above copyright *
* notice, this list of conditions and the following disclaimer in the *
* documentation and/or other materials provided with the distribution. *
* *
* 3. Neither the name of the copyright holder nor the names of its *
* contributors may be used to endorse or promote products derived from *
* this software without specific prior written permission. *
* *
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS *
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED *
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A *
* PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER *
* OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, *
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, *
* PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR *
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF *
* LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING *
* NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
* *
\*===========================================================================*/
/*===========================================================================*\
* *
* $Revision$ *
* $LastChangedBy$ *
* $Date$ *
* *
\*===========================================================================*/
//=============================================================================
//
// Standard Functions
//
//=============================================================================
/**
* \file PluginFunctionsSceneGraphWidget.hh
* This file contains functions to add an additional widget to the SceneGraph Widget.
*/
#pragma once
#include <OpenFlipper/common/GlobalDefines.hh>
#include <ACG/QtWidgets/QtSceneGraphWidget.hh>
namespace PluginFunctions {
//=======================================
// SceneGraph Generator Map
/** @name Add scenegraph widget generators
* @{ */
//=======================================
/// Add a scenegraph generator ( the handled type will be extracted from the generator)
DLLEXPORT
void addSceneGraphGenerator(ACG::QtWidgets::SceneGraphWidgetGenerator* _generator);
/** @} */
}
......@@ -124,7 +124,7 @@ struct DLLEXPORT PostProcessorOutput
// in/out format descriptor
struct PostProcessorFormatDesc
{
PostProcessorFormatDesc(bool _multisampled = false) : supportMultisampling_(_multisampled),outputFormat_(PostProcessorFormat_DONTCARE)
explicit PostProcessorFormatDesc(bool _multisampled = false) : supportMultisampling_(_multisampled),outputFormat_(PostProcessorFormat_DONTCARE)
{}
......
......@@ -78,7 +78,7 @@ class DLLEXPORT WhatsThisGenerator: public QObject {
const QString plugin_name_;
public:
WhatsThisGenerator(const QString &_plugin_name);
explicit WhatsThisGenerator(const QString &_plugin_name);
QString generateLink(const QString &_ref = "", const QString &_site = "index.html") const;
......
rmdir libs_required\OpenMesh /s /q
rmdir libs_required /s /q
git submodule init
......
rmdir libs_required\OpenMesh /s /q
rmdir libs_required /s /q
git submodule init
......
rmdir libs_required\OpenMesh /s /q
rmdir libs_required /s /q
git submodule init
......
......@@ -22,7 +22,7 @@ echo "Please Wait ..."
cppcheck --enable=all \
-j4 \
--quiet \
-i libs_required \
-i OpenFlipper/libs_required/OpenMesh \
-i build-release \
-i build-debug \
-i .svn \
......@@ -59,9 +59,11 @@ echo "CPPCHECK Summary"
echo "=============================================================================="
echo -e "${NC}"
if [ $COUNT -gt 25 ]; then
MAX_ERROR=100
if [ $COUNT -gt $MAX_ERROR ]; then
echo -e ${WARNING}
echo "Total CPPCHECK error Count is $COUNT, which is too High! CPPCHECK Run failed";
echo "Total CPPCHECK error Count is $COUNT, which is too High (Max is $MAX_ERROR)! CPPCHECK Run failed";
echo -e "${NC}"
exit 1;
else
......
......@@ -24,7 +24,7 @@ if [ "$COMPILER" == "gcc" ]; then
elif [ "$COMPILER" == "clang" ]; then
OPTIONS="$OPTIONS -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DGTEST_PREFIX=~/sw/gtest-1.7.0-clang/ "
OPTIONS="$OPTIONS -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DGTEST_PREFIX=~/sw/gtest-1.8.0-clang/ "
# Build options with icecc /not working due to strange symbol errors
# OPTIONS="$OPTIONS -DCMAKE_CXX_COMPILER=/usr/lib/icecc/bin/g++ -DCMAKE_C_COMPILER=/usr/lib/icecc/bin/gcc -DGTEST_PREFIX=~/sw/gtest-1.7.0-clang/ "
......@@ -61,7 +61,7 @@ echo "Full cmake options: $OPTIONS "
########################################
# Build daemon cleanup code
########################################
rm -rf libs_required/OpenMesh
rm -rf libs_required
########################################
# Fetch submodules
......
########################################
# Build daemon cleanup code
########################################
rm -rf libs_required/OpenMesh
rm -rf libs_required
########################################
......
......@@ -65,7 +65,7 @@
#include <OpenFlipper/common/RecentFiles.hh>
#include <ObjectTypes/Light/Light.hh>
//#include <ObjectTypes/Light/Light.hh>
#include <OpenFlipper/ACGHelper/DrawModeConverter.hh>
......@@ -594,12 +594,14 @@ void Core::writeIniFile(QString _filename,
file = f->second;
}
/* @Todo: This is broken when Light source Object type is not available!
// Don't save default light source objects
LightObject* light = 0;
PluginFunctions::getObject( o_it->id(), light );
if(light != 0) {
if(light->defaultLight()) continue;
}
*/
if (QFile(file).exists()){
// Add a section for this object
......@@ -626,12 +628,15 @@ void Core::writeIniFile(QString _filename,
// Tell plugins to save their information for the given object
for ( PluginFunctions::ObjectIterator o_it(PluginFunctions::ALL_OBJECTS) ;
o_it != PluginFunctions::objectsEnd(); ++o_it) {
/* @Todo: This is broken when Light source Object type is not available!
// Don't save default light source objects
LightObject* light = 0;
PluginFunctions::getObject( o_it->id(), light );
if(light != 0) {
if(light->defaultLight()) continue;
}
*/
emit iniSave( ini , o_it->id() );
}
......
......@@ -175,7 +175,7 @@ class PreloadThread : public QThread
*
* @param aggregator aggregator managing the different threads
*/
PreloadThread(PreloadAggregator *aggregator) : aggregator_(aggregator) {
explicit PreloadThread(PreloadAggregator *aggregator) : aggregator_(aggregator) {
}
public:
......
......@@ -65,7 +65,7 @@ class SpinBoxEventFilter : public QObject {
Q_OBJECT
public:
SpinBoxEventFilter(QObject *parent = 0);
explicit SpinBoxEventFilter(QObject *parent = 0);
virtual ~SpinBoxEventFilter();
bool eventFilter(QObject *object, QEvent *event);
......
......@@ -61,8 +61,6 @@
#include "OpenFlipper/widgets/loadWidget/loadWidget.hh"
#include "OpenFlipper/widgets/addEmptyWidget/addEmptyWidget.hh"
#include <ObjectTypes/PolyMesh/PolyMesh.hh>
#include "OpenFunctionThread.hh"
void Core::resetScenegraph( bool _resetTrackBall ) {
......@@ -178,7 +176,7 @@ void Core::slotExecuteAfterStartup() {
// If the file was given with the polymesh option, open them as polymeshes.
if (commandLineFileNames_[i].second)
loadObject(DATA_POLY_MESH, QString::fromStdString(commandLineFileNames_[i].first));
loadObject(typeId("PolyMesh"), QString::fromStdString(commandLineFileNames_[i].first));
else {
loadObject(QString::fromStdString(commandLineFileNames_[i].first));
}
......
......@@ -50,7 +50,7 @@
#include "Core.hh"
#include <ObjectTypes/Light/Light.hh>
//#include <ObjectTypes/Light/Light.hh>
/// Save Settings (slot is called from CoreWidget's File-Menu)
void Core::saveSettings(){
......@@ -267,6 +267,7 @@ void Core::saveSettings(QString complete_name, bool is_saveObjectInfo, bool is_t
}
}
/* @Todo: This is broken when Light source Object type is not available!
// Don't save default light source objects
LightObject* light = 0;
PluginFunctions::getObject( o_it->id(), light );
......@@ -274,6 +275,8 @@ void Core::saveSettings(QString complete_name, bool is_saveObjectInfo, bool is_t
if(light->defaultLight()) continue;
}
*/
// Store original file name
originalFiles.insert(filename);
......
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
version="1.1"
id="svg2985"
height="48px"
width="48px">
<defs
id="defs2987">
<marker
style="overflow:visible;"
id="Arrow2Mend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
id="path3812" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Lend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(1.1) rotate(180) translate(1,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
id="path3806" />
</marker>
<marker
style="overflow:visible;"
id="Arrow1Lend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.8) rotate(180) translate(12.5,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path3788" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;stroke:#ffd5d5;stroke-width:0.62500000;fill:#ffd5d5;fill-rule:evenodd"
id="path5532" />
</marker>
<marker
style="overflow:visible"
id="Arrow2Mend2-3"
refX="0"
refY="0"
orient="auto">
<path
transform="scale(-0.6,-0.6)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#ffd5d5;fill-rule:evenodd;stroke:#ffd5d5;stroke-width:0.625;stroke-linejoin:round"
id="path5532-6" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2I"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;fill-rule:evenodd;stroke:#e5ffd5;stroke-width:0.62500000;fill:#e5ffd5"
id="path5592" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2m"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;fill-rule:evenodd;stroke:#000000;stroke-width:0.62500000;fill:#000000"
id="path5695" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2Ix"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;stroke:#000000;stroke-width:0.62500000;fill:#000000;fill-rule:evenodd"
id="path5742" />
</marker>
</defs>
<metadata
id="metadata2990">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<path
transform="matrix(0.94531827,-0.02406342,0.02406342,0.94531827,-11.481917,-8.31524)"
d="M 26.314475,10.472835 39.136835,34.081523 12.279931,33.381669 z"
id="path3003"
style="fill:#ffd5d5;stroke:#000000;stroke-width:1;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
transform="matrix(0.67118725,-8.6811777e-4,8.6811777e-4,0.67118725,32.29245,-10.176746)"
d="M 5.101271,16.07918 22.695438,28.935484 15.905264,49.641347 -5.8854624,49.581971 -12.562697,28.839411 z"
id="path3005"
style="fill:#ccffaa;stroke:#000000;stroke-width:1;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
id="path3779"
d="M 2.8789347,31.231467 40.65864,31.281977"
style="stroke-linejoin:miter;marker-end:url(#Arrow2Mend2m);stroke-opacity:1;stroke:#000000;stroke-linecap:butt;stroke-miterlimit:4;stroke-dasharray:none;stroke-width:2;fill:none" />
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
version="1.1"
id="svg2985"
height="48px"
width="48px">
<defs
id="defs2987">
<marker
style="overflow:visible;"
id="Arrow2Mend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
id="path3812" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Lend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(1.1) rotate(180) translate(1,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="fill-rule:evenodd;stroke-width:0.62500000;stroke-linejoin:round;"
id="path3806" />
</marker>
<marker
style="overflow:visible;"
id="Arrow1Lend"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.8) rotate(180) translate(12.5,0)"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1.0pt;"
d="M 0.0,0.0 L 5.0,-5.0 L -12.5,0.0 L 5.0,5.0 L 0.0,0.0 z "
id="path3788" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;stroke:#ffd5d5;stroke-width:0.62500000;fill:#ffd5d5;fill-rule:evenodd"
id="path5532" />
</marker>
<marker
style="overflow:visible"
id="Arrow2Mend2-3"
refX="0"
refY="0"
orient="auto">
<path
transform="scale(-0.6,-0.6)"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
style="fill:#ffd5d5;fill-rule:evenodd;stroke:#ffd5d5;stroke-width:0.625;stroke-linejoin:round"
id="path5532-6" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2I"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;fill-rule:evenodd;stroke:#e5ffd5;stroke-width:0.62500000;fill:#e5ffd5"
id="path5592" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2m"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;fill-rule:evenodd;stroke:#000000;stroke-width:0.62500000;fill:#000000"
id="path5695" />
</marker>
<marker
style="overflow:visible;"
id="Arrow2Mend2Ix"
refX="0.0"
refY="0.0"
orient="auto">
<path
transform="scale(0.6) rotate(180) translate(0,0)"
d="M 8.7185878,4.0337352 L -2.2072895,0.016013256 L 8.7185884,-4.0017078 C 6.9730900,-1.6296469 6.9831476,1.6157441 8.7185878,4.0337352 z "
style="stroke-linejoin:round;stroke:#000000;stroke-width:0.62500000;fill:#000000;fill-rule:evenodd"
id="path5742" />
</marker>
</defs>
<metadata
id="metadata2990">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1">
<path
transform="matrix(0.94531827,-0.02406342,0.02406342,0.94531827,-11.481917,-8.31524)"
d="M 26.314475,10.472835 39.136835,34.081523 12.279931,33.381669 z"
id="path3003"
style="fill:#ffd5d5;stroke:#000000;stroke-width:1;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
transform="matrix(0.67118725,-8.6811777e-4,8.6811777e-4,0.67118725,32.29245,-10.176746)"
d="M 5.101271,16.07918 22.695438,28.935484 15.905264,49.641347 -5.8854624,49.581971 -12.562697,28.839411 z"
id="path3005"
style="fill:#ccffaa;stroke:#000000;stroke-width:1;stroke-linejoin:bevel;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none" />
<path
id="path3779"
d="M 43.681003,31.231467 5.9012973,31.281977"
style="fill:none;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#Arrow2Mend2m)" />
</g>
</svg>
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="48px"
height="48px"
id="svg2985"
version="1.1"
inkscape:version="0.48.5 r10040"
sodipodi:docname="Mesh-Convert.svg"
inkscape:export-filename="/home/schultz/Arbeit/2016/OpenFlipper-Free/OpenFlipper/Icons/Mesh-Convert.png"
inkscape:export-xdpi="240"