我最近遇到了一个问题,我有四个圆圈(中点和半径),并且必须计算这些圆圈的并集区域.
示例图片:
两个圆圈很容易,
我可以计算出不在三角形内的每个圆形区域的分数,然后计算三角形的面积.
但是,如果有两个以上的圆圈,我可以使用一个聪明的算法吗?
我有一个100个数字的列表作为Y轴的高度,并且作为X轴的长度:1到100,常数步长为5.我需要计算它包含的区域(x,y)点和X轴,使用矩形和Scipy.我是否必须找到此曲线的功能?或不?...我读过的几乎所有例子都是关于Y轴的特定方程.就我而言,没有等式,只有列表中的数据.经典的解决方案是通过步骤X距离添加或Y点和倍数...使用Scipy任何想法?
请问,任何人都可以使用Scipy和Numpy推荐任何专注于数值(有限初等)方法的书吗?...
我有一个关于使用该area
功能的问题; 或者也许是另一个功能......我从一个大文本文件中创建了这个图:
绿色和蓝色代表两个不同的文件.我想要做的是分别填写红线和每次运行之间的区域.我可以用类似的想法创建一个区域图,但是当我在同一个图上绘制它们时,它们没有正确重叠.基本上,一个数字上有4个图.
我希望这是有道理的.
我有一组点,并想知道是否有一个函数(为了方便和可能的速度)可以计算由一组点包围的区域.
例如:
x = np.arange(0,1,0.001)
y = np.sqrt(1-x**2)
points = zip(x,y)
Run Code Online (Sandbox Code Playgroud)
鉴于points
该区域应大致相等(pi-2)/4
.也许有scipy,matplotlib,numpy,shapely等的东西来做这个?我不会遇到x或y坐标的任何负值...它们将是没有任何定义函数的多边形.
编辑:
点很可能不是以任何指定的顺序(顺时针或逆时针),并且可能非常复杂,因为它们是来自一组边界下的shapefile的一组utm坐标
我想在一个区域元素上放一个onclick事件.这是我的设置:
<img id="image" src="wheel.png" width="2795" height="2795" usemap="#Map" >
<map name="Map">
<area class="blue" onclick="myFunction()" shape="poly" coords="2318,480,1510,1284" href="#">
</map>
Run Code Online (Sandbox Code Playgroud)
我尝试了2种不同的方法来进行onclick事件.首先我试过这个:
$(".blue").click( function(event){
alert('test');
});
Run Code Online (Sandbox Code Playgroud)
我也试过这个:
function myFunction() {
alert('test');
}
Run Code Online (Sandbox Code Playgroud)
以上工作都没有.区域元素是否支持上述,或者它们仅支持具有href?
提前致谢!
我正在寻找一种快速的方法来确定矩形和圆形之间的交叉区域(我需要进行数百万次这些计算).
一个特定的属性是,在所有情况下,圆和矩形总是有2个交点.
我为地图中的区域创建了一个非常大的地图,其中包含许多多边形区域(每个超过20个坐标).但是,您不能将CSS添加到AREA标记,因为我被告知它不是可见元素.我想要做的是当用户将鼠标悬停在地图上的某个区域时,我希望通过对特定AREA元素应用1px边框来"突出显示"它.有办法做到这一点吗?不,我不打算使用矩形.
我有以下HTML代码,我无法在所有浏览器中正常工作:
<div id ="right_header">
<img id = "usemapsignin" src="/images/sign-in-panel-wo-FB.png" usemap = "#signin">
</div>
<map name = "signin" >
<area shape = "rect" coords = "30,10, 150, 50" target = "_blank" alt = "signin" id="signin"
onMouseOver="document.images['usemapsignin'].style.cursor='pointer'"
onMouseOut="document.images['usemapsignin'].style.cursor='auto'"/>
<area shape = "rect" coords = "0,113, 172, 150" target = "_blank" alt = "restowner" id = "restowner"
onclick = "alert('Hello Restaurant Owner!')" />
</map>
Run Code Online (Sandbox Code Playgroud)
移动到usemap的一部分时,我试图将光标更改为指针.但它不适用于Chrome/Safari.
任何帮助将不胜感激.
我几天前问了一个类似的问题,但我还没有找到解决问题的有效方法.我正在开发一个简单的控制台游戏,我有一个像这样的2D数组:
1,0,0,0,1
1,1,0,1,1
0,1,0,0,1
1,1,1,1,0
0,0,0,1,0
Run Code Online (Sandbox Code Playgroud)
我试图找到由相邻1(4路连接)组成的所有区域.因此,在此示例中,2个区域如下:
1
1,1
1
1,1,1,1
1
Run Code Online (Sandbox Code Playgroud)
并且:
1
1,1
1
Run Code Online (Sandbox Code Playgroud)
我一直在研究的算法找到了一个单元的邻居的所有邻居,并且在这种矩阵上完美地工作.但是,当我使用更大的数组(如90*90)时,程序非常慢,有时使用的巨大数组会导致堆栈溢出.
我的另一个问题上的一个人告诉我关于连接组件标签是我问题的有效解决方案.
有人可以告诉我任何使用这种算法的C++代码,因为我对它如何与这个不相交的数据结构事物一起工作有点困惑......
非常感谢您的帮助和时间.
algorithm image-processing neighbours area multidimensional-array
如何计算三角形(指定为三(X,Y)对)和圆(X,Y,R)之间的交叉区域?我做了一些搜索无济于事.这是为了工作,而不是学校.:)
它在C#中看起来像这样:
struct { PointF vert[3]; } Triangle;
struct { PointF center; float radius; } Circle;
// returns the area of intersection, e.g.:
// if the circle contains the triangle, return area of triangle
// if the triangle contains the circle, return area of circle
// if partial intersection, figure that out
// if no intersection, return 0
double AreaOfIntersection(Triangle t, Circle c)
{
...
}
Run Code Online (Sandbox Code Playgroud)