POST
|
Excellent, thanks Lucas. This worked. BTW....can you think of any adverse effects we might see client-side by setting useAdvancedSymbology: false? Will the symbols have any noticeable additional overhead? Or will they be any less accurate/sharp when rendering? Thanks!
... View more
06-26-2019
06:32 AM
|
0
|
1
|
1485
|
POST
|
Hi Lucas, In my sample app, loadSettings was working fine as a work around. But when I went to apply that to my primary app, it did not. I now see that in our primary app we are having to do lazy loading of a bunch of layers and we are doing a layer.load() first and then subsequently doing map.operationalLayers.insert. We are doing this so that we can insert them at specific indices so that the layer stacking is per our clients requirements. Whenever I do that though, the loadSettings seems to be ignored. Any idea on why this is doing this or a way around this? Below is a sample that loads the layer at a specific index upon a button click and demonstrates the issue... import QtQuick 2.6 import QtQuick.Controls 2.2 import Esri.ArcGISRuntime 100.5 ApplicationWindow { id: appWindow width: 800 height: 600 title: "Point Features Test" ViewpointCenter { id: viewpointStart center: Point { x: -13605359.594359245 y: 4589080.883450534 spatialReference: SpatialReference { wkid: 102100 } } targetScale: 2000 } MapView { id: mapView anchors.fill: parent focus: true Map { id: map BasemapTopographic {} initialViewpoint: viewpointStart loadSettings: LoadSettings { useAdvancedSymbology: false } } Button { id: btLoad anchors.left: parent.left anchors.top: parent.top width: 100 text: "Go" onClicked: { let facilityLayerComponent = Qt.createComponent("FacilityLayer.qml"); if(facilityLayerComponent.status === Component.Ready) { var facilityLayer = facilityLayerComponent.createObject(null, {serviceLayerId:441}); facilityLayer.featureTable.url = "https://waldo.test.mycompany.com/arcgis/rest/services/WALDO/WALDO_FACILITIES_GEO/FeatureServer/441"; facilityLayer.load(); map.operationalLayers.insert(0, facilityLayer); //map.operationalLayers.append(facilityLayer); } else { JsUtil.wLog("Error: could not create facility layer 441"); } } } } }
... View more
06-25-2019
02:12 PM
|
0
|
3
|
1485
|
POST
|
Hi Lucas, Yes! The loadSettings with useAdvancedSymbology: false worked. The symbols then started rendering. I did try printing out the request URLs but did not see any difference between using advanced symbology or not. I am printing these out though in main.cpp where we have overloaded QNetworkProxyQuery and I'm printing out query.url(). If there is a better place to print out both request and responses, let me know. I have sometimes wished I could print both but wasn't sure where to do that. In either case though (using advanced symbology or not), I do not see anything listed on the request for advancedSymbology. Here is a sample request URL... QUrl("https://waldo.test.mycompany.com/arcgis/rest/services/WALDO/WALDO_FACILITIES_GEO/FeatureServer/441/query?f=json&geometry=%7B%22xmin%22%3A-13605594.572527144%2C%22ymin%22%3A4588946.9794602823%2C%22xmax%22%3A-13605155.765008368%2C%22ymax%22%3A4589279.7948248759%7D&geometryType=esriGeometryEnvelope&inSR=3857&maxAllowableOffset=0.000000&outFields=DISPLAY_LABEL%2CDISPLAY_TYPE%2COBJECTID%2COSP_FID%2CPLACEMENT%2CWC_ID&outSR=3857&returnDistinctValues=false&returnGeometry=true&returnM=false&returnZ=true&spatialRel=esriSpatialRelEnvelopeIntersects") While it is nice that this work around solved the problem, kind of a bummer that we have to make a new build and deploy this work around to thousands of machines and until that propagates out, they can't see their point features. For those using iPads, this could takes weeks. I wish we could figure out what change started causing this. According to my backend team, there isn't anything changed that they are aware of. Do you happen to know if there is a public service out there somewhere that uses character marker symbols (ESRI or any other)? I could load that and see if it exhibits the same issue. This would at least prove it is something on our servers rather than something in runtime or our app. Is there some way to also view requests and responses on the server side to see what it is doing? Not too long ago our company started pushing Windows server patches to our machines. Could one of those trashed something with these character marker symbols? I have included the sample app I'm using to do these tests. It's super basic, just the default ESRI template and adding in one layer. Thanks. // Copyright 2019 ESRI // // All rights reserved under the copyright laws of the United States // and applicable international laws, treaties, and conventions. // // You may freely redistribute and use this sample code, with or // without modification, provided you include the original copyright // notice and use restrictions. // // See the Sample code usage restrictions document for further information. // import QtQuick 2.6 import QtQuick.Controls 2.2 import Esri.ArcGISRuntime 100.5 ApplicationWindow { id: appWindow width: 800 height: 600 title: "Point Features Test" ViewpointCenter { id: viewpointStart center: Point { x: -13163498.318208007 y: 4034290.4626104347 spatialReference: SpatialReference { wkid: 102100 } } targetScale: 20000 } // add a mapView component MapView { id: mapView anchors.fill: parent focus: true // onMousePositionChanged: { // console.log('x:'+mouse.x+', y:'+mouse.y); // var centerX = mapView.currentViewpointCenter.center.x; // var centerY = mapView.currentViewpointCenter.center.y; // console.log('centerX:'+centerX+', centerY:'+centerY); // } Map { id: map BasemapTopographic {} initialViewpoint: viewpointStart // loadSettings: LoadSettings { // useAdvancedSymbology: false // } FeatureLayer { ServiceFeatureTable { url: "https://waldo.test.mycompany.com/arcgis/rest/services/WALDO/WALDO_FACILITIES_GEO/FeatureServer/441" onLoadStatusChanged: { if(loadStatus === Enums.LoadStatusLoading) { console.log('LOAD IN PROGRESS'); } else if(loadStatus === Enums.LoadStatusLoaded) { console.log('LOADED'); } else if(loadStatus === Enums.LoadStatusFailedToLoad) { console.log('LOAD FAILED'); } } } } } } }
... View more
06-24-2019
07:01 AM
|
1
|
5
|
1485
|
POST
|
We are struggling with something. We have a Qt runtime app loading various layers and all point features stopped rendering. Our point features use "character marker" symbols. If we publish any other test layers with simple marker or picture marker symbols they render fine. Only character marker symbols are not displaying. On top of that, if we load the layers using the ArcGIS Online Map Viewer they still render fine. It is only when we try to load them in our runtime app, they don't render. We have created separate test runtime apps, as basic as they can get just using the ESRI template and loading one layer, and still the same thing. We just wanted to make sure it wasn't our existing app. Plus our existing production version of the app also stopped rendering the character marker symbols. The production app uses 100.4 and our development app uses 100.5 and we are seeing the same thing on both. They were previously rendering fine since 2018 then suddenly about 1-2 weeks ago they just stopped. Any thoughts on this? How do we troubleshoot this? Is there something on our ArcGIS servers that could have been nuked? If it is a server side issue, seems odd that they render ok when we display the layers using ArcGIS Online Map Viewer but on the other hand, multiple versions our app, different runtime versions, and even completely different apps all exhibit the same issue so seems odd that it would be a client side issue too. We are kind of out of ideas and further diagnostic tests and wondered if anyone had suggestions. Thanks.
... View more
06-18-2019
08:39 PM
|
1
|
9
|
2535
|
POST
|
I have a Qt qml based application and wondering if there is any suggested way to implement a street-view like implementation into the app? Does ESRI have any type of roadside imagery that can be used in runtime?
... View more
05-02-2019
01:21 PM
|
0
|
1
|
394
|
POST
|
Yes, thanks for the info Lucas. Surprised the width attribute was decided to be removed though. May or may not make clients disappointed it can't be adjusted. But...we'll see! Maybe it'll be fine.
... View more
04-30-2019
12:28 PM
|
0
|
1
|
371
|
POST
|
After upgrading to 100.5 I can see this in the console... FeatureLayer::selectionWidth is obsolete. Use GeoView::selectionProperties. My understanding is that this should be set at the MapView level? If so, when I try adding it there I get invalid property... MapView { SelectionProperties{ color: "yellow" width: 3
} } Is there no width property anymore?
... View more
04-29-2019
02:19 PM
|
0
|
3
|
524
|
POST
|
Just an update, 3.3.67 doesn't seem to have that window resize issue now, that I mentioned. But I am at a different office using different external monitors. Previously I was using my company's display link adapter to an external monitor and I have seen some weird things with it. Maybe it was just that. Seems fine now.
... View more
04-12-2019
07:43 AM
|
0
|
0
|
456
|
POST
|
So I can easily access my ArcGIS online account and login fine via browser. But when I open AppStudio desktop and try to sign in to the same portal, it just sits there with the wheel spinning and eventually times out. Is this a proxy issue because I'm in my company's internal network and all external traffic has to go over their proxy? In Safari the proxy is defined and works fine. Is there a way to fix this in AppStudio desktop? Thanks!
... View more
04-03-2019
07:28 AM
|
0
|
3
|
647
|
POST
|
Running Qt 5.12 on Mac with runtime 100.4. Create a blank Qt Quick QML project. Add in the import into main.qml... import Esri.ArcGISRuntime.Toolkit.Dialogs 100.4 Switch run mode to iOS and Debug or Run on iOS device and end up with... module "Esri.ArcGISRuntime.Toolkit.Dialogs" is not installed Am I missing an import somewhere or something? P.S. - no error when running on Mac. Only fails when running on iOS. Thanks!
... View more
03-28-2019
10:54 AM
|
0
|
2
|
426
|
POST
|
So...I work for a company who has tons of inventory data. We are building a QML based app. They have told me that 99% of the time, the user will want to always see all of our layers, whenever they navigate to a particular area. So, we are adding all of the FeatureLayers at app startup. There are 87 layers! Plus, there are a ton or non-spatial data tables to do relationship queries against, etc. The problem I am having is that it is taking around at least two minutes to load all those layers. Some are faster than others. But maybe 2 seconds or so for each layer and if I write to the console as each layer loads, it is sequential, about two seconds between each. I actually had to put in a sequencer thing where it doesn't attempt all 87 at the same time because still in the console it would come back loaded one after the other, about one layer every 2 seconds and once we ended up going beyond 60 seconds, I think something was timing out and the rest stopped. So I'd do 10, wait for completion, do another 10, etc. Ugh. Would decreasing the MaxRecordCount on each layer help this? Is it trying to load the first 1000 features for each layer at app startup? Is there some other way to multi-thread and get them to load faster? Any suggestions on how to get the app loaded faster is appreciated. Thanks!
... View more
09-27-2018
02:50 PM
|
0
|
1
|
386
|
POST
|
In this case...we are going to serve up files on portal to be downloaded within a runtime application. Our portal of course is secured. To access it we do not want our users to have to have named users accounts on the portal. They should be able to authenticate into our runtime app (via a different authorization mechanism required by my company) and once they do, be able to access the downloads from portal. This then made sense to implement OAuth as an app login to portal. Unfortunately at my company, we have always used IWA on all our portals. This usually works well because we all have Windows PCs but as soon as we started testing on Macbooks and iPads, of course we ran into problems. We just didn't realize that even though you might have OAuth setup on the portal and in your runtime app, if IWA is turned on, OAuth is not enough to give you access. All is good now. IWA is turned off. We will leave it so for these portals facilitating this work flow. Thanks for the help!
... View more
08-23-2018
06:48 AM
|
0
|
0
|
805
|
POST
|
With IWA turned on, OAuth in place, and AuthenticationView in place, yes it did prompt me. I had assumed putting the OAuth in place would negate the need for the AuthenticationView prompt but I guess not. Per Lucas's suggestion, removing the AuthenticationView code (but leaving OAuth) removed the prompt, but still I would get an authentication error. Finally with IWA turned off on the server, and OAuth in place on the client, it successfully authenticates.
... View more
08-22-2018
11:16 AM
|
0
|
0
|
805
|
POST
|
I had my colleage turn off IWA on that portal machine this morning and OAuth works perfectly.
... View more
08-21-2018
10:22 AM
|
0
|
4
|
805
|
Title | Kudos | Posted |
---|---|---|
1 | 06-24-2019 07:01 AM | |
1 | 06-18-2019 08:39 PM |
Online Status |
Offline
|
Date Last Visited |
08-24-2022
02:26 PM
|