hagino3000's blog

平成アーカイブス (更新停止)

2012-01-01から1年間の記事一覧

映像情報メディア学会誌に寄稿しました

2012年10月号に「Kinectの仕組みとナチュラルユーザインタフェース」という記事を書きました。連載「拡張現実感技術の最前線」の一記事です。連載の他の担当は東大の暦本先生だったり凄い面々で、そこに自分が入ってるのは謎なんですが、よろしくおねがいま…

JavaScriptテクニックバイブルのレビューを手伝いました。

校正段階でレビューだけ手伝いました。若手IT勉強会の皆様による執筆。対象読者はJS中級者、2~3年目のエンジニアとの事です。JavaScriptテクニックバイブル ~効率的な開発に役立つ150の技JSサポーターズ技術評論社売り上げランキング : 1582Amazonで詳しく見…

横浜市税の使われ方を可視化するサービスをリリースしました

The Daily Bread - 税金はどこへ行った?http://spending.jp/ 先日のGLOCOMオープンデータ活用ハッカソンの成果です.私はアイデアソンの時に税金の使われ方を可視化するチームに参加しました.このチーム,やけに行動力のあるプロフェッショナルなメンバー…

脳波ヘッドセットでハンズフリーウェブブラウジングシステムを作る

両手が塞がる食事中でも快適にインターネットができる仕組みが求められている.そこで手元にあったEmotiv EPOC HeadsetとEmotiv SDK付属ツールを使って実験した. Emotiv | EEG System | Electroencephalographyhttp://emotiv.com/ やり方 今回はEclipseを起…

新たなKineticデバイス「LEAP」の注文をするなど

NUI

彗星の如く登場して各界を賑わせているLEAPについて. Leap Motionhttps://live.leapmotion.com/index.html 公式サイトから読み取れる事 マウスの代りになるデバイスである iPodサイズでUSBでコンピューターに接続して使う 小売価格は69.99USドル 既存の3Dセ…

Struct.js ver. 0.3をリリースしました

欲しかった機能が実装できたのでタグを切りました。 hagino3000/Struct.jshttps://github.com/hagino3000/Struct.js 主な機能追加 ネストした構造のサポート nullableオプションの追加 カスタムバリデーション関数のサポート 設定で全チェックを無効化する機…

JavaScriptでRubyのmethod_missingを実装する

追記: Firefoxの実装で既に有る__noSuchMethod__に名前は合せた方が良い、というコメントを頂いたので名前を変えました。何の役に立つか不明だけど書いてみた*1。Proxyでプロパティアクセスをフックして、存在しない場合は用意しておいた関数プロキシを返す…

ChromeでECMAScript 6のProxyを有効にする

ECMAScript 6(候補)のProxyはChromeのデフォルト状態では使えない、前の記事で紹介したStruct.jsはProxyを使っているため、Chromeでチェック機構を有効にするには設定をいじる必要があります。 手順 アドレスバーからchrome://flagsを開く JavaScript の試験…

JavaScriptで厳格な型チェックを行なうライブラリを書いた

(追記) Version 0.3をリリースしました。先日のjava-ja温泉で「JavaScriptは独りでヒャッハーするのには良いけど、複数人で開発しだすと途端にカオスになって苦労する」という話になった。それに対する解の一つはClosure Compilerが採用したアノテーションに…

Node.jsのモジュールをC++で書く (ObjectとArrayを受け取るメソッド)

プリミティブな値を引数で受けとる場合よりもやや面倒。JavaScriptの仕様上どんな値や型でも受けとってしまうので、C++側のチェックコードがどんどん増えていく。動作確認用のコードがこうだとする var Test1 = require('./build/Release/Test1'); Test1.giv…

CocoaでJSON-RPC

iOS

使った物 SBJson http://stig.github.com/json-framework/ ASIHTTPRequest http://allseeing-i.com/ASIHTTPRequest/ どちらもsocket.io-objcが依存しているため既に使っていた。ここでやりたいのは、リクエストボディはJSON文字列のみでPOST、レスポンスもJS…

Node.jsのモジュールをC++で書く (引数と戻り値)

引き続きv8.hを読みながらNodeモジュールを書く練習をする。モジュールのメソッド定義ですが、名前の通りv8::Argumentsが引数の表現で、[]オペレータでアクセスするとv8::Value型のそれぞれの引数が得られる。型チェックはIsNumberやらIsStringといったメソ…

Node.jsのモジュールをC++で書く (Hello World編)

C++弱者ながらC++でNodeモジュールを作る事にしたのでいろいろと。まずは公式サイトの解説を参考にしてみる。 Addons Node.js v0.6.12 Manual & Documentationl http://nodejs.org/docs/latest/api/addons.html Hello World 最初にHello Worldのコードが載っ…

エンジニアサポート新年会 CROSS 2012でEmotivについてLTをしました

日本ではあまり使っている人を見ない筋電/脳波ヘッドセットのEmotiv EPOC neuroheadsetを使ってみた。デモはNodejsでデータ飛ばしてCanvasに描画した。視線の位置のxyが取れるのでそれを使った方が面白かったかなぁ。 ノンタッチUI時代とフロントエンドエン…

キネクハトッカーズマニュアルのサポートページを更新しました。

サポートページ作成時点からかなり状況が変ったので、いろいろと修正しました。OpenNIの進化や、WebSocketでバイナリが使える様になった事など。半年も経てば随分と変る物ですね。 「キネクトハッカーズマニュアル」補足資料 ― Kinect Book Support v1.0 doc…

OpenNIをopenFrameworksから使う Advanced編

OpenNI Advent Calendarの20日目の記事です。24日目の記事でもopenFrameworksについて書かれているので、内容がかぶらない様にしています。 OpenNIをOpenframeworksで使うhttp://blog.hi-farm.net/2011/12/24/openni%E3%82%92openframeworks%E3%81%A7%E4%BD%…