|
POST
|
Hi, The first part of your approach is correct - basemaps for offline use are either a vector tile layer (.vtpk) containing features such as streets, etc, or an image tile layer (.tpkx) typically used for aerial/satellite imagery. Elevation is also an image tile layer, but the tiles need to be generated as a LERC-encoded. You'll need to follow the steps in this topic to create a tile package for elevation Share a tile package—ArcGIS Pro | Documentation, and specifically you're going to follow the section Create a tile package for a web elevation layer. Summary: To create a tile package that publishes an offline elevation layer, the following must be true: The input raster dataset must represent elevation data. The tiling scheme must use LERC compression. If you're not working in the coordinate system Web Mercator Auxiliary Sphere (i.e. ArcGIS Online, etc) and instead you're working in local/projected coordinate system then you'll need to use the Generate Tile Cache Tiling Scheme tool with Tile Format set to LERC Compression to generate a new LERC tiling scheme based on your elevation dataset. You should use the same spatial reference as the basemap vector tile package you're creating. Then create a tile package using the Manage Tile Cache tool to generate a LERC cache. For Input Tiling Scheme, use one of the following: Elevation tiling scheme matches the ArcGIS Online/Bing Maps/Google Maps tiling scheme used by ArcGIS Online basemaps (or basemaps extracted from ArcGIS Online) Elevation tiling scheme with two additional levels matches the ArcGIS Online/Bing Maps/Google Maps tiling scheme used by ArcGIS Online basemaps but has two additional levels for higher-resolution data. Import scheme uses the tiling scheme you created in the optional first step or the tiling scheme of an existing image service. If using this option, browse to the tiling scheme file or service for Import Tiling Scheme. And finally use the Export Tile Cache tool with the Export Cache As option set to Tile package (.tpkx). For example, the image below shows a raster dataset as an elevation surface layer I've added in ArcGIS Pro (and used 20x exaggeration for effect): And then I've used the Manage Tile Cache geoprocessing tool to create a new cache where the Input Tiling Scheme parameter is Elevation Tiling Scheme (which means it matches the ArcGIS Online/Bing Maps/Google Maps tiling scheme used by ArcGIS Online basemaps): And next I used the Export Tile Cache tool to create a tile package (.tpkx): I tested the new TPKX file while I was in ArcGIS Pro to ensure it worked there (the TOC shows the .tpkx file): And lastly, here it is in Unity (looked better in this case with the imagery basemap): I've opened an internal issue to update our documentation to assess how we can better describe this process for creating tile basemap and elevation tile packages for use with our SDKs. Thanks
... View more
08-20-2024
04:37 AM
|
1
|
1
|
1395
|
|
POST
|
Hi, MediaLayer is on our roadmap for a future release (existing ArcGIS Idea / request). Unfortunately we currently don't have a timeline to share, but we have received a number of requests for this feature which will help us prioritize appropriately during our next planning phase. Regarding the broader roadmap, although we don't publicly document this, we do present the product roadmap at each Esri Dev Summit (Palm Springs in Q2, Berlin in Q4) and Esri User Conference (San Diego in Q3) in-person/virtual events, and recordings are later published. In those sessions we discuss the roadmap for the next release, which may be up to 3 months out. Occasionally, we're able to share news of the longer-term roadmap when we're working on epics that span multiple release cycles. We encourage you to use the ArcGIS Ideas section for the SDKs to upvote (kudo) ideas and submit new requests. Thanks
... View more
08-16-2024
03:01 AM
|
0
|
2
|
1147
|
|
POST
|
Hi, Update - we've just launched a beta of our new global elevation service/API. It's currently in beta, gathering feedback, before going general availability in 2025. More info about the new service: Elevation service (beta) | Esri Developer REST APIs documentation (arcgis.com) Sign-up to test: https://earlyadopter.esri.com/key/locationservices-elevation We'd love to get your feedback on this new service (e.g. results, performance, developer experience). Thanks
... View more
08-16-2024
02:18 AM
|
2
|
0
|
1082
|
|
POST
|
Do you have strong requirement to use File Geodatabase? If not, then I recommend changing to using mobile geodatabases and mobile map packages that are supported directly by the API. But, if you do need to continue supporting File Geodatabase, then the Local Server is currently your only option. You should be able to follow this sample: arcgis-maps-sdk-dotnet-samples/src/WPF/ArcGISRuntime.WPF.Viewer/Samples/Local Server/DynamicWorkspaceShapefile at v100.7.0 · Esri/arcgis-maps-sdk-dotnet-samples · GitHub (we removed the sample after 100.7 because it's no longer the promoted workflow). I've used code like this: ...
// Add the dataset to a new dynamic map service layer instance.
await AddDatasetToMapImageLayer(
WorkspaceType.FileGeodatabase,
SelectedGeodatabasePath,
SelectedDataset.Name);
... Which calls this function: private async Task AddDatasetToMapImageLayer(WorkspaceType workspaceType, string directoryPath, string fileName)
{
try
{
// Create a new LocalMapService instance using the empty Map Package.
LocalMapService localMapService = new LocalMapService(_emptyMapPackage);
// Create a new WorkspaceInfo object with a unique ID.
string uniqueId = Guid.NewGuid().ToString();
// Create a raster workspace or file geodatabase workspace.
DynamicWorkspace dynamicWorkspace = null;
switch (workspaceType)
{
case WorkspaceType.Raster:
dynamicWorkspace = new RasterWorkspace(uniqueId, directoryPath);
break;
case WorkspaceType.FileGeodatabase:
dynamicWorkspace = new FileGeodatabaseWorkspace(uniqueId, directoryPath);
break;
}
// Add the dynamic workspace to the new local map service.
localMapService.SetDynamicWorkspaces(new List<DynamicWorkspace> { dynamicWorkspace });
// Start the service.
await localMapService.StartAsync();
// Create a new ArcGISLocalDynamicMapServiceLayer from the local service.
ArcGISMapImageLayer arcGISMapImageLayer = new ArcGISMapImageLayer(localMapService.Url)
{
Id = "Workspace: " + (new DirectoryInfo(directoryPath)).Name,
};
// Clear any existing sub layers.
arcGISMapImageLayer.Sublayers.Clear();
// Create a sub layer source to represent the specific file/dataset in the workspace.
SublayerSource sublayerSource = null;
if (SelectedDataset.Datatype == "Feature Class")
{
sublayerSource = new TableSublayerSource(dynamicWorkspace.Id, fileName);
}
else
{
sublayerSource = new RasterSublayerSource(dynamicWorkspace.Id, fileName);
}
// Create a new map image sub layer referencing the source.
ArcGISMapImageSublayer arcGISMapImageSublayer = new ArcGISMapImageSublayer(0, sublayerSource);
// Add the sublayer to the sub layers collection on the map image layer
arcGISMapImageLayer.Sublayers.Add(arcGISMapImageSublayer);
// Set the top level name on the map image layer (for the TOC).
arcGISMapImageLayer.Name = arcGISMapImageLayer.Sublayers[0].Name;
// Add the sublayer to the operational layers collection on the map.
Map.OperationalLayers.Add(arcGISMapImageLayer);
// Load the raster sub layer to get the extent from the service info.
await arcGISMapImageSublayer.LoadAsync();
// Invoke the set viewpoint event to update the UI.
SetViewpointRequested?.Invoke(this, new Viewpoint(arcGISMapImageSublayer.MapServiceSublayerInfo.Extent));
}
catch (Exception ex)
{
DisplayStatus?.Invoke(this, ex.Message);
}
}
... View more
07-18-2024
07:04 AM
|
0
|
0
|
613
|
|
POST
|
Nick gives great info above. I would only add that Local Server doesn't really add much here, you should be able to use the direct raster support as outlined above. Also, depending on what your bitmaps represent, it may be worth considering the mobile mosaic dataset to which you can add individual rasters and apply mosaic rules to effectively treat them as a single image. For more info see Add raster data | ArcGIS Maps SDK for .NET | Esri Developer.
... View more
07-16-2024
01:49 AM
|
1
|
2
|
1270
|
|
POST
|
Hi, Soon we'll be able to share some exciting news that will help solve this question - stay tuned! Thanks
... View more
07-10-2024
04:03 AM
|
0
|
0
|
1235
|
|
POST
|
Hi, By default, a scene's terrain is fully opaque and the camera cannot go underground. To see underground features such as pipes in a utility network, you can lower the opacity of the terrain surface and set the navigation constraint on the surface to allow underground navigation. This sample loads a scene with underground features. Pan and zoom to explore the scene. Observe how the opacity of the base surface is reduced and the navigation constraint is removed, allowing you to pan and zoom through the base surface. View content beneath terrain surface | ArcGIS Maps SDK for .NET | ArcGIS Developers Does that provide the experience you want to create? Thanks
... View more
06-19-2024
04:39 AM
|
1
|
1
|
620
|
|
POST
|
We plan to continue the R&D through 2024. It's possible we'll able to support Linux in late-2024 but cautiously I'd estimate mid-2025. We'd love to hear more about how you're using, or planning to use, our Maps SDK for Unreal Engine - feel free to email me: mbranscomb@esri.com. Thanks
... View more
06-14-2024
05:12 AM
|
1
|
0
|
1792
|
|
POST
|
Hi, Thanks for confirming you were able to get your Lite license string. Sorry if you had trouble finding the right information - the information you needed was at the top of the Get a License topic: We're always looking for ways we can improve the doc, particularly regarding licensing and deployment. If you have any suggestions, we'll be happy to take them. Thanks
... View more
06-14-2024
04:30 AM
|
0
|
0
|
3283
|
|
POST
|
That's excellent information, thanks - I've added to our internal issue. Thanks Mike
... View more
06-13-2024
05:42 AM
|
0
|
2
|
1819
|
|
POST
|
Hi, Did you get all your questions answered? Regarding... + Lastly, if I can't have a Runtime License, can I still deploy my app with the watermarks intact? You can't deploy your app unlicensed (and therefore with the watermarks intact). Before your application is deployed to production, you must license it. But it may be worth noting that you can increase the license level of an application. For example some developers choose to deploy their app with a Lite license string (which would remove the watermark) and then in code apply a higher level of license based on the user signing in to their portal, or by setting a license string. Thanks
... View more
06-11-2024
05:10 AM
|
0
|
2
|
3309
|
|
POST
|
Hi, Can you share any more information about how you use the CreateRasterDataset function? e.g. Are these single band or multi-band raster datasets? Do you create single, standalone raster datasets or do you mosaic multiple raster datasets into a single image? Do you need to update/replace images or update pixels/cells within rasters? What type/format are you creating e.g. JPEG, TIFF, or geodatabase raster dataset? Do you need to specify compression when creating JPEG file or geodatabase rasters? Do you need to build pyramids? (improves the display performance of raster datasets) Do you need to calculate statistics? (allows applications to properly stretch and symbolize raster data for display) Thanks Mike
... View more
06-11-2024
03:25 AM
|
0
|
0
|
234
|
|
POST
|
Hi, We are currently evaluating support for Linux. To help inform our plans support, we would love to find out more about your plans for both development and deployment of apps on Linux. Do you want to both develop on Linux and deploy apps to Linux? For development and/or deployment, which Linux distributions are you intending to use/target? (e.g. Ubuntu, SUSE, Red Hat, CentOS) Do you need support for just x64 or are you instead/also looking at ARM64? What type of hardware/devices will you be building apps for? Anything else... Thanks
... View more
06-06-2024
04:56 AM
|
0
|
4
|
1925
|
|
POST
|
I see you're using the map type local, note that currently "The OSM 3D Buildings layer will work in global scenes when using the geographic coordinate system WGS84 or the projected coordinate system Web Mercator (Auxiliary Sphere), and in local scenes when using the geographic coordinate system WGS84." (Release notes | ArcGIS Maps SDK for Unity | ArcGIS Developers). I suspect that when you include the basemap, the map is assuming the spatial reference of the basemap, which is Web Mercator, and then cannot support displaying the global buildings layer. Note you should see layer load or view state warnings to indicate this. This is the default behavior for establishing the spatial reference of the map unless you explicitly set this property. Are you able to use the global map mode?
... View more
06-03-2024
08:19 AM
|
0
|
2
|
1264
|
|
POST
|
Hi, Performance can depend on many factors, including the specifications of your machine/hardware, your connection speed (if you're using a service), the I3S version of the service and if it was published with Draco geometry compression and Basis Universal texture compression, and if you've modified the Quality Scaling Factor property on the Camera or changed the viewport size. Can you provide more detail on: Which service(s) are you using? (if it's public please provide the URL, otherwise please share the JSON from the SceneServer endpoint) How long does it take to render? What camera viewpoint are you testing/measuring? (ideally share the values of Long/Lat/elevation (X,Y,Z) and heading, pitch) What's your connection speed? Thanks
... View more
05-30-2024
05:34 AM
|
0
|
0
|
629
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | Monday | |
| 1 | 12-10-2025 07:16 AM | |
| 1 | 11-21-2025 08:12 AM | |
| 1 | 11-14-2025 07:13 AM | |
| 1 | 09-23-2025 05:35 AM |
| Online Status |
Offline
|
| Date Last Visited |
yesterday
|