草庐IT

Geometry

全部标签

javascript - 如何查看两个矩形是否在 JavaScript 或伪代码中相交?

我有两个矩形,无论它们是否相交,我都必须在函数中返回它们。它们由代表矩形左上角和右下角的[x0,y0,x1,y1]对表示。或者,您的解决方案可以是[x0,y0,width,height]如果它更简单,我可以通过它调整函数的参数输入。我试图查看矩形A的两个Angular中的任何一个是否包含在矩形B中,但如果A大于B并且B部分包含在A中,它会说它不重叠。现在我可以尝试A和B,但这似乎是一种糟糕的做事方式。我不能预先制作一个大网格并用矩形占据单元格,因为不知道矩形是什么。我只能说它们是无符号整数,最小值为0,最大值未知。 最佳答案 检查矩

javascript - 与轨迹网格碰撞

我想避免我的播放器能够站在墙内。每个游戏刻我的玩家移动一小段距离和/或旋转。TL;DR请提供经典线段->-三Angular形交集算法的变体,该算法也返回未命中,或以其他方式解决问题如果线段在三Angular形的给定距离内通过,则该线段相交。这个问题有很多微妙之处,比如三Angular形的轨迹Angular是圆的,线段是否与三Angular形相切。我有通常的射线/三Angular形相交代码。但是,射线对于移动玩家的近似值非常差!我遇到了播放器中心缺失边缘但播放器网格穿过它们的问题。您如何有效地确定玩家在3D环境中何时何地与墙壁和障碍物发生碰撞?一种通用方法是使用近乎未命中的三Angula

javascript - 如何计算与 CSS3 创建的边框半径匹配的曲线上的点?几何天才?

我有一个用css3边框半径(图像部分)创建的弯曲div。我旁边有文本行,我想将其与曲线对齐20px左右,就像这样(不能发布图片,不记得旧登录名):诀窍是曲线会根据窗口大小而变化,因此我希望能够计算曲线上文本应该偏移的点,本质上是创建一个真正的手动文本换行。最终我需要能够使用javascript进行计算和更新。(根据下面的评论编辑添加):用于演示目的的曲线css是border-bottom-left-radius:316px698px;但这是根据脚本的页面大小计算的。另外,值得一提的是,我根本不需要支持IE或FireFox——只需要webkit(独立信息亭应用程序)。

javascript - 移动矩形,使它们不重叠

这是一个一半是编程,一半是数学的问题。我有一些方框,它们表示为四个Angular点。它们是真正的矩形,是两组平行线的交点,每组中的每条线都与另一组中的两条线成直Angular(这样我们就清楚了。)对于任何一组n个框,我如何才能有效地计算将它们移动到哪里(最小距离)以使它们不会彼此重叠?我在这里使用javascript工作。这是数据://anarrayofindefinitelengthofboxes//boxesrepresentedasarraysoffourpoints//pointsrepresentedasarraysoftwothings,anxanday,measuredi

javascript - 使用 D3.js 的 <circle> 属性 cx =“NaN” 的值无效

我正在尝试创建一种散点图形式。我有一个自定义的x轴和两个a轴的特定比例。我也为它实现了缩放功能。到目前为止一切都很好,但是当我最终尝试将我的数据绘制为圆圈时,出现了两个错误:.我的图可以在这个网站上看到:http://servers.binf.ku.dk/hemaexplorerbeta/(圆圈很大,因为我想确保在设计它们之前大致知道它们的位置)我根据从MYSQL服务器读取的数据创建我的圈子。我检查了我所有的数据,数字是正确的。他们要么绘制错误,要么我的比例/缩放有问题。您可能还会注意到,我最初使用一些值创建轴和比例,然后立即在某些函数中更改它们。这是因为我计划在网站上加载一个空图,用

javascript - 如何对球体的不规则平面进行纹理处理?

我想为THREE.js球体的每个面赋予它自己的纹理。所以我让SphereGeometry计算顶点并使用面的顶点将每个面转换为PlaneGeometry。THREE.SpherePlaneGeometry=function(v1,v2,v3,v4){THREE.Geometry.call(this);varnormal=newTHREE.Vector3(0,1,0);this.vertices.push(v1.clone());this.vertices.push(v2.clone());this.vertices.push(v3.clone());this.vertices.push(

javascript - JS Canvas - 以指定 Angular 画线

我想制作一个应用程序,让球按照鼠标击中它的Angular移动。因此,如果您从左上象限以30度Angular向下滑动鼠标(我猜那将是180-30=150度Angular),它会以这种方式击球。我一直在这样画我的线条:functiondrawAngles(){vard=50;//startlineat(10,20),move50pxawayatangleof30degreesvarangle=80*Math.PI/180;ctx.beginPath();ctx.moveTo(300,0);ctx.lineTo(300,600);//x,yctx.moveTo(0,300);ctx.line

javascript - 给定度数 x,在度数数组中找到最近的度数

我有一个圆的度数数组,[10,90,200,280,355]。我得到一个度数,比方说1。我如何确定1最接近355度? 最佳答案 将两个数字相减。如果差异大于180[或低于-180],减去[或添加]360。现在您可以只比较差异的绝对值。 关于javascript-给定度数x,在度数数组中找到最近的度数,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/7072176/

javascript - Javascript中的Google Maps API,绘制圆的半径?

我正在寻找一种方法来绘制圆的半径或从圆的中心到圆的边缘的线(在以度为单位的精确坐标处)。这可能吗?怎么办?目前,我用API从我的map中心画了一个圆圈。我不认为它有帮助...我想要的示例:http://twitpic.com/aq40vvvarsunCircle={strokeColor:"#c3fc49",strokeOpacity:0.8,strokeWeight:2,fillColor:"#c3fc49",fillOpacity:0.35,map:map,center:latlng,radius:1500};cityCircle=newgoogle.maps.Circle(sun

javascript - Three.js - 如何反序列化 geometry.toJSON()? (geometry.fromJSON 在哪里?)

我正在尝试将一些Geometry加载和处理卸载到webworker中。要将其发送回主线程,需要对Geometry实例进行序列化,而且Geometry.prototype.toJSON()似乎正是用于此类事情.但我不知道如何在主线程中将该对象变回Geometry实例。应该如何使用toJSON()输出?PS:我看过thisrelatedquestion,但它似乎过时了。toJSON()还没有在API中。接受的答案有点令人费解,并且需要我仍然在主线程中做一些原始工作。 最佳答案 如果我理解正确,问题是:您有一个要作为几何体(obj、STL