|
POST
|
I've taken a quick look at this and see exactly the same issue. It feels like it should probably work so I've asked my friends in the geometry team to take a look. It might be a bug, but let's see what they say...
... View more
01-04-2021
07:02 AM
|
1
|
1
|
2887
|
|
POST
|
We might need to take a step back here and review what you are using your data for. Is the raster data you are using for visualization only, or are you performing raster analysis on it? You should also note that you can take an entire webmap offline and there is API for achieving this. This is probably easier than the initial methods I pointed you at which are for taking individual layers offline, although these are what are used in the background. These workflows are introduced here https://developers.arcgis.com/android/latest/guide/work-offline.htm If you are still going down the route of taking individual layers offline - hence your image service as a tile package, you should understand that tile packages are for visualization and are not added as rasters. If you have a tile package you add it using code like this: // load the tile cache from local storage TileCache tileCache = new TileCache(getExternalFilesDir(null) + getString(R.string.san_diego_tpk)); // use the tile cache extent to set the view point tileCache.addDoneLoadingListener(() -> mMapView.setViewpoint(new Viewpoint(tileCache.getFullExtent()))); // create a tiled layer and add it to as the base map ArcGISTiledLayer tiledLayer = new ArcGISTiledLayer(tileCache); mMapView.getMap().setBasemap(new Basemap(tiledLayer)); This is taken from a sample which loads a basemap from a URL: https://github.com/Esri/arcgis-runtime-samples-android/tree/master/java/offline-geocode
... View more
12-21-2020
02:10 AM
|
0
|
0
|
1374
|
|
POST
|
If your image server has been configured to allow downloads you should be able to download a tile package of the data for viewing offline. Are you working with the layer directly or is it part of a webmap? From your question it sounds like you are adding the service to the map yourself, so if this is the case take a look at the section titled "Tiled Layers" in this doc https://developers.arcgis.com/java/latest/guide/take-a-layer-offline.htm Does this help?
... View more
12-17-2020
11:36 AM
|
0
|
1
|
1403
|
|
POST
|
Hi JC, So to make your app more usable you have some options to build upon the scale thresholds you've set up. Probably the easiest improvement is to seek some data which works at a more zoomed out scale. Is there some vector data you have access too which would provide you with an outline of country boundaries for example? This could give your application some better spatial context whilst you are zoomed out. A basemap would also potentially give you the same. If the RPF data is the only thing you have, then building pyramids on the data will make it perform better when you are zoomed out. Basically building pyramids on a raster dataset gives you lower resolution versions of the data which are displayed as you zoom out. This reduces the amount of data we need to display and hence it will perform much faster. Building Pyramids is something you can do in ArcGIS Pro or ArcMap. Once you've got pyramids built, you will be able to view the data in a much wider range of scales without it working your app very hard to display the data. Here is some background information to explain what pyramids are about: https://pro.arcgis.com/en/pro-app/latest/help/data/imagery/raster-pyramids.htm The other thing you ask is what is a map scale? In your code you've set the min scale to 1001. This means you've set the scale to 1:1001. It's never completely accurate on a monitor, but this basically means that something measure 1 metre on the screen represents something which in reality is 1001 metres.
... View more
12-15-2020
11:46 AM
|
1
|
0
|
2908
|
|
POST
|
Hi JC, I've not reproduced your issue, but I can fully understand what is happening. The data you are working with is very likely designed to be viewed at a specific scale. It might be 1:25000 for example, and as you've seen the app will perform well at around this scale. As you zoom out, the amount of data you are displaying will be huge with 400+ tiles. All this needs to be loaded into memory which isn't going to perform very well with the CADRG raw data as you've seen. Usually in this kind of instance, I'd say you should set scale thresholds on the group layer which contains the raster tiles you are displaying. This will of course mean you need to switch to a more appropriate data set which works well for the scale you are viewing. You might switch to using 1:50000 or 1:100000 scale data for example and set the scale thresholds so that layer doesn't cause you the same problem when you zoom out. If you don't have access to data at different scales, then there are also options for "pre-processing" your raw CADRG data so it performs better at zoomed out scales. Let me know if you need to consider this option as I'd need to look at this; its been a long time since I've worked on pyramids and raster data. Does this help?
... View more
12-14-2020
06:54 AM
|
1
|
1
|
2919
|
|
POST
|
I'm seeking out someone who knows the MIL2525 symbology...
... View more
12-02-2020
12:40 AM
|
1
|
0
|
2753
|
|
POST
|
@MarylynAlaso I can see you have posted this question in the ArcGIS Runtime for Java area so I'm assuming you are writing a JavaFX application. When you are working with any types of features regardless on if it comes from OGC data, feature layers, or in your case shapefiles, you can perform a programatic "identify" operation. This basically allows you to get geometry and attribute information from the item you have just clicked on. I've not used your specific data, but I've built upon an existing samples we have in git: https://github.com/Esri/arcgis-runtime-samples-java/tree/master/feature_layers/feature-layer-shapefile I've added some extra code to listen into mouse click events and use that point to perform an identify operation. In its current form, the code just outputs text to the console, but it should help you to develop the next stage of your application. // add the feature layer to the map map.getOperationalLayers().add(featureLayer); // listen into clicks and identify results mapView.setOnMouseClicked(event -> { System.out.println("clicked"); Point2D clickedPoint = new Point2D(event.getX(), event.getY()); // listenable future for waiting for results from identify on layer ListenableFuture<IdentifyLayerResult> resultFuture = mapView.identifyLayerAsync(featureLayer,clickedPoint,10,false); resultFuture.addDoneListener(() -> { System.out.println("got result"); try { // get the results from the future IdentifyLayerResult result = resultFuture.get(); // loop through each element (probably only 1) and get the attributes for (GeoElement element : result.getElements()) { Map<String, Object> attributes = element.getAttributes(); System.out.println("attributes " + attributes); } } catch (InterruptedException e) { e.printStackTrace(); } catch (ExecutionException e) { e.printStackTrace(); } }); }); Does this help?
... View more
11-30-2020
12:59 AM
|
1
|
0
|
7666
|
|
POST
|
@Anonymous User The day.zip file is attached to a post made by the original poster. This is a fairly old post so its probably best if you create a new thread describing what you are trying to achieve giving details of your code and the version of the API you are using.
... View more
11-23-2020
03:57 AM
|
0
|
0
|
2614
|
|
POST
|
If you use the maven repository esri.bintray.com in your build scripts, you will need to update these to reference our new repository esri.jfrog.io. For example if you use Gradle, your script should include this entry: maven {
url 'https://esri.jfrog.io/artifactory/arcgis'
} Full details of this are in this Blog post If anyone has any issues with this new repository, please let us know.
... View more
11-13-2020
01:07 AM
|
0
|
2
|
2370
|
|
POST
|
If you use the maven repository esri.bintray.com in your build scripts, you will need to update these to reference our new repository esri.jfrog.io. maven {
url 'https://esri.jfrog.io/artifactory/arcgis'
} Full details of this are in this Blog post If anyone has any issues with this new repository, please let us know.
... View more
11-13-2020
01:05 AM
|
1
|
2
|
2889
|
|
BLOG
|
If you build your ArcGIS Runtime applications using Gradle or Maven build scripts which reference the Maven repository esri.bintray.com, you will need to update your scripts to reference a new Maven repository. Our new maven url is https://esri.jfrog.io/artifactory/arcgis If you are using Gradle build scripts you will need to have the following reference in your file: maven {
url 'https://esri.jfrog.io/artifactory/arcgis'
} For developers using Maven build scripts, you will need to include the following reference: <repository>
<id>arcgis</id>
<url>https://esri.jfrog.io/artifactory/arcgis</url>
</repository> References to esri.bintray.com can be removed from your build script once you have added the new Maven repository. The Bintray Maven server will remain active until December 14th after which the binaries for your application can only be obtained from the new maven server. We are making this change because jFrog who run Bintray are deprecating the service.
... View more
11-12-2020
08:18 AM
|
2
|
0
|
1039
|
|
POST
|
I'm not completely sure I've understood your question yet. I'm wondering if a renderer is what you are after. You can apply something called a UniqueValueRender to your graphic overlay which would draw different symbols according to the value of an attribute in your graphics. This is explained in this topic here: Symbolize data—ArcGIS Runtime SDK for Android | ArcGIS for Developers Although its not using a graphics overlay there is a sample showing a basic unique value renderer in action : arcgis-runtime-samples-android/java/unique-value-renderer at master · Esri/arcgis-runtime-samples-android · GitHub The rendering pipeline for graphics and features is the same essentially. Also as you are writing an AR app (Scene View), you've got lots more options for the style of the symbols available to you. The document above has a section on 3D symbols which have lots of possibilities. Is this getting closer to helping? Mark
... View more
11-10-2020
09:51 AM
|
0
|
0
|
1574
|
|
POST
|
Orrin, Can you explain what your app is needing to do? From your description it sounds like you want to draw some dots on a map. Where do you intend the data for these dots to come from? There are lots of ways of doing this depending on your workflow. Are you for example collecting data and do you want to store it somewhere? We've got solutions but I need to know a little more about what you are trying to achieve. If you are literally wanting to draw your own dots on a map and you are going to control the location of these through your own app logic, then Graphics Overlays may be a good solution. There are good documents about these: Add graphics overlays to your app—ArcGIS Runtime SDK for Android | ArcGIS for Developers Add graphics and text to graphics overlays—ArcGIS Runtime SDK for Android | ArcGIS for Developers And if you wanted to see a working app doing something similar there are plenty of samples in a git repository. This one shows the use of graphics overlays: arcgis-runtime-samples-android/java/add-graphics-with-symbols at master · Esri/arcgis-runtime-samples-android · GitHub The sample above is a Java sample, but the same sample exists for Kotlin too. Does this help? If this doesn't achieve what you want, then can you explain exactly what you need? Mark
... View more
11-10-2020
08:20 AM
|
0
|
2
|
1574
|
|
POST
|
James, Just wanted to let you know that I'm seeking out someone from the StreetMap Premium team to help answer this question. In the meantime, it would be handy to know if the routing works in your data when consumed in ArcGIS Pro? If it's not working in Pro, then its unlikely to work in a Runtime app. More information will follow. Thanks Mark
... View more
11-06-2020
07:51 AM
|
0
|
0
|
1646
|
|
POST
|
There is no API for moving a polygon as they are immutable. You have to create a new one which is the workflow I was showing in my code example. Remember that Graphics can be updated with a new geometry, which is how you create an updating graphics view of your world. So if each ship you are tracking has a different radius, you need to store this somewhere. Although in my example I've shown a graphic consisting of a geometry and a symbol, they can also have attributes which could be used to store your extra information. You could look into using the moveGeodesic methods to help you constrict a new geometry from an existing set of points from an old geometry GeometryEngine (ArcGIS Runtime SDK for Java 100.9.0) , but its probably easer to call your ellipseGeodesic method again.
... View more
11-04-2020
06:51 AM
|
1
|
1
|
5486
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 05-12-2026 01:35 AM | |
| 2 | 05-07-2026 06:59 AM | |
| 1 | 08-13-2024 05:17 AM | |
| 1 | 07-10-2024 01:50 AM | |
| 1 | 04-22-2024 01:21 AM |
| Online Status |
Offline
|
| Date Last Visited |
05-13-2026
06:46 AM
|