タグ

ブックマーク / tech.nitoyon.com (14)

  • 経路探索アルゴリズムの「ダイクストラ法」と「A*」をビジュアライズしてみた - てっく煮ブログ

    as詳解 ActionScript 3.0アニメーション ―衝突判定・AI・3DからピクセルシェーダまでFlash上級テクニック を読んでいて、経路探索のアルゴリズムで A* が取り上げられていました。A* については、いろいろ検索して調べたりもしたのですが、やっぱりに書いてあると理解しやすいですね。せっかくなので自分流に実装してビジュアライズしてみました。ダイクストラ法まずは A* の特別なケースでもあるダイクストラ法から見ていきます。クリックすると探索のシミュレーションが開始します。スタート地点(S)からゴール(G)への探索が始まります。色がついたところが「最短経路が決定した場所」です。スタート地点から少しずつ探索が完了していきます。半分ぐらい完了しました。まだまだ進みます。最後まで終わりました。最短経路を黒色矢印で表示しています。ダイクストラ法は、スタート地点から近いノード(=マス

  • text-hatena.js 公開 [tech.nitoyon.com]

    Text::HatenaHTML::Parser を用いている部分は実装できていません。 URL の自動リンクや HTML のエスケープなどは実装できていません。 Cookie を利用するようなサイトに text-hatena.js を利用するのはお勧めできません。 ライセンスは Text::Hatena と同等とします。 技術的なアレコレ PerlJavaScript って意外と似てるよね、というところから出発しました。特に、Text::Hatena のソースコードはそのまま JavaScript に置き換えられるぐらいに洗練されたコードです。例えば、Hatena.pm の一部に次のようなソースがあるのですが sub parse { my $self = shift; my $text = shift or return; $self->{context} = Text

    text-hatena.js 公開 [tech.nitoyon.com]
  • Google Maps をジオラマ風にしてみた - てっく煮ブログ

    GoogleMapsAPI, asGoogle Maps をジオラマ写真風にすると印象が変わる、というアイディアが チルトシフトの新しい使い方 その2 に書いてあった。おもしろそうなのでリアルタイムに Google Maps をジオラマ風に表示するものを作ってみた。好きな場所を表示できるので、地球全体がジオラマにしてしまった。簡単な使い方:上部の検索欄に英語で入力して移動左のコントロールは Google Maps と同じShift+ドラッグで視点移動日各地を巡ってみた東京駅前車がミニチュア風でかわいい。京都御所箱庭になりました。大阪駅前線路と高速道路とビル群。 どうぞご利用くださいあなたの街をジオラマ風に!ソースコードチルトシフトのエフェクトは「彩度をあげる」「周りをぼかす」「周りを暗くする」ことで実現している。ソースコードは以下に(map_1_20.swc、minimalcomps、T

  • jQuery を高速に使う CSS セレクタの書き方 - てっく煮ブログ

    JavaScriptjQuery は CSS セレクタで要素を選んで処理できるのが魅力的ですね。そんな jQuery ですが、CSS セレクタの書き方次第で速度が大幅に変わってきます。ここでは jQuery の内部処理を疑似コードで示しつつ、jQuery を高速に使うためのポイントを5つに絞って紹介します。何度も同じセレクタを実行しないクラスだけを指定するのは禁止#id を積極的に使う途中までの結果を再利用する子供セレクタ(>)を使うと速くなることがある※ この記事は jQuery 1.2.6 のソースコードを元に記述しています1. 何度も同じセレクタを実行しない改善前 // 例題 1 $("div.foo").addClass("bar"); $("div.foo").css("background", "#ffffff"); $("div.foo").click(function(){

    chiko
    chiko 2009/07/15
  • JavaScriptからFlashにフォーカスを与えられるよ - てっく煮ブログ

    asこんな記事を見つけたけどそんなことないよ。Flash上でキー操作をするにはFlashにフォーカスが当たっていなければならない。フォーカスが当たっていない時にJavaScriptからフォーカス出来るか実験してみた。http://codefairy.org/etc/focus-swf.html結果。Firefox 3: 一度手でフォーカスを当てる操作をした後だとフォーカス出来るSafari 4: 無理Chrome 2: 無理IE 8: 無理むり! less - JavaScriptからFlashにフォーカスを与えられるかこの記事ではフォーカスを得られるかどうかを MXML の Application.focusIn イベントで判別してるんだけど、ここに問題がある。簡単にまとめると、Flash を扱う場合にはフォーカスといってもブラウザが管理しているフォーカスFlash が管理しているフォー

  • "XRay" - ActionScript3 版の Firebug みたいなデバッグツール - てっく煮ブログ

    asActionScript 2 用のデバッグツールとして有名だった XRay が ActionScript 3 に対応したようです。DisplayObject の階層を表示してくれたり、オブジェクトのプロパティを修正したり、ログ用のコンソールになったりと機能豊富です。しかも、Flash CS3 だけでなく、Flex や AIR でも使えるようです。ということで、早速、試してみました。ダウンロードしてソースコードに2行追加するだけXRay のソースコードを拾ってきます。Google Code にあるので、SVN で拾ってきましょう。http://osflash-xray.googlecode.com/svn/trunk/as3/trunk/では、自分の Flash に仕込んでみましょう。ActionScript のソースコードに import 文を追加します。 import com.bli

  • AS3 でヒストグラムを作る - Photoshop みたいなレベル補正

    as前回のスライダ作成で準備は整いました。いよいよ、今回は Photoshop のレベル補正機能もどきを完成させます。まずは完成品から。補正後のヒストグラムも表示してみました。スライダの場所によってどのような影響がでるのかが一目瞭然ですね。3つのスライダの意味Photoshop のレベル補正には黒、灰色、白の3つのスライダーがあります。黒がシャドウ(レベル0)の指定、白がハイライト(レベル255)の指定です。白のスライダより右の階調は白飛びする、と言い換えると分かりやすいかもしれません。白と黒のスライダだけを実装するなら、ColorTransform でいけますが、問題は灰色のスライダです。灰色のスライダは中間調(レベル128)を表し、ガンマ補正で調整しているようです。ガンマ補正の数式は次のようになります。x' は変換後の明るさを表します。xm は x の最大値です。数式がややこしいですが

  • ActionScript 3.0 でラベリング (改) - てっく煮ブログ

    asid:flashrod さんのところで、AS3 でラベリングする方法が紹介されています(→AS3で画像処理入門(その3) )。BitmapData について調べているとき 第1回と第2回 を読んで、すごく参考にさせていただきました。今回、そのお礼も兼ねて(?)、第3回にツッコミをいれてみます。flashrod さんはラベリングを自力で実装されてますが、floodFill を使えば一発です。ペイントツールでいうところの「バケツ」に相当するメソッドです。斜め方向に飛び地になったピクセルが塗られないことも確認しました。 /** ラベリング * @param src ラベリング対象ビットマップデータ(モノクロ2値ビットマップ) * @return ラベリングデータ(整数の2次元配列) */ public static function labeling2(src:BitmapData):Bit

  • 各国の伝統色をHSV空間に配置してみた - てっく煮ブログ

    前回の 日の伝統色をHSV空間に配置してみた が意外に面白かったので、今度は世界各国のデータで試してみた。日自然界にある色を中心に、埋め尽くすかのように沢山の色があるのが分かります。色名の由来がまた、素敵なんだよなー。中国に近い。というよりかは、日がもろに中国の影響を受けたんだろうな。イギリス日中国とは全く違う分布になっていますね。教科書的に均等にばらついていて円に近い。果物とか花とか宝石の名前が多いのかな。フランスイギリスと同じくばらついているんだけど、右上の紫と、右下の黄色が充実しているのが印象的。紫色が充実しているのは、ワインを表現するため!? 黄色が充実してるのは、チーズを表現するため!?アメリカ彩度が高い色(円の外側)が充実しまくっている。超原色だぜ、USAアフリカ特徴的な原色。水色、緑は、他の国には登場すらしていないぐらいに強烈。8bit ゲーム機のような色だ。

  • as3Query: alpha version (New Wave ActionScript) [TECH-NI Blog]

    as3Query is an ActionScript3.0 port of John Resig's exellent JavaScript library jQuery 1.2.1. This port is released under the MIT and GPL licenses(as is the original jQuery). Documentation is NOT available. Please refer to the original jQuery Documentation. Most features are ported except for Ajax methods. Download Full source code for the engine and examples is hosted on a Subversion(SVN) server

  • 大旦那のお気に入りの裏側

    大旦那のお気に入りの技術的な側面に関して解説してみました。 大旦那のお気に入りデータの取得 まずは大旦那のお気に入りを調べるところから始めました。はてな ID からお気に入りを取得する部分は PerlHTML::TreeBuilder::XPath を使って書いてみました。 sub getFavorites{ my $id = shift; my $res = URI::Fetch->fetch(sprintf 'http://b.hatena.ne.jp/%s/favorite', $id) or die URI::Fetch->errstr; my $tree = HTML::TreeBuilder::XPath->new; $tree->parse($res->content); $tree->eof; # /user1//user2//user3/ my $favorites

    大旦那のお気に入りの裏側
    chiko
    chiko 2008/01/05
  • Ruby で Web2.0(笑) - てっく煮ブログ

    rubyRuby 勉強第2弾。前回の スイーツ(笑)で関数定義 に引き続いて、今回はクラスと Mix-in を試してみた。ModuleO に O というメソッドを定義しておき、クラスメソッド、インスタンスメソッド、特異メソッドとして Mix-in している。 # モジュールを定義 module ModuleO def O(*args) # クラスを取得する cls = self.kind_of?(Class) ? self : self.class # .0 を出力 print "#{cls.to_s}.0" # 引数があれば出力 unless args.empty? print "(#{args[0].to_s})" end # 改行 puts end end # クラスメソッドとして Mix-in class Web2 extend ModuleO end # インスタンスメソッドとし

    chiko
    chiko 2007/12/10
  • ActionScript 的超絶技巧発表会に参加してきました - てっく煮ブログ

    asTwitter 経由で企画された「ActionScript 的超絶技巧発表会」に参加してきました。日帰りで東京まで行ってきましたが、往復交通費以上に得るものは多かったです。参加条件が「発表する」だったため、ほんとにレベルが高かったです。かなりの自信作を持っていったつもりだったのに色あせてしまいました。ひとまず、勉強会まとめエントリとして投下しておきます。半分感想。HTML/JavaScript から SWF をいじる話(FlashBug) by muraken さんJavaScript 経由で MovieClip を作成したり、パラメータをいじったり、中の情報を覗いたりする。AS2。→関連エントリ作りこんでいけば、Flash 版デバッグ環境としても便利なものになりそう。Flash デバッグ環境って、あんまりいいのないですしね。クロスブラウザな Canvas として公開すればかなりヒット

    chiko
    chiko 2007/10/01
  • てっく煮ブログ - Apollo 触ってみた。すごすぎ。

    Apollo のα版がリリースされたので、さっそく触ってみました。初日はランタイムをインストールしてサンプルを動かしてみました。コンパイルは時間がなくてまだ試せてません。2007.2.24追記:HTML+JS版 Apollo アプリを作ってみる で解説文章を書きはじめていますApollo を知らない人のために、おおざっぱにざっくり説明しておくと、Apollo は Web アプリを作るようにローカルアプリケーションを作れるようになるステキなライブラリです。Flash だけに縛られているわけではなく、Flash, Flex, HTML, Ajax などを統合して利用することができます。イメージはこんな感じ(Adobe の apollo_docs_alpha1_031907.zip からの引用)。図からもわかるように、HTML/JavaScript だけで Apollo API を利用してローカ

    chiko
    chiko 2007/03/20
  • 1