programming

newの再定義とboostのインクルード

boostのライブラリをインクルードする時、 newを再定義していたりすると*1、コンパイルで落ちることがある。上手くinclude順を調整すれば回避できるようだが、 一筋縄でいかない事もあるので注意。 *1:メモリリークの検知などで行番号を埋め込むときとか

二次元vectorの初期化

stl::vectorの初期化。 多次元の場合、この書き方だと楽に初期化できる(知らなかった)。 vector<vector<int>> v; ... v = vector<vector<int>>(100, vector<int>(100, 0));きっと3次元以上でも同じ要領で出来るのかな?</int></vector<int></vector<int>

勝手に動かないで

WPFのデザインモードかどうかをチェックする方法。 デザインモードではカレントディレクトリなど、色々実行時と異なる要素がある ので、それで例外投げて落ちられると、デザイナが機能しなくなる。 DesignerProperties.GetIsInDesignMode(this) //thisはUIエ…

WPFでのUIアンチエイリアス封じ込め

WPFでのアンチエイリアス封じ込めのために。 Root要素で以下の指定をしておけば大体全部?アンチエイリアスを無効にできる。 RenderOptions.BitmapScalingMode="NearestNeighbor" RenderOptions.EdgeMode="Aliased"http://blogs.msdn.com/b/hiroyuk/archive/…

画像つき背景とか

ちょっと凝った背景*1をコントロールの背景に設定し たい時、Templateを使えば上手くいくかと思ったら中々行かなかった。仕方ないので何もしないGridのみのUserControlを使って代用。 これで背景などのスタイルも一元管理できるけど、 いささか大掛かりすぎ…

UserControlの継承めも

自前のUserControlを継承して、 派生のUserControlを作りたい時に。 基底クラスのコードをoverrideして独自処理にしたりとか。基本的なやり方は、 http://d.hatena.ne.jp/kent013/20091129/1259482727 http://d.hatena.ne.jp/okazuki/20091025/1256472760 ht…

WPF:ResourceDictionary

WPFのResourceDictionary、外部からのロードの例。 <UserControl.Resources> <ResourceDictionary Source="/CommonResource.xaml"/> </UserControl.Resources>VS2010以降?は頭に"/"入れないとプロジェクトを正しく参照しないっぽい。 古い記事とかだと"/"無しが見られるので注意。

画像フォーマットのコンバータ

実行ファイルが置いてあるディレクトリ内のBMPファイルを 全てPNGファイルにコピーするPythonスクリプト。 Python書くのは久しぶりなので、色々と雑なのは悪しからず。 ディレクトリの、日本語パスには対応していないっぽい(駄目だった)。Python2.4使用。 …

Pixel-Snapとか

SnapsToDevicePixelsプロパティをTrueにすることで、アンチエイリアスを無効化。 Keyboard.Focus(UIElement)キーボードのフォーカスを取得させる。ImageとかでもOK。画像リソース埋め込みメモ。 ビルドアクションは"Resource"、出力ディレクトリに「コピーし…

ZIndexプロパティ

ZIndexの値を大きく設定したUIが上に描画される。 DockPanelの登録順で配置を制御している*1場合の補助に使える。 *1:代わりに描画順が制御できないので、ZIndexを使う

ClipToBoundsプロパティ

UIElementクラスのClipToBoundsプロパティをtrue*1 に設定すると、 コントロールの境界線上で子要素をクリッピング出来る。お手製ScrollViewerの実装で、子要素をスクロールさせた時に、 UIの外側に子要素がはみ出ないように、ちゃんと設定しておくこと。 *1…

WPFのScrollBar

ScrollBarのThumb(つまみ/スライダー)の大きさの指定は、 scrollbar.ViewportSizeのプロパティを適切な値に指定してやればOK。 ぶっちゃけ「あの部分の名前なんだっけ」のために当該プロパティを延々探すハメに。。。http://msdn.microsoft.com/ja-jp/libr…

Boost

boostpro http://www.boostpro.com/インストーラーが提供されている。 色々楽できる(いつも忘れるのでメモ)。

進捗とか

気づけば11月も半ば。 色々あった2011年も、もう残り少ない。正直、色々ありすぎた感も。 次作の仕込みは順調といえば順調。 去年くらいから模索していた、とある機構については実験レベルでの動作が確認できた。 例によってコードを整理する必要があるけど…

進捗など

最近は次作の仕込み作業と称して色々作業してます。 今日ようやく、兼ねてから欲しかったお手製ライブラリに、 ファイルから取り込んだ音声と、プログラム的に生成した音声を 一律に扱う機構を追加出来ました。結構面倒だった。 使いながらコード最適化した…

【WPF】writeablebitmap の使い方めも

探した範囲でなかなか良い資料が見つからず、 数日引っかかっていたので自分用メモ。 コード抜粋+要点まとめなのでコピペでは動かないので注意。 基本はロック〜アンロックの間に、 WritePixels関数で色情報を書き込む流れ。 元画像の一部を切り取るときはC…

VS2010+DropBox+SVN?

モノクロとは別の話。 開発環境を試しにクラウド化してみた。 VS2010のプロジェクトをDropBox上に配置。 Intelligenceなどのデータベースは容量を圧迫するので、 VisualStudioのFallbackというのを用意してローカルで管理。 個人開発だし、この辺の整合性が…