首页 > 其他 > 详细

处理谷歌地图marker旋转

时间:2019-08-28 14:35:12      阅读:293      评论:0      收藏:0      [点我收藏+]
/*
* 功能:使用canvas旋转图标,并生成路径
* 参数:options(Object)
* 用途:处理谷歌地图marker旋转
* */
const setRotation = (options) => {
  return new Promise((resolve, reject) => {
    let w = options.width || 40
    let h = options.height || 40
    let canvas = document.createElement(‘canvas‘)
    canvas.width = w
    canvas.height = h
    let ctx = canvas.getContext(‘2d‘)
    let angle = options.deg ? options.deg * Math.PI / 180 : 0
    let centerX = w / 2
    let centerY = h / 2
    let dataURL = ‘‘
    let img = new Image()
    img.src = options.url
    img.onload = function() {
      ctx.clearRect(0, 0, w, h)
      ctx.save()
      ctx.translate(centerX, centerY)
      ctx.rotate(angle)
      ctx.translate(-centerX, -centerY)
      ctx.drawImage(img, centerX/2, 0)
      ctx.restore()
      dataURL = canvas.toDataURL(‘image/png‘)
      resolve({
        size: options.size,
        origin: options.origin,
        url: dataURL
      })
    }
  })
}

 

处理谷歌地图marker旋转

原文:https://www.cnblogs.com/kiscon/p/11423561.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!