We are currently in the process of migrating from 10.2.7 to 100.2.1 and therefor moving from using the older way of showing symbols (message layer) to the new(for us)/current way. Most of the migration work is done except the military symbology.
Essentially I am trying to get our software working, as it was, with the new SDK before I start switching from MIL2525C to MIL2525D.
The guide/API/samples available seem to be vague or overly simplified, at least as far as I can see when relating to how we had been generating the 2525C symbols, i.e. using the message layer method.
How we were creating some of the symbols was like this:
Message msg = new Message();
msg.Id = symbol.ID;
msg.Add("_type", "position_report");
msg.Add("_action", "update");
msg.Add("_control_points", symbol.Grid.GlobalGrid.MapPoint.X.ToString() + "," + symbol.Grid.GlobalGrid.MapPoint.Y.ToString());
msg.Add("_wkid", symbol.Grid.GlobalGrid.MapPoint.SpatialReference.Wkid.ToString());
msg.Add("sic", symbol.SymbolID);
msg.Add("uniquedesignation", symbol.Designation);
layer.ProcessMessage(msg);
I have looked at info here:
Display military symbols with a dictionary renderer—ArcGIS Runtime SDK for .NET | ArcGIS for Develop...
Here, which uses a sample geodatabase
arcgis-runtime-samples-dotnet/src/WPF/ArcGISRuntime.WPF.Viewer/Samples/Layers/FeatureLayerDictionary...
All examples I can find either use a sample geodatabase or an online resource. I cannot find a clear example of how to create a symbol (2525C or 2525D) using key/value pairs as was used in the older 10.2.7 way of doing it.
I have managed to create and initialize the dictionary from information found here:
Failed to create Rule Engine: mil2525c
I would have thought those kinds of details would have been defined somewhere in the guide?
So I can see how to search and pull out symbols but what I really want is to use a feature layer with the dictionary as the render, create a graphic object with the correct key/value pairings - similar to the 10.2.7 way we were doing it above. I.e migrate in an evolutionary way rather than revolutionary.
I could be that I have missed an example in all my searching or that our way of creating these symbols is no longer supported.
Either way, can someone shed some light please?
Thanks,
Mark