<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href="skin/atom.xsl" type="text/xsl" media="screen"?><feed version="0.3" xml:lang="ja" xmlns="http://purl.org/atom/ns#" xmlns:dc="http://purl.org/dc/elements/1.1/">
		<title>きまぐれライダー日記</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/" />
		<tagline>多忙な（？）大学院生ライダーが送る、きまぐれ日記</tagline> 
		<modified>2009-11-23T02:46:13+09:00</modified>
		<author>
			<name>Gaku</name>
		</author>
		<generator url="http://njoy.pekori.to/blog/">BlognPlus Feed Generator</generator> 
		<entry>
		<title>[MFC]MFCでOpenCVを描画する（CvvImage）</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/index.php?e=160" />
		<id>http://wish-star.sytes.net/~gaku/index.php?e=160</id>
		<issued>2009-11-23T02:46:13+09:00</issued>
		<modified>2009-11-23T02:46:13+09:00</modified>
		<summary type="text/plain">OpenCV1.0でのお話．MFC上でOpenCVを描画する方法は，あまり紹介されていない気がする．カットシステムから出版されている「実践OpenCV」ではIplImageの画像データ領域に，BITMAPINFO等を付けてDIB...</summary>
		<author>
			<name>Gaku</name>
		</author>
		<dc:subject>Programming::C++ (MFC)</dc:subject>
		<content type="text/html" mode="escaped" xml:lang="ja">
		 <![CDATA[ 
OpenCV1.0でのお話．<br />
<br />
MFC上でOpenCVを描画する方法は，あまり紹介されていない気がする．<br />
カットシステムから出版されている「実践OpenCV」では<br />
IplImageの画像データ領域に，BITMAPINFO等を付けて<br />
DIB形式とし，StretchDIBitsメソッドでDCに対して描画を行う方法を紹介している．<br />
手法としては間違ってはいないが，正直面倒である（笑）<br />
<br />
<blockquote>※ DIB（デバイス独立ビットマップ）<br />
メモリ上の任意の領域をRGB形式（またはカラーテーブルで指定される色の配列）の画像データを格納した<br />
ビットマップ（フレームバッファ）として扱い、画面などに描画する機能</blockquote>あまり知られていないが，OpenCVには<br />
C++用にIplImage構造体をラッピングしたCvImageクラスが存在する．<br />
その中でも，CvvImageクラスはWindowsのGDIをサポートしており，<br />
DCに対して描画を行う事が出来るという素晴らしさ！！<br />
画像のリサイズも自動で行ってくれるため，コードの無駄をかなり減らす事が出来，<br />
ダブルバッファリングを組み合わせればほぼ完璧！？<br />
<br />
実際の使い方としては，以下の通り．<br />
{GESHI}{LANG}cpp{/LANG}{NUMBER}1{/NUMBER}// 画像データを既に保持している IplImage* m_img がDocumentクラスに定義済みと仮定<br />
void C**View::OnDraw(CDC* pDC)<br />
{<br />
	// TODO: ここに特定なコードを追加するか、もしくは基本クラスを呼び出してください。<br />
	CAttitudeEstimationDoc* pDoc = this->GetDocument();<br />
<br />
	// 描画対象の領域サイズを取得<br />
	CRect rect;<br />
	GetDlgItem(ID)->GetClientRect(&rect);<br />
<br />
	CvvImage cvvImage;<br />
	cvvImage.copyOf(pDoc->m_img);<br />
	cvvImage.DrawToHDC(pDC->GetSafeHdc(), &rect);<br />
}{/GESHI}<br />
このCvvImageクラスには，DrawToHDC()メソッドの他にShow()メソッドもある．<br />
正直，GDIを扱う人であればhighgui.hにあるCvvImageクラスの定義を読めば理解出来るハズ．<br />
<br />
注意すべき点としては，cvvImageクラスをCImageクラスとして定義しているため，<br />
ATLのCImageクラスと名前が被ってしまう点であろう．<br />
同時にATLのCImageクラスを扱う場合は，ATLのCImageクラスの名前を別の名前に定義し直す方が良いと思われる．<br />
<br />
記事の続きにhighgui.hのCvvImageクラスが定義されている箇所を提示しておく．
 ]]> 
		</content>
		</entry>
		
		<entry>
		<title>オイル交換 [55,226km]</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/index.php?e=159" />
		<id>http://wish-star.sytes.net/~gaku/index.php?e=159</id>
		<issued>2009-11-21T00:14:22+09:00</issued>
		<modified>2009-11-21T00:14:22+09:00</modified>
		<summary type="text/plain">本日、オイル交換を行った。自分でオイル交換をしようと思っていたが・・・いつも行く「しゃぼん玉」が、毎月0日はオイル交換工賃0円であったため作業をお願いした。前回入れてた...</summary>
		<author>
			<name>Gaku</name>
		</author>
		<dc:subject>バイク::メンテナンス</dc:subject>
		<content type="text/html" mode="escaped" xml:lang="ja">
		 <![CDATA[ 
本日、オイル交換を行った。<br />
<br />
自分でオイル交換をしようと思っていたが・・・<br />
いつも行く「しゃぼん玉」が、毎月0日はオイル交換工賃0円であったため作業をお願いした。<br />
<br />
前回入れてたオイルはWAKO’Sの4CR 10W-40だったが<br />
最近、RESPOのオイルが良い意味で期待を裏切ってくれていたため、RESPOのR-TYPEを入れる事にした。<br />
なお、R-TYPEのオイル粘度の設定は10W-50しか無いそうだ。<br />
更にオイルフィルター交換タイミングだったため、<br />
マグネット入りのものにしようと思ったが・・・売り切れのため、標準タイプを購入。<br />
そして、SUPER ZOILを250ml投入（笑）<br />
<br />
ちなみに、サービスマニュアル上でのオイル交換量は以下の通り。<br />
 ・ オイル交換 ： 3.0L<br />
 ・ オイル＋フィルター交換 ： 3.3L<br />
 ・ オーバーホール時 ： 3.6L<br />
<br />
交換した物をまとめると以下の通り。<br />
 ・ RESPO R-TYPE (10W-50) 約3.0L<br />
 ・ SUPER ZOIL 250ml<br />
 ・ kijima オイルフィルター（標準タイプ）<br />
 ・ アルミドレンワッシャー（M14）<br />
<br />
そして、作業をお願いする際に、抜いたオイルの目視確認をお願いしておいた。<br />
作業はお願いしていても、やはり自分の目でバイクの状態を把握する必要がある。<br />
<br />
作業が終わるまでの間、仲の良い店員さんと雑談して時間を過ごし<br />
車両の受け渡しの際に、予定通りオイルを確認させて頂いたが<br />
鉄粉が紛れ込んでいる感じは無く、状態としては良い感じ。<br />
<br />
エンジンを掛けてみて、メカニカルノイズの感じに驚く。<br />
刺々しいメカニカルノイズが減って、全体的に丸みの帯びたメカニカルノイズとなっていた。<br />
<br />
<b>SUPER ZOILが凄いのか？それとも、RESPOのオイルが凄いのか？</b><br />
とりあえず、前者であることを願いつつ、乗って帰ってきたが、<br />
エンジンのレスポンスは、荒々しさが消えているような感じで確実に良くなっている。<br />
<br />
そのまま走りに行きたくなるエンジンとなった。（寒いから諦め<br />
<br />
<a href="http://wish-star.sytes.net/~gaku/files/55226km.jpg" target="_blank"><img src="http://wish-star.sytes.net/~gaku/files/55226km.jpg" width="320" height="240" alt="55,226km"></a><br />
次回オイル交換は、状態が良かったため<br />
3,000km～2,500kmで行うとして、58,000kmを目安とする。<br />
そして、次回こそは自分でやろうと思う。
 ]]> 
		</content>
		</entry>
		
		<entry>
		<title>[MFC] ツールバーのグリップ部分（覚え書き）</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/index.php?e=157" />
		<id>http://wish-star.sytes.net/~gaku/index.php?e=157</id>
		<issued>2009-11-08T20:29:32+09:00</issued>
		<modified>2009-11-08T20:29:32+09:00</modified>
		<summary type="text/plain">正直，研究でのプログラムはMFCで開発することはあまり無い．ただ，計算値の監視とかするのにコンソール出力では流れてしまってあまりにも現実的では無い時や形として残しておきた...</summary>
		<author>
			<name>Gaku</name>
		</author>
		<dc:subject>Programming::C++ (MFC)</dc:subject>
		<content type="text/html" mode="escaped" xml:lang="ja">
		 <![CDATA[ 
正直，研究でのプログラムはMFCで開発することはあまり無い．<br />
ただ，計算値の監視とかするのにコンソール出力では<br />
流れてしまってあまりにも現実的では無い時や<br />
形として残しておきたい時はMFCを使う．<br />
<br />
で，久しぶりにMFCのDocument-Viewerアーキテクチャーを使って開発してみたところ<br />
ツールバーのグリップ部分がちゃんと描画されないバグに出会った．<br />
過去に修正した事はあるが，覚え書きとして以下に記載しておく．<br />
<br />
CMainFrame::OnCreate()のツールバーを作成している部分を修正<br />
<br />
以下の部分を<br />
{GESHI}{LANG}cpp{/LANG}{NUMBER}1{/NUMBER}if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE<br />
    | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS <br />
    | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||<br />
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))<br />
{<br />
    TRACE0("Failed to create toolbar\n");<br />
    return -1;      // 作成に失敗<br />
}{/GESHI}<br />
<br />
以下の通りに修正<br />
{GESHI}{LANG}cpp{/LANG}{NUMBER}1{/NUMBER}if (!m_wndToolBar.CreateEx(this, 0, WS_CHILD | WS_VISIBLE<br />
    | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS <br />
    | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||<br />
    !m_wndToolBar.LoadToolBar(IDR_MAINFRAME))<br />
{<br />
    TRACE0("Failed to create toolbar\n");<br />
    return -1;      // 作成に失敗<br />
}<br />
// TBSTYLE_FLATを改めてセット<br />
m_wndToolBar.ModifyStyle( 0, TBSTYLE_FLAT );{/GESHI}<br />
<br />
ソース<br />
 ・ <a href="http://wind-master.dip.jp/soft-info/item/56" target="_blank">気まぐれソフトハウス >> VC++6.0でXPビジュアルスタイルを使うには</a>
 ]]> 
		</content>
		</entry>
		
		<entry>
		<title>OHLINSのリアショックが・・・</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/index.php?e=156" />
		<id>http://wish-star.sytes.net/~gaku/index.php?e=156</id>
		<issued>2009-10-13T10:41:12+09:00</issued>
		<modified>2009-10-13T10:41:12+09:00</modified>
		<summary type="text/plain">先週末の話。台風18号が過ぎて、台風一過という事で晴天だったため久しぶりにサスセッティングをしようと矢作ダムに行ってきました。で、早速結論。台風直後の峠には走りに行くも...</summary>
		<author>
			<name>Gaku</name>
		</author>
		<dc:subject>バイク::修理 or 改造</dc:subject>
		<content type="text/html" mode="escaped" xml:lang="ja">
		 <![CDATA[ 
先週末の話。<br />
台風18号が過ぎて、台風一過という事で晴天だったため<br />
久しぶりにサスセッティングをしようと矢作ダムに行ってきました。<br />
<br />
で、早速結論。<br />
<br />
<span style="font-size:20px;"><b>台風直後の峠には走りに行くものではない！</b></span><br />
吹き溜まりというか・・・道路の上は落ち葉だらけで<br />
まともに走ることさえ難しい（＾＾；<br />
そんな中、とりあえずダムまで行ってきました。<br />
<br />
そして、ダムにて<br />
日頃からリアサスが高速時に落ち着かない感じがしていたため<br />
もうちょっと圧側の減衰を強めようと思い、圧側の調整ノブを回したところ・・・<br />
<br />
<span style="font-size:16px;">「あら？カチカチ感が明らかにおかしいｗｗｗ」</span><br />
回しても回しても、一向に止まらない・・・これはまずい[:汗:]<br />
状況が状況なため渋々峠を安全運転で帰宅。<br />
<br />
<br />
で、昨日調べてみたら・・・アジャストノブなめてました。<br />
まぁ 樹脂 v.s. 金属 じゃあ仕方ないだろうし<br />
下手に硬いノブなんかついてたら、減衰調整を回し過ぎでぶっ壊しそうだから<br />
こういう仕様なんでしょうな（笑<br />
<br />
まぁプラリペアと型取り君で直すとして<br />
悪戯された可能性が高いな・・・大学で。<br />
<br />
<a href="http://wish-star.sytes.net/~gaku/files/ohlins_knob.jpg" target="_blank"><img src="http://wish-star.sytes.net/~gaku/files/ohlins_knob.jpg" width="320" height="240" alt="OHLINS アジャストノブ部分（ノブ取り外し）"></a>圧側減衰はあまり調整しないから、ノブごと取り外しておくのも手かな。
 ]]> 
		</content>
		</entry>
		
		<entry>
		<title>DiCEの安定化のために</title>
		<link rel="alternate" type="text/html" href="http://wish-star.sytes.net/~gaku/index.php?e=155" />
		<id>http://wish-star.sytes.net/~gaku/index.php?e=155</id>
		<issued>2009-10-12T14:45:59+09:00</issued>
		<modified>2009-10-12T14:45:59+09:00</modified>
		<summary type="text/plain">先週あたりから自分のドメインにまたアクセス出来なくなっていました。原因はDynamicDNSUpdateClientであるDiCE for Linuxが更新せずに止まっていました。（今までの経験上2ヶ月ぐらいすると...</summary>
		<author>
			<name>Gaku</name>
		</author>
		<dc:subject>サーバー関連</dc:subject>
		<content type="text/html" mode="escaped" xml:lang="ja">
		 <![CDATA[ 
先週あたりから自分のドメインに<br />
またアクセス出来なくなっていました。<br />
<br />
原因はDynamicDNSUpdateClientであるDiCE for Linuxが更新せずに止まっていました。<br />
（今までの経験上2ヶ月ぐらいすると止まっている様な気がする・・・。<br />
とりあえず、DynamicDNSが更新されないことには<br />
外部からアクセスする事が出来ないため<br />
安定化のためにcronを使って毎週DiCEを再起動するようにしました。<br />
<br />
ついでに、メモリを512MB増設して<br />
１GBにしたため、スワップメモリをほとんど使用しなくなりました。<br />
（メモリの消費量の原因は、ウィルス対策ソフトなんですけどね・・・<br />
<br />
これで改善されなければ、また考えようっと（笑
 ]]> 
		</content>
		</entry>
		</feed>