タグ

Programmingとprogrammingに関するtamuoのブックマーク (179)

  • 私の技術メモ 標準偏差を高速かつ小ないメモリで求める

    標準偏差の式を σ=sqrt(Σ(Xi - Xave)^2 / n) から σ=sqrt(Σ(Xi^2) / n - Xave^2)) と変形。 導出は下記のページが詳しい http://imagingsolution.blog107.fc2.com/blog-entry-62.html すると、 「あらかじめ全要素の平均値を求めておき、改めて全要素から平均値を引いていく」 といった2回のループではなく 「全要素の積算値 と 全要素の2乗の積算値」 を1回のループで求めるだけで済む。 サンプルコードは下記のページを参照。 http://www.asahi-net.or.jp/~uc3k-ymd/Lesson/Section02/samples01.html

  • Creating a grid view in iOS | Blog // Recursive Awesome // Tablet // Mobile // Web Development

    Creating a table in iOS is easy, but there are times when you need a grid instead of a simple table. I’ll walk you through the steps for making a grid. In this example, I want a table that has three cells per row. The final product will look like this: GridTableViewCell The core piece in your  grid is a custom UITableViewCell. Start off by making a new class derived from UITableViewCell. I called

    tamuo
    tamuo 2012/04/06
    UITableViewCellを使ってグリッドビュー風なビューを作る
  • 良いネーミングをするために覚えておきたい英語のルール5つ - プログラマー幸福論

    Photo by muraterturk こういった記事って、ネーミング規則や慣習の視点から書かれていることが多いんですけど、この記事では、英文法に視点を置いて、参考になりそうなことをいくつかピックアップしてみたいと思います。 「省略形は使わない」などの規約的なものは、各プロジェクトのルールに従えばいいので、ここでは書きません。あくまで英語という視点から書いているということを、ご理解ください。 Rule 1 : “検索”は名詞 一般的な英語辞書のルールでは「検索」は、動詞ではなく「検索する」が動詞になります。「検索」は、検索することの名称 だと考えられるため、動詞ではなく名詞として扱います。 英語辞書には、日語の品詞ごとに表記のルールがあります。これが理解できていると、和英辞書などで品詞を意識して検索できるようになります。以下に、一般的な英語辞書の表記ルールをまとめてみました。 <各品詞

    良いネーミングをするために覚えておきたい英語のルール5つ - プログラマー幸福論
    tamuo
    tamuo 2012/03/15
    このルールに基づけば、コードがひとりでにストーリーを語ってくれるんだよね。
  • Settings.bundle の Root.plist から Title, Value を持つ Dictionary の配列をロケールに合わせて取得する - tilfin's note 跡地

    Settings.bundle の Root.plist をアプリケーションに作成すると、iPhone/iPad の「設定」画面とそれによるパラメータ設定が可能になりますが、その中の PSGroupSpecifier の候補リストをアプリケーション内部から取得する方法について明記します。 設定値は、iOS のシステムロケールによって適切な Title に置き換わります。そこも同様になるように処理します。 Settings.bundle の Root.plist <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <di

    Settings.bundle の Root.plist から Title, Value を持つ Dictionary の配列をロケールに合わせて取得する - tilfin's note 跡地
    tamuo
    tamuo 2012/03/14
    ユーザー設定のデフォルト値を設定する方法
  • くせ者NSUserDefaultsの使い方と理屈

    NSUserDefaultsというと、手軽にアプリのユーザー設定の保持/変更ができて便利な機能です。設定アプリでユーザー設定値を変更して、それをアプリで読み込んで使えるので、まれにしか設定しないようなものは使いたい機能の1つです。 (多くの人が気づかないとAppleもなかば認めている「設定アプリ」からでないと出来ないという難点はありますが、画面とかいちいち作らなくてもいいので、便利ですよね。当はアプリから呼び出せれば解決だと思うんですけど。。。iOS5でなんとか頼みます。。。) ただ1つくせ者ぶりを発揮する場面が1カ所ありますのでその解説です。それは、Settings.bundleでroot.plistを作るときDefault Valueというデフォルト値を設定しますが、ここでデフォルト値を設定したにもかかわらず、該当アプリをロードしたあと設定アプリを1度起動しないと反映されない!という

    tamuo
    tamuo 2012/03/14
    アプリをアップデートするとユーザー設定が不定値になってしまう現象への対処法
  • アプリケーションを iPhone 4 の Retina Display に対応するための方法いろいろ - 24/7 twenty-four seven

    iPhone 4 の Retina Display の高解像度表示にアプリケーションを対応させるための方法をいくつか書きます。 これだけですべての場面に対応できるわけではないですが(例えば OpenGL での描画など)何かの役に立てばと思います。 高解像度の画像リソースを用意する Retina Display は従来のディスプレイの倍の解像度を持っているので、倍の解像度に合わせた画像を用意します。 もちろん単純に拡大しただけではダメなので、解像度が高くなったぶん、なめらかな画像を用意することになります。 上記の例は、上が従来の画像、下が Retina Display 対応の画像です。 命名規則によって自動的に解像度に合わせた画像を読み分ける [UIImage ImageNamed:] で読み込む場合は、ファイル名のサフィックスを判断して自動的にディスプレイの解像度に合わせた画像を読み分けて

    アプリケーションを iPhone 4 の Retina Display に対応するための方法いろいろ - 24/7 twenty-four seven
  • OpenGL ESのRetina対応 | Objective-Audio

    OpenGL ESのRetina対応の方法をちょっとメモしておきます。OpenGL以外のRetina対応については@k_katsumiさんの記事「アプリケーションを iPhone 4 の Retina Display に対応するための方法いろいろ」がとても参考になると思います。というか、この記事を見てOpenGLについては書いてなかったので触発されて書くことにしました。 Xcodeの「OpenGL ES Application」で作成したプロジェクトの場合で書きますと、EAGLViewのViewのサイズはRetinaディスプレイでも変わらず320×480です。iOS4からUIView(およびEAGLViewなどのサブクラス)にcontentScaleFactorというメソッドが追加され、この値を変更することでUIViewの中の解像度を変更することができるようになりました。もうひとつ、UIV

  • Fault Tolerant Heap (FTH) « DATA.blog

  • C++0x ラムダ式で再帰 - Faith and Brave - C++で遊ぼう

    ネタ元:Visual C++ Team Blog - Stupid Lambda Tricks VC++10 CTPで確認 #include <iostream> #include <functional> using namespace std; using namespace std::tr1; int main() { function<int(int)> fact = [&fact](int x) { return x == 0 ? 1 : x * fact(x - 1); }; cout << fact(3) << endl; } 動いた−。

    C++0x ラムダ式で再帰 - Faith and Brave - C++で遊ぼう
    tamuo
    tamuo 2012/03/02
    きょうの目ウロコだった。
  • Boost Graph Library: Adjacency List

    Associated Types graph_traits<adjacency_list>::vertex_descriptor and adjacency_list_traits<EdgeList, VertexList, Directed>::vertex_descriptor adjacency_list と結びついた頂点記述子の型。 graph_traits<adjacency_list>::edge_descriptor and adjacency_list_traits<EdgeList, VertexList, Directed>::edge_descriptor adjacency_list と結びついた辺記述子の型。 graph_traits<adjacency_list>::vertex_iterator vertices() によって返されるイテレータの型。 もし V

    tamuo
    tamuo 2012/02/29
    Boost.Graphの解説
  • Boost.Graph入門

    第3回デジタル理学療法研究会学術大会シンポジウム「デジタル理学療法の組織活用:教育・管理・研究を繋ぐ新たな地平」の講演資料.

    Boost.Graph入門
  • 話題のアプリ『Clear』のUIを独自実装してみた!(+Gumroad)

    ひとつ前のエントリーの続きです!(動画も同じ) 今回こそ、当初の目的であった 『Clear for iPhone』のUIを独自に再現した実装 についての解説を書いていきますね。 初めに断っておきますが、今回のエントリーはStudy CoreDataシリーズのようなチュートリアルではありませんのであしからず。。 部分部分でどういった実装をすればあのUIが実現出来るのか?というポイントを解説していきます。 このエントリーの最後に、Clearと同じくなにかと話題のGumroadでテストアプリを公開していますので欲しい方は是非! (※ 更新:内容が古くなったため公開は終了しました) では、まず目次をば。 。。と、その前に前のエントリーで書きそびれてしまった事があったので。 ようこそタッチフリーの時代へ!画面に触れずにが読める、MagicReaderを発表! – STUDIO LOUPE こちら、

    話題のアプリ『Clear』のUIを独自実装してみた!(+Gumroad)
    tamuo
    tamuo 2012/02/22
    UITableViewControllerって自由度がないと思ってたのでそれを捨てるって発想は真似したい。しかし、gumroadでソースコードを売るって発想の方がなんか素晴らしい。
  • カスタムメモリマネージャと高速なメモリアロケータについて

    constexpr関数はコンパイル時処理。これはいい。実行時が霞んで見える。cpuの嬌声が聞こえてきそうだ

    カスタムメモリマネージャと高速なメモリアロケータについて
  • メッシュ生成のプログラミングTIPS

    2次元の幾何情報取得プログラム 3角形の面積 点からなる三角形の面積は次のように表すことができる。 また、ヘロンの公式によれば、3角形の3辺の長さを、としたとき が成り立つ。 プログラミング例 double TriArea(const CVector2D& v1, const CVector2D& v2, const CVector2D& v3){ return 0.5*( (v2.x-v1.x)*(v3.y-v1.y) - (v3.x-v1.x)*(v2.y-v1.y) ); } 内接円の半径 3角形の周の長さの半分を、面積をとすると、内接円の半径は となる。 外接円の半径 三角形の面積を、3辺の長さをとすると、外接円の半径は が成り立つ。 アスペクト比 3角形のアスペクト比は、外接円の半径、内接円の半径とすると次のように定義される。 3角形の質を評価するためにアスペクト比がよく用いられ

    tamuo
    tamuo 2012/02/04
    三角形の面積・内接円の半径・外接円の半径,中心・アスペクト比・ドロネー条件判定、四面体の体積・外接球の半径・内接球の半径・ドロネー条件判定のTips
  • 『Objective-Cでatomicな宣言プロパティがatomicであるとは限らない話』

    アクセサを使って値をインクリメントしています。これ、ぱっと見て問題があると感じますか? このコードはマルチスレッド環境で動くため、プロパティは以下のようにデフォルトのatomicで(nonatomicを指定せず)定義されています。 @interface AtomicTest : NSObject { int count; } @property(assign) int count; - (void)increment; @end @implementation AtomicTest @synthesize count; - (void)increment { self.count++; } @end int main(int argc, char *argv[]) { NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; A

    『Objective-Cでatomicな宣言プロパティがatomicであるとは限らない話』
    tamuo
    tamuo 2012/01/31
    おっと、これは盲点。注意しよう。
  • C++プログラミング日記 -より良い浮動小数点の等値比較

    前回の「IEEE浮動小数点の等値比較」はイプシロン値が固定化されている絶対許容誤差の判定でした。 絶対許容誤差の判定では2つの浮動小数点数がお互いに非常に大きい場合や非常に小さい場合はうまく動作しない可能性があります。非常に大きい場合は差分が常にイプシロン以上になり、逆に非常に小さい場合には常にイプシロン以下になる可能性があるためです。 この問題の解決方法の1つとして相対許容誤差を利用する方法があります。 floatIsEqual(relative tolerance) bool floatIsEqual( float V1, float V2, float Epsilon = 1e-5f ) { float relative_epsilon = maxf( absf( V1 ), absf( V2 ) ) * Epsilon; return floatIsZero( V1 - V2, r

    tamuo
    tamuo 2012/01/26
    相対許容誤差で等値判定。frexp関数や計算機イプシロンを使うより高速。
  • UX-TV

    Visual Studio を愛してやまない日マイクロソフト エバンジェリストチームによる 「VS魂 100連発」(ぶいえす だましい 100 れんぱつ)。 (Twitter ハッシュタグは #VS100 にて) Visual Studio 2012 の多彩な機能を、エバンジェリストのデモでお楽しみください。 過去放映分は以下のブログで紹介しています。 http://blogs.msdn.com/b/evangelistsjapan/archive/2013/03/06/vs100-index.aspx ご意見等はエバンジェリスト ブログ http://aka.ms/EvaJ までお寄せください! このストリーミング&ビデオは、開発者情報番組「UX-TV」(http://www.ustream.tv/channel/ux-tv)の協力のもと、配信を行っています。 ===== 「UX-TV

    UX-TV
    tamuo
    tamuo 2012/01/26
    勉強会に行きたくても行きづらい地方在住者にはとても嬉しい。
  • これは便利!Xcode4のアシスタントエディタでクラスやメソッドに関するコードを右側に素早く表示する方法 - 拡張現実ライフ

    こんにちは。@akio0911です。 先日、Xcode4でアシスタントエディタの右側に任意のファイルを素早く表示する方法を紹介しましたが、関連する便利なTIPSを発見したので紹介します。 optionとcommandを押しながらクラス名をクリック optionとcommandを押しながら、クラス名をクリックしてみましょう。 クリックしたクラスの定義が、右側に表示されます。これは便利! メソッド名でも使える optionとcommandを押しながら、メソッド名をクリックしてみましょう。 メソッドの定義が右側に表示されます。 まとめ この操作方法を覚えれば、Xcode4のアシスタントエディタが更に便利に使えるようになります。 ぜひお試しください。 Xcode4関連の記事 関連 : Xcode4の使い方を学ぶならこの一冊! – 書評「iOSプログラミング入門 – Objective-C + Xc

    tamuo
    tamuo 2012/01/24
    便利かも。メソッドの意味は知ってるけど名前が思い出せないケースって多々ある。
  • 点の多角形に対する内外判定

    点が多角形ループの内側にあるか外側にあるかを判定するには? 要素は2次元空間内に存在するものとします。 解説 内外判定の基的な考え方として、「内外を判定したい点から発するレイ(ray:一条の光)を仮定し、レイが多角形の辺を何回横切るかを数え、偶数回横切るとき、点は多角形の外側、奇数回横切るとき、点は多角形の内側と判定することができる」という考え方があります。 ただ、この考え方に従って実装を行うと、レイに対して点接触になる点のある多角形や、レイに対して線接触になる辺のある多角形の場合に判定を誤ってしまう実装になることがあります。 下に示す実装では、レイをXプラス方向に発して、多角形の辺がレイを、「上から下に横切るときには横切り回数を1引き、下から上に横切るときには横切り回数を1足すこととする」ことや、「レイの線上にある点はレイより上にあることとする」ことにより、レイに対して点接触になる点の

    tamuo
    tamuo 2012/01/07
    シンプル。包含判定は接触辺が存在する場合に誤差判定とか難儀だけど、この方法では解消されてる。
  • Blogopolisから学ぶ計算幾何 記事一覧 | gihyo.jp

    運営元のロゴ Copyright © 2007-2025 All Rights Reserved by Gijutsu-Hyoron Co., Ltd. ページ内容の全部あるいは一部を無断で利用することを禁止します⁠。個別にライセンスが設定されている記事等はそのライセンスに従います。

    Blogopolisから学ぶ計算幾何 記事一覧 | gihyo.jp