当前位置: 首页 > news >正文

盘锦做网站建设的/阐述网络推广的主要方法

盘锦做网站建设的,阐述网络推广的主要方法,淮北做网站公司,诚信通网站怎么做相关博客:JavaScript判断点是否在多边形内部并使用Canvas可视化_ 一只博客-CSDN博客 本文核心算法参考博客:二维平面上判断点是否在三角形内 - tenos - 博客园 (cnblogs.com) 原作者参考了如下资料,使用C写了4个判断方法 判断点是否在三角…

相关博客:JavaScript判断点是否在多边形内部并使用Canvas可视化_ 一只博客-CSDN博客

本文核心算法参考博客:二维平面上判断点是否在三角形内 - tenos - 博客园 (cnblogs.com)

原作者参考了如下资料,使用C++写了4个判断方法

判断点是否在三角形内 - 翰墨小生 - 博客园

向量点积(Dot Product),向量叉积(Cross Product)_易水寒-CSDN博客

叉乘法判断点是否在三角形内_dracularking的竹林小屋-CSDN博客_叉乘判断点是否在三角形内

我挑选了最优的方法,使用JavaScript实现了一下,并加了实时修改点位置和可视化的功能

 效果图,修改任何数据后页面立刻清空画布并重新判断和绘制

<!DOCTYPE html>
<html><head><style type="text/css">.info {width:400px;resize: none;border: none;cursor: pointer;}</style></head><body><canvas id="canvas" width="500" height="500"></canvas><textarea class="info" id="text" readonly="readonly"></textarea><div id="xy">A<input type="text" id="Ax" value="120" size="2">,<input type="text" id="Ay" value="210" size="2"><br>B<input type="text" id="Bx" value="280" size="2">,<input type="text" id="By" value="300" size="2"><br>C<input type="text" id="Cx" value="400" size="2">,<input type="text" id="Cy" value="140" size="2"><br>P<input type="text" id="Px" value="200" size="2">,<input type="text" id="Py" value="300" size="2"><br></div><script type="text/javascript">const xy = document.getElementById('xy')fresh()xy.onchange = fresh//实时计算并更新画布function fresh() { var Triangle = [[+document.getElementById("Ax").value, +document.getElementById("Ay").value],[+document.getElementById("Bx").value, +document.getElementById("By").value],[+document.getElementById("Cx").value, +document.getElementById("Cy").value]]var Point = [+document.getElementById("Px").value, +document.getElementById("Py").value]if(isPointInTriangle(Triangle, Point)){document.getElementById("text").value = "The point is in the triangle."}else{document.getElementById("text").value = "The point is not in the triangle."}drawTriangle(Triangle)drawPoint(Point)}//画三角形function drawTriangle(Triangle){var canvas = document.getElementById("canvas")var ctx = canvas.getContext("2d")ctx.clearRect(0, 0, canvas.width, canvas.height)ctx.beginPath()ctx.moveTo(Triangle[0][0], Triangle[0][1])ctx.lineTo(Triangle[1][0], Triangle[1][1])ctx.lineTo(Triangle[2][0], Triangle[2][1])ctx.closePath()ctx.stroke()}//画点function drawPoint(point){var canvas = document.getElementById("canvas")var ctx = canvas.getContext("2d")ctx.beginPath()ctx.arc(point[0], point[1], 3, 0, 2*Math.PI)ctx.closePath()ctx.stroke()}//核心函数,判断点是否在三角形内部function isPointInTriangle(Triangle, Point){var PA = [Triangle[0][0] - Point[0], Triangle[0][1] - Point[1]]var PB = [Triangle[1][0] - Point[0], Triangle[1][1] - Point[1]]var PC = [Triangle[2][0] - Point[0], Triangle[2][1] - Point[1]]var t1 = PA[0]*PB[1] - PA[1]*PB[0]var t2 = PB[0]*PC[1] - PB[1]*PC[0]var t3 = PC[0]*PA[1] - PC[1]*PA[0]return t1*t2 >= 0 && t1*t3 >= 0}</script></body>
</html>
http://www.jmfq.cn/news/5149765.html

相关文章:

  • 建立网站ftp是什么/百度网盘服务电话6988
  • 传统网站开发/网站收录优化
  • 用wordpress设计html5/广州新塘网站seo优化
  • 怎么做移动网站吗/苏州网站建设费用
  • 网站建设找王科杰信誉/保定百度首页优化
  • 自己做网站推广/李守洪排名大师怎么样
  • 网站建设seo 视频教程/互联网推广运营是干什么的
  • 手机版网站建设价格/长沙免费网站建站模板
  • 广州旅游网站建设设计/百度推广怎么做的
  • wordpress smtp设置163/百度搜索引擎优化的养成良好心态
  • 技术先进的网站建设公司/教程推广优化网站排名
  • 美橙互联网站建设进不去/吉林seo排名公司
  • 郑州专业建站报价/百度推广账户搭建
  • 汉阳网页设计/seo内链优化
  • 敦煌网站外引流怎么做/微博推广方式有哪些
  • 网站建设定制开发价格/守游网络推广平台
  • 网站建设工资 优帮云/代写文章平台
  • 网站怎么做会让神马搜索到/足球比赛直播
  • 企业做网站的步骤与做网站注意事项/全网推广
  • 一个网站的后台/拉新平台
  • 网站制作三站/青岛网站开发公司
  • 长沙做网站湖南微联讯点不错/2023年3月份疫情严重
  • 柳州市城乡建设委员会网站/重庆百度seo代理
  • 安徽网站建设费用/徐州seo排名公司
  • 公司网站建设及维护管理总结/网络营销软文范例300
  • 外贸网站建设需要注意什么/云南网站seo服务
  • 北京知名seo公司精准互联/seo做什么网站赚钱
  • 机箱做的网站主机怎么查看ftp/班级优化大师电脑版
  • 织梦 xml网站地图/搜狗收录提交入口
  • wap网站方案/西安seo经理