好吧,所以我有两个角度.一个是操纵杆的角度,另一个是相机与玩家的角度.相机的角度.现在我想要它,所以当我按下操纵杆时,它会让玩家远离相机.我该怎么做?在Java或Ardor3d中有一种简单的方法吗?
编辑:这是我如何得到我的角度的代码.
float camDegree = (float) Math.toDegrees(Math.atan2(
_canvas.getCanvasRenderer().getCamera().getLocation().getXf() - colladaNode.getTranslation().getXf(),
_canvas.getCanvasRenderer().getCamera().getLocation().getYf()) - colladaNode.getTranslation().getYf());
player.angle = (float) Math.toDegrees(Math.atan2(padX, padY));
Quaternion camQ = new Quaternion().fromAngleAxis(camDegree, Vector3.UNIT_Y);
Run Code Online (Sandbox Code Playgroud) 如何在openlayer地图中画圆圈?我尝试过差异方式,但它不起作用..请帮我代码.我使用了以下代码..但它创建了多边形
var p1 = new OpenLayers.Geometry.Point(439000, 114000);
var p2 = new OpenLayers.Geometry.Point(440000, 115000);
var p3 = new OpenLayers.Geometry.Point(437000, 116000);
var p4 = new OpenLayers.Geometry.Point(436000, 115000);
var p5 = new OpenLayers.Geometry.Point(436500, 113000);
var points = [];
points.push(p1);
points.push(p2);
points.push(p3);
points.push(p4);
points.push(p5);
var linearRing = new OpenLayers.Geometry.LinearRing(points);
var polygonFeature = new OpenLayers.Feature.Vector(linearRing, null, style_green);
vectorLayer.addFeatures([polygonFeature])
Run Code Online (Sandbox Code Playgroud) 想象一下画布上有一堆随机散布的画布.现在选择其中一个点.你如何找到距离它最近的3个点,这样如果你绘制一个连接这些点的三角形,它将覆盖所选择的点?
澄清: "最接近",我指的是距离点的最小距离.
这主要是出于好奇.我认为如果它是未知的,那么估计一个点的"值"将是一个好方法,但周围的点是已知的.有3个周围的点你可以推断出这个值.我之前没有听说过像这样的问题,看起来并不是很微不足道,所以我认为这可能是一个有趣的练习,即使它不是估算某些东西的最好方法.
我在 python shell 中试过这个
>>> a='apple'
>>> b=11.1
>>> a>b
True
>>> a
'apple'
>>> b>a
False
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释一下a>bTrue 是怎样的吗?Whena是一个字符串并且b是浮点数。
我不想编写自定义身份验证后端,我认为这样的常见任务必须已经由一些第三方应用程序解决.
我做了一些谷歌搜索和略读,但发现只有https://bitbucket.org/hakanw/django-email-usernames/wiki/Home这是相当老(2008年).还有其他替代品吗?
在我的程序(游戏)中,我进行了GetDC()调用并将DC保存为全局.我想在程序结束时我只能发布ReleaseDC().
目前我遇到麻烦,因为有些事情没有正确.我使用具有各种功能的DC和计时器.
这可能导致这个问题吗?
(程序的大小太大,无法改变一切,看它是否会帮助......)
编辑:我唯一一个全球保存(并在窗口创建后设置)是
HDC hDC = GetDC(hWnd)
Run Code Online (Sandbox Code Playgroud)
然后,每当我需要做某事时:
HDC hdcMem = CreateCompatibleDC(hDC);
// everything
DeleteDC(hdcMem)
Run Code Online (Sandbox Code Playgroud)
然后在程序结束时:
ReleaseDC(hWnd, hDC);
Run Code Online (Sandbox Code Playgroud)
是否有可能在代码的各个地方进行所有绘图和对象选择导致这些"半罕见"问题?
另外,忘记注意,任何地方都没有GDI泄漏.
我有以下Common Lisp函数:
(defun get-positions (marker)
(let ((result nil))
(dotimes (i (length board))
(if (eq (nth i board) marker)
(push i result)))
(nreverse result)))
Run Code Online (Sandbox Code Playgroud)
这是什么board,这是函数的输出:
CL-USER> board
(X X O NIL NIL NIL NIL NIL NIL)
CL-USER> (get-positions 'x)
(0 1)
Run Code Online (Sandbox Code Playgroud)
似乎我写的函数可能有点冗长.是否有更简洁的方式来编写它?
我在Stack Overflow上找到了针对Python的Eratosthenes Sieve的这种高度优化的实现.我对它正在做什么有一个粗略的想法,但我必须承认它的工作细节没有我.
我仍然希望将它用于一个小项目(我知道有些库可以做到这一点,但我想使用这个函数).
这是原始的:
'''
Sieve of Eratosthenes
Implementation by Robert William Hanks
https://stackoverflow.com/questions/2068372/fastest-way-to-list-all-primes-below-n/3035188
'''
def sieve(n):
"""Return an array of the primes below n."""
prime = numpy.ones(n//3 + (n%6==2), dtype=numpy.bool)
for i in range(3, int(n**.5) + 1, 3):
if prime[i // 3]:
p = (i + 1) | 1
prime[ p*p//3 ::2*p] = False
prime[p*(p-2*(i&1)+4)//3::2*p] = False
result = (3 * prime.nonzero()[0] + 1) | 1
result[0] = 3
return numpy.r_[2,result]
Run Code Online (Sandbox Code Playgroud)
我想要实现的是修改它以返回下面的所有素数n , x以便:
primes = …Run Code Online (Sandbox Code Playgroud) algorithm ×3
geometry ×3
ardor3d ×1
c++ ×1
common-lisp ×1
django ×1
java ×1
javascript ×1
list ×1
numpy ×1
openlayers ×1
primes ×1
puzzle ×1
python ×1
python-2.x ×1
string ×1
winapi ×1