background preloader

Programming

Facebook Twitter

真・コンピュータ用語辞典. 減色アルゴリズム. 単純な方法 使用可能な色は全部で256色。

減色アルゴリズム

単純に考えるのなら、RGBのぞれぞれに数ビットずつ割り当てて、機械的に色を生成すればいい。 例えば、赤に2bit、緑に3bit、青に3bit割り当てて色を生成するなら、こんな感じになる。 上のコードはHTMLのコードを生成するようになっている。 実行するとこういう出力が得られる。 Coltbl1.html この方法では、全ての色を平等に取り扱うことになる。 この画像では、赤や白・黒といった色は使用していない。 まず初めに、各色がそれぞれ何ピクセルずつ使用されているのか、を数え上げる。 2.近い色同士をまとめる 使用可能なカラーパレットの数は256個しかない。 3.256色以下になるまで2を繰り返す 読んで字のごとく。 以上の方法で、何となくそれっぽい色を抽出することができる。 カラーパレットの256色が決定したら、次は各ピクセルごとのインデックス値を決定する必要がある。 多少ムラがあるような気もするが、元画像には存在しなかった亀甲模様が浮かび上がるよりかはマシだと思われる。 C++の便利ツール・ライブラリ: DO++

フルタイムで働きはじめて4ヶ月。

C++の便利ツール・ライブラリ: DO++

いろんなことがありました。 今日はインターンが来ているということもあり日頃のC++コーディングライフの中で大変重用しているツールを紹介します。 といってもどれも有名なツールでググれば解説がでてくるとは思いますので、一言ずつだけ紹介してみます。 みなさんも何かよさげなライブラリ・ツールがありましたら教えてください。 - valgrind/callgrind/cachegrind プログラムの実行結果を解析するツール群。 プログラムのどのが計算量的にボトルネックになっているかを調べるにはcallgrindを使います。 Cachegrindはcallgrindと同様にプログラムのどこで何回キャッシュミスしているかどうかを調べることができます。 - gtest. 4096 Color Wheel Version 2.1.

4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel · 4096 Color Wheel show full list | hide full list.

4096 Color Wheel Version 2.1

Professor Cloud. Cloud Zoom is a super-smooth, touch-enabled jQuery image zoom plugin used on many high profile retail sites.

Professor Cloud

Continuous improvement, regular updates and technical support make it a favoured choice for busy developers who need a mature and reliable jQuery image zoom solution for their clients. Works with jQuery versions 1.4.3 - Latest Works with fluid/responsive layouts (e.g. Bootstrap) Works with modal plugins like Fancy Box* for big pop-up images *Fancy box is available separately here.

Cppguide. 定義: ストリームは printf() や scanf() の代わりになります。

cppguide

賛成意見: ストリームを使うと、プリントしているオブジェクトの型を知る必要がなくなります。 書式文字列が引数リストとマッチしないといった問題は起こりません。 (ただしgccだと printf でも問題は起こりません)。 ストリームには自動のコンストラクタとデストラクタがあり、ファイルのオープンとクローズを自動的にやってくれます。 反対意見: ストリームを使って pread() のような動作を実現するのは困難です。 結論: ログ記録のためのインタフェースとして必要な場合を除き、ストリームを使ってはいけません。 ストリームの使用については賛否両論あります。 さらなる議論 この問題には長い議論があったので、理由についてさらに詳しく説明しておきます。 ストリームの支持者らはストリームが選ばれるのは疑う余地がないと主張しましたが、実際のところ問題はそれほど明快ではありません。 Cout << this; // アドレスを出力 cout << *this; // その内容を出力. 株式会社ロングゲート - 製品案内. ソースコードで発見した奇妙なコメント集. コーダー・デベロッパー・プログラマーさん達はそのソースコードにわかりやすい説明書きを「コメント」として残し、後から他の人が修正・編集しやすいようにコードを書いていきます。

ソースコードで発見した奇妙なコメント集

Stackoverflowの中でなんだそりゃー! というコメントがまとめられていたのでいくつか翻訳してみます! 「クライアントからのムチャぶり迷言集 」に続き久しぶりにネタ系記事です。 楽しんでください! プログラマーさん達の名誉のため、先に言っておきますが、全てのプログラマーがこういったコメントを残しているわけではありませんよ! 自信を失したプログラマー達 自虐コメント多数! 日記と化したコメント達 まるで日記帳のようにプログラマーの感情が現れているソースコード。 TODOリスト プログラマーさんはソースコードにTODOリストを書くようですね! 俺のコードが最強説 そのコードはいじらないのが懸命です。 いいから仕事しなよ…っていう 全く意味のないコメント達。 その他のクスリときたコメント達 解決してません そこはよかったものの、そのコードのせいで他3箇所が動作しなかったようです。 全ては課長の気分次第 とりあえず仕事は終わった.

0からのゲームプログラミング ~ ゲームプログラマーへの第一歩を踏み出そう ~ Cursesの基本的な関数. Cursesの多くの関数のうち,基本的なものを紹介する. cursesには沢山の関数がある.ここではそのうちの以下の機能を使ってみる.

cursesの基本的な関数

カーソルの移動 文字出力 文字の削除 画面のクリア カーソルの移動には int move(int y, int x); Shared notebook: TheNotebook. Table of Contents. C++でcoutやcerrの挙動を変える。 先日twitterで「C++でデバッグする時、よくやるよね」って言ったら結構知らない人がいたのでここでも紹介してみる。

C++でcoutやcerrの挙動を変える。

既存のコードでcout/cerrを使ったデバッグ文がわんさかあって、これログファイルとして出力したいな...って場合ありますよね。 そんな場合 #include <iostream>#include <fstream>using namespace std;int main() { ofstream ofs("debug.log"); cout.rdbuf(ofs.rdbuf()); cout << "debug string" << endl; } こうしておくと、その後のcoutへの出力が全てdebug.logというファイルへ出力される。 なおrdbufを元に戻すには #include <iostream>#include <fstream>using namespace std;int main() { ofstream ofs("debug.log"); streambuf* oldrdbuf = cout.rdbuf(ofs.rdbuf()); cout << "output to file" << endl; cout.rdbuf(oldrdbuf); cout << "output to console" << endl; } こうやる。 Freopen("file.txt", "w", stdout); これをもう少し発展させて、coutへの出力をログファイルぽくする物を先日書いたので紹介してみる。

ちょっと長ったらしいけど...。 Getting Real by 37signals. OpenGL de プログラミング. [t-pot] PROGRAMMING. GLUTによる「手抜き」OpenGL入門. 和歌山大学システム工学部デザイン情報学科 床井浩平 この文書の位置づけ この文書は学生実験のテーマ「VR実験」の参考資料の, GLUT を用いた OpenGL のチュートリアルです. 180 分× 2 日+αで実験部分に到達できると思います.

GLUTによる「手抜き」OpenGL入門

ただし内容は不十分なので, 必要に応じて資料やオンラインマニュ アル等を参照してください. また間違いも含まれていると思います. 初版 1997/09/30, 最終更新 2014/04/09 目次 資料: 1.はじめに 1.1 なぜ GLUT か OpenGL は Silicon Graphics 社 (現 SGI 社, 以下 SGI) が開発した, OS に依存しない三次元のグラフィックスライブラリ (正確には Application Program Interface, API) です. 実はこれが結構面倒な作業なので, 教科書の OpenGL Programming Guide の第 1 版 では, 補助ライブラリ (AUX ライブラリ, 一種の toolkit) というのを導入して, その部分をとりあえず隠していました. OpenGL Programming Guide の第 2 版以降では, AUX ライブラリに代えて GLUT を使っています. ところで, Microsoft 社 (以下 MS) が SGI から OpenGL のライセンスを買って自分のところの OS に載っけたので, OpenGL は一気にグラフィックスライブラリの業界標準の地位に登り詰めました. しかし, AUX ライブラリはもともと学習用であり, ちゃんとしたアプリケーションを書こうとすると機能に不足を感じます. そこで AUX ライブラリを, 多少なりともまともなアプリケーションが作れるように改良したものが GLUT (The OpenGL Utilitiy Toolkit) だと言えます.

Linux や Macintosh では Mesa の上に AUX ライブラリや GLUT が移植されました. 1.2 それ以前に, なぜ OpenGL か シミュレーション結果の視覚化など, グラフィックスを専門としない人が グラフィックスプログラミングをしなければならないということは結構ありますよね. 現在なら, そういう目的には何を使えばいいのでしょうか? #! WiX チュートリアル (日本語訳) — Windows Installer XML ツールセット入門. Boostjp. XMLの読み込み/書き込み - boostjp.