2010-05-06 77 views
2

TLDR我想在我的开放图层中旋转特征。
我希望它能够面对我从服务器接收的某个标题。以编程方式旋转特征打开图层


我知道,你可以对一个点的特征旋转或等:

window.setInterval(function() {rotateFeature(
     pointFeature, 360/20, origin)}, 100); 

open layers example.

但我希望能够去面对它朝标题我得到了,所以。

  1. 我可以面向标题的功能吗?
  2. 我可以以同样的方式面对一个功能(图像)吗?
  3. 如果没有,是否有可能自动计算所需的旋转并将其定位?
  4. 或者我如何用图像做到这一点的任何想法? (希望不要有360张)

一个例子或这种将理解:d预先

感谢。


至今没有运气使用:

 window.setInterval(function() {rotateFeature(
     imagefeature, 150/360, origin)}, 1000); 
     function rotateFeature(feature, angle, origin) { 
      feature.geometry.rotate(angle, origin); 
      } 

原属是图像对象的centeroid。

任何想法代码的一面?

+0

我想旋转图像由“标题”我给。 – Sphvn 2010-05-14 04:05:58

回答

3

您可以使用图像/图标来表示矢量点,例如,

http://openlayers.org/dev/examples/vector-features.html

使用该PNG文件alt text http://openlayers.org/dev/img/marker.png 然后,您应该能够在旋转点在其他的例子。您可以旋转到任何角度:

http://dev.openlayers.org/releases/OpenLayers-2.8/doc/apidocs/files/OpenLayers/Geometry/Point-js.html#OpenLayers.Geometry.Point.rotate

rotate: function(angle,origin) 

绕另一个点。 参数

角度{浮法}旋转角度以度(从正x轴逆时针测量的)

原点{OpenLayers.Geometry.Point}中心点旋转

+0

感谢您的信息。但是如果我要旋转一个点(图像),我必须根据另一个点旋转它,还是可以将它基于自身并旋转它? – Sphvn 2010-05-10 07:40:00

+0

原点参数可以是任意点。要使用矢量特征的质心(如果它是质心将成为点的点),请使用: http://dev.openlayers.org/releases/OpenLayers-2。8/DOC/apidocs /文件/的OpenLayers /几何/点js.html#OpenLayers.Geometry.Point.getCentroid – geographika 2010-05-10 10:27:08