Vector11T template deduction error on msvc
There is a strange compile error with the following triangle bsp code:
TriMeshObject* obj = PluginFunctions::triMeshObject(o_it->id()); TriMeshObject::OMTriangleBSP* bsp = obj->requestTriangleBsp(); TriMeshObject::OMTriangleBSP::RayCollision rc = bsp->nearestRaycollision(ACG::Vec3d(0.0, 0.0, 0.0), ACG::Vec3d(1.0, 0.0, 0.0));
Error (vs2015 sp3):
20>d:\openflipper-free-masterthesis\acg\geometry\bsp\BSPImplT.cc(173): error C2783: 'OpenMesh::VectorT<double,3>::VectorT(T...)': could not deduce template argument for '<unnamed-symbol>' 20> d:\openflipper-free-masterthesis\libs_required\openmesh\src\openmesh\core\geometry\Vector11T.hh(119): note: see declaration of 'OpenMesh::VectorT<double,3>::VectorT' 20> d:\openflipper-free-masterthesis\acg\geometry\bsp\BSPImplT.cc(170): note: while compiling class template member function 'std::vector<std::pair<OpenMesh::FaceHandle,double>,std::allocator<_Ty>> BSPImplT<TriangleBSPCoreT<BSPTraits>>::nearestRaycollision(const OpenMesh::VectorT<double,3> &,const OpenMesh::VectorT<double,3> &) const' 20> with 20> [ 20> _Ty=std::pair<OpenMesh::FaceHandle,double>, 20> BSPTraits=OVMOMCommonTriangleBSPTraits<TriMesh,OMSpecificTriangleBSPTraits<TriMesh>> 20> ] 20> D:\OpenFlipper-Free-MasterThesis\Plugin-RasterSurfaceRecon\SceneAnalyzer.cc(171): note: see reference to function template instantiation 'std::vector<std::pair<OpenMesh::FaceHandle,double>,std::allocator<_Ty>> BSPImplT<TriangleBSPCoreT<BSPTraits>>::nearestRaycollision(const OpenMesh::VectorT<double,3> &,const OpenMesh::VectorT<double,3> &) const' being compiled 20> with 20> [ 20> _Ty=std::pair<OpenMesh::FaceHandle,double>, 20> BSPTraits=OVMOMCommonTriangleBSPTraits<TriMesh,OMSpecificTriangleBSPTraits<TriMesh>> 20> ] 20> d:\openflipper-free-masterthesis\acg\geometry\bsp\TriangleBSPT.hh(74): note: see reference to class template instantiation 'BSPImplT<TriangleBSPCoreT<BSPTraits>>' being compiled 20> with 20> [ 20> BSPTraits=OVMOMCommonTriangleBSPTraits<TriMesh,OMSpecificTriangleBSPTraits<TriMesh>> 20> ] 20> d:\openflipper-free-masterthesis\acg\geometry\bsp\TriangleBSPT.hh(223): note: see reference to class template instantiation 'TriangleBSPT<OVMOMCommonTriangleBSPTraits<Mesh,OMSpecificTriangleBSPTraits<Mesh>>>' being compiled 20> with 20> [ 20> Mesh=TriMesh 20> ] 20> D:\OpenFlipper-Free-MasterThesis\Plugin-RasterSurfaceRecon\SceneAnalyzer.cc(171): note: see reference to class template instantiation 'OpenMeshTriangleBSPT<MeshT>' being compiled 20> with 20> [ 20> MeshT=TriMesh 20> ]