diff options
-rw-r--r-- | .SRCINFO | 6 | ||||
-rw-r--r-- | PKGBUILD | 8 | ||||
-rw-r--r-- | muparser.patch | 14 | ||||
-rw-r--r-- | muparser_drop_unicode.patch | 555 |
4 files changed, 577 insertions, 6 deletions
@@ -1,6 +1,6 @@ pkgbase = meshlab-git pkgdesc = System for processing and editing of unstructured 3D models arising in 3D scanning (qt5 version) - pkgver = 2019.01.29.f6c6675.r0.gf6c6675b + pkgver = 2019.01.29.f6c6675.r2.g17d380b1 pkgrel = 1 url = http://www.meshlab.net install = meshlab-git.install @@ -35,6 +35,7 @@ pkgbase = meshlab-git source = 3ds.patch source = levmar.patch source = muparser.patch + source = muparser_drop_unicode.patch source = meshlabserver_GLU.patch source = mpir.patch source = rpath.patch @@ -48,7 +49,8 @@ pkgbase = meshlab-git md5sums = 0ac7701c703d3d88a9295f8fb39beeb9 md5sums = 473a1af178e0ea2e92441e5dc29a3842 md5sums = 32581c7128c8e544705c39e59647ab10 - md5sums = f1efa4f1400cc0952fdcd44adc11174b + md5sums = e60c9cccc4051f0c383a8634859fe49c + md5sums = a78fc74c7e24d6ce455188d4122ae9c7 md5sums = a4f7548978564637e502ecdbd2b537e0 md5sums = 726e5aeee66681b586150c08cafbe3f1 md5sums = eb89ce7e86bba52ca4ad4aa173d3f8a2 @@ -1,6 +1,6 @@ # Maintainer : bartus <arch-user-repoᘓbartus.33mail.com> pkgname=meshlab-git -pkgver=2019.01.29.f6c6675.r0.gf6c6675b +pkgver=2019.01.29.f6c6675.r2.g17d380b1 pkgrel=1 pkgdesc="System for processing and editing of unstructured 3D models arising in 3D scanning (qt5 version)" arch=('i686' 'x86_64') @@ -25,6 +25,7 @@ source=("git+https://github.com/cnr-isti-vclab/meshlab.git" "3ds.patch" "levmar.patch" "muparser.patch" + "muparser_drop_unicode.patch" "meshlabserver_GLU.patch" "mpir.patch" "rpath.patch" @@ -38,7 +39,8 @@ md5sums=('SKIP' '0ac7701c703d3d88a9295f8fb39beeb9' '473a1af178e0ea2e92441e5dc29a3842' '32581c7128c8e544705c39e59647ab10' - 'f1efa4f1400cc0952fdcd44adc11174b' + 'e60c9cccc4051f0c383a8634859fe49c' + 'a78fc74c7e24d6ce455188d4122ae9c7' 'a4f7548978564637e502ecdbd2b537e0' '726e5aeee66681b586150c08cafbe3f1' 'eb89ce7e86bba52ca4ad4aa173d3f8a2' @@ -78,6 +80,8 @@ prepare() { patch -Np1 -i ../shaders_dir.patch msg "qt(5.11) compatibility" patch -Np1 -i ../qt5.11.patch + msg "fix muparser unicode string" + patch -Np1 -i ../muparser_drop_unicode.patch cd ${srcdir}/vcglib msg "fix import bundler/nvm" patch -Np1 -i ../import_bundle_out.patch diff --git a/muparser.patch b/muparser.patch index 2cb56d1fc0f5..926655b1528e 100644 --- a/muparser.patch +++ b/muparser.patch @@ -1,8 +1,18 @@ diff --git a/src/meshlabplugins/filter_func/filter_func.pro b/src/meshlabplugins/filter_func/filter_func.pro -index ef6b654c..2052ed61 100644 +index ef6b654c..7d8d32c8 100644 --- a/src/meshlabplugins/filter_func/filter_func.pro +++ b/src/meshlabplugins/filter_func/filter_func.pro -@@ -22,7 +22,7 @@ win32-msvc2013:LIBS += ../../external/lib/win32-msvc2013/muparser.lib +@@ -7,9 +7,6 @@ SOURCES += filter_func.cpp + TARGET = filter_func
+
+
+-DEFINES += _UNICODE
+-INCLUDEPATH += ../../external/muparser_v225/include
+-
+ # Note: we need static libs so when building muparser lib use
+ # ./configure --enable-shared=no
+
+@@ -22,7 +19,7 @@ win32-msvc2013:LIBS += ../../external/lib/win32-msvc2013/muparser.lib win32-msvc2015:LIBS += ../../external/lib/win32-msvc2015/muparser.lib
macx:LIBS += $$MACLIBDIR/libmuparser.a
diff --git a/muparser_drop_unicode.patch b/muparser_drop_unicode.patch new file mode 100644 index 000000000000..2a1790d10e02 --- /dev/null +++ b/muparser_drop_unicode.patch @@ -0,0 +1,555 @@ +diff --git a/src/meshlabplugins/filter_func/filter_func.cpp b/src/meshlabplugins/filter_func/filter_func.cpp +index 193cd190..e8e1f5c1 100644 +--- a/src/meshlabplugins/filter_func/filter_func.cpp ++++ b/src/meshlabplugins/filter_func/filter_func.cpp +@@ -378,14 +378,13 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + case FF_VERT_SELECTION : + { + std::string expr = par.getString("condSelect").toStdString(); +- std::wstring wexpr = conversion::fromStringToWString(expr); + + // muparser initialization and explicitely define parser variables + Parser p; + setPerVertexVariables(p,m.cm); + + // set expression inserted by user as string (required by muparser) +- p.SetExpr(wexpr); ++ p.SetExpr(expr); + + int numvert = 0; + time_t start = clock(); +@@ -403,7 +402,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + selected = p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + +@@ -430,7 +429,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerFaceVariables(p,m.cm); + + // set expression inserted by user as string (required by muparser) +- p.SetExpr(conversion::fromStringToWString(select.toStdString())); ++ p.SetExpr(select.toStdString()); + + int numface = 0; + time_t start = clock(); +@@ -448,7 +447,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + selected = p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + +@@ -501,10 +500,10 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerVertexVariables(p3,m.cm); + setPerVertexVariables(p4,m.cm); + +- p1.SetExpr(conversion::fromStringToWString(func_x)); +- p2.SetExpr(conversion::fromStringToWString(func_y)); +- p3.SetExpr(conversion::fromStringToWString(func_z)); +- p4.SetExpr(conversion::fromStringToWString(func_a)); ++ p1.SetExpr(func_x); ++ p2.SetExpr(func_y); ++ p3.SetExpr(func_z); ++ p4.SetExpr(func_a); + + double newx=0,newy=0,newz=0,newa=255; + errorMessage = ""; +@@ -580,7 +579,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerVertexVariables(p,m.cm); + + // set expression to calc with parser +- p.SetExpr(conversion::fromStringToWString(func_q)); ++ p.SetExpr(func_q); + + // every parser variables is related to vertex coord and attributes. + time_t start = clock(); +@@ -596,7 +595,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + (*vi).Q() = p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -642,8 +641,8 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerVertexVariables(pv,m.cm); + + // set expression to calc with parser +- pu.SetExpr(conversion::fromStringToWString(func_u)); +- pv.SetExpr(conversion::fromStringToWString(func_v)); ++ pu.SetExpr(func_u); ++ pv.SetExpr(func_v); + + // every parser variables is related to vertex coord and attributes. + time_t start = clock(); +@@ -660,7 +659,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + (*vi).T().U() = pu.Eval(); + (*vi).T().V() = pv.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -695,9 +694,9 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerFaceVariables(pu2,m.cm); setPerFaceVariables(pv2,m.cm); + + // set expression to calc with parser +- pu0.SetExpr(conversion::fromStringToWString(func_u0)); pv0.SetExpr(conversion::fromStringToWString(func_v0)); +- pu1.SetExpr(conversion::fromStringToWString(func_u1)); pv1.SetExpr(conversion::fromStringToWString(func_v1)); +- pu2.SetExpr(conversion::fromStringToWString(func_u2)); pv2.SetExpr(conversion::fromStringToWString(func_v2)); ++ pu0.SetExpr(func_u0); pv0.SetExpr(func_v0); ++ pu1.SetExpr(func_u1); pv1.SetExpr(func_v1); ++ pu2.SetExpr(func_u2); pv2.SetExpr(func_v2); + + // every parser variables is related to vertex coord and attributes. + time_t start = clock(); +@@ -715,7 +714,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + (*fi).WT(1).U() = pu1.Eval(); (*fi).WT(1).V() = pv1.Eval(); + (*fi).WT(2).U() = pu2.Eval(); (*fi).WT(2).V() = pv2.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -750,10 +749,10 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerFaceVariables(p3,m.cm); + setPerFaceVariables(p4,m.cm); + +- p1.SetExpr(conversion::fromStringToWString(func_r)); +- p2.SetExpr(conversion::fromStringToWString(func_g)); +- p3.SetExpr(conversion::fromStringToWString(func_b)); +- p4.SetExpr(conversion::fromStringToWString(func_a)); ++ p1.SetExpr(func_r); ++ p2.SetExpr(func_g); ++ p3.SetExpr(func_b); ++ p4.SetExpr(func_a); + + // RGB is related to every face + CMeshO::FaceIterator fi; +@@ -809,7 +808,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + setPerFaceVariables(pf,m.cm); + + // set expression to calc with parser +- pf.SetExpr(conversion::fromStringToWString(func_q)); ++ pf.SetExpr(func_q); + + time_t start = clock(); + errorMessage = ""; +@@ -872,7 +871,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + qDebug("Now mesh has %lu vertex float attribute",AllVertexAttribName.size()); + Parser p; + setPerVertexVariables(p,m.cm); +- p.SetExpr(conversion::fromStringToWString(expr)); ++ p.SetExpr(expr); + + time_t start = clock(); + +@@ -886,7 +885,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + h[vi] = p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -926,7 +925,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + h = tri::Allocator<CMeshO>::AddPerFaceAttribute<float> (m.cm,name); + Parser p; + setPerFaceVariables(p,m.cm); +- p.SetExpr(conversion::fromStringToWString(expr)); ++ p.SetExpr(expr); + + time_t start = clock(); + +@@ -940,7 +939,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + h[fi] = p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -1018,11 +1017,11 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + + Parser p; + double x,y,z; +- p.DefineVar(conversion::fromStringToWString("x"), &x); +- p.DefineVar(conversion::fromStringToWString("y"), &y); +- p.DefineVar(conversion::fromStringToWString("z"), &z); ++ p.DefineVar("x", &x); ++ p.DefineVar("y", &y); ++ p.DefineVar("z", &z); + std::string expr = par.getString("expr").toStdString(); +- p.SetExpr(conversion::fromStringToWString(expr)); ++ p.SetExpr(expr); + Log("Filling a Volume of %i %i %i",siz[0],siz[1],siz[2]); + volume.Init(siz,RangeBBox); + for(double i=0;i<siz[0];i++) +@@ -1035,7 +1034,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + try { + volume.Val(i,j,k)=p.Eval(); + } catch(Parser::exception_type &e) { +- errorMessage = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage = e.GetMsg().c_str(); + return false; + } + } +@@ -1100,7 +1099,7 @@ bool FilterFunctionPlugin::applyFilter(QAction *filter, MeshDocument &md, RichPa + void FilterFunctionPlugin::showParserError(const QString &s, Parser::exception_type &e) + { + errorMessage += s; +- errorMessage += conversion::fromWStringToString(e.GetMsg()).c_str(); ++ errorMessage += e.GetMsg().c_str(); + errorMessage += "\n"; + } + +@@ -1260,23 +1259,23 @@ void FilterFunctionPlugin::setAttributes(CMeshO::FaceIterator &fi, CMeshO &m) + // and q for quality + void FilterFunctionPlugin::setPerVertexVariables(Parser &p, CMeshO &m) + { +- p.DefineVar(conversion::fromStringToWString("x"), &x); +- p.DefineVar(conversion::fromStringToWString("y"), &y); +- p.DefineVar(conversion::fromStringToWString("z"), &z); +- p.DefineVar(conversion::fromStringToWString("nx"), &nx); +- p.DefineVar(conversion::fromStringToWString("ny"), &ny); +- p.DefineVar(conversion::fromStringToWString("nz"), &nz); +- p.DefineVar(conversion::fromStringToWString("r"), &r); +- p.DefineVar(conversion::fromStringToWString("g"), &g); +- p.DefineVar(conversion::fromStringToWString("b"), &b); +- p.DefineVar(conversion::fromStringToWString("a"), &a); +- p.DefineVar(conversion::fromStringToWString("q"), &q); +- p.DefineVar(conversion::fromStringToWString("vi"),&v); +- p.DefineVar(conversion::fromStringToWString("rad"),&rad); +- p.DefineVar(conversion::fromStringToWString("vtu"),&vtu); +- p.DefineVar(conversion::fromStringToWString("vtv"),&vtv); +- p.DefineVar(conversion::fromStringToWString("ti"), &ti); +- p.DefineVar(conversion::fromStringToWString("vsel"), &vsel); ++ p.DefineVar("x", &x); ++ p.DefineVar("y", &y); ++ p.DefineVar("z", &z); ++ p.DefineVar("nx", &nx); ++ p.DefineVar("ny", &ny); ++ p.DefineVar("nz", &nz); ++ p.DefineVar("r", &r); ++ p.DefineVar("g", &g); ++ p.DefineVar("b", &b); ++ p.DefineVar("a", &a); ++ p.DefineVar("q", &q); ++ p.DefineVar("vi",&v); ++ p.DefineVar("rad",&rad); ++ p.DefineVar("vtu",&vtu); ++ p.DefineVar("vtv",&vtv); ++ p.DefineVar("ti", &ti); ++ p.DefineVar("vsel", &vsel); + + // define var for user-defined attributes (if any exists) + // if vector is empty, code won't be executed +@@ -1294,7 +1293,7 @@ void FilterFunctionPlugin::setPerVertexVariables(Parser &p, CMeshO &m) + v_handlers.push_back(hh); + v_attrNames.push_back(AllVertexAttribName[i]); + v_attrValue.push_back(0); +- p.DefineVar(conversion::fromStringToWString(v_attrNames.back()), &v_attrValue.back()); ++ p.DefineVar(v_attrNames.back(), &v_attrValue.back()); + qDebug("Adding custom per vertex float variable %s",v_attrNames.back().c_str()); + } + AllVertexAttribName.clear(); +@@ -1307,15 +1306,15 @@ void FilterFunctionPlugin::setPerVertexVariables(Parser &p, CMeshO &m) + + v3_attrValue.push_back(0); + v3_attrNames.push_back(AllVertexAttribName[i]+"_x"); +- p.DefineVar(conversion::fromStringToWString(v3_attrNames.back()), &v3_attrValue.back()); ++ p.DefineVar(v3_attrNames.back(), &v3_attrValue.back()); + + v3_attrValue.push_back(0); + v3_attrNames.push_back(AllVertexAttribName[i]+"_y"); +- p.DefineVar(conversion::fromStringToWString(v3_attrNames.back()), &v3_attrValue.back()); ++ p.DefineVar(v3_attrNames.back(), &v3_attrValue.back()); + + v3_attrValue.push_back(0); + v3_attrNames.push_back(AllVertexAttribName[i]+"_z"); +- p.DefineVar(conversion::fromStringToWString(v3_attrNames.back()), &v3_attrValue.back()); ++ p.DefineVar(v3_attrNames.back(), &v3_attrValue.back()); + qDebug("Adding custom per vertex Point3f variable %s",v3_attrNames.back().c_str()); + } + } +@@ -1325,85 +1324,85 @@ void FilterFunctionPlugin::setPerVertexVariables(Parser &p, CMeshO &m) + void FilterFunctionPlugin::setPerFaceVariables(Parser &p, CMeshO &m) + { + // coord of the three vertices within a face +- p.DefineVar(conversion::fromStringToWString("x0"), &x0); +- p.DefineVar(conversion::fromStringToWString("y0"), &y0); +- p.DefineVar(conversion::fromStringToWString("z0"), &z0); +- p.DefineVar(conversion::fromStringToWString("x1"), &x1); +- p.DefineVar(conversion::fromStringToWString("y1"), &y1); +- p.DefineVar(conversion::fromStringToWString("z1"), &z1); +- p.DefineVar(conversion::fromStringToWString("x2"), &x2); +- p.DefineVar(conversion::fromStringToWString("y2"), &y2); +- p.DefineVar(conversion::fromStringToWString("z2"), &z2); ++ p.DefineVar("x0", &x0); ++ p.DefineVar("y0", &y0); ++ p.DefineVar("z0", &z0); ++ p.DefineVar("x1", &x1); ++ p.DefineVar("y1", &y1); ++ p.DefineVar("z1", &z1); ++ p.DefineVar("x2", &x2); ++ p.DefineVar("y2", &y2); ++ p.DefineVar("z2", &z2); + + // attributes of the vertices + // normals: +- p.DefineVar(conversion::fromStringToWString("nx0"), &nx0); +- p.DefineVar(conversion::fromStringToWString("ny0"), &ny0); +- p.DefineVar(conversion::fromStringToWString("nz0"), &nz0); ++ p.DefineVar("nx0", &nx0); ++ p.DefineVar("ny0", &ny0); ++ p.DefineVar("nz0", &nz0); + +- p.DefineVar(conversion::fromStringToWString("nx1"), &nx1); +- p.DefineVar(conversion::fromStringToWString("ny1"), &ny1); +- p.DefineVar(conversion::fromStringToWString("nz1"), &nz1); ++ p.DefineVar("nx1", &nx1); ++ p.DefineVar("ny1", &ny1); ++ p.DefineVar("nz1", &nz1); + +- p.DefineVar(conversion::fromStringToWString("nx2"), &nx2); +- p.DefineVar(conversion::fromStringToWString("ny2"), &ny2); +- p.DefineVar(conversion::fromStringToWString("nz2"), &nz2); ++ p.DefineVar("nx2", &nx2); ++ p.DefineVar("ny2", &ny2); ++ p.DefineVar("nz2", &nz2); + + // colors: +- p.DefineVar(conversion::fromStringToWString("r0"), &r0); +- p.DefineVar(conversion::fromStringToWString("g0"), &g0); +- p.DefineVar(conversion::fromStringToWString("b0"), &b0); +- p.DefineVar(conversion::fromStringToWString("a0"), &a0); ++ p.DefineVar("r0", &r0); ++ p.DefineVar("g0", &g0); ++ p.DefineVar("b0", &b0); ++ p.DefineVar("a0", &a0); + +- p.DefineVar(conversion::fromStringToWString("r1"), &r1); +- p.DefineVar(conversion::fromStringToWString("g1"), &g1); +- p.DefineVar(conversion::fromStringToWString("b1"), &b1); +- p.DefineVar(conversion::fromStringToWString("a1"), &a1); ++ p.DefineVar("r1", &r1); ++ p.DefineVar("g1", &g1); ++ p.DefineVar("b1", &b1); ++ p.DefineVar("a1", &a1); + +- p.DefineVar(conversion::fromStringToWString("r2"), &r2); +- p.DefineVar(conversion::fromStringToWString("g2"), &g2); +- p.DefineVar(conversion::fromStringToWString("b2"), &b2); +- p.DefineVar(conversion::fromStringToWString("a2"), &a2); ++ p.DefineVar("r2", &r2); ++ p.DefineVar("g2", &g2); ++ p.DefineVar("b2", &b2); ++ p.DefineVar("a2", &a2); + + // quality +- p.DefineVar(conversion::fromStringToWString("q0"), &q0); +- p.DefineVar(conversion::fromStringToWString("q1"), &q1); +- p.DefineVar(conversion::fromStringToWString("q2"), &q2); ++ p.DefineVar("q0", &q0); ++ p.DefineVar("q1", &q1); ++ p.DefineVar("q2", &q2); + + // face color +- p.DefineVar(conversion::fromStringToWString("fr"), &fr); +- p.DefineVar(conversion::fromStringToWString("fg"), &fg); +- p.DefineVar(conversion::fromStringToWString("fb"), &fb); +- p.DefineVar(conversion::fromStringToWString("fa"), &fa); ++ p.DefineVar("fr", &fr); ++ p.DefineVar("fg", &fg); ++ p.DefineVar("fb", &fb); ++ p.DefineVar("fa", &fa); + + // face normal +- p.DefineVar(conversion::fromStringToWString("fnx"), &fnx); +- p.DefineVar(conversion::fromStringToWString("fny"), &fny); +- p.DefineVar(conversion::fromStringToWString("fnz"), &fnz); ++ p.DefineVar("fnx", &fnx); ++ p.DefineVar("fny", &fny); ++ p.DefineVar("fnz", &fnz); + + // face quality +- p.DefineVar(conversion::fromStringToWString("fq"), &fq); ++ p.DefineVar("fq", &fq); + + // index +- p.DefineVar(conversion::fromStringToWString("fi"),&f); +- p.DefineVar(conversion::fromStringToWString("vi0"),&v0i); +- p.DefineVar(conversion::fromStringToWString("vi1"),&v1i); +- p.DefineVar(conversion::fromStringToWString("vi2"),&v2i); ++ p.DefineVar("fi",&f); ++ p.DefineVar("vi0",&v0i); ++ p.DefineVar("vi1",&v1i); ++ p.DefineVar("vi2",&v2i); + + // texture +- p.DefineVar(conversion::fromStringToWString("wtu0"),&wtu0); +- p.DefineVar(conversion::fromStringToWString("wtv0"),&wtv0); +- p.DefineVar(conversion::fromStringToWString("wtu1"),&wtu1); +- p.DefineVar(conversion::fromStringToWString("wtv1"),&wtv1); +- p.DefineVar(conversion::fromStringToWString("wtu2"),&wtu2); +- p.DefineVar(conversion::fromStringToWString("wtv2"),&wtv2); +- p.DefineVar(conversion::fromStringToWString("ti"), &ti); ++ p.DefineVar("wtu0",&wtu0); ++ p.DefineVar("wtv0",&wtv0); ++ p.DefineVar("wtu1",&wtu1); ++ p.DefineVar("wtv1",&wtv1); ++ p.DefineVar("wtu2",&wtu2); ++ p.DefineVar("wtv2",&wtv2); ++ p.DefineVar("ti", &ti); + + //selection +- p.DefineVar(conversion::fromStringToWString("vsel0"), &vsel0); +- p.DefineVar(conversion::fromStringToWString("vsel1"), &vsel1); +- p.DefineVar(conversion::fromStringToWString("vsel2"), &vsel2); +- p.DefineVar(conversion::fromStringToWString("fsel"), &fsel); ++ p.DefineVar("vsel0", &vsel0); ++ p.DefineVar("vsel1", &vsel1); ++ p.DefineVar("vsel2", &vsel2); ++ p.DefineVar("fsel", &fsel); + + // define var for user-defined attributes (if any exists) + // if vector is empty, code won't be executed +@@ -1418,7 +1417,7 @@ void FilterFunctionPlugin::setPerFaceVariables(Parser &p, CMeshO &m) + f_handlers.push_back(hh); + f_attrNames.push_back(AllFaceAttribName[i]); + f_attrValue.push_back(0); +- p.DefineVar(conversion::fromStringToWString(f_attrNames.back()), &f_attrValue.back()); ++ p.DefineVar(f_attrNames.back(), &f_attrValue.back()); + } + + } +diff --git a/src/meshlabplugins/filter_func/filter_refine.h b/src/meshlabplugins/filter_func/filter_refine.h +index 81a28cac..534bad38 100644 +--- a/src/meshlabplugins/filter_func/filter_refine.h ++++ b/src/meshlabplugins/filter_func/filter_refine.h +@@ -37,9 +37,9 @@ public : + MidPointCustom(MESH_TYPE &_m,std::string expr1, std::string expr2, std::string expr3, bool &error, std::string &msg):m(_m) + { + // expr1, expr2, expr3 are parameters for x,y and z coord respectively +- this->p1.SetExpr(conversion::fromStringToWString(expr1)); +- this->p2.SetExpr(conversion::fromStringToWString(expr2)); +- this->p3.SetExpr(conversion::fromStringToWString(expr3)); ++ this->p1.SetExpr(expr1); ++ this->p2.SetExpr(expr2); ++ this->p3.SetExpr(expr3); + + this->setVars(p1); + this->setVars(p2); +@@ -53,7 +53,7 @@ public : + p2.Eval(); + p3.Eval(); + } catch(Parser::exception_type &e) { +- msg = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ msg = e.GetMsg().c_str(); + error = true; + } + } +@@ -150,12 +150,12 @@ protected: + // parser variables + void setVars(Parser &p) + { +- p.DefineVar(conversion::fromStringToWString("x0"), &x0); +- p.DefineVar(conversion::fromStringToWString("y0"), &y0); +- p.DefineVar(conversion::fromStringToWString("z0"), &z0); +- p.DefineVar(conversion::fromStringToWString("x1"), &x1); +- p.DefineVar(conversion::fromStringToWString("y1"), &y1); +- p.DefineVar(conversion::fromStringToWString("z1"), &z1); ++ p.DefineVar("x0", &x0); ++ p.DefineVar("y0", &y0); ++ p.DefineVar("z0", &z0); ++ p.DefineVar("x1", &x1); ++ p.DefineVar("y1", &y1); ++ p.DefineVar("z1", &z1); + } + }; + +@@ -168,7 +168,7 @@ public: + CustomEdge(std::string expr, bool &error, std::string &msg) + { + // set expression and variables needed by parser +- this->p.SetExpr(conversion::fromStringToWString(expr)); ++ this->p.SetExpr(expr); + this->setVars(p); + this->varDefined = false; + +@@ -176,7 +176,7 @@ public: + try { + p.Eval(); + } catch(Parser::exception_type &e) { +- msg = conversion::fromWStringToString(e.GetMsg()).c_str(); ++ msg = e.GetMsg().c_str(); + error = true; + } + } +@@ -240,30 +240,30 @@ protected: + // parser variables + void setVars(Parser &p) + { +- p.DefineVar(conversion::fromStringToWString("x0"), &x0); +- p.DefineVar(conversion::fromStringToWString("y0"), &y0); +- p.DefineVar(conversion::fromStringToWString("z0"), &z0); +- p.DefineVar(conversion::fromStringToWString("x1"), &x1); +- p.DefineVar(conversion::fromStringToWString("y1"), &y1); +- p.DefineVar(conversion::fromStringToWString("z1"), &z1); +- +- p.DefineVar(conversion::fromStringToWString("nx0"), &nx0); +- p.DefineVar(conversion::fromStringToWString("ny0"), &ny0); +- p.DefineVar(conversion::fromStringToWString("nz0"), &nz0); +- +- p.DefineVar(conversion::fromStringToWString("nx1"), &nx1); +- p.DefineVar(conversion::fromStringToWString("ny1"), &ny1); +- p.DefineVar(conversion::fromStringToWString("nz1"), &nz1); +- +- p.DefineVar(conversion::fromStringToWString("r0"), &r0); +- p.DefineVar(conversion::fromStringToWString("g0"), &g0); +- p.DefineVar(conversion::fromStringToWString("b0"), &b0); +- +- p.DefineVar(conversion::fromStringToWString("r1"), &r1); +- p.DefineVar(conversion::fromStringToWString("g1"), &g1); +- p.DefineVar(conversion::fromStringToWString("b1"), &b1); +- +- p.DefineVar(conversion::fromStringToWString("q0"), &q0); +- p.DefineVar(conversion::fromStringToWString("q1"), &q1); ++ p.DefineVar("x0", &x0); ++ p.DefineVar("y0", &y0); ++ p.DefineVar("z0", &z0); ++ p.DefineVar("x1", &x1); ++ p.DefineVar("y1", &y1); ++ p.DefineVar("z1", &z1); ++ ++ p.DefineVar("nx0", &nx0); ++ p.DefineVar("ny0", &ny0); ++ p.DefineVar("nz0", &nz0); ++ ++ p.DefineVar("nx1", &nx1); ++ p.DefineVar("ny1", &ny1); ++ p.DefineVar("nz1", &nz1); ++ ++ p.DefineVar("r0", &r0); ++ p.DefineVar("g0", &g0); ++ p.DefineVar("b0", &b0); ++ ++ p.DefineVar("r1", &r1); ++ p.DefineVar("g1", &g1); ++ p.DefineVar("b1", &b1); ++ ++ p.DefineVar("q0", &q0); ++ p.DefineVar("q1", &q1); + } + }; |