archive-com.com » COM » N » NITOYON.COM

Total: 757

Choose link from "Titles, links and description words view":

Or switch to "Titles and links view".
  • Box2DFlashAS3 の単純なサンプルと使い方 - てっく煮ブログ
    physScale 160 40 i 20 m physScale m world CreateBody bd density 0 以外に設定すると 固定されない 自由落下する ようになる friction 摩擦ぐあいを表すパラメータ 0だとよく滑る restitution はね返り具合 4 シミュレーションの開始 enterFrame の中で次の関数を実行する m world Step 1 30 10 第一引数 timeStep は1回のステップで進める秒数 第二引数 iterations はシミュレーションの精度 小さいとパフォーマンスがよくなり 大きいと正確になる めり込んだりしない 5 描画 Box2dFlashAS3 は もともとが C のコードなだけに 描画処理が含まれていない 自分で描画しなきゃならないのがめんどくさいといえばめんどくさいが 物理エンジンといえば地味な見た目になりがちなので 自分で装飾できるのは魅力的にも思える 例えば BitmapData のテクスチャを張ったり もしくは BitmapData 上に描画したりしてもよい PV3D で 3D 空間に表示したりしても面白いかもしれない ここでは デモのソースコードから四角形を描画するコードだけを借用した 実際には ヒモを描画するコードが必要だったりするので それらは TestBed Test as をご覧いただきたい ソース 106行ありますよ ダウンロードは こちらから 追記 1 4 3 では import Engine を import Box2d に変更すれば動きます package import Engine Dynamics import Engine Collision import Engine Collision Shapes import Engine Common Math import flash events Event import flash display import flash text TextField SWF backgroundColor ffffff width 350 height 200 public class Box2dSimpleSample extends Sprite private var m world b2World private var m physScale Number 10 private var count int 0 loop counter public function Box2dSimpleSample stage scaleMode noScale stage align TL var text TextField new TextField text text CLICK TO START text x text y 100 addChild text stage addEventListener click function event Event void text visible false init addEventListener enterFrame function event Event void Update private function init void count 0 Construct a world object var worldAABB b2AABB new b2AABB worldAABB minVertex Set 100 0 100 0 worldAABB maxVertex Set 100 0 100 0 var gravity b2Vec2 new b2Vec2 0 0 10 0 m world new b2World worldAABB gravity true Create floor var wallSd b2BoxDef new b2BoxDef wallSd extents Set 300 m physScale 2 10 m physScale wallSd localRotation Math random Math PI 8 var wallBd b2BodyDef new b2BodyDef wallBd position Set 300 m physScale 2 250 m physScale wallBd AddShape wallSd m world CreateBody wallBd Add bodies var sd b2BoxDef new b2BoxDef sd density 1 sd friction 0 2 var bd b2BodyDef new b2BodyDef bd AddShape sd for

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/11/27/box2d-simple-sample/ (2016-02-13)
    Open archived version from archive

  • mxmlcでBox2DFlashAS3のサンプルをビルドする方法 - てっく煮ブログ
    aboutTextN は定義されていません という例外が出るので まずはこれを解決 ソースを見てみると 50行目に次のような内容が textfield pointer m aboutText m aboutTextN m aboutTextN は Main as には含まれていない おそらく PhysTest fla で定義されたシンボルなのでしょう ってことで スクリプトを次のように修正 textfield pointer m aboutText new TextField m aboutTextN addChild m aboutText これで実行時の例外は出なくなった コンパイル オプション Box2DFlashAS3 の移植が中途半端で コンパイル時に警告が大量に出てしまう 警告をよく見ると 変数や戻り値の型宣言が行われていないようだ CS3 では警告すらでないのかな ということで コンパイル オプションを次のようにしてみた mxmlc strict false warnings false default background color 414647 default size 640 360 Main as 見やすくしたらこうなる mxmlc strict false warnings false default

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/11/26/flex2-box2dflashas3/ (2016-02-13)
    Open archived version from archive

  • UNIQLO_GRID みたいに「うねうね」揺れる線 - てっく煮ブログ
    マウスの移動数 private const WAIT int 20 マウスの移動数の閾値 private const DISTANCE int 20 マウスの移動距離の閾値 private const RANDOM Number 3 揺れ具合 public function UneuneLine stage addEventListener mouseDown mouseDownHandler addEventListener enterFrame enterFrameHandler private function mouseDownHandler event MouseEvent void イベント登録 stage addEventListener mouseMove mouseMoveHandler stage addEventListener mouseUp mouseUpHandler パラメータ初期化 count 0 start new Point event stageX event stageY cur start clone prev start clone controls null anchors start private function mouseMoveHandler event MouseEvent void cur x event stageX cur y event stageY count if count WAIT count WAIT Point distance prev cur DISTANCE コントロールポイント追加 prev cur clone controls push cur clone count WAIT else if count WAIT 2 Point distance prev cur DISTANCE アンカーポイント追加 prev cur clone anchors push cur clone コントロールポイントの位置を修正 var p1 Point Point anchors anchors length 2 var c Point Point controls anchors length 1 c x c x 2 p1 x cur x 2 c y c y 2 p1 y cur y 2 count 0 private function mouseUpHandler event MouseEvent void stage removeEventListener mouseMove mouseMoveHandler stage removeEventListener mouseUp mouseUpHandler start null cur null private function enterFrameHandler event Event void graphics clear if start 始点へ移動 graphics lineStyle graphics moveTo anchors 0 x anchors 0 y ベジェ曲線を描画 graphics lineStyle 1 0

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/11/21/uniqlo-grid-line/ (2016-02-13)
    Open archived version from archive

  • AS で別ドメインの画像を読み込むときの注意点 - てっく煮ブログ
    BitmapData draw を使って BitmapData に転写しようとすると セキュリティサンドボックス侵害の例外が発生するのだ セキュリティサンドボックス侵害 BitmapData draw http localhost ImageLoader1 swf は http img mixi jp img basic common mixilogo001 gif にアクセスできません ポリシーファイルが必要ですが このメディアがロードされたとき checkPolicyFile フラグが設定されませんでした 同様に Loader で読み込んだ音声ファイルを SoundMixer computeSpectrum しようとしたときにも例外が発生する このように 外部ドメインからロードしたメディアに対して ピクセルデータやオーディオデータに直接アクセスすることは許可されない 表示 再生はできるのに そのメディアを構成するデータを見ることはできない というわけだ 対処法は以下の2通り 1 crossdomain xml が用意されている場合 画像が置いてあるドメインのクロスドメインポリシーファイル いわゆる crossdomain xml で アクセスが許可されている場合 データとしてアクセスできる 追記 AS2 では crossdomain xml があっても BitmapData draw できないらしい 例えば Flickr のようなサービスでは 全てのドメインからのアクセスを認める設定が 記述されている xml version 1 0 DOCTYPE cross domain policy SYSTEM http www macromedia com xml dtds cross domain policy dtd cross domain policy allow access from domain secure true cross domain policy 一方 mixi にも crossdomain xml はあるのだけど 現時点では 任意のドメインからのアクセスは許可されていない xml version 1 0 DOCTYPE cross domain policy SYSTEM http www macromedia com xml dtds cross domain policy dtd cross domain policy allow access from domain mixi jp secure true cross domain policy では 実際にロード時に crossdomain xml を読み込ませてみよう といっても2箇所修正するだけだ LoaderContextを準備 var context LoaderContext new LoaderContext true var loader Loader new Loader var req URLRequest new URLRequest http www example com sample gif loader load req context 第2引数に context を渡す addChild loader LoaderContext の checkPolicyFile を true にするところがポイント これ以外に Security loadPolicyFile メソッドを使って 事前に読み込んでおく方法もある loadPolicyFile を使うと crossdomain xml 以外の URL からクロスドメインポリシーファイルを読み取ることができる crossdomain xml が存在しない場合 もしくは許可されなかった場合にも 画像はロードされる ロードした段階では例外も発生しない BitmapData draw しようとした段階になって初めて例外が出るので注意が必要だ では どうやって許可されたかを調べるかというと 実際に試してみて例外を拾うのが一番簡単 loader contentLoaderInfo addEventListener complete function event void var bmd BitmapData new BitmapData loader width loader height try bmd draw loader catch e SecurityError trace e toString もう1つの方法として loader contentLoaderInfo childAllowsParent で調べることもできる loader contentLoaderInfo addEventListener complete function event void if loader contentLoaderInfo childAllowsParent あとはお好きに どちらでもお好きな方を 具体例を1つ assets2 twitter com から動的に twitter のロゴを読み取って getPixel している ロゴの上にマウスを持っていくと マウスの下の色が表示される ソースは こちら 44行 追記 twitter com の crossdomain xml の制約が強化されて getPixel 出来なくなりました Firebug の Net タブを見れば crossdomain xml とロゴを拾ってきていることが確認できるだろう 2 crossdomain xml が用意されていない場合 諦めろ もしくは 自鯖に proxy となる CGI を設置するしかない おまけ その他 注意点 気づいたことなど crossdomain xml が用意されているサイトでも BitmapData

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/11/12/crossdomain-img/ (2016-02-13)
    Open archived version from archive

  • AS3のアニメーション本が出るらしいですよ - てっく煮ブログ
    メーカー ボーンデジタル 発売日 2007 10 30 メディア 単行本 Amazon のレビューを見る 出版社のサイト に目次がありますが 三角関数 行列といった数学の話から 加速度 バネ 摩擦などの物理の話 さらにはマウスやキーボードを使ったインタラクションの話まで一通り押さえてくれてるようです Flex2 と Flash CS3 の両方に対応しているのもありがたいところ ページ数はなんと550ページ 値段も圧巻の7 350円 日本語で詳しく書いてある書籍としては貴重です 初めて Flash に手をだそうという人にも そろそろ AS3 を勉強したいと思ってる人にもよさそうです あと アニメーションっぽいことに手を出してみたいプログラマさんにもいいかもしれませんね 興味のある人は 1冊あたりのアフィリエイト効果がでかそうなので 買ってみてください 追記 fladdict net さんとこにも記事が出てます AS2版は良著 買い らしいですよ 奥さん fladdict net blog 神の書 Make Things Move 日本語版発売 Tweet 2007年10月27日 編集履歴 ActionScript 書籍 私のアイデア出しの手法 Flex勉強会 京都が開催されますよ Please enable JavaScript to view the comments powered

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/10/27/as3-animation/ (2016-02-13)
    Open archived version from archive

  • ActionScript がイケてるたった1つの理由 - てっく煮ブログ
    1ヵ月後に何か出そう と考えたときには選択できない と こうやって比較してみると ActionScript 以外の選択肢はなかったんだ JavaScript が選択肢にない という訳ではないんだけど JavaScript で提示できる UI のパターンって ここ数年の Ajax フィーバーで出尽くしたような気がしてる 探せば見つかるんだろうけど ActionScript の世界にはボロボロと大ネタが転がっていることを知ってしまった以上 なかなか引き返す気にはならない ActionScript を勉強していると Script aculo us を初めて見たときに感じた感動と同じぐらいの感動に3日に1回は出会う JavaScript ではScript aculo us以来 見た目に関する感動するスクリプトにはほとんど出会っていない この違いってすごくない Flash は HTML JavaScript に比べてユーザビリティが悪いよね と思ってる人も多いと思う 私もそう思う だけども そんな現状だからこそ Flash を使った使い勝手のいい何かを作ってみたい 表現力は HTML より格段に上なんだから はまったときはすごいはずなんだ まだ何も作ってないんだけど もし 3年後に Silverlight ランタイムが Flash Player よりも多くの普及率を誇るようになったとしたら いま WPF Silverlight で遊んでないのと同じ理由で ActionScript を切り捨てているかもしれない だって 多くの人に見てもらいたいやん 多くの人をスゲーって言わせたいやん この理由だけで いま ActionScript を選んでいる 私にとっては十分妥当な理由だ Tweet

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/10/16/why-i-am-learning-actionscript/ (2016-02-13)
    Open archived version from archive

  • PotrAs 高速化 - てっく煮ブログ
    function doHogehoge Point var ret Point new Point ret x x ret y y return ret 後 function doHogehoge p Point void p x x p y y 例3 配列の長さを覚えておく 前 for var i int 0 i array length i 後 var len int array length for var i int 0 i len i これだけで 処理速度がたいたい 2 3 ぐらいになりました 他にも ループが入り組んでるところで Math abs をインライン展開したりしたけど 目に見えるほどの効果を感じたのは上の3つぐらいです トレース処理は6つの部分から成り立っているのですが 細かな速度変化は次のようになってます サンプル画像を10回トレースしたときの所要時間 path 1917ms

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/10/15/potras-keyboard/ (2016-02-13)
    Open archived version from archive

  • AS3 でヒストグラムを作る (4) - 周辺分布 - てっく煮ブログ
    2007 02 メディア 単行本 Amazon のレビューを見る 今回のソースコードは以下に 89行 package import flash display import flash events Event import flash geom SWF width 400 height 400 public class Histogram4 extends Sprite private var canvas Sprite private static var SIZE uint 200 public function Histogram4 stage align TL stage scaleMode noScale 描画用キャンバス準備 canvas new Sprite addChild canvas initCanvas ドラッグで描画 var dragging Boolean false var count int 0 間引き用のカウンタ canvas addEventListener mouseDown function e void canvas graphics moveTo mouseX mouseY canvas graphics lineTo mouseX mouseY dragging true canvas addEventListener mouseMove function e void if dragging count count 12 count 1 0 canvas graphics lineTo mouseX mouseY 12回に1回 ヒストグラムを更新する if count 0 updateHistogram canvas addEventListener mouseUp function e void dragging false キャンバスの外でクリックしたらクリア stage addEventListener click function event Event void if event target stage initCanvas キャンバスを初期化する private function initCanvas void canvas graphics clear canvas graphics lineStyle 1 0x808080 canvas graphics beginFill 0xffffff canvas graphics drawRect 0 0 SIZE SIZE canvas graphics endFill canvas graphics lineStyle 2 0 updateHistogram ヒストグラムを描画する private function updateHistogram void graphics clear BitmapData に描画 var bmd BitmapData new BitmapData SIZE SIZE bmd draw canvas var num uint graphics lineStyle 1 0 ヒストグラム分析 描画 for var i int 0 i SIZE i X 成分のヒストグラム

    Original URL path: http://tech.nitoyon.com/ja/blog/2007/10/12/as3-histogram4/ (2016-02-13)
    Open archived version from archive



  •