opanlayers踩坑之 ol-ext Transform 指定要素进行变换

98 阅读1分钟

layers:可进行变化的layer

layers: [arrowLayer.value]

**注意!**需要配合filter一起使用才能生效:filter过滤掉不允许操作的元素

// 指定要素
    filter: (f, l) => {
      return f.getGeometry().getType() === 'Polygon' && l.className_ === 'arrow';
    },
    layers: [arrowLayer.value]

完整Transform代码块:

import ExtTransform from 'ol-ext/interaction/Transform';
let transform = new ExtTransform({
    enableRotatedTransform: false,
    hitTolerance: 2,
    translate: true, // 拖拽
    stretch: false, // 拉伸
    scale: false, // 缩放
    rotate: true, // 旋转
    translateFeature: false, // true值时,点击feature即可移动
    noFlip: true,
    // 指定要素
    filter: (f, l) => {
      return f.getGeometry().getType() === 'Polygon' && l.className_ === 'arrow';
    },
    layers: [arrowLayer.value]
  });