勉強

KissXMLを使ってみる

-(NSArray *)friendsPictures{ NSURL *url = [NSURL URLWithString: @"http://movapic.com/feed/user/fn7"]; NSData *data = [NSData dataWithContentsOfURL: url]; NSError *error = nil; DDXMLDocument *doc = [[DDXMLDocument alloc] initWithData:data o…

幅優先探索 perl版

以下、ソース。 use strict; my ($start,$goal); my @value = (); { my $_board =<<"EOD"; ************************** *S* * * * * * * ************* * * * * ************ * * * * ************** *********** * * ** *********************** * * G * * …

幅優先探索で迷路を解く

人材獲得作戦・4 試験問題ほか: 人生を書き換える者すらいた。 幅優先探索で迷路の最短経路を探す 探索方法ピンときませんでしたw いいわけはしませんwww はぁ、、、、 というわけで、家に積まれっぱなしだった本を見ながら幅優先探索を勉強。 ダイクストラ…

CanvasのglobalCompositeOperation

前回のパーフェクトシャッフルは、表示を奇麗にする為にopacityを0.03にして透過を強くし、その副作用として色が薄くなってしまったのを強調する為にgetImageDataを使ってピクセル毎の色を調整していたわけだけども、MDCのサイトを見てると、Canvasのコンテ…

パーフェクトシャッフル

http://d.hatena.ne.jp/nishiohirokazu/20100107/1262835414 ↑が奇麗すぎるので、できないかと思ってやってみた。が、どうしても円形にする方法がわからない。 しかたがないので5角形で止まっているところまで。実は時系列的には上の記事で書いたベジェが後…

CanvasでquadraticCurveToしてみる。

正多角形の表示とその頂点nと頂点n+1をつないでできる2次ベジェ曲線を書く。紫の線が多角形。緑が2次ベジェ曲線。赤が図形中心とベジェ曲線の制御点を結ぶ線分。以下、ソース。 var ceil = Math.ceil; var round = Math.round; var cos = Math.cos; var sin …

時刻取得

「javascript 時計」で検索するといろんな所でソース付きで紹介されているけど、どれもsetIntervalかsetTimeoutで1000ms毎に実行するタイプのもの。この場合最大999msずれている可能性もあるのだけど、まぁjavascriptで表示するレベルのだからしょうがないの…

version3で変わったこと

GoogleMapsAPI version3というのがあるらしい。 http://sites.google.com/site/gmapsapi3/developers によると、 2009年 5月 27日、Google I/O イベントにてGoogle Maps API JavaScript版のversion 3が発表されました。 Google Maps API version3は、既にあ…

年明けたら買おう。

Dimensions 第6章 複素数

Dimensions 第5章 複素数

フラクタルもどき

マンデルブローとかジュリアとか名前だけならなんとでも言えますw ということでcanvasを使ってフラクタルもどきを作ってみた。行く行くはマンデルブローを書くんだ!!! ちょっとパラメータを変えただけでいろんな図形が書けるのでおもしろい。 ↓とりあえず、…

Yahoo

Yahoo!デベロッパーネットワークの日本語形態素解析を使って形態素解析をするクラスを作ってみた。 関数の引数にはデフォルト値を使って、URLやnamespaceはクラス変数に持たせるようにしてみた。 # coding: utf-8 from urllib2 import urlopen from urllib i…

短縮URLサービスbit.lyを使う

twitterのような140文字制限のある文章内にURLを入れたいときには、短縮URLを使うのが常識だ python使ってbit.lyの短縮URLを取得するスクリプトを書いてみた。 json形式とXML形式での取得が可能のようだが、今回はJSONを処理することにする。 # coding: utf-…

Canvasでグラデーション2

中心からグラデしてみた こんなのできたw

canvasでグラデーションしてみる

とりあえず現時点でできてるもの。 Core2Duo2.4GHz メモリ2GBのMacBook上のFirefox3で6秒弱 <html> <body> <canvas id="color" width="350" height="350"></canvas> <script type="text/javascript"> var canvas = document.getElementById('color'); var ctx = canvas.getContext('2d'); var canvas_w = canvas.width; var canvas_h = canvas.height…</body></html>

UIImageでグラデーションしたい(その2)

グラデーションを使ってカラーピッカーみたいなものを作ってみた。色の値を取得するところは未実装。 [追記]色相を生成する方法が間違っていたのでソースコード含めて修正。あと、何も考えずに実装したのでAppDelegateにメソッド詰めこんでます。 それから、…

UIImageでグラデーションしたい(その1)

結論からいうと、まだできてませんがwww とりあえず画面いっぱいに設定したUIImageViewに色を設定してみるコード。 int width = 320; int height = 480; int bytesPerRow = 4 * width; unsigned char pixel[bytesPerRow * height]; int n; unsigned char *pt…

WebAPI使う基本 「ひとがご」のGoogleサジェスト結果を取得する

URLエンコード URLエスケープともいう。 from urllib import urlencode param = { 'hl':'ja', 'q': 'ひとがご', 'output':'toolbar', } encoded_param = urlencode(param) outputを止めて、'callback':'callback_func'にすると、callback_funcが指定されたJS…

YQL使ってみた。

Web上のコンテンツをSQLっぽい言語で取得可能にするサービスYQL。便利ですのぅ。こんなYQLで、 select * from html where url='http://movapic.com/fn7' and xpath = '//td[@class="image"]'スクレイピングしてくれた結果を返してくれる。 以下はXMLの場合。 …

XPathでnemaspace付きの処理を行いつつベンチマーク

media:contentというタグが携帯百景のRSSのなかに含まれていたので、namespace付きのタグをXPathで処理をする勉強ついでにtimeitしてみた。 今回はXMLのparse処理もベンチマークに含めている。 import timeit from lxml import etree as lxml_etree from xml…

XPathベンチ

以下のようなベンチマークスクリプトを書いてみた。もっとスマートな方法でベンチマークできるといいな。 #-*- encoding: utf-8 -*- from xml.etree import ElementTree from lxml import etree from time import time def xpath_by_xml(fname): x = Element…

URLアクセスをおこなってXPathで処理を行うサンプル(lxml版)

pythonでXpathをするならlxmlの方が良いという噂なので、やってみた。 libxml2のインターフェースということなので、激速とのこと。 #-*- encoding: utf-8 -*- # URLアクセスをおこなってXPathで処理を行うサンプル(lxml版) import urllib2 from lxml import…

URLアクセスを行ってXPathで処理を行うサンプル

#-*- encoding: utf-8 -*- # URLアクセスをおこなってXPathで処理を行うサンプル import urllib2 import StringIO from xml.etree import ElementTree r = urllib2.urlopen('http://movapic.com/feed/user/fn7') # エラー処理はしない if(r.code != 200): ex…

URLアクセスをおこなってDOMで処理を行うサンプル。

#-*- encoding:utf-8 -*- import urllib2 from xml.dom import minidom r = urllib2.urlopen('http://movapic.com/feed/user/fn7'); if(r.code != 200): exit(0) doc = minidom.parseString(r.read()) for item in doc.getElementsByTagName('item'): link =…

束縛

まだ教科書読み初めたばっかだけど、勉強のログを取ることは重要ということで、適当に記録してく。 束縛 「○○変数の束縛」というように使うようだ。Ocamlの場合は、代入というのではなく「束縛」というらしい。 束縛はletを使う。束縛された変数を使用して計…

参照渡し

関数宣言で、 bool HttpGet(const QUrl &url) { ... }って宣言されているところの「&」が意味不明だったんだけど、 参照渡しというらしい。 ポインタ渡しとは違うらしい。 違いは、メンバ変数やメンバ関数にアクセスする場合、「->」を使うか「.」を使うかで…

トランザクション

DirtyRead A「処理開始ぃ」 B「処理開始ぃ。データ更新しまっす」 A「データ取得しました。更新後のデータちゃんと処理できてますよー。これ使って処理しますねー」 B「やっぱやーんぴ。ろーるばっく!!!」 A「がーん!!!」 NonRepeatableRead A「処理開始ぃ。…