javascript - canvas画两个四边形的问题
阿神
阿神 2017-04-11 10:57:03
[JavaScript讨论组]

如图,我在一个canvas上画了两个四边形,这两个四边形都可以拉伸

现在是有两个需求:
1.这两个四边形都不可以拉成凹四边形;
2.小四边形要在大四边形范围之内;

我的思路是这样的:

A点是四边形要拖动的那个点,他的活动范围是如图的阴影部分
分别计算这三条线的斜率,使a点满足图中的不等式...
同理计算外面的大四边形斜率 ,a点只能在同时满足这些条件的范围内拉伸

不知道我想的是否可行,大神门有没有更好的办法求教~~~

阿神
阿神

闭关修行中......

全部回复(4)
巴扎黑

你思路已经有了,自己找资料去实现就行了。如果想别人帮你实现好把代码贴出了的话,估计没什么人有这个时间

巴扎黑

判断是否是凸边形?凸包吧

判断一个是否在另一个内?判断一个的每个点在另一个内就可以了

伊谢尔伦

是不是內凹我覺得用三角函數會比較快,sin(A)>0

大家讲道理

判断是否是凹四边形,我提供一种思路:

检查四边形的两条对角线(段)是否有交点。有则是凸四边形,无则是凹四边形。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号