Openlayers:属性中x-y位置处的GML标签多段线

Openlayers:属性中x-y位置处的GML标签多段线,openlayers,qgis,Openlayers,Qgis,我有一个在QGIS中生成的多段线的GML文件,我正在OpenLayers地图中显示该文件。在QGIS中,通过为每条多段线指定属性x、y和r(横向长度和旋转角度),可以整齐地控制多段线上标签的位置和旋转。我的问题是——有可能在OpenLayers中复制这一点吗?目前,下面的代码将显示多段线,指定线颜色(从属性)并标记线的端点,但我无法找到使用x、y、r属性定位和旋转标签的方法,无论是使用当前图层中的可用标签样式类,还是通过在隐藏点上创建标签的新地图图层。或者,是否有其他标记多段线的方法,例如动态标

我有一个在QGIS中生成的多段线的GML文件,我正在OpenLayers地图中显示该文件。在QGIS中,通过为每条多段线指定属性x、y和r(横向长度和旋转角度),可以整齐地控制多段线上标签的位置和旋转。我的问题是——有可能在OpenLayers中复制这一点吗?目前,下面的代码将显示多段线,指定线颜色(从属性)并标记线的端点,但我无法找到使用x、y、r属性定位和旋转标签的方法,无论是使用当前图层中的可用标签样式类,还是通过在隐藏点上创建标签的新地图图层。或者,是否有其他标记多段线的方法,例如动态标签(平移时始终可见)

我的GML文件记录的格式为:

    <gml:featureMember>
  <ogr:kkt fid="kkt.1">
    <ogr:geometryProperty><gml:LineString srsName="EPSG:4326"><gml:coordinates>44.812559373349139,35.123067298944513 44.877309206574807,35.090369282888879 44.950560220859877,35.055758183443189 45.018309159587957,35.032504238642005 45.096824639867442,35.010683901054648 45.21229522673363,34.979672029569649 45.279922241108068,34.961918618632232 45.328207131827412,34.944608836480917 45.379400253358313,34.921389158285983 45.438599638041431,34.88848896036766 45.505644158404003,34.837566477843978 45.554152957603797,34.794071273427527 45.595241006031721,34.763023849471629 45.631673146434373,34.739161723332415 45.67708,34.71297</gml:coordinates></gml:LineString></ogr:geometryProperty>
    <ogr:id>2</ogr:id>
    <ogr:thickness>200</ogr:thickness>
    <ogr:col>#00248F</ogr:col>
    <ogr:x>43.4678</ogr:x>
    <ogr:y>35.8826</ogr:y>
    <ogr:r>324</ogr:r>
  </ogr:kkt>
</gml:featureMember>
        var contour = new OpenLayers.Layer.Vector("Contour Lines", {
      strategies: [new OpenLayers.Strategy.Fixed()],
      protocol: new OpenLayers.Protocol.HTTP({
        url: "kml/temp.gml",
        format: new OpenLayers.Format.GML({
          extractStyles: true,
          extractAttributes: true,
          maxDepth: 2
        })
      }),
      styleMap: new OpenLayers.StyleMap({
        "default": new OpenLayers.Style({
          fillColor: "${col}",
          fillOpacity: 0,
          strokeColor: "${col}",
          strokeWidth: 2,
          strokeOpacity: 0.5,
          fontColor: "black",
          fontFamily: "arial, sans-serif",
          fontSize: ".9em",
          fontWeight: "bold",
          label: "${thickness}",
          labelAlign: "cm",
          labelXOffset: -10
        })
      })
    });