我想为我的多维结果实现平行坐标.有没有人在matlab或R中实现它的实现?此外,有没有关于用于生成平行坐标的最佳工具的建议?
我有一张画布用于画画
<div id="canvas" style="position:relative;width:600px;height:300px;" onclick="q()"></div>
我需要在单击它时处理该事件并获取画布上单击它的坐标
简而言之:如何散列免费的多米诺骨牌?
这可以推广到:如何有效地散列2D整数坐标的任意集合,其中集合包含唯一的非负整数对,并且当且仅当没有平移,旋转或翻转可以映射它时,集合被认为是唯一的与另一套相同?
对于不耐烦的读者,请注意我完全了解蛮力方法.我正在寻找一种更好的方式 - 或者是一种非常有说服力的证据,证明没有其他方法可以存在.
我正在研究一些不同的算法来生成随机多项式.我想测试它们的输出以确定它们的随机性 - 即给定订单的某些实例比其他订单更频繁地生成.在视觉上,很容易识别自由多边形的不同方向,例如下面的维基百科插图显示了"F"pentomino的所有8个方向(来源):

如何在这个多米诺骨牌上放一个数字 - 也就是说,哈希一个免费的多米诺骨牌?我不想依赖预先列出的"命名"多项式列表.无论如何,仅对订单4和5存在广泛认可的名称.
这不一定等于枚举给定订单的所有自由(或单侧或固定)多边形.我只想计算给定配置出现的次数.如果生成算法永远不会产生某个多边形,那么就不会计算它.
计数的基本逻辑是:
testcount = 10000 // Arbitrary
order = 6 // Create hexominos in this test
hashcounts = new hashtable
for i = 1 to testcount
poly = GenerateRandomPolyomino(order)
hash = PolyHash(poly)
if hashcounts.contains(hash) then
hashcounts[hash]++
else
hashcounts[hash] = 1
Run Code Online (Sandbox Code Playgroud)
我正在寻找的是一种有效的PolyHash算法.输入多边形简单地定义为一组坐标.T tetronimo的一个方向可能是,例如:
[[1,0], [0,1], [1,1], [2,1]]:
|012
-+---
0| X
1|XXX
Run Code Online (Sandbox Code Playgroud)
您可以假设输入多边形将已经标准化以与X和Y轴对齐并且仅具有正坐标.形式上,每套:
我真的在寻找新的算法,以避免一般强力方法所需的整数运算数量增加,如下所述.
蛮力
这里和 …
我有一个表视图,里面有一堆单元格.我想得到一个单元格的框架,而不是在超视图的坐标空间中,而是在表格视图的坐标空间中.
一张图片可能会更好地解释这一点
看到红色矩形?那是表格单元格的框架.蓝色矩形是表格视图的框架.我想获得相对于蓝色矩形的红色矩形.
我试图使用的frame属性UITableViewCell.但这不起作用,因为它返回(0,0,320,44).Y值不应为零,因为显然单元格不在屏幕顶部.
根据视图层次结构,这是预期的行为,因为表格单元格的超级视图显然是这样UITableViewWrapperView,而不是表格视图:
而表视图是这样的:
那么是否有一个方法/属性可以让我CGRect在表视图的坐标空间中表示表视图单元格的框架?
我认为有一个函数可以将CGRect坐标空间转换为另一个坐标空间.但我忘了它的名字以及如何使用它.我不知道这种情况是否有帮助.
假设我正在使用一些图形API,它允许我通过指定4个必要点来绘制贝塞尔曲线: 开始,结束,两个控制点.
我可以重复使用此功能来绘制"原始"曲线的x%(通过调整控制点和终点)吗?
还是不可能?
不必要的信息,如果有人关心:
我正在使用Java的Path2D绘制贝塞尔曲线:
Path2D p = new GeneralPath();
p.moveTo(x1, y1);
p.curveTo(bx1, by1, bx2, by2, x2, y2);
g2.draw(p);
Run Code Online (Sandbox Code Playgroud)我正在寻找一种在表格中获取单元格XY位置的好方法.(不要把它与css-position混淆,我在笛卡尔坐标系中寻找X和Y坐标).
我们知道,我们可以使用ex:在表中获取特定单元格$('#grid')[0].rows[5].cells[7].
但是,如果我想5x7在点击特定单元格时得到该值,即:
$('#grid td').click(function(){
alert("My position in table is: " + myPosition.X + "x" + myPosition.Y);
});
Run Code Online (Sandbox Code Playgroud)
我想,最简单的方法是<td class="p-5x7">在后端创建表时向每个单元格(等)添加innerHTML,ID或CSS类,然后解析它,然后单击返回,但有没有办法完全基于这些坐标获取这些坐标DOM?
对于我的游戏,我需要在两个坐标系之间进行转换的功能.那么它主要是数学问题,但我需要的是C++代码,以及如何解决我的问题的一些解释.
屏幕坐标:
a)左上角是0,0
b)没有负值
c)右+ = x(x值越多,右边越多是点)
d)底部+ = y
笛卡尔2D坐标:
a)中间点是(0,0)
b)确实存在负值
c)右+ = x
d)bottom - = y(y越小,底部越多)
我需要一种简单的方法从一个系统转换到另一个系统,反之亦然.要做到这一点,(我认为)我需要一些知识,比如放置在笛卡尔坐标系中的(0,0)[屏幕坐标左上角].
然而,对于在将其转换为屏幕坐标之后的笛卡尔坐标中的某些点存在的问题,屏幕坐标中的位置可能是负的,这是无意义的.我不能把屏幕坐标的左上角放在(-inifity,+ infinity)笛卡尔坐标中......
我怎么解决这个问题?我能想到的唯一解决方案是将屏幕(0,0)放在笛卡尔(0,0)中,并且仅使用IV四分之一的笛卡尔系统,但在这种情况下使用笛卡尔系统是没有意义的......
我确信有一些方法可以将屏幕坐标转换为笛卡尔坐标,反之亦然,但我在思考这个负值时做错了什么.
我找到了一个如何做到这一点的相当简单的例子,但我无法让它为我工作.我是R的新手
library(rgdal)
xy <- cbind(c(118, 119), c(10, 50))
project(xy, "+proj=utm +zone=51 ellps=WGS84")
[,1] [,2]
[1,] -48636.65 1109577
[2,] 213372.05 5546301
Run Code Online (Sandbox Code Playgroud)
但这是示例数字.我有成千上万的坐标需要转换,我无法弄清楚如何将它们从我的表中转移到这个脚本中
我的数据集有3列,ID,X和Y.如何使用这个等式转换它们?我已经坚持了几个星期
在GLSL(特别是我正在使用的3.00)中,有两个版本
atan():atan(y_over_x)只能返回-PI/2,PI/2之间的角度,同时atan(y/x)可以考虑所有4个象限,因此角度范围涵盖-PI, PI,就像atan2()在C++中一样.
我想用第二个atan将XY坐标转换为角度.但是,atan()在GLSL中,除了不能处理的时候x = 0,还不是很稳定.特别是在x接近零的地方,除法会溢出,导致相反的结果角度(你得到的东西接近-PI/2,你可以得到大约PI/2).
什么是一个好的,简单的实现,我们可以在GLSL之上构建,atan(y,x)使其更强大?
我需要在Frame (多个图像帧)中显示一些图像,我有左边和顶部坐标对应每个图像.
例如,我有左边的图像坐标100和顶部的100,所以我需要做的只是在ImageView中显示从(100,100)开始的图像.
任何人都可以告诉我如何在没有Bitmap的情况下这样做,因为我需要在RecyclerView中显示带有多个图像的帧列表.
我用于TouchImageView.class缩放和移动功能来创建框架.
1.在我选择布局时,在屏幕截图下方,您可以清楚地看到两个图像彼此非常接近.我的意思是我选择每个图像的一半.
2.接下来是主屏幕,我需要重新绘制该图像,我有两个图像的左侧和顶部坐标.但我如何通过一些自定义x和y在ImageView中绘制图像.
用于在左侧和顶部填充ImageView内部图像的代码段 -
img.setPadding((int) x, (int) y, 0, 0);
Run Code Online (Sandbox Code Playgroud)
但仍然没有工作.
请给我一些建议,我已经完成谷歌搜索,但没有得到适合我的要求的解决方案.
建议真的很感激.
提前谢谢了.
亲切的问候.