Giter VIP home page Giter VIP logo

clothoids's Introduction

Clothoids

A clothoid is a curve $(x(s),y(x))$ is described by the parametric equations:

$$ x(s)=\int_0^s \cos\left(\frac{1}{2}\kappa'\tau^2+\kappa_0\tau+\vartheta_0\right),\mathrm{d}\tau $$

$$ y(s)=\int_0^s \sin\left(\frac{1}{2}\kappa'\tau^2+\kappa_0\tau+\vartheta_0\right),\mathrm{d}\tau $$

when $\kappa'=0$ the clothoids reduce to a circle arc and when $\kappa'=\kappa_0=0$ the clothoids reduce to a straight segment.

This library implements algorithms for $G^1$ and $G^2$ fitting with clothoids, spline of clothoids, circle arc and biarc.

The implementation of the algorithms on clothoids, splines of clothoids, arc, bi-arc splines of biarcs are described in the works:

The library contains the following objects:

  • Segment
  • CircleArc
  • Clothoids
  • BiArc
  • spline of
    • Segment
    • CircleArc
    • Clothoids (with $G^1$ and $G^2$ continuity)
    • BiArc
  • Triangles
  • BBox (bounding box)

and fast algorithms involving the objects, in particular:

  • evaluation
  • intersection (between objects)
  • point-object distance

Library is written in C++11 with a MATLAB mex interface. Thus can be used in fast compiled application or in MATLAB scripts.

Compilation

To compile the C++11 library the easy way require cmake and rake

ruby setup.rb

then

rake

to build the MATLAB toolbox

cd toolbox
ruby populate_toolbox.rb
ruby build.rb

for more details see: online documentation at http://ebertolazzi.github.io/Clothoids/

clothoids's People

Contributors

ben-z avatar ebertolazzi avatar marcofrego avatar matteoragni avatar mgaudreaultoutrider avatar paolo-bevilacqua avatar valeriomagnago avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

clothoids's Issues

idea for 3d clothoid creation.

Hi,

I have a idea worked out how to create a 3d non-planar clothoid using your clothoid library.
I thought maybe it's worth to post it here.

To build a 3d clothoid, it projects 2 clothoids. One on the xy plane, One on the xz plane.
Then it interpolates the first clothoid in t=0-1. Then for the second clothoid the x is found and
the z value is the interpolation solution.

It's not a time optimal solution, but that's no problem for me as the path optimalisation is done offline.
Once we have the 3d polyline, we are master kenobi.

https://github.com/krcwrhvgyxzqelljes/hal-core/blob/de4aab0b6b7ef48bc815cb4f5208e2fbc1c7bcf7/vendor/occ_draw/draw_clothoids.h#L36

The source, you only need the last pvec, as the first 2 are the projections of xy & xz clothoids.
https://github.com/krcwrhvgyxzqelljes/hal-core/blob/de4aab0b6b7ef48bc815cb4f5208e2fbc1c7bcf7/vendor/occ_draw/draw_clothoids.cpp#L436

https://youtu.be/YozKQWVP-Hg

I hope you like this solution? Greetings.

Unable to compile using make

Hi,

I am trying to compile the library using make but I am seeing the following errors:

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::int32_to_buffer(int32_t, uint8_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:82:43: error: ‘memcpy’ was not declared in this scope
     memcpy( buffer, &tmp, sizeof(int32_t) );
                                           ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::int64_to_buffer(int64_t, uint8_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:98:43: error: ‘memcpy’ was not declared in this scope
     memcpy( buffer, &tmp, sizeof(int64_t) );
                                           ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::uint64_to_buffer(uint64_t, uint8_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:106:45: error: ‘memcpy’ was not declared in this scope
     memcpy( buffer, &tmp, sizeof(uint64_t)  );
                                             ^

In file included from /usr/include/arpa/inet.h:22:0,
                 from submodules/GenericContainer/src/GenericContainerSerialize.cc:30:
submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint64_t GC_namespace::ntohll_local(uint64_t)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:139:42: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     hi = (uint64_t)ntohl( *((uint32_t*)&n) );
                                          ^

submodules/GenericContainer/src/GenericContainerSerialize.cc:141:42: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lo = (uint64_t)ntohl( *((uint32_t*)&n) );
                                          ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::buffer_to_int32(const uint8_t*, int32_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:192:43: error: ‘memcpy’ was not declared in this scope
     memcpy( &tmp, buffer, sizeof(int32_t) );
                                           ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::buffer_to_uint64(const uint8_t*, uint64_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:201:44: error: ‘memcpy’ was not declared in this scope
     memcpy( &tmp, buffer, sizeof(uint64_t) );
                                            ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In function ‘uint32_t GC_namespace::buffer_to_int64(const uint8_t*, int64_t*)’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:210:43: error: ‘memcpy’ was not declared in this scope
     memcpy( &tmp, buffer, sizeof(int64_t) );
                                           ^

submodules/GenericContainer/src/GenericContainerSerialize.cc: In member function ‘int32_t GC_namespace::GenericContainer::serialize(int32_t, uint8_t*) const’:
submodules/GenericContainer/src/GenericContainerSerialize.cc:320:46: error: ‘memcpy’ was not declared in this scope
       memcpy( buffer, &m_data.s->front(), sz );
                                              ^

Makefile:95: recipe for target 'submodules/GenericContainer/src/GenericContainerSerialize.o' failed
make: *** [submodules/GenericContainer/src/GenericContainerSerialize.o] Error 1

I did the following:

git clone https://github.com/ebertolazzi/Clothoids.git
git submodule update --init --recursive

than simply make.

Any reasons why this wouldn't work?

edit: by changing the branch of the GenericContainer submodule from master to develop it now builds. Is the recommendation for all branches to be on develop (i.e. main repo + submodules)?

Build Error: PolynomialRoots.hh No such file or directory

The following error arose when I tried to build using cmake & make:

/xxxxxxx/Clothoids/src/G2lib.cc:21:30: fatal error: PolynomialRoots.hh: No such file or directory

@ebertolazzi I searched in your repositories and found that the file PolynomialRoots.hh comes from another repo named quarticRootsFlocke, it works by cloning the repo and copying quarticRootsFlocke/src/PolynomialRoots.hh to Clothoids/src/PolynomialRoots.hh. I think you can add an instruction for this.

combine multiple Clothoids

HI,

Thank you for the magnificent work.

I am currently working on a project to segment a road[represented by xy points ] to Line/arc/Clothoid combination.

so basically my algorithm is determining the arc, lines, clothoid regions by calculating heading and curvature at each point[arc regions will keep constant curvature >0, line always ==0, clothoid curvature changes linearly wrt distance].

can I use Clothoidslist class to push back each segment then build_G2 spline that stitch these segments together then retrieve the new coordinates[x,y] for intersection points?

I can't find it in the documentation, Matlab documentation is not helping regarding this issue . is it possible? again I'd like to connect some geometries together in a continious G2 spline and retrieve the new start and end points paramters for each geometry after the G2_build.

Thank you in advance.

ClothoidList::findAtS yields debug assertion error on MSVC 2019

When debugging my code using your library, I get a debug assertion error from the MSVC runtime library. The debugger points to line 485 of ClothoidList.cc and indeed it seems you access an element of a vector outside its range (vector s0 has ns+1 elements and you access index ns+1).
Without debugging symbols, i.e. in normal Release mode, I get no errors and the correct output is calculated though. Still, it's quite annoying I cannot debug my own source code because it produces this assertion error.

Minimal example producing the error (it only occurs for clothoid lists with more than 1 segment):

#include "ClothoidList.hh"

int main(){
    G2lib::ClothoidList cl = G2lib::ClothoidList();
    cl.push_back(0,0,0,-0.5,1,50);
    cl.push_back(1,-0.4,50);
    cl.push_back(0.6,-0.6,50);
    double th,k,x,y;
    cl.evaluate(105,th,k,x,y);
    return 0;
}

All library files are not produced as expected.

When I run make, it builds, but the process only provides this in the lib folder.

.
├── include
│   ├── Clothoids.hh
│   ├── PolynomialRoots.hh
│   └── PolynomialRoots-Utils.hh
└── lib
    ├── libClothoids_linux.so
    └── libClothoids_linux_static.a

Is that what is expected? From the documentation, I see that it should look like this instead:

|-- lib
    |-- include
    |   |-- AABBtree.hh
    |   |-- Biarc.hh
    |   |-- BiarcList.hh
    |   |-- Circle.hh
    |   |-- Clothoid.hh
    |   |-- ClothoidAsyPlot.hh
    |   |-- ClothoidList.hh
    |   |-- Fresnel.hh
    |   |-- G2lib.hh
    |   |-- Line.hh
    |   |-- PolyLine.hh
    |   |-- PolynomialRoots-Utils.hh
    |   |-- PolynomialRoots.hh
    |   `-- Triangle2D.hh
    `-- lib
        |-- libClothoids_OSTYPE.dylib
        `-- libClothoids_OSTYPE_static.a

Clothoid - Arc - Clothoid curves

Nice library! I wonder if you have ever considered adding a solver for clothoid - arc - clothoid combination curves. Those are needed for road construction.
See for example:

https://civildigital.com/transition-curve-highways-purpose-requirements/

https://link.springer.com/chapter/10.1007/978-3-319-24295-8_9

I am using your library (through pyclothoids) in my Blender addon: https://github.com/johschmitz/blender-driving-scenario-creator
The combined curve would be very useful.

Also I am thinking how difficult it would be to find a solution for a single clothoid given x0, y0, tangent_0, curvature_0, x_1, y_1. Right now this seems to not be possible?

Link to documentation is broken

Hi,
It seems the link to the documentation in the readme is broken.

404

File not found

The site configured at this address does not contain the requested file.

If this is your site, make sure that the filename case matches the URL.
For root URLs (like http://example.com/) you must provide an index.html file.

Read the full documentation for more information about using GitHub Pages.
GitHub Status — @githubstatus

Can not open source file "Utils.hh"

CMake Configureation and generation were done without any error, but on VS 2017 while I was building the solutions this error occured. I modified the CMakelist file and replece the routes which include "3rdparty" with "toolbox" and the build stage was enable to be completed without errors. However, when I include the library in my own VS project, the same error message was reported during compile time. Not sure if anyone else met this issue.

Unable to compile Clothoids Toolbox

Hey. I found an issue when I was trying to compile the toolbox.

So I downloaded the toolbox from the link and type CompileClothoidsLib in the Command Window. However, When it executed on File rang.cc it throws an exception about FileNameInfo is not in the scope.

Below is the exception details:

Error using mex
C:\Users\...\MathWorks\MATLAB Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\src\rang.cc: In function
'bool rang::rang_implementation::isMsysPty(int)':
C:\Users\...\MathWorks\MATLAB Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\src\rang.cc:51:79: error:
'GetFileInformationByHandleEx' was not declared in this scope
       auto const ptrGetFileInformationByHandleEx = reinterpret_cast<decltype(&GetFileInformationByHandleEx)>(
                                                                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
C:\Users\...\MathWorks\MATLAB Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\src\rang.cc:80:50: error:
'FileNameInfo' was not declared in this scope
       if ( !ptrGetFileInformationByHandleEx( h, &FileNameInfo, pNameInfo.get(), sizeof(MY_FILE_NAME_INFO)) ) return false;
                                                  ^~~~~~~~~~~~

Is there something that I missed? Thanks for your help.

[Usage] ClothoidList

Hi, I read codes implemented in src-mex and I found some problems

No codes about evaluation method and neither ant of evaluation method is explained.

For example

std::shared<ClothoidList> c(new ClothoidList);
G2lib::G2solve3arc solver;
int iter = solver.build(...);
if (iter > 0)
{
c->init();
c->reserve(3);
c->push_back(solver.getS0());
c->push_back(solver.getSM());
c->push_back(solver.getS1());
}

// evaluate it
#define ClothoidList G2LIB_CLASS

G2LIB_CLASS * ptr = c.get();

double X, Y;
ptr->eval_ISO(s, t, X, Y); // ? ptr->eval_ISO(s, X, Y)

I am confused about eval_ISO(s,t, X,Y) (see src_mex/mex_common.hxx, line 644). Considering that I am only interested in the c++ implementation what should I use to predict the curve?

@ebertolazzi Thank you for your work.

Unable to use Python Wrapper: Library not found

Good morning,
Due to the failed intents to use the C++ API together with other libraries, I have tried to use the Python Wrapper as I am also more profficient in this language. I have tried to compile using Pybind11 but upon importing the library, it is unable to find it.

cmake .. -G "MSYS Makefiles" -Dpybind11_DIR=[....]/anaconda3/pkgs/pybind11-global-2.10.4-py311h59b6b97_0/Library/share/cmake/pybind11 -DPYTHON_EXECUTABLE=[...]/python.exe
on the "build library".
Then in the src_py folder I perform "make install" (If I do it inside the build directory the following happens -> make: *** No rule to make target 'install'. Stop)

Built files are produces and one can find libraries in the [...]/Clothoids\lib\lib folder, and in the [...]\clothoids_py_wrapper\Clothoids\src_py folder (.dll, .dll.a, _static.a)

In the Python file I tried inserting my things to my path, but they havent worked out:

import ctypes.util
import sys,os

sys.path.insert(
0, ""[....]\clothoids_py_wrapper\Clothoids\lib\lib")

sys.path.insert(
0, ""[....]\clothoids_py_wrapper\Clothoids\src_py")

if sys.platform != 'win32':
sys.path.insert(0, os.path.normpath(os.path.join(file, "../../build")))
else:
sys.path.insert(0, os.path.normpath(
os.path.join(file, "../../build/Release")))

Cannot compile toolbox from Matlab mex

Hi Mr. Ebertolazzi,

Thanks for sharing this wonderful tool! I got one issue when I try to run CompileClothoidsLib in Matlab command windows (with complied toolbox folder). I try to use Microsoft Visual C++ 2019 to compile and my VS2019 compiler equipped with windows SDK10 and SDK11. But I got the following error, which I could not fix.

I think all .cc file can be compiled successfully with MEX (though some warnings like D9025 and D9027) and generate lots of .obj file, but when it failed when MEX 'Compiling: ClothoidListMexWrapper'. It seems to be something like WinSockStub or get_IP_address, but I am wondering if it could be used in CLOTHOIDS and I have already install all windows sdk 10/11 in my VS. Do you know what is this issue?

...........(many cc files are compiled successfully before this line)
mex -c -largeArrayDims -Isrc -Isrc/Utils  COMPFLAGS="\$COMPFLAGS -O2"  -c  src/rang.cc
Building with 'Microsoft Visual C++ 2019'.
cl : Command line warning D9024 : unrecognized source file type '\/Zc:__cplusplus', object file assumed
cl : Command line warning D9027 : source file '\/Zc:__cplusplus' ignored
MEX completed successfully.

Compiling: ClothoidListMexWrapper
mex   -Isrc -output bin/ClothoidListMexWrapper -largeArrayDims src_mex/mex_ClothoidListMexWrapper.cc BBox.obj Biarc.obj BiarcList.obj CPUinfo.obj Circle.obj Clothoid.obj ClothoidAsyPlot.obj ClothoidDistance.obj ClothoidG2.obj ClothoidList.obj Console.obj Fresnel.obj G2lib.obj G2lib_intersect.obj Line.obj Malloc.obj Numbers.obj PolyLine.obj PolynomialRoots-1-Quadratic.obj PolynomialRoots-2-Cubic.obj PolynomialRoots-3-Quartic.obj PolynomialRoots-Jenkins-Traub.obj PolynomialRoots-Utils.obj SystemUtils.obj Table.obj ThreadPool1.obj ThreadPool3.obj ThreadPool4.obj ThreadPool5.obj ThreadUtils.obj TicToc.obj Token.obj Trace.obj Triangle2D.obj Utils.obj Utils_AABB_tree.obj Utils_Algo748.obj Utils_Trichotomy.obj fmt_format.obj fmt_os.obj rang.obj COMPFLAGS="\$COMPFLAGS -O2" 
Building with 'Microsoft Visual C++ 2019'.
cl : Command line warning D9024 : unrecognized source file type '\/Zc:__cplusplus', object file assumed
cl : Command line warning D9027 : source file '\/Zc:__cplusplus' ignored

cl : Command line warning D9024 : unrecognized source file type '\/Zc:__cplusplus', object file assumed
cl : Command line warning D9027 : source file '\/Zc:__cplusplus' ignored

Error using mex
   Creating library E:\Software\Matlab\MATLAB Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\bin\ClothoidListMexWrapper.lib and object E:\Software\Matlab\MATLAB
   Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\bin\ClothoidListMexWrapper.exp
SystemUtils.obj : error LNK2019: unresolved external symbol __imp_gethostname referenced in function "class std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > __cdecl Utils::get_host_name(void)" (?get_host_name@Utils@@YA?AV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@XZ)
SystemUtils.obj : error LNK2019: unresolved external symbol __imp_WSAStartup referenced in function "public: __cdecl Utils::WinSockStub::WinSockStub(void)"
(??0WinSockStub@Utils@@QEAA@XZ)
SystemUtils.obj : error LNK2019: unresolved external symbol __imp_GetAdaptersInfo referenced in function "void __cdecl Utils::get_IP_address(class std::vector<class
std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >,class std::allocator<class std::basic_string<char,struct std::char_traits<char>,class
std::allocator<char> > > > &)"
(?get_IP_address@Utils@@YAXAEAV?$vector@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@V?$allocator@V?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@2@@std@@@Z)
E:\Software\Matlab\MATLAB Add-Ons\Collections\ebertolazzi_Clothoids\toolbox\bin\ClothoidListMexWrapper.mexw64 : fatal error LNK1120: 3 unresolved externals



Error in CompileClothoidsLib (line 83)
  eval(CMD);

G2solve3arc::curvatureMinMax() error

In the implementation of G2solve3arc::curvatureMinMax():

G2solve3arc::curvatureMinMax( valueType & kMin, valueType & kMax ) const {

you compute the minimal and maximal values for theta instead of the extrema of the curvature.
I think the right implementation would be to exchange S0.thetaMinMax() with S0.curvatureMinMax() and analogously for S1 and SM in the lines 768, 769 and 772.

matlab toolbox error

Hey. I found an issue when I was trying to compile the toolbox when I run the CompileClothoidsLib.m follow is the error

mex -c -largeArrayDims -Isrc -Isrc/Utils COMPFLAGS="$COMPFLAGS -O2" -c src/AABBtree.cc
使用 'Microsoft Visual C++ 2013' 编译。
错误使用 mex
AABBtree.cc
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(316) : warning C4091: “inline ”: 没有声明变量时忽略“int”的左

c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(316) : error C2143: 语法错误 : 缺少“;”(在“namespace”的前面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(335) : error C2146: 语法错误: 缺少“;”(在标识符“monostate”的前
面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(335) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(354) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(354) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(365) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(365) : error C2065: “T”: 未声明的标识符
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(365) : error C2146: 语法错误: 缺少“)”(在标识符“value”的前面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(365) : error C2433: “const_check”: 不允许在数据声明中使
用“inline”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(365) : error C2059: 语法错误:“)”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(430) : error C2144: 语法错误:“unsigned char”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(430) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(430) : error C2086: “int fmt::v8::detail::constexpr”: 重
定义
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(354) : 参见“fmt::v8::detail::constexpr”的声明
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(432) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(432) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(432) : error C2086: “int fmt::v8::detail::constexpr”: 重
定义
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(354) : 参见“fmt::v8::detail::constexpr”的声明
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(457) : error C2146: 语法错误: 缺少“;”(在标识
符“basic_string_view”的前面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(538): 参见对正在编译的类 模板 实例
化“fmt::v8::basic_string_view”的引用
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(457) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(460) : error C2146: 语法错误: 缺少“;”(在标识
符“basic_string_view”的前面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(460) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(492) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(492) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(495) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(495) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(497) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(497) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(498) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(498) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(500) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(500) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(557) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(557) : error C2065: “Char”: 未声明的标识符
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(557) : error C2923: “fmt::v8::basic_string_view”: 对于参
数“Char”,“Char”不是有效的 模板 类型变量
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(558) : error C2065: “Char”: 未声明的标识符
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(558) : error C2923: “fmt::v8::basic_string_view”: 对于参
数“Char”,“Char”不是有效的 模板 类型变量
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(560) : error C2079: “fmt::v8::to_string_view”使用未定义的
class“fmt::v8::basic_string_view”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(566) : warning C4544: “unnamed-parameter”: 此模板声明中忽略
的默认模板参数
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(562) : 参见“unnamed-parameter”的声明
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(576) : warning C4346:
“fmt::v8::is_compile_string::value”: 依赖名称不是类型
用“typename”为前缀来表示类型
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(576) : error C2144: 语法错误:“auto”的前面应有“;”
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(576) : error C4430: 缺少类型说明符 - 假定为 int。注意: C++ 不
支持默认 int
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(576) : error C2143: 语法错误 : 缺少“,”(在“&”的前面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(577) : error C2653: “S”: 不是类或命名空间名称
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(577) : error C2146: 语法错误: 缺少“,”(在标识符“char_type”的前
面)
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(577) : error C2065: “char_type”: 未声明的标识符
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(577) : error C2977: “fmt::v8::basic_string_view”: 模板 参
数太多
c:\users\zt\appdata\roaming\mathworks\matlab add-ons\toolboxes\clothoids\src\utils\fmt\core.h(448) : 参见“fmt::v8::basic_string_view”的声明

cl: 命令行 warning D9024 :无法识别的源文件类型“/Zp8”,假定为对象文件
cl: 命令行 warning D9027 :源文件“/Zp8”被忽略

出错 CompileClothoidsLib (line 49)
eval(CMD);

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.