なんか最近おかしいぞ?

おかしい事のメモ Flash Google FireFox 地球

二股でも良いですか?・・・・
FlexBuilderは、便利だけど、まだまだ分からない事が沢山だ・・・・・。でも、Flash CS3も便利だし、Flashとは、付き合いも長いし・・・・。う〜ん、なんか、新しい彼女が出来たみたいな感じ。
今回は、追加する『marker』に画像を読み込めるようにしてみました。
GoogleMapの下のテキストインプットに『http』から始まり、『jpg,png,gif』で終わる正しいURLを入力すると、読み込む画像が変更になります。
サンプルで、次のアイコンも用意しましたが、サーバーから拒否されなければ、ビットマップにしてないので、どんな画像でも読み込めます。
http://blog-imgs-21.fc2.com/j/u/i/juicedesign/heartIcon.png
http://blog-imgs-21.fc2.com/j/u/i/juicedesign/columnIcon.png
あ、上のpngで試すと分かるけど、透過アイコンは、gifよりpngが良いみたい
本当は、ビットマップにしたかったんだけど、Flexだとローカルの実行時にセキュリティー違反だって怒られて、Flash CS3が恋しくなりました。(涙)なので、後回し。
まったり、まったり・・・・
久しぶりにFlexBuilder3を起動したな〜。今回は、GoogleMapにマーカーを追加してみました。設定が、UMapより面倒だけど、特に問題は無いと(笑)
そういえば、関係無いけど、debug版のFlashPlayerにしてから、ブログパーツとかで警告が出まくって出まくって、FireFox3が操作出来なくなるページがある・・・(涙)
com.google.maps.overlays.Marker
maker(latlng:LatLng,options:MarkerOptions);
com.google.maps.overlays.MarkerOptions
icon>カスタムアイコンの指定。
radius>アイコンの大きさ(半径)
fillStyle>マーカーの塗り
strokeStyle>アイコンの枠線のスタイル
label>アイコンのラベル
labelFormat>ラベルのテキストフォーマット
iconAlignment>アイコンの位置
iconOffset>アイコンのオフセット
tooltip>ツールチップのテキスト
draggable>ドラグ可能かどうか?
gravity>ドラグ中の浮き上がり?
hasShadow>影をつけるか?つけないか?
カスタムアイコンサンプル
var makerOp:MarkerOptions=new MarkerOption({
draggable:true,
gravity:50,
hasShadow:true,
icon:new catIcon(),
iconAlignment:MarkerOptions.ALIGN_HORIZONTAL_CENTER
+MarkerOptions.ALIGN_BOTTOM});

marker.setOptions(makerOp);
『iconAlignment』の中央は、水平>『MarkerOptions.ALIGN_HORIZONTAL_CENTER 』、
垂直>『MarkerOptions.ALIGN_VERTICAL_CENTER 』です。
マーカーを、クリックすると、InfoWindowが開きます。『InfoWindow』は、『InfoWindowOptions』で設定します。HTMLタグが使えて、スタイルシートも設定出来ます。
GoogleMapの『InfoWindow』は、UMapの『InfoWindow』の様にスクロールバーが出たりしないので、content又は、contentHTMLを多すぎると・・・・・。
あ、カスタムアイコンは、flashのアイコンを利用しないで『jpg,gif,png』の画像ファイルを使用する事も出来ます。
<mx:Image source="@Embed('images/icon.gif')" visible="false" id="iconImage" />
<mx:Script>
var customIcon:DisplayObject = iconImage.content;
</mx:Script>
クリックで回転する世界地図
マップの右半分をクリックすると、右回転。左半分だと左回転です。回転中にクリックすると停止します。並べればスロットみたいになるかと(笑)
回転動作を開始するとblurフィルターの効果でグルグル感がアップするようにしてみました。
このスピードではみ出す分をマスクで隠すと、処理に手間取るらしくマップ画像が上手く表示されないのでマスクしてません。(400px*400px mapLevel:2)
多分、回線の遅い環境では、上手く動作しないです。あ、マップのサイズを小さくして、レベルを1にしたから大丈夫かな・・・・・。
GoogleMapでは、『BitmapData.draw(map);』と出来無いって噂は、聞いてたけど本当に出来なかった。グレーのマップの背面がdrawされるだけです。
UMapで試してみたらUMapでは、『BitmapData.draw(map);』は、正しく実行されます。
『BitmapData.draw(map);』が使える『UMap』と使え無い『GoogleMap For Flash』・・・・・Flash CS3版のUMap、Flex版のGoogleMap・・・・う〜む、UMapが使い易いな〜・・・・・。
アレレ?FlexBuilder3でパブリッシュしたFlashって・・・
『Google Map for Flash』のコントローラーは、コンストラクタで作成して、マップに、『addControl』で追加します。
位置の設定は、『Control.setControlPosition(ControlPosition);』ですが、ControlPositionで『ANCHOR_BOTTOM_RIGHT』を使うと地図のcopyrightの位置が左にズレます。
なので、サンプルの様にマップの外部(下)に表示したい場合は、『ANCHOR_BOTTOM_RIGHT』は、使わずに『ANCHOR_TOP_RIGHT』を使った方が吉かと・・・・。
さて、前回と一緒で、コントローラーは、ソレゾレの『ControlOptions』で、ちょこっとカスタマイズ出来ますが、大した事は出来ません。マップの外部から操作するコントローラーを作れば良いんけど・・・・・。

»NEXT PAGE