[問題] 建置多科KDtree

看板C_and_CPP作者 (angelaa)時間14年前 (2011/10/16 20:22), 編輯推噓1(102)
留言3則, 2人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 2010 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) PCL (Point Cloud Library) 問題(Question): 參考官網的建置KDtree方法可以順利完成 但是該方法只能一個變數對一顆樹 並沒辦法用矩陣的方式去做 (tree[ 0 ] , tree[ 1 ]....) (或者是可以 但是我實在試不出來) 所以我目前的想法是 把tree改成 tree1 tree2 tree3 .... treen 去建置 但是 這樣變成 我在後面要選擇tree時 需要有很多if else 去決定使用哪顆樹 不知道 C++ 有沒有類似MATLAB num2str , eval 這種方式來做 因為希望可以省去不必要的if else 或者 有熟悉PCL的大大們 可以教教我 如何一次建置多顆KD-tree 麻煩各位前輩了 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.149.219

10/17 00:12, , 1F
pointer array?
10/17 00:12, 1F
我有試過 用 kdtree *tree = new kdtree [ n ]; 這種方式去做過 可是因為我不知道 kdtree該怎麼初始化 所以 無法這樣用~ ※ 編輯: abc01251 來自: 1.169.185.91 (10/17 02:04)

10/17 02:15, , 2F
你的問題是想要一個一個呼叫建構子的話就vector<kdtree*>
10/17 02:15, 2F

10/17 02:15, , 3F
然後慢慢push_back吧XD
10/17 02:15, 3F
我試試看 XD ※ 編輯: abc01251 來自: 1.169.187.12 (10/18 04:08) 嘗試了一下 我發現 PCL的 ptr 是用 Boost Library的 Boost 用法是 kdtree tree(new kdtree); 這種方式 如果我希望 vector< kdtree > tree; tree.resize( n ); for(size_t i = 0 ; i < n ; ++i) tree[ i ] <<<<<<<這邊我該怎麼初始化壓 我只知道命名可以初始@@ 不知道有沒有了解boost 的大大們 可以幫忙解決 拜託了 不太想看到 自己令了 n 個kdtree 一直push_back@@ 真的很噁心..... ※ 編輯: abc01251 來自: 140.113.149.219 (10/19 01:27)
文章代碼(AID): #1Ecin_VY (C_and_CPP)