サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
都知事選
matsu4512.hatenadiary.org
今回は主にSpringCameraとLine3Dを使って流星の動きをカメラが追いかけていくようなFlashを作ってみました。 作品はこちら Shooting star on the attractor road - wonderfl build flash online スクリーンセーバー化もしてみたので使いたい方はこちら Flashのスクリーンセーバー化のやり方はこちら。 プログラムの流れ 1.SpringCameraの設定 SpringCameraとはターゲットに指定した物体を自動で追っていくカメラ。 2.球が進む座標の計算(軌跡はローレンツアトラクタ) 3.球を移動 4.球が進んだ部分に線を引く 5.球の周りにパーティクルを発生 6.パーティクルの位置を更新 7.2〜6を繰り返し実行 色の変化はFrocessingを使ってHSV色空間でやっています。 以下にコードを載せておきます。
なんだか久しぶりにFlashを作りたいという衝動にかられたので、 キラキラ系を一気に3つ作ってみました。 このキラキラを表現するために参考にさせていただいたのがこちら キラキラ - wonderfl build flash online キラキラ2 - wonderfl build flash online キラキラ3 - wonderfl build flash online ソースはwonderflに飛んで見てください。 やっぱりFlashは楽しい!
急に色々なAPIを試してみたくなったので簡単なサンプル的なものを作った。 こんな感じ ソース 今回使ったAPIはこちらのサイトのものを使わせていただきました ユーザーローカルWikipedia API - ウィキペディア情報をサイトで利用できるAPI Flexでリクエストの送り方 まず、HTTPServiceタグ <mx:HTTPService url="http://wikipedia.simpleapi.net/api" resultFormat="e4x" id="wiki" result="wiki_result(event);"> <mx:request> <keyword>{query.text}</keyword> </mx:request> </mx:HTTPService> url リクエストを送る先のURL ここにはパラメータは書かない。 resultFormat 受け
色調変換(sigmoid)を追加 ソースは右クリックで見れます。 まず、シグモイド関数とは という式で表される。 この関数を色調変換に用いると、画像の明暗がハッキリする。 プログラム中では上の式を変形して (f(x):変換後の画素値, x:元の画素値, M:255, a:パラメータ) を使っている。 aはパラメータでこの値が大きければコントラストがより強調されて 小さければ逆に強調されなくなります。 コードはこんな感じで書いています。 for(var i:uint = 0; i < 256; i++){ a = (Number(i - 128) / 255.0) * gamma; color_tbl[i] = int(255.0/(1.0 + Math.exp(-a))); if(color_tbl[i] > 255) color_tbl[i] = 255; } 変換した例 元画像 a =
今回はヒストグラム伸長処理とガンマ変換を実装しました。 ついでに、JPEG形式での画像の保存もできるようにしておきました。 こんな感じ (ソースは右クリックで表示できます) ヒストグラム伸長処理のソースはHist_ex.as ガンマ変換のソースはGamma_correction.as 解説 ヒストグラム伸長処理 画像の各画素値の最大が255、最小が0となるように各画素値を伸長する処理。 明るすぎたり、暗すぎたりする画像にこの処理をすると見やすい画像になるそうです。 アルゴリズム 画素値の最大(max)、最小(min)を求める。 そしてmax,min,変換前の画素値(c)から新たな画素値(new_c)をもとめる。 計算式 new_c = (255*(c-min))/(max-min); 暗めの画像がなかったので分かりにくいです 処理前 処理後 ガンマ変換 画像をディスプレイなどに表示させると
ダウンロード SWFファイルからスクリーンセーバーの作り方 まず、InstantStormというアプリをダウンロードします。 こちらからどうぞ そして、それをインストールして起動 Create new brank projectをクリック そして、タイトルを入力して スクリーンセーバー化するSWFファイルを指定 次にFlash Player のバージョンを指定 最後にCreateをクリックするとインストーラが生成されて、それを実行するとスクリーンセーバーの出来上がり! 以外と簡単に出来てしまいます。
初めてText3Dを使って時計を作ってみた こんな感じ (ソースは右クリック) プログラム解説 時計の機能は昨日作ったものと基本的には同じ。 Text3Dの使い方 まずはLetter3DMaterialを生成して設定する。 var mat:Letter3DMaterial=new Letter3DMaterial(); mat.fillColor=0xFFFFFF; 次にText3Dの生成 second1=new Text3D("0123456789", new HelveticaBold(), mat); 引数は左から文字列、フォント、Letter3DMaterial これで、"0123456789"という文字列の3D空間に表示できるオブジェクトができました。 ここで、Text3Dクラスにはlettersというプロパティがあり、一文字ずつのDisplayObject3D型の配列です。 こ
こんな感じ ソースは右クリック→ソースの表示 今回、勉強になったことはbrowseで選択した画像をBitmap描画するところ。 private function onComplete(event:Event):void{ //ローダーに読み込む loader.loadBytes(file.data); } private function loadComp(event:Event):void{ //ロードした画像をBitmapに描画 var l:Loader = (event.target as LoaderInfo).loader; bmpData = new BitmapData(l.width, l.height, false); bmpData.draw(l.content); view.bitmapData = bmpData; browse_btn.enabled = true
ファイルやデータベースを使わずに簡単にデータの保存が出来ます。 ソースコード <?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" initialize="init()"> <mx:VBox paddingLeft="12" paddingTop="12"> <mx:CheckBox id="a_chk" label="項目A" click="save()"/> <mx:CheckBox id="b_chk" label="項目B" click="save()"/> <mx:CheckBox id="c_chk" label="項目C" click="save()"/> </mx:VBox> <mx:
久しぶりにAIRがやりたくなったので、まだ自分が試したことがないファイルとディレクトリ操作に関して勉強しみました 勉強した部分のまとめ よく使いそうなFileクラスのプロパティ exists: 指定したファイル、フォルダが存在するかどうかを調べる isDirectory: フォルダかどうかを調べる parent: 親フォルダを調べる size: ファイルサイズを調べる desktopDirectory: デスクトップへアクセス documentDirectory: ドキュメントディレクトリへアクセス userDirectory: ユーザーフォルダにアクセス メソッド copyTo: ファイル、フォルダをコピーする createDirectory: フォルダの生成 createTempDirectory, createTempFile: 一時フォルダ、ファイルの生成 deleteDirect
ブログの移転をします。 次回からはこちらに記事を書いていきたいと思います。 matsu4512.jp 単純なシーン遷移のサンプル ソース package { import jp.progression.*; import jp.progression.casts.*; import jp.progression.config.*; import jp.progression.debug.*; /** * ... * @author matsu4512 */ public class Main extends CastDocument { public function Main() { super( "index", IndexScene, new WebConfig() ); } /** * SWF ファイルの読み込みが完了し、stage 及び loaderInfo にアクセス可能になっ
このページを最初にブックマークしてみませんか?
『Every day is Carnival』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く