js map 箭头_在javascript中怎么给线标记填充指向的箭头

该函数展示了如何在JavaScript中创建一个指向的箭头,用于地图上的线段。通过取线段末端的点,计算中点并旋转两条短线以形成箭头形状,最后组合成一个多线字符串返回。
摘要由CSDN通过智能技术生成

function Arrow(lineString)

//在地图上画一条线,将这条线(lineString)作为参数传进Arrow方法

{

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

]);

return multiLineString;

//最终return一个箭头(multiLineString)

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值