2008年9月29日月曜日

[AS3] Viewport3D

Viewport3Dのコンストラクタ定義

Viewport3D(
viewportWidth:Number = 640,
viewportHeight:Number = 480,
autoScaleToStage:Boolean = false,
interactive:Boolean = false,
autoClipping:Boolean = true,
autoCulling:Boolean = true
)
  • viewportWidth:ビューポートの幅
  • viewportHeight:ビューポートの高さ
  • autoScaleToStage:ステージサイズにビューポートのサイズをフィット
  • interactive:インタラクティブモード?(未確認)
  • autoClipping:ビューポート矩形範囲外をクリッピング
  • autoCulling:ビューポート矩形範囲外ポリゴンをカリング
-------------

Spriteを継承してるので、ステージ上での位置指定や背景色指定は

viewport.x = 200;
viewport.y = 200;
viewport.opaqueBackground = 0xFF0000;

とかいう感じでできる。

widthとheightに関しては

viewport.width = 200;
viewport.height = 200;

だと、当然ながらビューポート内のオブジェクトごと大きさが変わるので、ビューポート矩形のみ幅と高さを変えたい場合は、

viewport.viewportWidth = 200;
viewport.viewportHeight = 200;

ってな具合で指定するとよろし。

===============

http://blog.r3c7.net/?p=130

2008年9月26日金曜日

[AS3] extends クラス継承

・クラス継承のやり方
===
public class Main extends MovieClip
{
 ・・・
}

[AS3] 配列アクセス演算子[]

[SWF(width = "450", height = "300", frameRate = "60",
backgroundColor = "#000000")]


===

・[]は、配列アクセス演算子。

※未解決
・SWFの部分の設定について

2008年9月25日木曜日

[AS3] papervision3d ダウンロード

papervision3d のダウンロードはこちら
http://code.google.com/p/papervision3d/

2008年9月19日金曜日

[perl] プラグマ

==========================================
プラグマ
・プラグマとは、perlのスクリプトをコンパイルするときに、
   影響を与えるコンパイルオプションのようなものです。
・先頭の文字は、モジュールと違って小文字で始まります。
==========================================
http://d.hatena.ne.jp/perlcodesample/20080107/1211421143

[perl] Prototype mismatch: %s vs %s

エラーメッセージについての言及。
もうちょっと勉強しないとな。。。

==============================
Prototype mismatch: %s vs %s

(S unsafe) 以前異なる関数プロトタイプで宣言または
定義されたサブルーチンが宣言または定義されました。
==============================
http://perldoc.jp/docs/perl/5.6.1/perldiag.pod
 ⇒Prototype mismatchで検索

2008年9月17日水曜日

[Perl] 曜日の取得

曜日の求め方

=============================================
print getwday(2003, 8, 18);

# Zellarの公式で曜日を求める
# 0:日 ... 6:土
sub getwday {
my $year = shift; # 年
my $mon = shift; # 月
my $day = shift; # 日

if ($mon == 1 or $mon == 2) {
$year--;
$mon += 12;
}
my $number = ($year + int($year / 4) - int($year/100) + int($year / 400)
+ int((13 * $mon + 8) / 5) + $day) % 7;

my @list = ('sun.','mon.','the.','wed.','thu.','fri.','sat.');


return @list[$number];
}
=============================================

2008年9月8日月曜日

[MySQL] 改行を含んだデータの登録&抽出

かなり当たり前かもしれないのだけれど、
改行を含んだデータ登録は、そのデータ登録の前に、
 「改行」を「改行コード」に変換しておく
というやり方が一般的(?)なのね。

これまで感覚的にそのことを実践してきたのだけれど、
みんなそうやっているということを知って、
ちょっと安心した感はある。

でも、DBに登録した改行コードを表示させる際に、
SQL側で置換させる方法があったことは初めて知った。
これまで自分はずっとアプリケーション側で処理していたものだから。

■MySQL-フィールドの改行を削除
http://tuevin.jugem.jp/?eid=74

=======================================
$sql = 'SELECT Replace(Replace(フィールド, Char(13), ""),
Char(10), "") FROM table WHERE id=1 ';

=======================================
以下で改行を削除できる
Replace(Replace(フィールド, Char(13), ""),Char(10), "")
=======================================

機会があったら試してみようっと。

[MySQL] 重複レコードの削除

いつも思うのだけれど、重複レコードの削除を
SQL側で行うにはどうしたらいいのだろ。

やり方としては、
 1)サブクエリ(SQL)で処理
 2)新たにテーブルを作成して処理
ってのがあるんだけれど、
やっぱりやりたいのが1)かなぁ。
2)はデータが多くなったとき面倒そうだし。

そもそも、
 「重複データは登録できないようにする」
っていうキー設定を行っておくことも大事だよね。

これは、課題だなぁ。

[MySQL] 日付型の型

これまで、日付は unixtimestamp の値をとって計算していたのだけれど、
データの型として準備してあるのだったら、
そっちを使ってみようと思ったテスト。

=======================
DATETIME 型は、

日付と時刻の両方の情報を含む値を必要とするときに使用します。
MySQL では、DATETIME 型の値の取り出しと表示は
'YYYY-MM-DD HH:MM:SS' 形式で行われます。
サポートしている範囲は '1000-01-01 00:00:00' ~ '9999-12-31 23:59:59' です
(``サポート'' 範囲より前の値でも動作する場合がありますが、
確実に動作するという保証はありません)。

DATE 型は、日付値のみ必要とし、
時刻部分は必要でない場合に使用されます。
MySQL では、DATE 型の値の取り出しと表示は
'YYYY-MM-DD' 形式で行われます。
サポートしている範囲は、'1000-01-01' ~ '9999-12-31' です。

TIMESTAMP カラム型の特性と動作は、MySQL のバージョンと
サーバでの SQL 実行モードに応じて異なります。
=======================
MySQL クライアントのバージョン: 4.1.20
http://dev.mysql.com/doc/refman/4.1/ja/datetime.html
http://q.hatena.ne.jp/1143719566


2008年9月7日日曜日

[ブラウザ] Firefox + user agent switcher編

FireFoxで携帯シミュレーターみたいなことができるらしい。
今日は発見が多い一日だなぁ。

■Firefox + user agent switcher編

http://6go.biz/moba/tool31.htm

■User Agent Switcher ユーザーエージェント一覧
http://blog.inafog.jp/archives/129

[font] さなフォン丸/SanafonMaru

かわいらしいフォント。

さなフォン丸/SanafonMaru
http://sana.s12.xrea.com/sanafonmaru.html

[google map] 静的GoogleMap

■Google マップが携帯でも表示できるようになりました
http://googlejapan.blogspot.com/2008/03/google_1433.html
http://gmaps-samples.googlecode.com/svn/trunk/simplewizard/makestaticmap.html

============
<img src="
http://maps.google.com/staticmap
?center=35.658587,139.745425
&markers=35.658587,139.745425,red
&zoom=17
&size=200x200
&key=YOUR_KEY_HERE

">
============




■GoogleMapの参考サイト
調査中にいろいろ見つけちゃったんで、スクラッチ。

========

Seis Pesos: Google Maps API 2 作り方・サンプル一覧
http://japonyol.net/editor/googlemaps.html

↑Flashなど多様されていて、今後の参考になりそう

■Google Earth API
http://googlejapan.blogspot.com/2008/06/google-earth-web.html
http://code.google.com/apis/earth/

↑マジって、感じ。後で試そう。

■Google Maps API が Flash からも使用できるようになりました
http://googlejapan.blogspot.com/2008/05/google-maps-api-flash.html

↑マジって、感じ。後で試そう。

[GPS] GPSで取得できるパラメータ

GPS情報を取得すると、下記のようなパラメータが取得できる。
結構、よく見る情報なので、スナップショット。

気づくと、緯度・経度の情報の引数が少し変わっているような。。。

■GPSで取得できるパラメータ
===========================================
http://****.ne.jp/XXXX.cgi
?ver=1
&datum=0
&unit=0
&lat=%2b36.36.14.45
&lon=%2b138.43.16.27
&alt=42
&time=20080907064719
&smaj=101
&smin=88
&vert=97
&majaa=67
&fm=1
===========================================

[Perl] デバックの方法

ずっとPerlではエラー箇所がよくわからなくていやだなぁ、
と思っていたが、普通にブラウザ上でデバックってできるのね。。。

これ知ってたら、これまでの生産性が10倍ぐらい違ってくるよ、たぶん。

■ ブラウザーでのチェック
http://perl.misty.ne.jp/20.html
======================
下記の方法で、ブラウザー上からエラーチェックを行なうことが出来ます。
「BEGIN」 から始まる1行を、Perlのパス指定の下に追加することで、ブラウザーから簡単にチェックを行なえます。
エラーがない場合は、Perl での処理結果がそのまま表示されます。
---
#!/usr/local/bin/perl
BEGIN{ $| = 1; print "Content-type: text/html\n\n"; open(STDERR, ">&STDOUT"); }
---
エラーがある場合には、エラーメッセージが標準エラー出力チャンネル(STDERR) に格納されます。
この標準エラー出力を、HTML出力としてWEBサーバーに渡します。
=======================