問題タブ [libspatialindex]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
322 参照

c++ - Spatialindexライブラリを使用したR*ツリーの一括読み込み

レコードを1つずつ250万回挿入する空間ライブラリを使用してR*ツリーを正常に構築した後、バルクロードを使用してR*ツリーを作成しようとしました。データをBulkLoaderに繰り返し提供するためにDBStreamクラスを実装しました。基本的に、次のメソッドを呼び出し、バルクローダー用のData(コード内のd変数)オブジェクトを準備しました。

DBStreamオブジェクトを初期化し、次の方法で一括読み込みを呼び出します。

一括読み込みでは、next()関数とhasNext()関数を呼び出し、データを取得して並べ替えてから、構築フェーズで障害をセグメント化します。手がかりはありますか?ええ、エラーは次のとおりです。

0 投票する
2 に答える
701 参照

c++ - C++ 空間インデックス ライブラリ: メイン メモリ RTree をディスクから、またはディスクにロード/保存する

次の方法で、spatialindex ライブラリを使用してメイン メモリの R* インデックスを作成しました (DBStream は、bulkLoading のインターフェイスを実装しています)。

私のデータは読み取り専用です。つまり、ツリーを 1 回だけ作成して保存し、プログラムを使用するたびに永続ストレージから再ロードしたいと考えています。明らかに、memStorage を自分で保存してロードすることはできますが、そこから RTree を再作成するにはどうすればよいでしょうか?

0 投票する
2 に答える
458 参照

c++ - Spatialindexライブラリを使用したRツリーの(再)ロード

私はspatialindex(http://libspatialindex.github.com/)ライブラリを使用してRツリーをバルクロードしています:

構築されたツリーに関する情報で、以下が出力されます。

今、私はディスクに保存したものをロードしようとしています:

ツリーにはノードが1つだけあります(ツリーの出力は次のとおりです)。

私は何を間違えますか?ツリー全体をディスクからロードしないのはなぜですか?

0 投票する
1 に答える
242 参照

c++ - MyDataStream stream(argv[1]) にオブジェクトとして渡される入力データ ファイルの形式

R ツリー インデックスを作成するために「libspatialindex」ライブラリを使用しています。私のデータは次の値を持つ 2 次元です。

データの説明は次のとおりです。

上記のデータを R-Tree に一括ロードしようとしています。そのために、libspatialindex の次のテスト コードを使用しています。ただし、オブジェクトとして * MyDataStream stream(argv[1]);に渡される入力データ ファイルの形式がどうあるべきかについてはわかりません。*

私が使用しているテストコードは次のとおりです。

0 投票する
0 に答える
217 参照

c++ - C/C++ で一括読み込み中にエラーが発生しました

r ツリーの構築にlibspatialindex ( http://libspatialindex.github.io/ ) ライブラリを使用しています: r ツリーに (緯度、経度) を一括ロードする次のコードを使用しています。特定の場所の一括読み込み (id、緯度、経度) が必要です。次のコードは、一括読み込みを実行します。しかし、入力ファイルを受け入れない理由がわかりません。libspatial インデックスのドキュメントがないため、混乱しています。

入力には、次のファイルを使用しています。

しかし、次のエラーが発生します。

誰かが私がどこで間違っているのか教えてください!!

0 投票する
1 に答える
565 参照

c++ - libSpatialIndex: ディスク上のインデックスの読み込み/保存

ポイントがたくさんあり、それらに対して最近傍検索を行う必要があるため、libSpatialIndex を使用しています。コードは非常に単純で、ライブラリはデータをディスクに保存するオプションを提供しますが、ロードできません。

コード:

その直後にプログラムは終了します。「indexTest.dat」8.8MBと「indexTest.idx」0kBの2つのファイルが実際にメモリ内に作成されますが、初期化直後にクエリを実行したり、インデックス内の要素数を確認したりすると、失敗し、ノードには1つしかありません木。

私はすでに質問を見ました: (Re)loading the R Tree with spatialindex library

C++ 空間インデックス ライブラリ: メイン メモリ RTree をディスクから、またはディスクにロード/保存する

しかし、Index を使用しているため成功しませんでした。RTree を直接使用すると、データの挿入が 1000 倍遅くなります。

0 投票する
1 に答える
2669 参照

r-tree - libspatialindex を Google Colaboratory にインストールする方法

Python で空間データを効率的に分析するために、libspatialindex C ライブラリに依存する rtree 空間インデックス ライブラリを使用します。

を使用して Google Colaboratory ノートブックに rtree を正常にインストールできました!pip install rtree

予想通り、libspatialindex を最初にインストールする必要があるため、これでは十分ではありませんimport rtree

OSError: Could not find libspatialindex_c library file

Google Collaboratory に外部ライブラリをインストールするかどうか、またその方法がわかりません。https://github.com/libspatialindex/libspatialindex/wiki/1.-Getting-Startedに従って実行できまし!curl -L http://download.osgeo.org/libspatialindex/spatialindex-src-1.8.5.tar.gz | tar xzたが、構成の権限がありません: !spatialindex-src-1.8.5/configure

/bin/sh: 1: spatialindex-src-1.8.5/configure: Permission denied

0 投票する
2 に答える
433 参照

c++ - 「undef」を使用せずにマクロを再定義することは可能ですか?

libspatialindexのソース コードを理解しようとしています。C++ を初めて使用するので、マクロの概念に頭を悩ませています。ライブラリの C 用 API ラッパーであるsidx_api.ccには、直接的または間接的に多数のヘッダーが含まれています。そのうちの 2 つは、「undef」を使用せずに、動的ライブラリとのインターフェイスに関係する同じマクロを定義しているように見えます。

Tools.h

sidx_export.h

「undef」なしでマクロを再定義することには問題があると思います。たとえば、こちらこちらで説明されています。ここで何か不足していますか?ありがとう。

0 投票する
1 に答える
2799 参照

pyinstaller - pyinstaller EXE OSError: spatialindex_c-64.dll が見つからないか読み込めませんでした

Windows 10 64ビットを使用してexeを作成しています。ただし、exe は以下のエラーを返します: File "rtree\core.py", line 126, in OSError: could not find or load spatialindex_c-64.dll [23324] Failed to execute scriptmicrowave_python_code

以下の解決策 ppl 共有を試しましたが、それでも問題を解決できません。

  1. --add-data=C:\path\to\spatialindex_c-64.dll;. 私のビルドコマンドに
  2. pip で rtree をアンインストールしてから、「Rtree-0.9.4-cp37-none-win_amd64.whl」を使用してインストールします。
  3. 「spatialindex-src-1.9.3.tar.gz」をインストールします
  4. 「spatialindex_c-64.dll」を rtee サイトのパッケージ フォルダーにコピーしました
  5. 「spatialindex_c-64.dll」をexeフォルダーにコピーしました

上記を実行して、動作するexeを作成できる人はいますか? 上記の解決策を試した後も、まだ問題に直面しています。私のexeを動作させるために他にできることはありますか?