0
を使用して隣接する点を見つけますthis_site
に「隣接」しているすべての点の集合?ポイントのランダムなセットの中の一点を考えると、D3のボロノイ
を使用して隣接する点を見つけますthis_site
に「隣接」しているすべての点の集合?ポイントのランダムなセットの中の一点を考えると、D3のボロノイ
これにはd3.voronoi
を使用できます。
var diagram = voronoi(sites);
var links = diagram.links()
var polygons = diagram.polygons()
polygons.forEach(function(p) {
p.adjacent = false
})
var this_site = sites[0]
var this_polygon = polygons[0]
var counter = 1
links.forEach(function(l) {
if (l.source == this_site || l.target == this_site) {
//get corresponding polygons
polygons.forEach(function(p) {
if (p.data == l.target || p.data == l.source) {
p["adjacent"] = true
}
})
}
})
ここで働い例です: http://blockbuilder.org/RobinL/76580040f9795503ae9586a9b367aa51
あなたは[ 'diagram.find()'](https://github.com/d3/d3-voronoi#diagram_find)を使用することができます。このドキュメントには素晴らしい[例](http://bl.ocks.org/Fil/1b7ddbcd71454d685d1259781968aefc)へのリンクがあります。 – altocumulus
ありがとうございます。私はその文書をチェックした。おそらく私は誤解したでしょう。 '.find()' "最も近いポイントを返す"と言います。しかし、私は隣り合う点、すなわち隣接するボロノイポリゴンの点の集合を求めています。私は現在あなたが提供した例のコードを読んでいますが、これは私が望むことをするようです。私はそれがどのようにそれを行うか分からない! – RobinL