POST
|
James Ballard, I'm revisiting this issue which I could not manage to resolve at the time with a potential alternate solution. I'm trying to load S-63 charts using an EncLayer via an EncExchangeSet. All is well until it tries to load the cells at which point I receive the following error: "Cell load error: Cell Permit not found. Load the permit file provided by the data supplier." Are S-63 charts supported by EncLayer in 100.7.0? If so, how do i load my permit using the EncExchangeSet class? If not, what options do I have to load S-63 charts in ArcGIS Qt runtime SDK 100.7.0 and be able to modify the display properties (i.e. colour scheme) during runtime? Regards, Tiaki Rice
... View more
01-12-2020
05:22 PM
|
0
|
1
|
1084
|
POST
|
James, Thanks for the information! This does get me a little closer although I will say the amount of configuration for a WMS server utilised in this way is pretty woeful. The specific parameters that i'm trying to configure are the DisplayParameters such as requesting a different "ColorScheme" value. I am aware that these can be changed via the S52DisplayProperties.xml but i need to be able to change these parameters during runtime. The following JSON reported by "http://127.0.0.1:6080/arcgis/rest/services/service/MapServer/exts/MaritimeChartService/MapServer/parameters?full=&f=pjson" shows the parameters which don't appear in the WMS server. {
"DisplayParameters": {
"ECDISParameters": {
"version": "10.7.1",
"DynamicParameters": {
"Parameter": [
{
"name": "AreaSymbolizationType",
"value": 2
},
{
"name": "AttDesc",
"value": 1
},
{
"name": "ColorScheme",
"value": 0
},
...
...
...
]
}
}
}
} Regards, Tiaki
... View more
11-24-2019
04:50 PM
|
0
|
0
|
1084
|
POST
|
That would be quite disappointing if that is the case. It is strange that this isn't possible as having a look at the WMS Layer class, it provides a "customParameters" field which allows exactly that. Why is this same functionality not available for the ArcGISMapImageLayer class?
... View more
11-12-2019
07:55 PM
|
0
|
1
|
1084
|
POST
|
Hello, My setup currently is: ArcGIS Enterprise server with the Maritime Chart Service enabled S-63 charts properly licenced and set up with a permit Qt QML project being developed on a machine co-located with the chart server I can load the charts just fine using an ArcGISMapImageLayer pointing at the "http://..../MapServer/exts/MaritimeChartService/MapServer" url of my chart server. My question is: how do i set the Dynamic Parameters of the S-63 charts; specifically the Colour Scheme. I see there is an ENCLayer with mariner options which i don't think I can use with S-63 charts as they must be hosted on a chart server. From what I can gather I need to pass in display_params somehow to the export requests being made to the server. I'm just not sure where i would add these parameters. Current code below (practically sample code at this point): ApplicationWindow {
id: appWindow
width: 800
height: 600
title: "Project"
MapView {
anchors.fill: parent
focus: true
Map {
Basemap {
ArcGISMapImageLayer {
url: "http://127.0.0.1:6080/arcgis/rest/services/TiledMap/MapServer/exts/MaritimeChartService/MapServer"
}
}
}
}
} Cheers, Tiaki
... View more
11-10-2019
11:42 PM
|
0
|
8
|
1351
|
POST
|
This has resolved the issue. Everything now works as intended. Thanks Mark.
... View more
11-06-2018
08:15 PM
|
0
|
0
|
757
|
POST
|
I am creating an ArcGIS map from a collection of EncLayers containing charts that cover the world. While the map loads all the charts correctly inside a MapView, I am unable to move the Viewpoint outside the vertical bounds of the first layer loaded. How should I load the charts into a map so that I can freely pan the map across all of them? I am loading S-57 charts (I've tried loading them both using a catalog and individually) and ArcGIS Runtime 100.3.0. I am loading the charts as follows: map = new ArcGISMap(new Basemap(EncLayerManager.getLayers(), null)); where EncLayerManager.getLayers() returns a List of EncLayers that is created in the function below. public static void loadLayers(Iterable<String> paths) {
EncExchangeSet encExchangeSet = new EncExchangeSet(paths);
encExchangeSet.addDoneLoadingListener(() -> {
synchronized (layers){
//loop through the datasets and add to the map
for (EncDataset encDataset : encExchangeSet.getDatasets()) {
EncCell encCell = new EncCell(encDataset);
EncLayer encLayer = new EncLayer(encCell);
layers.addLast(encLayer);
}
System.out.println("Loaded " + layers.size() + " ENC Charts");
}
});
encExchangeSet.loadAsync();
} The MapView is being created using FXML and has its map set with: map.setView(map); For example, if the chart contained in the first layer in the list covers latitudes from 60N to 85N I am unable to pan the view so its centre is below 60N, even though there are other charts loaded that cover this area. However, when I first load a web-based base map before adding the EncLayers, the problem does not present itself and I can pan freely. This, unfortunately, doesn't solve my problem as the application is required to work without an internet connection. In this case, I load the charts like so: map = new ArcGISMap(Basemap.createOceans());
map.getBasemap().getBaseLayers().addAll(EncLayerManager.getLayers()); I have tried using a tiled layer loaded from a file to create the basemap and while this did allow me to scroll between charts, it also caused significant rendering errors while displaying those charts, as shown below:
... View more
08-20-2018
07:01 PM
|
0
|
3
|
1017
|
POST
|
Hi Robert, Thanks for posting that it helped me realize what my problem was. I was trying to set the offset based on the "height" of the symbol, which is valid for some other symbol types but not the SimpleMarkerSymbol. This was resulting in a NaN X and Y offset which explains the error I was getting.
... View more
04-17-2016
11:09 PM
|
0
|
1
|
1198
|
POST
|
Hi, I am having trouble creating a SimpleMarkerSymbol based on an SVG shape string. This is the code I am using to create my SimpleMarkerSymbol, (the actual path was copied directly from https://www.w3.org/TR/SVG/paths.html#PathElement which the API documentation pointed me towards): var symbol = null; require([ "esri/Color", "esri/symbols/SimpleLineSymbol", "esri/symbols/SimpleMarkerSymbol" ], function(Color, SimpleLineSymbol, SimpleMarkerSymbol){ var line = new SimpleLineSymbol(); line.setColor(new Color([230, 0, 0, 1])); line.setWidth(2); symbol = new SimpleMarkerSymbol(); symbol.setPath("M 100 100 L 300 100 L 200 300 z"); symbol.setOutline(line); symbol.setColor(new Color([255, 0, 0, 0.50])); } ); return symbol; However after the symbol is turned into a graphic and added to the map the symbol is drawn incorrectly or not at all. I also get the following error in the Chrome Console: svg.js:55 Error: Invalid value for <path> attribute transform = "matrix(0.00001396,0.08000000,-0.08000000,0.00001396,NaN,NaN)" I have changed the Symbol style to to one of the standard shapes (STYLE_DIAMOND) and everything works correctly. Is this a known problem or have I done something wrong? Extra information: Google Chrome Version Version 50.0.2661.75 m Error occurs in version 3.15 and 3.16 of the Javascript API, have not tried other verisons.
... View more
04-14-2016
11:04 PM
|
0
|
3
|
4719
|
POST
|
I have a Maritime Charting Service MapServer running on my ArcGIS server and was trying to use the "export" functionality to generate images based on geographic coordinates. However I noticed that the units are in esriMeters and the bbox parameter requires the coordinates be in those units. I looked into the ArcGIS REST API documentation and tried changing the "bboxSR" parameter to use 4326 but this did not work. Is there a way to query a map whose units are in esriMeters using lat / long coordinates?
... View more
01-20-2016
03:22 PM
|
0
|
0
|
2519
|
POST
|
Hi there, I have set up a Maritime Chart Service by following these guides: Setting Maritime Chart Service properties—Documentation (10.3 and 10.3.1) | ArcGIS for Server Managing data for unencrypted S-57 datasets—Documentation (10.3 and 10.3.1) | ArcGIS for Server Managing data for S-63 encrypted datasets—Documentation (10.3 and 10.3.1) | ArcGIS for Server I have the service up and running but the guides only tell me how to attach a Maritime Chart Service to an existing published service, not as a stand alone service. How would I accomplish this? EDIT: ArcGIS Server version is 10.3.1, Maritime for Server extension version is 10.3. Thanks
... View more
01-20-2016
02:29 PM
|
0
|
1
|
2895
|
POST
|
That is in SceneView, would the same apply to MapView?
... View more
01-20-2016
02:09 PM
|
0
|
2
|
1131
|
POST
|
I am trying to create a web based map viewer which consists of a single Map Service with no base map layer. I have managed to do this with the 3.15 API by specifying no base map, however when I try to do this with the 4.0 API beta the layer is displayed but I get the following error on load: Uncaught TypeError: a.constrain is not a function Additionally when I try to zoom or pan the map I get the following error: Uncaught TypeError: this.constraints.constrain is not a function Here is my javascript code: var map;
var layer ;
var view;
require(
[
"esri/Map",
"esri/views/MapView",
"esri/layers/ArcGISDynamicLayer"
],
function(
Map,
MapView,
ArcGISDynamicLayer,
){
layer = new ArcGISDynamicLayer({
url: "http://my.service.url"
});
map = new Map({
layers: [layer]
});
view = new MapView({
container: "map",
map: map,
ui: {
components: ["compass"]
}
});
}
); Also if I put in a basemap everything works correctly.
... View more
01-19-2016
05:36 PM
|
0
|
7
|
3353
|
POST
|
Hi Bjorn, I am having trouble rotating a Marker symbol, I have the following code which works correctly and the marker is drawn properly. var point = new Point({ longitude: longitude, latitude: latitude }); var pictureMarker = new PictureMarkerSymbol({ size: 16, url: "/images/Marker.png", angle: 0 }); var graphic = new Graphic({ geometry: point, symbol: pictureMarker }); However if I change the angle property in the PictureMarkerSymbol constructor to anything non zero (such as 1 or 180) I get the following error: Error: Invalid value for <image> attribute transform="matrix(0.99984770,0.01745241,-0.01745241,0.99984770,NaN,NaN)" c.Shape.k._applyTransform @ svg.js:11 e.Shape.g.setTransform @ shape.js:5 k._drawPoint @ MapView.js:32 k.drawVector @ MapView.js:26 k.draw @ MapView.js:25 k.add @ MapView.js:136 (anonymous function) @ MapView.js:134 a._dispatchColChange @ init.js:872 h._dispatch @ init.js:298 d @ init.js:1363 observe.attributes @ init.js:1364 I have tried changing the marker to a SimpleMarkerSymbol and have the exact same problem. Is there something special I have to do to get it working with the new API or is my code incorrect in some way?
... View more
01-17-2016
07:27 PM
|
0
|
0
|
610
|
Online Status |
Offline
|
Date Last Visited |
05-27-2021
01:49 AM
|