タグ

ブックマーク / tech.nitoyon.com (28)

  • 中国の町並みをドット絵で再現したE都市がすさまじい - てっく煮ブログ

    中国の地図サイト「E都市」は一昔前の RPG のようにドット絵で中国の町並みを再現しています。描き込みの量もすごいし、再現されている範囲も広くて驚きました。たとえば 上海 はこんなの。もちろんドラッグで移動できます。少し拡大してみます。さらに拡大してみます。右下のビルの看板の文字が読めちゃってます。自分が見た範囲では全ての場所で地図がここまで拡大できました。すべてのズームレベルでしっかりと描き込んであるのが驚きです。Google Maps の衛星地図とも比較できます。衛星写真を45度ぐらい時計回りに回転すると、上のドット絵に近くなりますね。道の形や屋根の色まで忠実に再現されています。北京を旅する北京 の天安門広場〜紫禁城。天安門にズームイン。もちろん毛沢東の肖像画まで再現。オリンピックで話題になった鳥の巣スタジアムも再現されています。すぐ近くはビル街だったんですね。香港を旅する香港 の大量

  • はてなブックマークの細かすぎて伝わりにくい新機能を勝手に紹介 - てっく煮ブログ

    はてなブックマークがリニューアルして毎日楽しく使っているわけですが、そんな中で気付きにくいけど知ってると便利な機能を勝手にまとめてみました。人気エントリの要約を非表示にみんな大好き人気エントリーに、リニューアル後から要約が表示されるようになりました。クリックする前に概要が分かって便利なのですが、古いインターフェースのほうがよかった…という人もいることでしょう。でも大丈夫。そんな人は「人気エントリー」の右端にある▲のボタンを押してみましょう!要約が消えます。すっきり読みたい人にお勧め。あ、もう一回クリックすると要約は復活します。タグとお気に入りを旧バージョンで右側のボタンつながりで、タグとお気に入りを戻す方法を紹介します。タグが一覧になってしまって悲しい人は、右側のボタンを押しましょう。おー、一昔前のタグクラウドと切り替えられるわけですね。お気に入りも見た目が変わりましたが、これも右側のボタ

  • 幕末古写真ジェネレータをハックする - てっく煮ブログ

    幕末古写真ジェネレーター というウェブサービスがちょっと前に話題になりました。どんな写真も幕末の写真のように加工してくれる面白いサービスです。この仕組みを 幕末古写真ジェネレーターの仕組み? - 将来が不安 で解析していたのが面白かったので、続きをやってみることにしました。→成果を先に見たい人は、こちら からご覧くださいませ。1. 真っ黒な画像を渡すまずは、真っ黒な写真を幕末風にしてもらいます。これが幕末風にするための型紙です。以降はテンプレート画像と呼ぶことにします。2. RGB の階調を渡す直感的に、ジェネレータの実装は (元画像+色補正)+テンプレート画像 と考えられます。テンプレート画像は得られたので、あとは色補正のパラメータを探れればハック完了です。そのために、RGB の階調をジェネレータに渡してみました。結果はこうなりました。おー。青色がほとんど消えてますね。グラデーションの方

  • 論理演算子(&& と ||)を応用する - てっく煮ブログ

    javascript, asjQuery のソースコードを見ていて面白いのがあった。 function add(a, b){ addImpl(b && a, b || a); } function addImpl(a, b){ // ... } 理解するためには、論理演算子を詳しく理解する必要がある。論理演算子詳細JavaScript(というか ECMAScript)の論理演算子は、評価結果が true/false で返される訳ではなく、結果が確定した時点で評価した値が返される。まずは、|| を試してみよう。 alert(2 || 0); // 2 alert(2 || 3); // 2 alert({} || null) // [object Object] alert(0 || 3); // 3 alert(0 || 0); // 0 alert(0 || undefined); //

  • jQuery で JSONP 2通り - てっく煮ブログ

    JavaScriptjQuery を使って JSONP でリクエストする方法を2通り紹介するよ。その1: $("")createElement を $() を使って実装。 $("") .attr('type', 'text/javascript') .attr('src', "http://www.example.com/jsonp.cgi?param1=value1&callback=myCallback") .appendTo($("head")); function myCallback(json){ // ロード完了時にここが呼ばれる } http://www.example.com/jsonp.cgi?param1=value1&callback=myCallback にリクエストがいく。callback のところは、サービスによって指定の仕方が違うかもね。その2: $.ajax

  • Yahoo! Pipes の Page Fetch モジュールでスクレイピングし放題 - てっく煮ブログ

    pipesこのブログでも何度か Yahoo! Pipes の話題は取り上げてきましたが、先日実装された「Page Fetch」モジュールは素敵すぎます。ほんとに。今まで、Yahoo! Pipes といえば、XML・CSVYahoo が提供してるサービスのデータを加工することしかできませんでした。それが、「Page Fetch」モジュールの登場により、任意の Web ページを加工できるようになったのです。Yahoo! Pipes の使い道といえば、次の2つだと思います。1. RSSリーダーで読むための XML 作り複数の RSS を結合したり、見た目を整えたりして、自分専用の RSS を作る。 (例)サイトの最新被ブックマークを livedoor Reader で読むための Pipes2. Web サービスとの連携JSONP に対応してるので、JavaScript と組み合わせてサーバ

  • ActionScriptで昭和写真化 - てっく煮ブログ

    as基礎的な内容が続いてきたので、たまには応用例を。最近、昭和の写真ジェネレータ(仮) が話題になりましたが、これの作り方が公開されています。ならば、ActionScript 3.0 でやってみたくなるのが人情です。いい具合ですね。ザ・昭和。サーバー側の資源を使わずにこういうことができちゃうのは素敵じゃないでしょうか。Flickr は crossdomain.xml を設置している ので、その辺と連携する ActionScript を書いてみても面白そうですね。ソースは以下に(52行)。 package { import flash.display.*; import flash.geom.*; import flash.filters.*; import flash.text.*; public class ShowaPhoto extends Sprite { [Embed(sourc

  • てっく煮ブログ - ラスタ→ベクタ変換する AS ライブラリ "PotrAs"

    as, potras超絶のまとめ記事が反応ありすぎて意外すぎます。それはそうと、超絶で発表した PotrAs を公開します。詳しくはプレゼン資料をごらんあれ。プレゼンの閲覧方法:プレゼン資料をクリックしてフォーカス与える→で次のページ、←で前のページHome で先頭、End で最後のページ0〜9+Enter で入力したページにジャンプ2色のラスタ画像をベクタに変換するライブラリです。プレゼン資料はリアルタイムで変換しながら表示しているので、CPU 消費量が少し高めです。あと、Mac でどう表示されるかが分からないのがちょっと不安です(アンチエイリアスがらみ)。(2007.10.3 追記) Mac 対策しました。Mac では BitmapData.draw したときにデフォルトでアンチエイリアスがかかってしまうため、細い線になるのが原因でした。threshold メソッドで2値化することによ

  • ActionScript 的超絶技巧発表会に参加してきました - てっく煮ブログ

    asTwitter 経由で企画された「ActionScript 的超絶技巧発表会」に参加してきました。日帰りで東京まで行ってきましたが、往復交通費以上に得るものは多かったです。参加条件が「発表する」だったため、ほんとにレベルが高かったです。かなりの自信作を持っていったつもりだったのに色あせてしまいました。ひとまず、勉強会まとめエントリとして投下しておきます。半分感想。HTML/JavaScript から SWF をいじる話(FlashBug) by muraken さんJavaScript 経由で MovieClip を作成したり、パラメータをいじったり、中の情報を覗いたりする。AS2。→関連エントリ作りこんでいけば、Flash 版デバッグ環境としても便利なものになりそう。Flash デバッグ環境って、あんまりいいのないですしね。クロスブラウザな Canvas として公開すればかなりヒット

  • Flash っぽいフェードイン・フェードアウト - てっく煮ブログ

    as海外ブログのこんな記事とかこんな記事を見るとレベルの違いにへこみますが、少しずつ間を詰められるよう精進あるのみ。がんばります。今回は Flash っぽいフェードイン・フェードアウトを ColorMatrixFilter で作ってみました。RGB の各成分を元の値から増やしてフェードアウトしてます。Flash ではよく見るエフェクトなので業界の人は傷気味かもしれませんが、JavaScript でα値をいじるだけのものしか知らなかった私にはかっこよく見えます。ソースは以下に(45行)。 package { import flash.display.*; import flash.geom.Point; import flash.filters.ColorMatrixFilter; [SWF(width="350", height="233")] public class ColorMat

  • はてなダイアリーに Flash を埋め込むガジェット - てっく煮ブログ

    はてなダイアリーで JavaScript eval に続く、はてなダイアリー向け汎用ブログパーツ第2弾。今回は Flash を埋め込めるようにしてみました。サンプルこんな感じで。サイズも変えられる。使い方こちらからどうぞ。SWF の URL を入力して、サイズ変更して、背景色変更して、「コードを取得」ボタンで貼り付け用のHTMLを取得します。どうぞご利用ください。ソースコードソースは http://nitoyon.googlepages.com/embed_flash.xml。内部で swfobject.js を使っているので、何も考えずに同じ MIT ライセンスで公開。IE6 ではスクロールバー分の余白が表示されてしまったので、document.body.scroll = "no" で特別に対処してます。雑感他のドメインの Flash を埋め込めるので便利。だけど、「無断リンク禁止」な

  • てっく煮ブログ - ActionScript3.0でテトリスを作ってみる

    WCAN mini ActionScript Vol.3 の勉強会資料を公開します。プレゼン資料ソースコード (23.8KB)ActionScript でのゲーム製作は注目されているようなので、実例としていいかもしれません。中でも、右に写真を載せている Tetris+PaperVision3D のゲーム例が気に入ってます。(ただ、現状ではライン消したあとの処理にバグがありますが)ActionScript 3.0+PaperVision3D とか ActionScript 3.0+APE(Actionscript Physics Engine) を組み合わせてみれば、今までは手を出しづらかった方面のゲームでも簡単に作れるようになりそうです。

  • てっく煮ブログ - 四則演算を JavaScript で実装する

    aki noteGoogle 電話面接を受けました orz (いまは消えてるけど)にて割り算が壊れました。自分で実装してみてくださいという質問が紹介されていた。せっかく(?)の機会なので、割り算だけでなく、四則演算を全部壊してみて、JavaScript で実装して見ることにした。JavaScript を選んだのは、コンパイル不要、ビット演算がある、Firebug で手軽に確認できる、という理由から。それ以上の深い意味はない。ということで、次のような問題に一般化してみた。問い四則演算を JavaScript で実装しなさい。演算子は ==、!= およびビット演算子のみ使ってよいものとします。補足例えば、for 文で for(var i = 0; i { // ... } と書くためには、++ 演算子は次のように定義できる。 function increment(i){ var c =

  • Google Gears 発表前と発表後のオフライン事情 - てっく煮ブログ

    先日の Google Gears の使い道 という記事用に既存のオフライン技術についてまとめていたのですが、長くなったので割愛してしまいました。とはいえ、もったいないので別エントリの形で公開します。紹介するのは3つのオフライン技術と、それぞれの Google Gears への反応です。はじまりはじまり。Dojo Offlineオフライン機能をいち早く実装したのは Dojo Offline というライブラリです。Dojo という名前からも分かるように、JavaScript ライブラリ「Dojo」の Dojo.Storage という機能を活用して実装されているようです。Dojo.Storage は Cookie・SharedObject・ActiveX File API・XPCOM File API などの中から適切なものを選ぶ、という実装のようです。Google Gears の発表を受け、D

  • Google Gears の使い道 - てっく煮ブログ

    Google Gears (BETA) が発表されました。Google Gears はウェブサービスにオフライン機能を付け加えやすくするためのフレームワークです。フレームワークが提供するのは次の3つの機能です。LocalServerオフラインになったときにも HTMLJavaScriptCSS にアクセスできるようにする。ブラウザのキャッシュ(一時ファイル)を強化したイメージ。Databaseオフライン時に行った動作を記録しておく。SQLite ベース。ブラウザの Cookie を大容量化したイメージ。WorkerPoolCPU を消費する機能をバックグラウンドで実施する機能。setTimeout で無理やり細切れに実行していた部分を任せることができる。スレッド機能とも考えられる。開発者は、これら3つの機能を駆使して、オフライン機能を実装することになります。ありがちな実装パターンは

  • てっく煮ブログ - ActionScript for Flasher(1) 資料公開

    as大阪での Flash 勉強会(寺子屋(仮)第3回)で発表しました。資料を公開しておきます。プレゼン資料:ActionScript for Flasher(1)サンプルファイル:sample.fla (166KB) [要Flash MX以上]タイムライン vs ActionScript という Flash 界の永遠の課題(?)に切り込んでみたつもりです。サンプル用に作った関数は、文字のセンタリングに対応するために泥臭くなっていますが、もうちょっと汎用化してみたいかな。

  • てっく煮ブログ - すごく楽しかった Flash 談義のログをまとめてみたよ

    twitter, asTwitter には Flash 界のブロガーさんが続々参入しているのですが、9日の 20:30 ごろから突発的に Flash 談義が始まり、2〜3時間ほど盛り上がっていました。この内容があまりに素敵だったので、勝手にまとめちゃいました。みんな、それぞれ問題意識や思いを持っていて、それが伝わってきてドキドキしてきます。ちょっと話はそれますが、JavaScript の面白いところって、Unix の人も、Mac の人も、Windows の人も、平等に議論できるところにあると思うんですよ。今まで、それぞれの分野でやってた「スゴイ人」が、共通の話題を持って交流できる場、それが JavaScript なんです。で、Flash になると、今度は OS の縛りがないどころか、開発者だけじゃなくてデザイナーさんとも議論や意見交換できちゃう。この世界の広がりっぷりは只者じゃない。すごく

  • はてブ お気に入り マイナス 人気エントリ - てっく煮ブログ

    それPiずっと前に作ったまま放置していたので、正式に公開。はてなアイデアで要望が出ていた「[自分の「お気に入り」から、「注目エントリー」や「人気エントリー」に入ったエントリを除外した、マイナーなエントリーだけを表示する機能]」を Y! Pipes で実現してみました。http://pipes.yahoo.com/pipes/pipe.info?_id=PvfmAAnK2xGG3G0lr8cPhQはてな id を入力するだけで OK。あとは RSS でも JSON ででも取得できます。仕組みはこう。人気エントリの RSS の後ろに お気に入りの RSS を結合。順番が大事(後述)link つまりエントリの URL が同じものを Unique で束ねるFilter で dc:creator があるもののみ表示する。3つ目がかなりハックっぽいのですが、Unique には複数のアイテムを束ねるとき

  • てっく煮ブログ - あまり語られていない Apollo のセキュリティについてまとめてみた

    (2007年10月追記) この記事は、Adobe AIR と呼ばれている技術のα版時点でのセキュリティについて述べています。2007年10月現在での最新版についての情報は、以下のページを参照してください。akihiro kamijo: Adobe AIR ベータ 2 セキュリティ関連の変更点akihiro kamijo: Adobe AIR のデジタル署名機能について(追記ここまで) void element blog: いろんな意味でしゃれにならないApollo にて Apolloセキュリティ的に危ないよ、という話が出ていたので、ちょっと調べてみました。Web 技術を使っているとはいえ、ローカル環境で動くので、ある程度の覚悟をもってインストールする必要があります。今回は、その心構え(?)のようなものをまとめてみました。セキュリティは専門ではないので、つっこみは大歓迎です。Apollo

  • Apollo コンパイルではまった... - てっく煮ブログ

    無駄につまづきました。メモ代わりに。Flex SDK 2.0.1 が必須。2.0.0 ではダメ。2.0.0 が既に入っている場合は、上書きインストールではなく、新規インストールのほうが無難。 Flex SDK 2.0.1 を入れた上に、Apollo SDK を上書きコピーする。apollo_docs_alpha1_031907.zip にあるサンプル「Create your first Flex-based Apollo application using the Apollo」がそのままだと動かない。XML で visible="false" となっているが、これを visible="true" にしなければならない。 appId が同じアプリケーションは2重起動できない。visible="false" で表示されないアプリを作ってしまうと、何度コンパイルして実行しても表示できない状態に