使用Objective C在Mac OS中进行自由手绘图

时间:2014-02-26 12:57:28

标签: objective-c macos whiteboard

是否可以在Mac OS应用程序视图中使用Objective C绘制一个空闲路径?

我正在尝试使用NSBBezierPath进行绘制,并能够绘制线条,圆形等基本形状..,

但是,是否可以使用NSBezierPath绘制一个空闲路径?

请建议。

感谢。

2 个答案:

答案 0 :(得分:2)

如果您创建NSView的子类以用作绘图板,则可以实现mouseDragged:方法(或任何其他鼠标方法)并使用它来捕获鼠标移动。

- (void)mouseDragged:(NSEvent *)theEvent
{
    NSPoint mouseLoc = [self.superview convertPoint:[theEvent locationInWindow] fromView:nil];

    // Do something with mouseLoc
}

答案 1 :(得分:1)

如果您检测到所需的free hand input位置并获取相关的屏幕点,则可以创建贝塞尔曲线路径并使用moveToPoint:(第一个点)和lineToPoint:(用后面的几点)来添加点并指定路径。