function createArcwithDirectionInDegrees(rawCenter, radius, segments, degrees, angle ) { let center = centerBeautify(rawCenter); let gAngle = degreesBeautify(degrees, angle); let pointList = []; let segmentAngle = segments + 1; for (let i = 0; i < segmentAngle; i++) { let differentialAngle = gAngle.alpha - (gAngle.alpha - gAngle.omega) * i / (segmentAngle - 1); let x = center.x + radius * Math.cos(differentialAngle * Math.PI / 180); let y = center.y + radius * Math.sin(differentialAngle * Math.PI / 180); let point = [x, y]; pointList.push(point); } for (let i = segmentAngle; i > 0; i--) { let differentialAngle = gAngle.alpha - (gAngle.alpha - gAngle.omega) * i / (segmentAngle - 1); let x = center.x + (radius-5000) * Math.cos(differentialAngle * Math.PI / 180); let y = center.y + (radius-5000) * Math.sin(differentialAngle * Math.PI / 180); let point = [x, y]; pointList.push(point); } for (let i = 1 ; i<=2 ; i++){ if (i === 1){ let feature = createFeature(pointList); let vectorStyle = createArcStyle([51,204,255,0.2], [51,204,255,0.2], 2); let sourceVector = createSourceVector(feature); return createLayerVector(sourceVector, vectorStyle,radius, angle); } } }