通知
すべてクリア
Topic starter
2006年8月24日 8:04 AM
かなりの高さを持つページの一部をクライアントエリアに表示する場合、クライアントエリア外の表
示アイテムは何らかのカリング処理をするべきでしょうか?
例えば300*300のクライアントエリアを持つウィンドウにて、
Rectangle( hDC, x, y, w, h );
というプログラムにおいて、
RECT rc;
GetClientRect( &rc );
if( y < rc.bottom && (y + h) >= 0 )
{
Rectangle( hDC, x, y, 10, 10 );
}
とした方がいいのか?
ということです。
懸念すべきは処理速度です。
環境は
WinXP
VisualC++6.0
です
初心者の分際で申し訳ありませんが、よろしくおねがいします。
Topic starter
2006年8月24日 8:05 AM
> 例えば300*300のクライアントエリアを持つウィンドウにて、
300 * 300って使ってないですね。
すみません。
2006年8月24日 9:33 AM
システムが内部で同じ判定をしていますから、
(A)矩形が描画される場合→同じ判定を二度するので無駄
(B)矩形が描画されない場合→関数呼出しの分だけ得
となり、可もなく不可もなくといったところでしょう。
だったら、コードが単純なほうが良いです。
矩形が何万個もあって、その殆どが描画域外にあるとかなら、
(B)の方が効いてきて、意味が出てくるかもしれませんが。
Topic starter
2006年8月24日 11:24 AM
> システムが内部で同じ判定をしていますから、
それが知りたかった。
dairygoodssaさんありがとうございました。