POST
|
If you pass a layer into a GeoProcessing - Tool, the GP-Tool honors the current selection set of that layer. Thus, you can create a loop, which makes use of SelectLayerByAttribute_management first and then executes CreateMobileMapPackage.
... View more
04-19-2018
02:45 AM
|
1
|
0
|
356
|
POST
|
Mara, I tried that setup and of course the symbology changes as expected in Pro. However, after creating a Mobile Map Package from it and loading the Map Package into ArcGIS Runtime, the symbol does not change. It just sticks to one symbol, regardless of the map's scale. Am I missing anything?
... View more
02-13-2018
02:42 AM
|
0
|
0
|
2747
|
POST
|
Is the extented webmap specification (mobile map specification) public? I've never seen this, although I know about Web map specification overview | ArcGIS for Developers ...
... View more
09-14-2017
06:52 AM
|
0
|
1
|
1327
|
POST
|
Hi Antti, thanks for your explanation. Well, basically it's all about storing the definition of a map to disc. Let's say, I created a map based on a few (not only one) Runtime-Geodatabases and gave the user the possibility to change the symbology during runtime. Then, it'll be all great to store that on disk. I can do this on my own, of course, by iterating through basemap, OperationalLayers and so on. But this will always be a file that: never is complete (I will always miss something) Will be a different file format if implemented by different people. So it'll be great to have an API for that. Some kind of a "Mobile Map Definition" that references data in contrast to the Mobile Map Package that contains all data.
... View more
09-14-2017
06:33 AM
|
0
|
3
|
1327
|
POST
|
I wonder, if I've found a bug or if I'm just misunderstanding the Map.ToJson Method . As it is documented to return "A string that is the JSON value for the map.", I thought that the following code should result in a cloned map: // create the first map...
var firstmap = new Map(Basemap.CreateLightGrayCanvasVector());
var gdb = await Geodatabase.OpenAsync(gdbPath);
foreach(var table in gdb.GeodatabaseFeatureTables)
{
await table.LoadAsync();
Map.OperationalLayers.Add(new FeatureLayer(table));
}
Assert.IsTrue(Map.IsLoaded)
// clone it via json..
var json = Map.ToJson();
var secondMap = Map.FromJson(json); Unfortunately, the second map isn't even close to be like the first one. It doesn't know about basemaps, operationalLayers, Min/MaxScale, ..... Looking at the json string, I can see that basemap information is included, but nothing about the OperationalLayers exists: {
"baseMap": {
"baseMapLayers": [{
"layerType": "VectorTileLayer",
"styleUrl": "https://www.arcgis.com/sharing/rest/content/items/1e47168d181248e491541ffd5a91c0de/resources/styles/root.json",
"title": "styles",
"type": "VectorTileLayer"
},
{
"isReference": true,
"layerType": "VectorTileLayer",
"styleUrl": "https://www.arcgis.com/sharing/rest/content/items/b11b54e79acf4f9d8f6fbbdd5db97547/resources/styles/root.json",
"title": "styles",
"type": "VectorTileLayer"
}],
"title": "Light Gray Canvas (Vector)"
},
"spatialReference": {
"wkid": 102100,
"latestWkid": 3857
},
"version": "2.8",
"authoringApp": "RuntimeSDK",
"authoringAppVersion": "100.1.0.1744"
} (The actual use case is not cloning the map, but to store the map to disk, so Map.clone() isn't an alternative here). Am I doing wrong?
... View more
09-14-2017
05:02 AM
|
0
|
6
|
1664
|
POST
|
Thanks Morten for sharing your opinion, really appreciated. I think, I'll go for option 3. I should have explained my VM concern better: I have a 1:n relation of ViewModels, in this case, I have 1 MapViewModel and 20 DeviceViewModels. The MapView is bound to the MapViewModel, of course. The DeviceViewModel is responsible for getting the data, transforming it to a MapPoint and for that point's symbology. However, I do not want any reference to the map in the DeviceViewModel. So the MapViewModel tracks instances of DeviceViewModel and listens for changes on it. In case of option 2, where the renderer (and the device specific symbology) is defined in the MapViewModel, the MapViewModel has to respond to changes in DeviceViewModel not only to update the current position, but also to it's symbology. In case 1 and 3, symbology is defined at the Device-level and therefore, there is no need to communicate it between ViewModels. Thanks Jens
... View more
09-07-2017
11:16 PM
|
0
|
0
|
519
|
POST
|
I have to solve the following task in Runtime 100.1: - Display 20 moving points in the map (Refresh-Rate 1 sec) - The color of the point has to be changed during runtime (not based on the data) Generally, the GraphicsOverlay(s) is clearly the way to go, but I can see three approaches: 1. Create 20 GraphicsOverlay-Instances having exactly 1 Graphic item and assign a SimpleRenderer to the GraphicsOverlay. 2. Create 1 GraphicsOverlay-Instance, having 20 Graphic items and assign a UniqueValueRenderer to the GraphicsOverlay. 3. Create 1 GraphicsOverlay-Instance, having 20 Graphic items, each one of it with a symbol assigned, no Renderer at the GraphicsOverlay. I can see advantages / disadvantages in each of these options, that's why I'm asking for recommendations / experiences. Option 1 is pretty easy to handle, flexible (if the customer decides to want a totally different symbol for one of those 20 items), color can be assigned easily, but having 20 GraphicsOverlay-Instances feel like a lot of resources on the map. Option 2 seems to be a good option as well, but can get hard, if the symbol has to differ in more than just the color. Even the color itself has to be communicated to the MapViewModel. Option 3 might consume the least resources, but in general, assigning a renderer to the layer (GraphicsOverlay) is more efficient than assigning a symbol to the feature (Graphic). Any recommendations? Thanks!
... View more
09-07-2017
04:11 AM
|
0
|
2
|
722
|
POST
|
True, but the description says: "Gets or sets the location display settings used for display the device's current location."
... View more
08-31-2017
11:02 PM
|
0
|
0
|
440
|
POST
|
The property MapView.LocationDisplay is documented as "Gets or sets...". However, it doesn't have a setter implementation.
... View more
08-31-2017
05:33 AM
|
0
|
2
|
645
|
POST
|
We have a GP Service that returns a FeatureSet. The GP Service can be used using arcgis.geoprocessing.import_toolbox() and creates an arcgis.features.FeatureSet. The arcgis.geoanalytics.summarize_data.reconstruct_tracks function requires an input layer (not a FeatureSet or a FeatureCollection). This is weird, as the corresponding REST endpoint does have support for FeatureCollections. So is it possible to make use the reconstruct_tracks with any kind of an in-memory feature structure? How? Thanks Jens
... View more
08-08-2017
07:52 AM
|
0
|
3
|
650
|
POST
|
Hi Michael, currently I do not have access to the critical machine. But I will retest in the week of August, 7th and post my results here. Jens
... View more
07-25-2017
12:42 AM
|
0
|
0
|
628
|
POST
|
Is the FeatureLayer.LabelsEnabled Property set to true?
... View more
07-19-2017
04:17 AM
|
0
|
1
|
660
|
POST
|
There is no such equivalent as ArcObjects (specifically the ArcGIS for Desktop part) and ArcGIS Runtime are designed for different purposes. ArcObjects (or at least the UI - namespaces) is designed to extend the existing ArcMap application or to create a Windows Desktop application. Therefore, ArcObjects based application always have the same look and feel - a menubar and some toolbars to control not only the map, but also the whole application. ArcGIS Runtime in contrast is designed to provide an SDK around the MapView control. The design of the application itself may be very different due to different target devices. You can target Windows Desktop, Windows Store, Android, iOS or even special devices. All those devices have a very different look & feel, so that controls like a toolbar wouldn't really fit. To be as independent from target applications as possible, the ArcGIS Runtime mainly provides functions / methods that you can integrate into your UI. The "commands" you listed are all there (as methods) - it's up to you to integrate them into your UI. Having said that, there will be a little exception: The upcoming Toolkit for the ArcGIS Runtime SDK for .NET will provide some controls around the map to help creating a "Desktop GIS around ArcGIS Runtime". Hope that helps...
... View more
07-17-2017
12:14 AM
|
1
|
3
|
629
|
POST
|
What do you think about this API method? public static Geometry GeometryEngine.Project(Geometry geometry, SpatialReference spatialReference) In my opinion, this method is to generic and involves to many casts when it's used, e.g. var mapPoint = new MapPoint(...)
var projectedPoint = (MapPoint)GeometryEngine.Project(mapPoint, anySpatialReference); If we had a finite list of supported overloads, like: public static MapPoint GeometryEngine.Project(MapPoint mapPoint, SpatialReference sr) {}
public static LineSegment GeometryEngine.Project(LineSegment lineSegment, SpatialReference sr) {}
public static Polygon GeometryEngine.Project(Polygon polygon, SpatialReference sr) {}
... ...use of the API would be easier and more clear. What do you think about this?
... View more
07-13-2017
12:01 AM
|
0
|
1
|
673
|
POST
|
I really have problems with this limitation as well. Another part of the Runtime, where curves don't work is the GeoView.IdentifyLayerAsync Method - curves are never in the result set. The only workaround, I'm aware of, is to simplify the data before using it in the runtime. If you're using the desktop pattern, you can make use of arcpy.Densify_edit() before creating your runtime content. This transforms your curved polygon features to a polygon with lots of interpolation points.. In server workflow, I think there is a server-flag like "SupportsAdvancedGeometry" or similar, which can be set to false to make the server deliver simplified geometries as well. Hopefully, anyone else comes around with a better workaround that does not involve changing the data beforehand..
... View more
07-12-2017
11:25 PM
|
0
|
1
|
763
|
Title | Kudos | Posted |
---|---|---|
1 | 04-06-2017 11:40 PM | |
1 | 04-19-2018 02:45 AM | |
1 | 01-11-2016 03:58 AM | |
1 | 07-17-2017 12:14 AM | |
1 | 04-11-2017 03:53 AM |
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:24 AM
|