Cocoa animator代理是否无法处理0.5点?

Cocoa animator代理是否无法处理0.5点?,cocoa,core-animation,nsview,Cocoa,Core Animation,Nsview,我正在尝试移动自定义视图的原点。 如果我直接为框架设置新原点,一切都会如预期的那样正常工作 [MyView setFrameOrigin:NSMakePoint(0.5, 0.5)]; 如果我尝试使用代理动画设置运动动画 [[MyView animator] setFrameOrigin:NSMakePoint(0.5, 0.5)]; 新原点将是(1,1),而不是(0.5,0.5)。 我做错什么了吗? animator是否无法处理0.5个点?我猜animator代理正在帮助纠正可能导致边缘和

我正在尝试移动自定义视图的原点。 如果我直接为框架设置新原点,一切都会如预期的那样正常工作

[MyView setFrameOrigin:NSMakePoint(0.5, 0.5)];
如果我尝试使用代理动画设置运动动画

[[MyView animator] setFrameOrigin:NSMakePoint(0.5, 0.5)];
新原点将是(1,1),而不是(0.5,0.5)。 我做错什么了吗?
animator
是否无法处理0.5个点?

我猜animator代理正在帮助纠正可能导致边缘和/或文本模糊的帧。在像素边界上绘制东西(0.5、0.5与1.0、1.0或0.0、0.0)很少有用,除非您试图使某些东西模糊(如阴影或辉光)


您可能有很好的理由这样做,但最好问“为什么?”

是的。实际上,我想做的是:*一个绘制圆角矩形的NSView*圆角矩形是从NSINStrect([自边界],0.5,0.5)派生的NSRect开始绘制的*在NSBezierPath上绘制一个线宽为1.0的笔划*添加自定义视图,我想在NSBezierPath内制作动画,测试0.5用于插入,1.0用于线宽,这会给我带来最佳的视觉效果。但我可能把一切都变得复杂了。马西莫佩里:你可能更喜欢使用内部笔划,正如我在这里描述的: