WPF中用PathSegment类在Image控件中画的几何图形如何选中及缩放

花开花折 2015-09-14 11:14:30
如题所示:

1:我在WPF中添加一个Image控件(放在Grid容器中),利用Image控件的source属性添加一图片,利用PathSegment类在Image控件上画几何图形如圆/矩形等 ;现想实现如下功能:

(1):当图片进行缩放时,所绘的几何图形也跟随图片一起缩放;(注:当前图片能进行缩放,但画的几何图形没有跟随一起缩放,感觉图片与几何图形是分离的)如何能做到几何图形与图片一起缩放??

(2):因所绘制的几何图形可能部分需要细微修改,如平移,拉大一边的尺寸(图片不动);请问如何选中要被修改的几何图形;我打算选中要修改的几何图形,然后获取选中几何图形的相关位置点坐标如圆半经,中心点,然后重绘,不知这种方案是否可性????????

请各位指点,谢谢。
...全文
354 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
格拉 2015-09-18
  • 打赏
  • 举报
回复
为什么不用InkCanvas,一定要用Image
花开花折 2015-09-17
  • 打赏
  • 举报
回复
引用 4 楼 u010909114 的回复:
[quote=引用 3 楼 duanzi_peng 的回复:] [quote=引用 2 楼 u010909114 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 1:ViewBox 2:获取选中几何图形的相关位置点坐标如圆半经,中心点 -》 最好使用Canvas面板,在其可以定义子控件的Top,Left 值 可以计算出坐标。不过这个前提是 Canvas的背景必须是那张图片。
1:我用ViewBox测试了下,可以实现图片及几何图形的缩放,但有个缺陷就是当图片放大到一定程度时,会遮住MenuItem控件,试 了下在ViewBox外层加个ScrollView控件来控制图片不要超过一定的边界,发现加后,MenuItem控件上的菜单占击没反应,不知 你有没好的方法????? 2:我是用的Grid容器控制来代替你说的Canvas面板控件的,具体的选中几何图形代码还没完成.[/quote] 缩放 要在一定的区域。一个窗口有特定的部分要进行缩放 而不影响其它部分的正常功能。[/quote] 你好,缩放的功能我修改了下XAML代码,主要是重新布局下,就能实现我要的功能,但还有两个问题想请教下: 1:我想画那种带倾斜角度的椭圆及矩形(用EllipseGeometry画出的都是垂直角度的),不知应该用到那些技术点? 2:当我画好几何图形(如矩形)我想重新修改下矩形的高或长,应该怎样实现,是否要用到矩形上的定位点?还 是? 谢谢。[/quote] 大神去那了啊?
花开花折 2015-09-16
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
[quote=引用 2 楼 u010909114 的回复:] [quote=引用 1 楼 duanzi_peng 的回复:] 1:ViewBox 2:获取选中几何图形的相关位置点坐标如圆半经,中心点 -》 最好使用Canvas面板,在其可以定义子控件的Top,Left 值 可以计算出坐标。不过这个前提是 Canvas的背景必须是那张图片。
1:我用ViewBox测试了下,可以实现图片及几何图形的缩放,但有个缺陷就是当图片放大到一定程度时,会遮住MenuItem控件,试 了下在ViewBox外层加个ScrollView控件来控制图片不要超过一定的边界,发现加后,MenuItem控件上的菜单占击没反应,不知 你有没好的方法????? 2:我是用的Grid容器控制来代替你说的Canvas面板控件的,具体的选中几何图形代码还没完成.[/quote] 缩放 要在一定的区域。一个窗口有特定的部分要进行缩放 而不影响其它部分的正常功能。[/quote] 你好,缩放的功能我修改了下XAML代码,主要是重新布局下,就能实现我要的功能,但还有两个问题想请教下: 1:我想画那种带倾斜角度的椭圆及矩形(用EllipseGeometry画出的都是垂直角度的),不知应该用到那些技术点? 2:当我画好几何图形(如矩形)我想重新修改下矩形的高或长,应该怎样实现,是否要用到矩形上的定位点?还 是? 谢谢。
exception92 2015-09-16
  • 打赏
  • 举报
回复
引用 2 楼 u010909114 的回复:
[quote=引用 1 楼 duanzi_peng 的回复:] 1:ViewBox 2:获取选中几何图形的相关位置点坐标如圆半经,中心点 -》 最好使用Canvas面板,在其可以定义子控件的Top,Left 值 可以计算出坐标。不过这个前提是 Canvas的背景必须是那张图片。
1:我用ViewBox测试了下,可以实现图片及几何图形的缩放,但有个缺陷就是当图片放大到一定程度时,会遮住MenuItem控件,试 了下在ViewBox外层加个ScrollView控件来控制图片不要超过一定的边界,发现加后,MenuItem控件上的菜单占击没反应,不知 你有没好的方法????? 2:我是用的Grid容器控制来代替你说的Canvas面板控件的,具体的选中几何图形代码还没完成.[/quote] 缩放 要在一定的区域。一个窗口有特定的部分要进行缩放 而不影响其它部分的正常功能。
花开花折 2015-09-15
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
1:ViewBox 2:获取选中几何图形的相关位置点坐标如圆半经,中心点 -》 最好使用Canvas面板,在其可以定义子控件的Top,Left 值 可以计算出坐标。不过这个前提是 Canvas的背景必须是那张图片。
1:我用ViewBox测试了下,可以实现图片及几何图形的缩放,但有个缺陷就是当图片放大到一定程度时,会遮住MenuItem控件,试 了下在ViewBox外层加个ScrollView控件来控制图片不要超过一定的边界,发现加后,MenuItem控件上的菜单占击没反应,不知 你有没好的方法????? 2:我是用的Grid容器控制来代替你说的Canvas面板控件的,具体的选中几何图形代码还没完成.
exception92 2015-09-15
  • 打赏
  • 举报
回复
1:ViewBox 2:获取选中几何图形的相关位置点坐标如圆半经,中心点 -》 最好使用Canvas面板,在其可以定义子控件的Top,Left 值 可以计算出坐标。不过这个前提是 Canvas的背景必须是那张图片。

110,539

社区成员

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

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

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