antv-l7/packages/site/docs/tutorial/line/path.zh.md

2.2 KiB
Raw Permalink Blame History

title order
路径图 0

我们经常需要在地图上绘制诸如道路、行动路线、水系等常见的路径,可以将这些绘制线的统称为路径图,即用一组首尾不闭合的点坐标对来定位的线图层。

案例

实现

下面我们来介绍如何绘制一个常见的路径图。

import { Scene, LineLayer } from '@antv/l7';
import { GaodeMap } from '@antv/l7-maps';

const scene = new Scene({
  id: 'map',
  map: new GaodeMap({
    center: [ 120.15, 30.246 ],
    zoom: 13.5,
    style: 'dark',
    rotation: -90
  })
});
scene.addImage('arrow', 'https://gw.alipayobjects.com/zos/bmw-prod/ce83fc30-701f-415b-9750-4b146f4b3dd6.svg');
fetch('https://gw.alipayobjects.com/os/basement_prod/40ef2173-df66-4154-a8c0-785e93a5f18e.json')
.then(res => res.json())
.then(data => {
  const layer = new LineLayer({})
    .source(data)
    .size(3)
    .shape('line')
    .texture('arrow')
    .color('rgb(22,119,255)')
    .animate({
      interval: 1, // 间隔
      duration: 1, // 持续时间,延时
      trailLength: 2 // 流线长度
    })
    .style({
      opacity: 0.6,
      lineTexture: true, // 开启线的贴图功能
      iconStep: 10, // 设置贴图纹理的间距
      borderWidth: 0.4, // 默认文 0最大有效值为 0.5
      borderColor: '#fff' // 默认为 #ccc
    });
  scene.addLayer(layer);
});

shape

我们一般将路径图的 shape 参数设置成 line

size

对于路径图,我们一般只要设置常量表示路径的宽度即可。

layer.size(2); // 绘制宽度为 2 的路径

style