『よくわかるiPhoneアプリ開発の教科書』
森巧尚・著
毎日コミュニケーションズ
2,940円
漠然としたタイトルの本ですね。その点はハッキリ言って失敗だと思います。
が、その内容はかなり有益ですよ。買って損のない本だと思います。
アプリケーションは下記の二つの側面に分けられますよね。
- 外見、つまりユーザインターフェイス
- 機能、つまりそのアプリ自身のはたらき
普通アプリ開発はコードをガリガリ書いておこなうわけですが、iOS アプリの場合、上記の一つめについてならコードでガリガリ書かなくても済ます方法があります。
Interface Builder なら、画面上にラベルやボタン、アラート、スライダー、スイッチなどの必要なパーツを配置する、という、視覚的かつ簡単なやり方で作ることができます。
この「Interface Builder を使えば、iPhone アプリの外面がこんなに簡単に作れますよ」という解説に特化したのがこの本です。
ストレンジ・アトラクター
フラクタルを学んだらカオスも学びたくなるのは自然の摂理。
ってなわけで、カオスのビジュアライズをいろいろ勉強したい所存。
カオスのビジュアライズってもいろいろあるようですが、まずは分かりやすそうな印象を受けたストレンジ・アトラクターについて、ActionScript を組んでみようかな、と。
ジュリア集合
マンデルブロ集合の話をすると、もうひとつの集合が必ずといって頻度で話題になりますね。そう。ジュリア集合です。
聞くところによるとジュリア集合の方が古いそうな。マンデルブロはジュリア集合をいろいろ研究しているうちにマンデルブロ集合のアイディアに辿りついたとか。ジュリア集合の特殊な形がマンデルブロ集合、という感じなんですかね。
そんなわけか、マンデルブロ集合とジュリア集合は基本的には同じようなもん。どちらもその漸化式は、マンデルブロ集合のときにさんざん出てきた下のものです。
zn+1 = zn ^ 2 + c;
マンデルブロ集合は、複素数 z の初期値 z0 を 0 + 0i に固定し、複素数 c の方は複素数平面を走査する形で値を切り替え、その都度発散の評価をおこなう、というものでした。
ジュリア集合では、固定するのは c の方です。そして複素数平面を走査する形で値を切り替えるのは z0 です。
z0 と c の違いがありますが、やっていることは同じですね。
オイラーの公式を使って複素数の冪乗を簡単におこなう
前回の最後で、複素数の冪乗は、指数の値が大きくなるほどに面倒くさくなることを確認しましたが、この間 Newton 別冊「虚数がよくわかる―”ありもしない”のに、難問解決に不可欠な数」というムックを読んでいたら、複素数の乗算を簡単に計算する方法が載ってました(P138、139)。
直交座標と極座標の相互変換
ActionScript による直交座標と極座標の相互変換は以下のとおり。
Point.poler は不使用で。
x:直交座標におけるX座標値
y:直交座標におけるY座標値
r:極座標における距離
t:極座標における偏角(ラジアン値)
とする。
