HMDT - Logic and Intuition -

about HMDT

Cocoa Programming Tips 1001

Foundation

Geometry関数

Foundation - Geometry関数

NSRectのANDやORをとる

Keywords: NSIntersectionRect, NSUnionRect

ある2つのNSRectがあったとしよう。それらのANDやOR、つまり論理積や論理和ってものが定義できるはずだ。論理積の方はNSRectが重なり合っている領域、論理和の方は2つのNSRect両方を覆い尽くすNSRect、ということになる。図で示すと、こんな感じだ。

Cocoaにはこれを取り出す関数が用意されている。NSIntersectionRect()NSUnionRect()だ。

Foundation/NSGeometry.h

FOUNDATION_EXPORT NSRect NSIntersectionRect(
        NSRect aRect, NSRect bRect);
FOUNDATION_EXPORT NSRect NSUnionRect(
        NSRect aRect, NSRect bRect);

NSIntersectionRect()がANDを、NSUnionRect()がORを適用したNSRectを返してくれるんだ。

back to top content

Copyright © 2002-2006 HMDT. All rights reserved.