« Windowsユーザのためのsvn/svk覚え書き |Main| 日記 »

« Windowsユーザのためのsvn/svk覚え書き | log | log »

log

入れ子頂点の辺が途切れる問題の解決方法には二通りの戦略があります。

まず、Zオーダーを導入して、描画の順番を切り替えられるレンダラを作成するという方法。子頂点への辺より先に親頂点を描画することでとぎれを解決する方法です。これは、それぞれの頂点に適切なZオーダーを割り振る必要性が(プラグイン作者側に)出てきはしますが、コンピュータにはあまり負荷のかからない方法です。

もう一方は、頂点に辺の端点を返すメソッドをつけるというものです。 これはNarVisualizerのような頂点を作る際にも役に立つかも知れません。しかし、毎ステップ端点の計算を行うので計算量が多いかも知れません。


__ オブジェクトは実際にはPOJOだけどXML-RPC経由でいじるためにはクラス名とパラメータの対。これでオブジェクトの生成や保存に関しては問題ないけども、インタラクティブに動かすには「生きているオブジェクト」への参照が必要。もちろんこれもXML-RPC経由でいじれなければ行けないので、String nameを使う。全てのオブジェクトがnameをキーとしてハッシュに入っていれば、nameをポインタのように使うことが出来る。

GraphクラスがだんだんGraphクラスっぽくなくなってきた。 そもそもアプリケーションにひとつだけのインスタンスで、グラフのくせに物理演算まで持っていて、今後さらに全てのXML-RPCアクセシブルなオブジェクトを持つようになると…どう考えてもGraphじゃない。しかもrenderメソッドをRendererに移したのでRenderableGraphはとことん間違ったネーミング。

リファクタリング。いい名前が思いつかないのでまだGraphのままだけど。


__ makeTable, getNamedDict, namespaceなど、同じ物に違う名前が付いている。実体はHashtableで、キーが文字列なのでDictionaryであり、かつキーが文字列のDictionaryをnamespaceに使っている。さぁ、どれが一番適切な名前だろう。 とりあえず、Tableはダメかな。Hashtableは使っているけど、それは別に重要ではなく、HashMapでもよくて、むしろMapと呼ぶ方が適切。 やっぱnamedDictなのかなぁ。「Dict」で「キーが文字列のマッピング」であることをほのめかして、かつそれが名前で管理されている、と。ただ名前とDictは1対1対応じゃないんで、namedなのかといわれるとちょっと違う。Dictでいいのかな…。

トラックバック(Trackback)

Trackback URL: http://www.nishiohirokazu.org/mt/mt-tb.cgi/375

ご意見・ご感想をお送りください(フィードバック)

(フィードバックはメールで送信され、基本的に表示されませんが、内容によっては公開させていただくこともございます。ご了承ください。Your comment doesn't appear the page immediately. If the comment has value to other people, it will be put on the page or subsequent entries. Thank you.)

上の情報は、いずれも未記入でかまいません。 All of above questions are optional.