These pages are written by only Japanese.
|
Namazu for hns による簡易全文検索です。 詳細は 詳細指定/ヘルプをご参照下さい。 |
|||||||||||||||||||||||||||||||||||||||||||||||||||
glReadPixelsはVRAMに書き込まれたデータをメモリ上へ取得 するAPIです.それゆえ,VRAMに書き込まれないと各ピクセルの データを取得できないので,オフスクリーンバッファを用いて 描画するときにはglReadPixelsは使用できません.何かの環境(多分、MacOSX)で display の callback を外したらウィンドウを開かず glReadPixels を使えた記憶があるのですが、 Debian Linux で試すとウィンドウが表示されます。
タイトル: ZendEngine勉強会@東京 サブタイトル: PHP拡張のすゝめ 内容: <後述> 日時: 2011/2/16 20:00-23:00 定員: 100 会場: グリー株式会社 セミナールーム 住所: 東京都港区六本木6-10-1 六本木ヒルズ森タワー URL: http://groups.google.com/group/php-zendengine アンケート: <後述>
PHP拡張を主眼にした ZendEngine 勉強会を実施します。 h1. ZendEngine勉強会@東京 h2. スケジュール - 19:30 開場 - 20:00 発表開始 - <発表枠> - 22:00-23:00 懇親会 h2. 発表者募集中 ネタ募集中です。 PHP Zend Engine & extension 周りでうんちく話したいひとや、 面白い extension を知ってる、又は作ってるので自慢したい。といった方、是非! http://groups.google.com/group/php-zendengine の ML へ、 発表タイトル、発表時に名乗る名前、発表時間(10〜30min)をセットでご連絡下さい。 h2. ヒルズ入館手続きについて 事前に実名リストをビル管理側に提出する必要がある為、 参加申し込みのアンケートで実名をご記入下さい。 オフィスタワー正面入り口に特設受付を用意します。 名刺又は本人確認出来るものをお持ちください。 h2. 懇親会 22:00 から会場で懇親会を開きます。会費は 2,000円です。 懇親会開始時に徴収します。会場にプロジェクタを設置して おきますので、シャイな方はネタを用意して LT 発表での ブロードキャストなコミュニケーションをお勧めします。 h1. 今後 @東京の勉強会が無事に終われば、2回目,3回目を計画します。 東京以外の都市での開催要望があれば承ります。詳細は後ほど。
六本木ヒルズ森タワーでは、入館者の名簿を提出する必要があります。必ず実名をお書きいただけますようお願いいたします。 テキスト入力 懇親会は参加されますか? セレクトボックス => ○参加 , ×不参加
1から100までの数をプリントするプログラムを書け。 ただし3の倍数のときは数の代わりに「Fizz」と、 5の倍数のときは「Buzz」とプリントし、 3と5両方の倍数の場合には「FizzBuzz」とプリントすること。
<?php foreach (range(1, 100) as $n) { if ($n % 3 == 0) { if ($n % 5 == 0) { echo "FizzBuzz\n"; } else { echo "Fizz\n"; } } elseif ($n % 5 == 0) { echo "Buzz\n"; } else { echo "$n\n"; } }
<?php foreach (range(1, 100) as $n) { $d = ''; if ($n % 3 == 0) { $d .= "Fizz"; } if ($n % 5 == 0) { $d .= "Buzz"; } if ($d === '') { $d = $n; } echo "$d\n"; }
<?php foreach (range(1, 100) as $n) { $d = ($n % 3)?'':"Fizz"; $d .= ($n % 5)?'':"Buzz"; echo ($d?$d:$n)."\n"; }三項演算子を入れ子にすれば更に短くなりそうですが、その一線は越えたくないです…
<?php foreach (range(1, 100) as $n) { $b3 = ($n % 3)?0:1; $b5 = ($n % 5)?0:2; switch ($b3 | $b5) { case 0: echo "$n\n"; break; case 1: echo "Fizz\n"; break; case 2: echo "Buzz\n"; break; case 3: echo "FizzBuzz\n"; break; } }
$fmt = array('%d', 'Fizz', 'Buzz', 'FizzBuzz'); foreach (range(1, 100) as $n) { $b3 = ($n % 3)?0:1; $b5 = ($n % 5)?0:2; printf($fmt[$b3 | $b5]."\n", $n); }
foreach (1 .. 100) { $a = ('FizzBuzz', 'Fizz', 'Buzz', 0)[($_ % 3 > 0) + 2 * ($_ % 5 > 0)] || $_; print "$a\n"; }|| $_ とかトリッキーな事しなくても 0 を $_ にすればよいですね。
foreach (1 .. 100) { $_ = ($_, 'Fizz', 'Buzz', 'FizzBuzz')[!($_ % 3) + 2 * !($_ % 5)]."\n"; print }奇麗に記述できます。
$this->_shapeBounds = IO_SWF_Type::parseRECT($reader); $this->_parseFILLSTYLEARRAY($reader); $this->_parseLINESTYLEARRAY($reader); $reader->byteAlign(); $numFillBits = $reader->getUIBits(4); $numLineBits = $reader->getUIBits(4); while ($done === false) { $typeFlag = $reader->getUIBit(); if ($typeFlag == 0) { $endOfShape = $reader->getUIBits(5); if ($endOfShape == 0) { $done = true; } else { // StyleChangeRecord ... $stateNewStyles = $reader->getUIBit(); if ($stateNewStyles) { $this->_parseFILLSTYLEARRAY($reader); $this->_parseLINESTYLEARRAY($reader); $reader->byteAlign(); $numFillBits = $reader->getUIBits(4); $numLineBits = $reader->getUIBits(4); } } } else { $straightFlag = $reader->getUIBit(); if ($straightFlag) { // StraightEdgeRecord ... } else { // CurvedEdgeRecord ... } } }
pear channel-discover openpear.org pear install openpear/IO_Bit pear install openpear/IO_SWFでインストールして、pear ディレクトリの sample/swfdump.php にファイルを渡すと動作します。
ShapeId: 1 ShapeBounds: (-7.75, -7.75) - (7.75, 7.75) FillStyles: solid fill: #0066ff LineStyles: ShapeRecords: ChangeStyle: MoveTo: (-7.75, -7.75) FillStyle: 0|1 LineStyle: 0 StraightEdge: MoveTo: (7.75, -7.75) StraightEdge: MoveTo: (7.75, 7.75) StraightEdge: MoveTo: (-7.75, 7.75) StraightEdge: MoveTo: (-7.75, -7.75)こんな感じです。
magic=CWS version=8 file_length=3166474 rect=(0, 0)-(550, 300) (f_size=15)処理後
magic=CWS version=8 file_length=3166366 rect=(0, 0)-(550, 300) (f_size=15)
+------------------------------+ | numBits | deltaX | deltaY | +------------------------------+ <4or5 bits><-numBits-><-numBits->この numBits が実際に必要な値より大き目にとる事があるようです。