graph_1_2.py, graph_class_1_2.py updated

Dropbox/AdaptiveMorphology_studio/scripts/modules/graph_1_2.py Dropbox/AdaptiveMorphology_studio/scripts/modules/graph_class_1_2.py now you can generate the network through function “initFromCrv”,, 0.3msec with 800 edges, Dropbox/AdaptiveMorphology_studio/20160623/graph_load_test.zip  

  • Comments Off on graph_1_2.py, graph_class_1_2.py updated

cells belong to edge, cell belong to node, testing further2

edge_and_cells3D.zip This script would work for 3D edges, it works also with unclosed network. However, we have to use it separately to each floors. It means overlapping edges generate cells improperly. 3次元エッジ、閉じていないエッジでもセルが作れるように改良してあります。ただし、エッジが重なった部分は重なったエッジ同士でセルの領域を取り合ってしまうので、階ごとに分けて使う必要があります。全体のネットワークを評価するために、全フロアエッジ+シャフトエッジを扱うコンポーネントも作っています。 これだとまだハンドリングが悪いかもしれませんが、とりあえずスタディなどには使えるでしょう。居室配置の感覚などをこれでつかんでください。 コードの仕組みは次回スタジオで説明します。

  • Comments Off on cells belong to edge, cell belong to node, testing further2

Graph module sample (how to set up studio python modules)

download python files from here Studio Python Modules put python files in the same folder of .gh file import and initialize in your code graph_test.3dm graph_test1.gh actual code of get shortest path in network and visualize the path shortest distance calculation by Dijkstra method (e / j )

  • Comments Off on Graph module sample (how to set up studio python modules)

find Hamilton Path

出発ノードを指定して、ハミルトン閉路を探す関数のサンプルです。グラフモジュール graph_1_1.py を使います。 maxim_1Stroke.zip ハミルトン閉路がない場合、最も多くノードを介する閉路のリストを返します。 GH-Pythonだと計算フレームが問題になりそうです。サンプルは30ノード38エッジ程度。

  • Comments Off on find Hamilton Path

graph_1_1 グラフモジュール バージョン1.1

graph_1_0 はモジュールからクラスインスタンスを作る形でしたが、クラス内の関数などがエディタ補完機能で、補完されずに使いにくかったので、モジュール対して直に初期化するようにしました(その代わり複数のグラフを同時に作れません)。その他、関数も追加してあります(ネットワーク距離でのクラスタリング、ward, k-means++ など)。 graph_1_1.py 座標精度により、カーブの頂点がマッチしていないと、グラフがうまく生成されない、というやっかいな問題ですが、スタジオユーティリティーモジュール studio_utility_1_0.py に という関数が実装されています。ライン、ポリラインの始点・終点の座標の指定桁を丸める(切り捨てる)関数です。 これで無理やりライン、ポリラインを変換すると割りとグラフ化できる率があがります。

  • Comments Off on graph_1_1 グラフモジュール バージョン1.1

選択ノード群の中心ノード

center_node.zip 指定したノード群において、中心となるノードはどのように考えればよいでしょうか。指定ノード群からの分散が最も小さくなるノードを探す場合 mini deviation と 指定ノード群からの距離の合計が基も小さくなる場合 mini-sum のサンプルです。入力点群の最寄が指定ノードとなります。入力ノード群を動かして、どちらが中心ノードに使えそうか試してみてください。 分散の小さいノードを探す 距離の合計が小さいノードを探す

  • Comments Off on 選択ノード群の中心ノード

ノードの情報の書き込み graph_1_0

graph_module_betweenness_view_result.zip とりあえずのサンプルです。 write_info モジュールにつながっている Toggle を True にスイッチすると、ノードのパスカウントをRhinoモデルに書き込みます。Grasshopperのプレビューではなく、Rhinoモデルの実体として(ベイクされたものといえばよいでしょうか)書き込まれてしまうため、値が変わるたびに SelText、 Delete などでテクストオブジェクトを消さなければなりません。面倒です。プレビューでダイナミックに変更するやり方、情報求む。

  • Comments Off on ノードの情報の書き込み graph_1_0

複数指定ノードからのminisum評価、複数指定ノードへのminimax評価(hclab. StreetView)

hclab. StreetView アカディミック版の追加機能です。すべて有向グラフを想定した関数です。 複数指定ノードからのminisum評価 evaluation experimental パネル “pick up origins to estimate Minisum” ボタンを押下。 Minisumを求めるノードをマウスで選択する。選択されたノードを出発点として、それらのノードから平均的に近い場所、近さ(minisum)が評価されます。 evaluation experimental パネル “Estimate Minisum from origins” ボタンを押下。この評価は比較的早く結果が出ます。その理由は、選択したノードから他のノードまでのネットワーク距離が算出できればよいのでDijkstra関数をコールするのが選択したノード数だけで十分である、ということが理由です。   複数指定ノードへのminimax評価 evaluation experimental パネル “pick up destinations to estimate Minimax” ボタンを押下。 Minimaxを求めるノードをマウスで選択する。選択されたノードを目的点として、すべてのノードから遠すぎない場所(最遠ノードまでのネットワーク距離がもっとも小さい)場所、一部の人に不便すぎない、もっともアクセスに不利な人を考慮した場所(minimax)が評価されます。 evaluation experimental パネル “Estimate Minimax to destinations” ボタンを押下。

  • Comments Off on 複数指定ノードからのminisum評価、複数指定ノードへのminimax評価(hclab. StreetView)