請問這拼圖用C#如何畫

t_kong 2016-10-26 06:58:45


對Graphics學習不是很透徹,請各位大神指點一下。
...全文
242 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
stherix 2016-10-27
  • 打赏
  • 举报
回复
引用 2 楼 t_kong 的回复:
[quote=引用 1 楼 stherix 的回复:] 确定下坐标就好了 Graphics g = e.Graphics; //创建画板,这里的画板是由Form提供的. Pen p = new Pen(Color.Black, 2); g.DrawRectangle(p, 40, 30, 30, 100); g.DrawRectangle(p, 110, 30, 30, 100); g.DrawLine(p,10,130,170,130); g.DrawArc(p, 10, 45, 160, 140,10f,160f);
可以的,感謝! 1.如果已知左上角(X,Y),能否通過這個點,把所有的坐標都運算出來?點與點之間會存在關係嗎? 2.如果我想將它做成一個整體,然後對其進行平移,或旋轉,我應該如何做好?[/quote] 点之间是存在着关系的 你自己要了解GDI的坐标系,或者自己手工在纸上画出坐标轴和这个图形,确定一下各个图形的相对位置 或者你可以使用楼上的方法
xuzuning 2016-10-27
  • 打赏
  • 举报
回复
放到 GraphicsPath 中就是一个整体了 通过仿射矩阵就可轻松的实现 缩放、平移、旋转
t_kong 2016-10-27
  • 打赏
  • 举报
回复
引用 1 楼 stherix 的回复:
确定下坐标就好了 Graphics g = e.Graphics; //创建画板,这里的画板是由Form提供的. Pen p = new Pen(Color.Black, 2); g.DrawRectangle(p, 40, 30, 30, 100); g.DrawRectangle(p, 110, 30, 30, 100); g.DrawLine(p,10,130,170,130); g.DrawArc(p, 10, 45, 160, 140,10f,160f);
可以的,感謝! 1.如果已知左上角(X,Y),能否通過這個點,把所有的坐標都運算出來?點與點之間會存在關係嗎? 2.如果我想將它做成一個整體,然後對其進行平移,或旋轉,我應該如何做好?
stherix 2016-10-26
  • 打赏
  • 举报
回复
确定下坐标就好了 Graphics g = e.Graphics; //创建画板,这里的画板是由Form提供的. Pen p = new Pen(Color.Black, 2); g.DrawRectangle(p, 40, 30, 30, 100); g.DrawRectangle(p, 110, 30, 30, 100); g.DrawLine(p,10,130,170,130); g.DrawArc(p, 10, 45, 160, 140,10f,160f);

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧