Can't open the S57 sample of .NET

1384
9
Jump to solution
06-02-2020 09:39 AM
TaoMei
by
New Contributor II

I want to do some work to load s57 map and tring to draw some symbols on it. i open the sample of .NET from Symbology->Hydrographic->s57 cell Information.

it says sample is not avaiable. and asked to install the sdk

in fact i've already installed the sdk.

what am i missing.

thanks

Mei Tao

0 Kudos
1 Solution

Accepted Solutions
MichaelBranscomb
Esri Frequent Contributor

Hi,

It appears you may be trying to run samples for the retired SDK version 10.2.7.

Instead try:

Alternatively:

Thanks

Mike

View solution in original post

0 Kudos
9 Replies
MichaelBranscomb
Esri Frequent Contributor

Hi,

It appears you may be trying to run samples for the retired SDK version 10.2.7.

Instead try:

Alternatively:

Thanks

Mike

0 Kudos
TaoMei
by
New Contributor II

Thanks for your reply. I followed your instruction and it works!

I'm very new here and have no experience on ENC before.

i download ArcGIS Runtime SDK for .NET from ArcGIS for Developers which is 100.8.0

before that, i already download installed visual studio 2019.

and then i got the file name ArcGIS_Runtime_SDK_DotNet_100_8_0.vsix

i installed this, and then i can see the ArcGis template in my visual studio.

and i tried to new a blank template. with both .net framework and .net core. and it just shows up a web Map and seems work.

then , i download the sample from github https://codeload.github.com/Esri/arcgis-runtime-samples-dotnet/zip/v10.2.7 as you guessed (i'm tyring to download the latest but i seems i was wrong)

download the sample https://codeload.github.com/Esri/arcgis-runtime-samples-dotnet/zip/master  works fine.

 

to the new guys who have the same problem.

MichaelBranscomb
Esri Frequent Contributor

Hi,

That's great news : it looks like you're well on your way to becoming a pro Runtime developer!

Thanks

Mike

0 Kudos
TaoMei
by
New Contributor II

Hi Michael

I had a problem when i tried to load the s57 map.

the sample works just fine and i see a very nice map.  however i check the code of the sample, it seems to me the sentence that loads the map is  

string encPath = DataManager.GetDataFolder("9d2987a825c646468b3ce7512fb76e2d", "ExchangeSetwithoutUpdates", "ENC_ROOT","CATALOG.031");

is this the one that defines which map to load?

what does each parameters mean if i want to load a different map.

my final target is to build an application for the marintime map which are all local file. the files are ended by 000

i have some s57 map files, is there a way i can load the local file by this sample?

thanks

Mei Tao

0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi,

I recommend:

- Use Visual Studio to create a new application from the template (e.g. ArcGIS Runtime App (WPF .NET Core))

- Add a reference to the NuGet package Esri.ArcGISRuntime.Hydrography.100.8.0 from NuGet.org (or the local Esri NuGet package source created by the SDK).

- Follow the Guide topic Display electronic navigational charts—ArcGIS Runtime SDK for .NET | ArcGIS for Developers covering how to work with ENC data.

Thanks

Mike

0 Kudos
TaoMei
by
New Contributor II

Thanks Very much!

i followed your instrcution and loaded the s57 map downloaded from the internet, which is the 'exchange set', which had the catalog.031 file along with the .000 or .001 file.

however, i only have some .000 file on hand. 

is there a way i can load .000 file only or is there a way i can generate the catalog.031 for my .000 files?

i have 97 .000 files in total.

i searched a lot on the web for the whole day, but i didn't find a good answer. i know i need to do my own experience before asking,  but trust me i've tried to get the information i need as hard as i can.

sorry for keeping asking the quesions.

0 Kudos
MichaelBranscomb
Esri Frequent Contributor

Hi,

Yes, you can load .000 files directly via the EncCell Constructor (String):

  • Initializes a new instance of the EncCell class from the specified path.
  • This constructor should be used for loading an individual cell independent of any exchange set. If the ENC cell was delivered as part of an exchange set, use the EncCell(EncDataset) constructor instead. When an ENC cell is constructed from the path directly, updates (*.001, *.002, etc.) that are part of the associated exchange set (if there is one) will not be applied.

Thanks

Mike

0 Kudos
TaoMei
by
New Contributor II

Hi Michael Branscomb :

i followed your comments and it works very well to me. i can both use EncCell(String) to load 000 file and also EncCell to load Exchange set for all the maps on my hand.

My project is to develop collision preventation for ships. so we i have a ENC viewed, i need to draw circles (for distance), triagles(for other ships) or other type of shapes on the map to show the collision preventation status right now.

i tried whatever i can to see the examples you have and tried ShapefileFeatureTable class to show something on the map. but it seems different to draw the simple shapes like circle triagle on map.

please help to share some suggestions on my requirements.

thanks

Mei Tao

0 Kudos
NagendraReddyPanyam
New Contributor

Can you Please Post the code snippet here,,,am not able to load my .0000 file directly from the local path 

0 Kudos