Super Map 画箭头

  var vectorLayer= new SuperMap.Layer.Vector();
        var start = new SuperMap.Geometry.Point(0,0);
        var end = new SuperMap.Geometry.Point(0,20);
    var lineString = new SuperMap.Geometry.LineString([start,end]);
    console.log(lineString.components)
    var lineVector = new SuperMap.Feature.Vector(lineString);
        plottingLayer.addFeatures(lineVector);
        
         var linepoints = lineString.components;

        var endPoint1 = linepoints[linepoints.length-1];

        var endPoint2 = linepoints[linepoints.length-2];

        var points1=[endPoint1,endPoint2];

        var line1 = new SuperMap.Geometry.LineString(points1);

        var midPointX = endPoint2.x+0.9*(endPoint1.x-endPoint2.x);

        var midPointY = endPoint2.y+0.9*(endPoint1.y-endPoint2.y);

        var midPoint1 = new SuperMap.Geometry.Point(midPointX,midPointY);

        var midPoint2 = new SuperMap.Geometry.Point(midPointX,midPointY);

        //在线上9/10的位置取一点连接直线末端做两条相同的短直线

        var points2=[midPoint1,endPoint1];

        var rightLine = new SuperMap.Geometry.LineString(points2);

        rightLine.rotate(15,endPoint1);

        //此为直线旋转,旋转角度可自由调节

        var points3=[midPoint2,endPoint1];

        var leftLine = new SuperMap.Geometry.LineString(points3);

        leftLine.rotate(345,endPoint1);

        //分别旋转两条短直线于lineString两侧,构成一个箭头样式

        var multiLineString = new SuperMap.Geometry.MultiLineString([

            lineString,rightLine,leftLine

        ]);

       var lineVector2 = new SuperMap.Feature.Vector(multiLineString);
        plottingLayer.addFeatures(lineVector2);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值