問題タブ [centroid]

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 投票する
2 に答える
1326 参照

javascript - Google マップで郵便番号ラベルを正しく配置する

私はグーグルマップで郵便番号エリアのリストを描いていて、そのエリアの上に郵便番号のラベルを書き込もうとしています. 領域の重心を使用してラベルを配置していることを除いて、これは問題なく実行できますが、一部の領域は不規則な形をしており、重心は領域自体の外側にあります。これが私が意味することの例です:

ここに画像の説明を入力

郵便番号 81151 を見てください。自分の地域ではなく、郵便番号 81123 の地域の上に表示されます。

地域の重心を使用するのではなく、不規則な地域の上に郵便番号を正しく配置するためのより良いアルゴリズムを知っている人はいますか?

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

python - 曲線エッジの閉じた形状の近似頂点の取得 (重心およびその他のプロパティの計算用)

カーブしたエッジを持つ 2D で閉じた不規則な形状のアウトラインを描画し、(a) 形状の領域の重心 (重心) と (b) 形状の周囲の重心(つまりたとえば、形状の外側にしっかりと巻き付けられたワイヤーの重心)。Python と Matlab については、初心者レベルの習熟度があります。

(a) と (b) は、多角形の頂点が与えられれば十分に簡単です。多角形の面積の重心は、次の式で与えられます。多角形の周囲の重心は、線によって重み付けされたすべての線分の中点の平均にすぎません。セグメントの長さ。私はすでにこれを行うためのいくつかの関数を書いています。

私が抱えている問題は、湾曲したエッジで閉じた形状を描く方法を知っている方法からそれらの頂点を取得/近似することです。私がこれまでに思いついた最善の解決策は、このmatplotlibベースのスクリプトのようなものを使用して曲線の形状を描画し、次に を呼び出しpath.to_polygons()て Path オブジェクトをポリゴンに変換することですが、驚くほど低い解像度で変換するため、結果の近似値はは非常に貧弱です (そして、私の目的には貧弱すぎます — これらの重心をかなり正確に計算したいと思います)。

したがって、(i) の解像度を.to_polygons(約 10 倍) 上げる方法を見つけるか、これは私の目的には満足できるものであるか、(ii) 新しい戦略を完全に試すかのいずれかを検討しています。1つのオプションは、Adobe Illustratorなどを使用して形状を描画し、プラグインまたは画像処理ツールボックスを介して頂点の近似値を取得することです(ただし、これらのいずれかを行う方法がわかりません). もう1つは、領域と周囲の重心を見つけるための組み込み関数を既に備えているツールボックス/ライブラリを使用して形状を描画することです(前者を持つものを見たことがありますが、後者はありません)。しかし、私が考慮していない他の多くのオプションがあると確信しています。

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

sql - Postgres 8.3.1 セントロイド

British National Grid 座標を使用してポリゴンの重心を作成しようとしています 以下は私のコードです

これが機能しない理由はありますか?

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

c++ - OpenCV : 運動情報の重心/重心を見つける方法

問題は、パスの軌跡を取得できるように、検出されたオブジェクトが長方形で囲まれた後に使用する画像オブジェクトなど、既存のコードで重心を実装できないことです。私は使用Opencv2.3しています.2つの方法があることがわかりました-Link1Link2は瞬間の使用法について話します。もう 1 つの方法は、バウンディング ボックスLink3の情報を使用することです。モーメント法では、画像のしきい値処理が必要です。ただし、SURF を使用すると、画像はグレースケールになります。したがって、しきい値処理のために灰色の画像を渡すと、白い画像が表示されます! さて、以下のコードを使用して重心を計算する方法を理解するのに苦労しています(特に、使用しているため、代わりに何を使用する必要がありますpoints[i].x

numPoints=good_matches.size()重心で SURF を使用する方法の実装を誰かが立てることができれば、それは役に立ちます。

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

sql - 建物の重心を含む区画を示す空間 SQL クエリ

特定の建築基準法 (bldg_code = 3)の重心を含む区画を選択するクエリを作成しようとしています。

区画はテーブル "city.zoning" にリストされ、各区画の PIN、ジオメトリ、および面積の列が含まれています。テーブル「建物」には、建物の種類とそれに対応するコードを示す bldg_type と bldg_code の列が含まれています。このクエリで対象となる建物タイプの bldg_code は 3 です。

これまでのところ、対象の建物タイプと相互作用する区画を表示するクエリを作成しました。

何か案は?

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

c++ - DirectX で重心を中心に正三角形を回転させる

AI の経路探索と操舵動作を示すために、小惑星スタイルの船を使用するゲームを作成したいプロジェクトがあります。

このオブジェクトは、三角形の重心 (それ以外の場合はプレイヤーの位置) と船の向き (度単位) の値を保存し、次のように 3 つの頂点の位置を計算します。

Aは三角形の鼻です。向きが 0 度の場合、船の機首は SIZE だけオフセットされた X 軸上に置かれます。これにより、船のサイズが決定され、境界円の半径に等しくなります。

頂点 B と C は A の位置からそれぞれ 120 度と 240 度回転し、プログラムは各頂点間に線分を描画します。

プログラムを開始すると、これは見事に機能し、バウンディング サークル、方向ベクトル、船は期待どおりに見えます。

ただし、左右の矢印キーで角度が増減するようなコントロールを実装しました。このコントロールはテスト済みで、希望どおりに機能することが証明されています。これが発生すると、方向ベクトルがそれに応じて調整され、船が回転します... しかし、ほんの一部です. どの方向に回転しても、ポイントはすぐに質量の中心に移動し、中心で崩壊して永遠に消えます。

回転機能は正常に機能しますが、船の回転が機能しているかどうかはわかりません。vert 変数は、その頂点の X 座標と Y 座標を格納する配列です。各頂点を船の向きの角度だけ回転させると、理論的には三角形がその中心で回転するはずですよね?

頂点はすべて原点に対して調整され、Game オブジェクトの drawShip() 関数はこれらの座標を取得し、playerX と playerY を追加して、完全に描画された船をプレイヤーの位置に移動します。基本的には、原点に移動し、回転させ、プレーヤーの位置に戻します。

それが役立つ場合は、ゲーム オブジェクトから関連する関数を含めます。このコードでは、psp が Ship オブジェクトです。Draw ship は、ship オブジェクトのすべてのパラメータを受け取り、動作するはずですが、望ましくない結果が得られます。

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

svg - Finding a graph's centroid in D3.js

I am trying to allow an entire graph (such as a collapsible dendrogram (http://mbostock.github.com/d3/talk/20111018/tree.html) to be moved in the visualization by using the centroid of the entire graph and do not know what the best course of action would be to treat this graph as a discrete node and to use the centroid coordinates for manipulation. How would the centroid of a graph be calculated, allowing for the graph to be dynamically sized to allow for new nodes, thereby recalculating the centroid?

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

mysql - MySQL テーブルの点から重心を計算する

MySQL テーブルには、「ポイント」地理空間データ型の列があります。MySQL ですべての行のすべてのポイント値の重心を直接計算することは可能ですか?

私のプロジェクトの目的は、マップの中心をマップに含まれるポイントの重心に配置することです。

考えられる解決策の 1 つが MySQL のドキュメントに記載されています: Centroid(mpoly)。しかしこれは、すべてのポイントの値をプログラミング言語で外部的に連結し、結果のクエリを MySQL に送り返す必要があることを意味します。これは私には奇妙に聞こえます。

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

geocoding - Zip-Centroid ジオコーディング: zip+4 セントロイドはありますか

郵便番号セントロイドによるジオコーディングがありますが、より詳細でありながら住所の粒度ではない zip+4 セントロイドはありますか?

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

c++ - 次の重心のうち、画像内の物体の重心はどれ?

バイナリ画像から円形状の質量中心を取得したいのですが、出力は複数の質量中心を与えます。画像の瞬間と少し変更したopencv Webチュートリアルドキュメントのコードを使用しています。参考までに、私は c++ API OpenCV を使用しています。

出力は次のとおりです。

AQ38S.jpg

テキスト出力では、3 つの輪郭からおそらく 3 つの重心が得られると思いますが、実際には 7 つの輪郭 (contours[0],...,contours[6]) です。

重心はどれ?または、円形状の輪郭領域はどれですか?

次に、コードを変更し、いくつかの輪郭を削除しました(実際の画像は非常にノイズが多く、特定の輪郭、円の形状を取得したいだけなので、線や文字などの他の輪郭を削除する必要があります)を使用して:

100 から 500 の間の領域の輪郭から重心を取得したいだけです。

しかし、出力がおかしくなる..

xnDlZ.jpg

重心は、輪郭からどこにでも飛んでいきます。
それでも、5 つの等高線 (contours[0],...,contours[4]) から 5 つの重心が存在します。

どうすればいいですか?円形状の重心のみを取得したい(3以上)。あなたのアドバイスが本当に必要です。どうもありがとう!:D

*下手な英語でごめんなさい..