草庐IT

绘图笔

全部标签

ios - 撤消/重做以在 iOS 中绘图

我正在开发一个绘图应用程序,我想撤消/重做,为此我将CGPath保存在结束到NSMutableArray的触摸上,但我不明白我应该如何在单击“撤消”按钮时渲染CGPath编辑1:因为我使用的是BezierPaths,所以,我首先决定采用一种简单的方法,即在没有CGPath的情况下,只抚摸这条路径,EDIT2:由于我的撤消是分段发生的(即部分而不是整个路径被删除),我决定创建一个数组数组,所以我做了相应的更改,现在我将在CGlayer中绘图,采用CGPath所以这里的“parentUndoArray”是数组的数组。所以我是这样做的我有一个名为DrawingPath的类,它将进行绘图//D

iOS - 父/ subview 的 Quartz 绘图问题

场景我有两种看法。一个是“父”View,它包含一个进行绘图的“子”View。我在接下来的代码中将子项称为QuartzView。QuartzView知道如何根据自己的上下文绘制正方形。问题当我告诉它的QuartzViewself绘制一个正方形时,它会按预期执行。当我使用父View告诉QuartsView在它的self上绘制一个正方形时,它会在屏幕左下角以预期大小的大约1/5绘制正方形。问题我假设这里存在一些父/子或上下文问题,但我不确定它们是什么。如何让两个正方形以完全相同的大小绘制在完全相同的位置?父ViewController-(void)drawASquare{//thiscode

Python数据可视化(坐标轴的定制与3D绘图)

1 隐藏轴脊importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.patchesasmpathespolygon=mpathes.RegularPolygon((0.5,0.5),6,0.2,color=‘g’)ax=plt.axes((0.3,0.3,0.5,0.5))ax.add_patch(polygon)#隐藏全部轴脊ax.axis(‘off’)plt.show()2 隐藏部分轴脊importnumpyasnpimportmatplotlib.pyplotaspltimportmatplotlib.patchesasmp

iphone - 当我调整 CAEAGLLayer 大小时,OpenGL 绘图搞砸了

我正在尝试在我的应用程序中实现一些基本的OpenGL,在这样做的过程中,我使用了SDK中包含的GLPaint示例作为起点。我的代码本身运行良好,但一旦我将所有内容移至我的应用程序,相同的代码就会失败。根据我的尝试,问题是(1)图元在第一次绘制时被压扁,然后在绘制后续图元时漂浮到屏幕顶部,或者(2)图元根本不出现.我已将范围缩小到我的应用程序需要调整CAEAGLLayer的大小这一事实。它在UIScrollView中,可以随时移动和调整大小(捏合、拖动等),就像在GLPaint示例中一样,我吹走了帧缓冲区并在每次View调整大小时(通过layoutSubviews)重新创建它,但这不会不

ios - UIBezierPath绘图占用CPU 100%

每次用户触摸移动时,我都会在屏幕上绘制一个UIBezierPath。这在我的MacPro模拟器上运行良好,但当我将它移到物理设备上时,绘图开始出现严重滞后。使用仪器,我检查了CPU使用率,当用户正在绘图时,CPU使用率达到100%。这成为了一个很大的问题,因为我有一个应该以30fps的速度触发的NSTimer,但是当CPU因绘图而过载时,计时器仅以10fps左右的速度触发。如何优化绘图,使其不会占用100%的CPU?UITouch*lastTouch;-(void)touchesBegan:(NSSet*)toucheswithEvent:(UIEvent*)event{if(last

ios - 是否可以在 Xcode 中为 SpriteKit 打开现场调试绘图?

是否可以在Xcode中为SpriteKit开启现场调试绘图?我的意思是像下面的图片(它来自WWDC2014,第608节)。 最佳答案 将以下内容添加到您的ViewControllerswift:skView.showsFields=true目标:skView.showsFields=YES; 关于ios-是否可以在Xcode中为SpriteKit打开现场调试绘图?,我们在StackOverflow上找到一个类似的问题: https://stackoverflo

ios - 如何使用 iOS Quartz 2D 绘图绘制这个复杂的形状?

我知道如何使用iOSQuartz2D绘图绘制简单的形状-矩形、椭圆和直线等。虽然我现在正在尝试绘制一个相对复杂的形状,但八分音符的尾部:谁能提出解决这个问题的好方法? 最佳答案 你能在Inkscape这样的图形程序中设计八音符吗?,导出为SVG,然后使用SVGKit渲染?从开发层面来看,维护可以直观更新的内容要比尝试使用代码绘制形状容易得多。 关于ios-如何使用iOSQuartz2D绘图绘制这个复杂的形状?,我们在StackOverflow上找到一个类似的问题:

Ios绘图线动画

我有一个View,其中有多条水平线(如水平刻度盘)。我想为水平运动设置动画。它应该是这样的编辑:我该怎么做?据我所知,我不能使用CoreAnimation。此外,我不希望能够模拟不同种类的速度。更新方法将如何工作?我要更改绘制时间或距离吗?我知道我可以用ScrollView解决这个问题,但我不想使用它。谢谢! 最佳答案 如果我已经理解您想要做什么,那么我看不出您为什么不能使用CoreAnimation来做到这一点。如果您要移动的图案如此简单,那么您可以在CAShapeLayer上使用虚线图案来绘制图案。我创建了图层,以便它从边界的高

iOS绘图到屏幕

我正在使用核心图形在iOS屏幕上绘图,我设法能够在屏幕上绘图,但是根据我遵循的教程,绘图屏幕覆盖了我的nib文件中的所有其他内容。谁能帮我弄清楚如何将绘图区域限制在我在Nib中创建的View内?我已经坚持了一段时间。我遵循的教程是这样的:http://www.ifans.com/goto/http://www.touchrepo.com/SampleCode/TEST_DRAW_APP.zip我的代码:-(void)viewDidLoad{[superviewDidLoad];//Doanyadditionalsetupafterloadingtheviewfromitsnib.//S

objective-c - Core Plot - 如何在具有对数轴的绘图空间中将接触点转换为绘图点

我有一个带有线性y轴和对数x轴的散点图,所有这些都很好用。但是当我尝试将触摸点转换为绘图空间坐标时,我遇到了问题。我在不同的地方看到了类似以下建议的内容:-(BOOL)plotSpace:(CPTPlotSpace*)spaceshouldHandlePointingDeviceUpEvent:(id)eventatPoint:(CGPoint)point{CPTXYPlotSpace*plotSpace=(CPTXYPlotSpace*)space;CPTScatterPlot*scatterPlot=[[[plotSpacegraph]allPlots]objectAtIndex: