各位老大。能不能给个画折线平行线的算法,

qiansong113 2010-01-04 04:19:42
条件: 1、从屏幕上通过鼠标随机输入一条线,至少3个线段。(如下图 黑色 部分)
2、通过对话框输入2个垂距(A和B)。
结果: 生成与输入线平行的二条线(如下图 红色和蓝色 部分);
与输入线的距离分别为已输入的垂距。
示例:
...全文
359 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
苏飞论坛 2010-01-11
  • 打赏
  • 举报
回复
http://www.cnblogs.com/sufei/archive/2009/11/28/1612823.html
qiansong113 2010-01-11
  • 打赏
  • 举报
回复
qiansong113@163.com 谢谢#6楼。。
皮蛋 2010-01-11
  • 打赏
  • 举报
回复
就中学的直线公式
卧_槽 2010-01-11
  • 打赏
  • 举报
回复
我见你问这个问题问半个月了,有这点功夫,自己早写出来了
LorenLiu 2010-01-11
  • 打赏
  • 举报
回复
已经发给你了 :)
LorenLiu 2010-01-07
  • 打赏
  • 举报
回复
这个还是有一定的复杂性的,我做了个比较简单的程序来实现,算法是通过三点成角的方式找到对应的经过位移的顶点坐标

按照你的要求,所求的折线的对应顶点其实是这个角的平分线上的一点,该点到角的两边距离均为所指定的长度d,打个比方,三点的位置分别为(1,0),(0,0),(0,1),那么这个角是90度,角平分线为y=x。就可以找到经过位移对应的顶点距离为2的点是(2,2)

这样找到每个顶点对应的位移点,并加上两个端点对应的位移点,就得到所求的所有点的坐标,并能画出对应的线来。LZ你有email没,我可以把这个小例子发给你试试
LorenLiu 2010-01-04
  • 打赏
  • 举报
回复
mark
LJFaiyan 2010-01-04
  • 打赏
  • 举报
回复
这个主要是判断起始点和终点的坐标 你可以拿张纸先计算一下
zhoujk 2010-01-04
  • 打赏
  • 举报
回复
先把三根线进行指定方向的平移(坐标点的计算),然后检查是否有交点,如果有,就做TRIM运算。几个方向的判断才是难度
qiansong113 2010-01-04
  • 打赏
  • 举报
回复
可是我不会啊。几何全还给老师了
bdmh 2010-01-04
  • 打赏
  • 举报
回复
其实也不难,你只需要计算出几个点的坐标,这个坐标需要根据角度和AB的值进行一下计算就是了

110,526

社区成员

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

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

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