浏览问题
等待回复
精选文章
申请试用
资源中心
漏洞修复
注册
|
登录
SuperMap技术问答社区
我要
提问
智能客服
首页
/
浏览问题
/
云GIS
/
问题详情
supermap iclient 绘制箭头
不会功夫...
1EXP
2018年11月17日
supermap iclient 绘制箭头 知道两个坐标点 在两点间绘制箭头
箭头
画线
请
登录
或者
注册
后回答这个问题。
1个回答
您好, 这个需要您自己封装一个箭头的js,然后用drawline的方式写就可以了
于浩
5,668EXP
2018年11月19日
这个你有代码吗?
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)
}
请
登录
或者
注册
后再添加评论。
智能推荐
相关问题
相关文章
推荐教程
iclient classic如何实现像高德一样的带箭头的线
如何用js画出带箭头的线
如何用js画出带多个箭头的线
javascript怎么画一条带有箭头方向的线?
WebGL如何使用polyline画一条带箭头的线?
webgl怎么画一条带箭头的折线?
使用态势标绘,绘制箭头时会出现多个箭头,并且删除不了
iobject c++下怎样利用代码实现箭头标绘
热门文章
查看更多>
关注我们
超图软件官网
SuperMap Online
地图慧
帮助中心
备案信息
技术资源中心
...