macOS/iOS API解説

iOS , Mac アプリケーション開発のために使われる主要フレームワークの日本語情報です。2010年代に書かれた内容です。今後更新はありません。

目次

setWindingRule:

INDEX>AppKit>NSBezier

くりぬき規則をセットします

Objective-C

@property NSWindingRule windingRule

Swift

var windingRule: NSWindingRule
-(void)setWindingRule:(NSWindingRule)aWindingRule:

解説

図形をくりぬくか(WindingRule)をセットします
【NSWindingRule】
● NSNonZeroWindingRule 重なる塗りオブジェクトの向きが逆ならくりぬきます
● NSEvenOddWindingRule 重なる塗りオブジェクトの向きが同じならくりぬきます

返り値

Objective-C

Swift


    
( void )

なし

引数

Objective-C

Swift


    
( NSWindingRule )aWindingRule

くりぬき規則

フレームワーク

ApplicationKit

クラス

NSBezierPath

使用可能

10.0

参照

関連記事(外部サイト)

例文

//NSViewのサブクラス MyViewのDrawRectに上書き
-(void)drawRect:(NSRect)rect
{

NSBezierPath *thePath1 = [NSBezierPath bezierPath];
[thePath1 setWindingRule:NSEvenOddWindingRule];

[thePath1 moveToPoint:NSMakePoint(20,20)];

[thePath1 appendBezierPathWithOvalInRect:NSMakeRect(50,50,100,100)];
[thePath1 appendBezierPathWithOvalInRect:NSMakeRect(20,20,80,80)];



[[NSColor redColor] set];
[thePath1 fill];


}

更新時バージョン

10.10