Integrating C++ Code in MATLAB

How can I integrate C++ in Matlab?
Let's say, I wanna run the example "fdbscan_example.m" in Matlab. But, I need to Call the functions kdtree_build.m and kdtree_ball_query.m from the kd-trees (written in C++ language). How can i do that?

3 Kommentare

Walter Roberson
Walter Roberson am 22 Okt. 2018
DBSCAN/kdtree-master/toolbox/kdtree_build.cpp needs DBSCAN/kdtree-master/toolbox/KDTree.h which needs DBSCAN/kdtree-master/toolbox/MyHeaps.h . That .h attempts to use std::__is_heap but that is not defined . std::__is_heap only exists if you use stl_heap.h but the code does not do that.
ha ha
ha ha am 22 Okt. 2018
so, you mean: there are not exist of "stl_heap.h" file in the folder. Thus, I can't run the code "fdbscan_example.m" ?
rolf harkes
rolf harkes am 21 Dez. 2018
Bearbeitet: rolf harkes am 21 Dez. 2018
The error message explains that it cannot find kdtree_build.cpp.
This file is in \kdtree-master\toolbox. So is the file kdtree_compile.m. If you run that it will compile everything. But compiling is probably not needed. If you look in that folder it already contains the compiled kdtree_build.mexw64.
The problem with the code in your screenshot is most likely that line 14 cannot execute since fdbscan cannot locate kdtree_build. Very similar to why it cannot compile. You must include that path using addpath('\kdtree-master\toolbox').
@Walter Robertson: The code from https://github.com/ataiya/kdtree/ compiles just fine on my system. No problems with heaps.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Tags

Gefragt:

am 22 Okt. 2018

Bearbeitet:

am 21 Dez. 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by