在Silverlight中绘制贝塞尔曲线

本文介绍了一种在Silverlight中实现贝塞尔曲线绘制的方法,包括如何通过Thumb控件调整曲线形状,以及如何生成指向性箭头。通过Thumb控件分别控制起点、终点和两个控制点,实现了曲线的扭曲效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Silverlight中绘制贝塞尔曲线

 

 

我以前的流程设计器使用的都是曲线,而且不能调扭曲,朋友们意见很大,后来我升级了设计器,这里贴出我实现扭曲的思路

 

代码下载: http://files.cnblogs.com/wxwinter/SilverlightBezierSegment.rar

 

在线演示 : http://silverlight.services.live.com/invoke/71234/SilverlightBezierSegment/iframe.html

 

效果说明

 

实现说明

该控件共封装了如下对象

2个Thumb (Thumb0,Thumb3),用于做用做扭曲控柄

2个Thumb (Thumb1,Thumb2) ,用于做用做起点终点控柄

2个Data为 LineSegment 的两点线段Path(pta,pth),用做扭曲控柄

1个Data为 BezierSegment 的四点贝塞尔曲线Path(pt),

1个Data为 LineSegment 的三点闭合线段,用做箭头Path(ptc)

 

pta的两点坐标(Thumb0,Thumb1)

ptb的两点坐标(Thumb2Thumb3)

pt的四点坐标(Thumb0,Thumb1,Thumb2,Thumb3)

ptc的三点坐标(Thumb3,其余两点根据Thumb2与Thumb3的位置动态生成,以实现箭头的方向自动变化)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值