Viewing KML from websource says "unlicensed feature": Why?

424
3
Jump to solution
03-30-2023 10:45 AM
SokoFromNZ
Occasional Contributor

Hi,

According to https://developers.arcgis.com/net/license-and-deployment/license/#licensing-capabilities I can "Viewing KML data accessed as a web resource (for example, via an http or https link)." with my Lite license.

So following this example https://community.esri.com/t5/net-maps-sdk-questions/best-way-to-display-overlay-an-image-onto-a-2d-... I've created the following test in my Windows WPF .NET 7 app with ArcGIS v200 installed via NuGet:

var img = new Uri("http://mydomain.com/my.png", UriKind.Absolute);
var overlayImg = new KmlIcon(img);
overlayImg.RefreshMode = KmlRefreshMode.OnChange;
overlayImg.ViewRefreshMode = KmlViewRefreshMode.Never;
var overlay = new KmlGroundOverlay(fullArea, overlayImg); // fullArea is an Esri.ArcGISRuntime.Geometry.Envelope
var dataset = new KmlDataset(overlay);
await dataset.LoadAsync();
var layer = new KmlLayer(dataset);
_mapView.Map!.OperationalLayers.Add(layer);

According to @MichaelBranscomb this should work (see https://community.esri.com/t5/net-maps-sdk-questions/do-arcgis-runtime-net-license-levels-restrict/t...)

But it doesn't. I get the LoadError="unlicensed feature".

To make sure my code works I removed my Lite-license and the image shows successfully.

Can anybody tell me if this is a bug in the license check of the Runtime or if I violate any other license with this?

Thanks

Soko

0 Kudos
1 Solution

Accepted Solutions
dotMorten_esri
Esri Notable Contributor

Lite license specifies:
Viewing KML data accessed as a web resource

The key here is "as a web resource".

Under Standard license you'll find:

View, create, edit, and save KML data stored as a local file.

You are creating a kml dataset in the above example, thus requiring standard.

View solution in original post

3 Replies
dotMorten_esri
Esri Notable Contributor

Lite license specifies:
Viewing KML data accessed as a web resource

The key here is "as a web resource".

Under Standard license you'll find:

View, create, edit, and save KML data stored as a local file.

You are creating a kml dataset in the above example, thus requiring standard.

SokoFromNZ
Occasional Contributor

Hi,

Thanks for the quick reply. Thats a small and fine difference for a beginner like me as I thought the "data" of the kml is the web-url-image and therefore it should work. But the article talks about the KmlData class. Thanks for pointing it out 🙂.  I

So to sum it up:

This is the problem

var layer = new KmlLayer(dataset);

With a Lite license I can to this:

var layer = new KmlLayer(new Uri(http://mydomain.com/my.kml));

 But I cannot do this:

var layer = new KmlLayer(new Uri("C:\\my.kml));

Correct? 

0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi,

That's correct - it follows the pattern of accessing other OGC services (WMS, WMTS, etc).

 

Thanks 

0 Kudos