I need to implement pulse animation which is currently display in current location of esrimap. I need to show this animation in marker. Is there any way to do it?
Thank you for your question! Creating a pulsing marker similar to the "current location" marker is pretty similar to the method outlined here: Make a pulse animation in AGSPictureGraphics
You would create a symbol using a picture marker symbol which is a blue circle, then set up a timer to vary the size. Here's an example using a two simple marker symbol combined into an `AGSCompositeSymbol`; the size of the blue circle is changed when the timer fires:
A rough outline of the code:
var symbolToPulse:AGSSimpleMarkerSymbol!
...
symbolToPulse = AGSSimpleMarkerSymbol(style: .circle, color: .blue, size: 18.0)
let sms2 = AGSSimpleMarkerSymbol(style: .circle, color: .red, size: 12.0)
let compositeSym = AGSCompositeSymbol(symbols: [symbolToPulse, sms2])
pulser = AGSGraphic(geometry: mapPoint, symbol: compositeSym, attributes: nil)
timer = Timer.scheduledTimer(timeInterval: 0.1,
target:self,
selector: #selector(updateSize),
userInfo: nil,
repeats: true)
let startSize: CGFloat = 18.0
let endsize: CGFloat = 36.0
func updateSize() {
var size = symbolToPulse.size + 1.0
if size > endsize {
size = startSize
}
symbolToPulse.size = size
Hope that helps!
Los miembros registrados pueden publicar, seguir actualizaciones y más. ¿Nuevo aquí? Regístrate gratis.
Find useful guides, FAQs, and documents to help you navigate and make the most of Esri Community.