如何在 Openlayers 6 中绘制 lineString

How to draw a lineString in Openlayers6

我有一张使用 WMTS 源并使用 EPSG:25832 进行投影的地图。 我不明白为什么我很难在两个标记之间添加一条线。 它应该是一条有多个坐标的线,但我找不到任何关于如何添加线的文档。 我假设它应该是一个新的 vectorLayer,我将添加一个 lineString,但文档很难理解。有人能指出我正确的方向吗?

我一直在看这个例子,但我觉得不是很清楚是怎么回事。我将使用数据,不允许用户画线。

var map = new Map({
    target: 'map',
    layers: [
        new TileLayer({
            opacity: 0.7,
            source: new WMTS({
                crossOrigin: 'Anonymous',
                url: `https://kortforsyningen.kms.dk/topo_skaermkort_daempet?TICKET=${TOKEN}`,
                layer: 'dtk_skaermkort_daempet',
                matrixSet: 'View1',
                format: 'image/jpeg',
                tileGrid: tileGrid,
                style: 'default',
                size: SIZE
            })
        }),
        new VectorLayer({
            source: new VectorSource({
                features: [originMarker]
            }),
            style: new Style({
                image: new Icon({
                    anchor: [0.5, 1],
                    src: A_ICON,
                })
            })
        }),
        new VectorLayer({
            source: new VectorSource({
                features: [destinationMarker]
            }),
            style: new Style({
                image: new Icon({
                    anchor: [0.5, 1],
                    src: B_ICON,
                })
            })
        })
    ],
    view: new View({
        center: fromLonLat(centerPoint, 'EPSG:25832'),
        zoom: 3,
        resolutions: tileGrid.getResolutions(),
        projection: projection,
        extent: EXTENT
    })
});

创建连接两个点要素的线串要素

new Feature(new LineString([
  originMarker.getGeometry().getCoordinates(),
  destination.getGeometry().getCoordinates()
]))

然后将其添加到新图层或现有矢量源。