Account Suspended This Account has been suspended. Contact your hosting provider for more information.
Account Suspended This Account has been suspended. Contact your hosting provider for more information.
目次 ホーム 連絡をする RSS Login Blog 利用状況 投稿数 - 1078 記事 - 2 コメント - 26445 トラックバック - 363 ニュース 著作とお薦めの品々は 著作とお薦めの品々は 東方熱帯林へ。 わんくま 東京勉強会#2 C++/CLI カクテル・レシピ 東京勉強会#3 template vs. generics 大阪勉強会#6 C++むかしばなし 東京勉強会#7 C++むかしばなし 東京勉強会#8 STL/CLRによるGeneric Programming TechEd 2007 @YOKOHAMA C++・C++/CLI・C# 適材適所 東京勉強会#14 Making of BOF 東京勉強会#15 状態遷移 名古屋勉強会#2 WinUnit - お気楽お手軽UnitTest CodeZine Cで実現する「ぷちオブジェクト指向」 CUnitによるテスト駆
今回はヒートマップの色作成からHTML5のcanvas描画までのサンプルです。 今作っているモノがjavascriptでヒートマップの色を作成する必要があったのですが、色々とサンプルを探した結果見つからなかったので、それじゃあ自分で作ってみよう。 というのが今回のサンプル作成の動機です。 java版でヒートマップを作られている方がいらしたので、色のグラデーションの考え方はこちらの記事を参考にしています。 http://tomott.cocolog-nifty.com/blog/2009/04/java5-12f1.html HTML側はこんな感じ javascriptはこんな感じ var canvas; function init() { canvas = document.getElementById( 'canvas' ); drawHeatMap(); } function draw
ゲームグラフィックが進化してきた25年間を水の表現で比較した画像 25年のグラフィック進化を水の表現で見た場合、というものがありました。 物凄く綺麗なグラフィックや、DSやPSPといった携帯機で親の目を気にせずどこでも遊べたりと、今時の子供のゲーム環境は羨ましくもありますが、反面不幸だなと思う面もあります。 しょぼいハード性能だったころは、必死に綺麗な画像をしぼり出したり、今まで出来なかったあんなことが出来るようになった、など、ゲーム雑誌や新機種が発売されるたびに、わくわく胸を躍らせることができました。いわゆるカタルシスというやつでしょうか。 アートでも、難しい素材やクセのある素材で作られたものほど、出来上がったものに凄いと思ったり感動するのと一緒かもしれません。 スターウォーズなんかも最近のCGで何でも表現できてしまうものより、初代のジオラマで作り上げたスターデストロイヤーの方が凄さを感
知って得する、Webブラウザ上で利用できるグラフィック関連技術。アニメーションや3Dが表現できる「CSS3」をハックしよう CSSで多彩な表現が可能に 本連載では、Webブラウザ上で利用できるグラフィック関連技術を、読み切りの形で、なるべく分かりやすく紹介していきます。第1回である今回はWebの基本技術の1つであるCSSで実現するグラフィック表現を取り上げます。 従来のCSSはWebページのフォントやレイアウトを整える機能がほとんどで、「グラフィック技術」というには物足りないものでした。しかし、CSS3と呼ばれる近年の拡張によって、アニメーションや3D表現を含む多彩な画面効果が実現できるものに進化しています。 この記事は、そうしたCSS3のグラフィック関連機能の基本的な使用方法をまとめて学習することを目的としています。 ベンダプレフィクスについて CSS3の多くの機能はまだ規格策定段階のも
枝向けのパラメータ Distribution 項目 説明 Group Seed 乱数の種 Frequency 枝の数 Distribution 枝の分布ルール Twirl 枝が伸びる根本の位置を回転 Growth Scale 親ノードに対するスケールを指定 Growth Angle 親ノードに対する成長の初期角度を指定 Distributionで選択出来る項目 項目 説明 Random ランダム Alternate 正面から見た時に右向き、左向きと交互に枝が伸びる分布 Opposite 幹の同じ位置から左右に2本伸びる分布 Whorled 幹の円周方向に分布 【参考ページ】 こちらのページの図が分かり易いです。 Is Your Tree an Alternate or an Opposite? http://forestry.about.com/b/2011/09/09/is-your-t
既存のアルゴリズム関数の実行を中断可能にしてみました。 対象は、Boost.Graphの最短経路計算アルゴリズムです。 #include <iostream> #include <boost/graph/adjacency_list.hpp> #include <boost/graph/dijkstra_shortest_paths.hpp> #include <boost/assign/list_of.hpp> #include <functional> #include "continuation.hpp" typedef boost::adjacency_list<boost::listS, boost::vecS, boost::directedS, boost::no_property, boost::property<boost::edge_weight_t, int> > G
Boost 1.50.x候補のBoost.Contextライブラリを利用して、一風変わったファイバーライブラリを作ってみたというお話です。(注意:Boost.ContextはBoost 1.49.0の正式リリースには含まれないため、svnレポジトリのtrunkからチェックアウトする必要アリ) 注意:2012年5月現在、Boost.Contextの破壊的API変更により実装コードはコンパイルできなくなっています。id:FlastさんのBoost.Contextの怒涛の変更も参照ください。 何これ?何ができるの? 一言で表現すると「単一スレッドで動作するスレッドライブラリ」です。 これだけだと白い目で見られそうなので…もうちょい説明的な表現では「C++11標準ライブラリ相当の同期プリミティブ群を提供する、ノンプリエンティブなスレッドライブラリ」となるでしょうか。さらに協調的同期プリミティブとし
なんかIO扱ったりするのにConduitが熱いらしいので使ってみた。まだよく分かってないのでたぶん色々間違ってる。 ConduitではSourceから一つずつ流れてくるデータをConduitで流れ方を変えたり加工したりしてSinkに流す。SourceとSinkがファイルでConduitが無い場合(つまりファイルの中身を全部コピーするだけ)の例は以下の通り。 import Data.Conduit (($$)) import qualified Data.Conduit as C import qualified Data.Conduit.Binary as CB main :: IO () C.runResourceT $ CB.sourceFile "in.txt" $$ CB.sinkFile "out.txt" sourceFileでファイルの中身をまとめて流すSourceを作り、s
GPGPU Advent Calender@21日目ですが、完全にネタ切れのため前回書き忘れていた部分を補足してお茶を濁します! by jirohcl まず、前回説明し忘れた重要なnoise関数。 float noise(float2 p,__global float2* rt,__global unsigned char* rti) { float2 floor_p = floor(p);//float2(floor(p.x),floor(p.y)) int i=(int)floor_p.x, j=(int)floor_p.y; float2 n00=rt[hash_idx(i,j,rti)]; float2 n10=rt[hash_idx(i+1,j,rti)]; float2 n01=rt[hash_idx(i,j+1,rti)]; float2 n11=rt[hash_idx(i+
C++11標準ライブラリで追加されたenable_shared_from_thisクラステンプレートについてメモ。Boost.Smart Pointersライブラリでも同機能を提供している。 N3337 20.7.2.4/p1より引用。 A class T can inherit from enable_shared_from_this<T> to inherit the shared_from_this member functions that obtain a shared_ptr instance pointing to *this. 具体的な利用例としては http://www.boost.org/doc/html/boost_asio/tutorial/tutdaytime3.html など(使用理由の説明)。 正しい利用方法 「クラス型Tの*thisへのshared_ptr<
ルールベースの音声認識は、想定していない単語にまで過剰にマッチしてしまうことがあります。 そのため、そのままだと使いものにならないので、何かで重しをつけて上げる必要があります。 その重しの付け方について説明します。 windows SAPI な音声認識だと、 SPPHRASEELEMENT の SREngineConfidence に一致率を示す確率が格納されます。 確率なので、 0〜1の間のdouble型で格納されます。 これを見ることでおおよそのマッチ率を見ることができます。 ISpRecoResult* tempresult; { tempresult = tempevent.RecoResult(); //認識した文字列の取得 CSpDynamicString tempdstrText; hr = tempresult->GetText(SP_GETWHOLEPHRASE, SP_
「Boost.Contextの使い道がわからない」という声をちらほら聞くので、ちょっと実用的なサンプル。 わかりやすいのがリアルタイムゲームだと思ったので、ゲームループ(1/60秒での定期実行)で少しずつファイルを読んでいく処理を書きました。これと同じようにして、シューティングゲームやパチンコなどでの弾道なんかにも使えますね。 【a.txt】 aaa bbb ccc#include <iostream> #include <fstream> #include <boost/bind.hpp> #include <boost/ref.hpp> #include <boost/asio.hpp> #include <boost/asio/steady_timer.hpp> #include "continuation.hpp" namespace asio = boost::asio; nam
「[]で始まり、lamda外のなにものもcaptureしていない stateless lambda は function pointer に暗黙変換できる」 とあります。 さっそく試してみんよ。 #include <iostream> #include <cstdlib> using namespace std; int main() { const int N = 10; int data[N] = { 9, 7, 5, 3, 1, 0, 2, 4, 6, 8 }; // qsortの比較関数にlambdaをねじ込む qsort(data, N, sizeof(int), [](const void* x, const void* y)->int { return *static_cast<const int*>(x) - *static_cast<const int*>(y);} );
久しぶりにメタプログラミングをしようと思う。特に、has_xxxをC++11で書くことに挑戦してみる。has_xxxとは、ある型がネストされた名前を持っているかどうかを確認するメタ関数である。名前は、型、もしくは非型のどちらかになる。 まず、型の方から。 namespace detail { template < typename T, typename U = typename T::type > std::true_type check_type( int ) ; template < typename T > std::false_type check_type( long ) ; } template < typename T > struct has_type : decltype( detail::check_type<T>( 0 ) ) { } ; なんと、たったのこれだけの
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く