javascript - How to draw a directed arc in Open Layers 3 with the "direction arrow" at the center of the arc? -


i using open layers 3 , springmeyer's arc.js draw directed arc on map between 2 points:

openlayers 3 arc arc.js

openlayers 3 arc arc.js

i bit embarrassed admit have worked on problem hours, can't figure out how center arrow @ apex (middle) of arc. instead of @ end point, arrow @ center of arc.

here working codepen code: http://codepen.io/gracefulcode/pen/mwyqzy

here code:

 function createarcbetweenpoints(pointa, pointb, layer) {   var transformeda = pointa.transform('epsg:3857', 'epsg:4326');   var transformedb = pointb.transform('epsg:3857', 'epsg:4326');   var start = { x: transformeda.getcoordinates()[0], y: transformeda.getcoordinates()[1] };   var end = { x: transformedb.getcoordinates()[0], y: transformedb.getcoordinates()[1] };   var generator = new arc.greatcircle(start, end, {'name': ''});   var line = generator.arc(100,{offset:10});   var coordinates = line.geometries[0].coords;   var linestring = new ol.geom.linestring(coordinates);   var geom = linestring.transform('epsg:4326', 'epsg:3857');   var feature = new ol.feature({       'geometry': geom     });    //adds arrow   var dx = end.x - start.x;   var dy = end.y - start.y - 20;   var rotation = math.atan2(dy, dx);   var linestyles = [     // linestring     new ol.style.style({       stroke: new ol.style.stroke({         color: '#ffcc33',         width: 2       })     }),     new ol.style.style({       geometry: pointb,       image: new ol.style.icon({         src: 'resources/arrow.png',         anchor: [0.75, 0.5],         rotatewithview: false,         rotation: -rotation       })     })   ];    feature.setstyle(linestyles);    return feature; }