特别是在Java,Android中,如何将Path对象转换为100个像素?就像在C#中一样,我会使用以下代码来执行此 *** 作:
// Create a path and add and ellipse.GraphicsPath myPath = new GraphicsPath();myPath.AddEllipse(0, 0, 100, 200);// Draw the starting position to screen.e.Graphics.DrawPath(Pens.Black, myPath);// Move the ellipse 100 points to the right.Matrix translateMatrix = new Matrix();translateMatrix.Translate(100, 0);myPath.transform(translateMatrix);// Draw the transformed ellipse to the screen.e.Graphics.DrawPath(new Pen(color.Red, 2), myPath);
我如何在AndroID中执行此 *** 作?我已经有了Path对象:
@OverrIDeprotected voID onDraw(Canvas canvas) { super.onDraw(canvas); Paint pnt = new Paint(); Path p = new Path(); pnt.setStyle(Paint.Style.stroke); pnt.setcolor(color.WHITE); p.moveto(97.4f, 87.6f); p.lineto(97.4f, 3.8f); p.lineto(-1.2f, 1.2f); p.lineto(-0.4f,-0.4f); p.lineto(-0.4f,87f); p.lineto(97.4f, 87.6f); p.close(); canvas.drawPath(p, pnt); }
为了将Path对象移动超过100个像素,我需要做什么?
解决方法:
它几乎是一样的:
Matrix translateMatrix = new Matrix();translateMatrix.setTranslate(100,0);p.transform(translateMatrix);
我没有测试它,只是看了API.
总结以上是内存溢出为你收集整理的java – 移动图形Path对象全部内容,希望文章能够帮你解决java – 移动图形Path对象所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)