|
POST
|
@KaiBawcom the conversion from ECEF to LLA will be giving you a height above sea level so the correct mode for an aircraft flying in the air is ABSOLUTE. For an aircraft if you use RELATIVE and fly over a mountain, then the path followed will look very odd and would be completely incorrect. As you have seen if you have an asset on the ground and there is an inaccuracy in either the calculated altitude or indeed the terrain data, it is possible you end up with a location disappearing underground. Although it might not be desirable for your application this is expected behaviour as we also need to support sub-surface items such as the location of things underground, or maybe submarines beneath the water for example. You've come up with one solution to check the height of the terrain and fudge the altitude, but this sounds messy and may not scale very well once you've got many thousands of items on your display. If you've only got a few items it might be okay, but we wary of this solution. Another option you could consider if you have a way of detecting if something is on the ground (a vehicle or an aircraft which you know is landed), is to use DRAPED_BILLBOARDED. This basically ignores the Z value and just fixes an item to the ground regardless of the terrain. Without fully understanding your application its hard to give you a definite solution, but hopefully I've helped with telling you about the options.
... View more
10-26-2021
11:30 AM
|
1
|
1
|
2417
|
|
POST
|
@HammadMuddassir the local server route I'm told will work for you. The easiest way if you are always using the same data source is to create map package (with the correct settings so the data is not included in the map package). You can then start up a Local Server instance and access the service via Local Server. Another approach which again uses local server will be to use the EnterpriseGeodatabaseWorkspace class for SDE connections. Whilst this workflow is supported currently, it isn't current best practice and I can't guarantee it won't be deprecated in the future. Accessing data via a service published in ArcGIS Server has a number of advantages compared to using SDE connections: - It scales better for larger implementations - ArcGIS Server Feature Services gives you symbol styles for the data - Its more secure to use ArcGIS Server rather than allowing direct database access - You have access to offline workflows and more robust editing workflows
... View more
10-26-2021
02:38 AM
|
0
|
0
|
2060
|
|
POST
|
Making a copy of a featureLayer and using in 2 controls is likely to be the cause of your issue here. I would refactor your code so that when you open a shapefile for both the MapView and the SceneView you create a separate ShapefileFeatureTable and a FeatureLayer. These resources are not designed to be shared be used in multiple views. Hopefully you are not editing the shapefile in your app, as I suspect this might cause you issue too. When you close your application, you will need to dispose the MapView and the SceneView objects like this for example: @Override
public void stop() {
if (mapView != null) {
mapView.dispose();
}
} I would also look at your workflows and consider if you really need to be using shapefiles. They are a very old and restrictive way of storing spatial data. There are much better workflows available.
... View more
10-25-2021
06:39 AM
|
0
|
1
|
1700
|
|
POST
|
@KaiBawcom it may help if you looked at how Z values work with the difference surface placement modes which are explained in this sample. I suspect you are using the ABSOLUTE surface placement mode which you can think of as height above sea level which is exactly what you should be using for tracking aircraft elevation. This does however mean that if your surface is 20m high and you place your aircraft 10m high, it disappears beneath the terrain; this is as expected. If you want to have an elevation which is a number of meters above the terrain then you can consider using the RELATIVE surface placement mode. Does this help?
... View more
10-25-2021
02:36 AM
|
1
|
1
|
2436
|
|
POST
|
@gokulthakare can you give some more information on how you have achieved this crash? Can you share some code which uses a public service which demonstrates the issue? Can you also share details of the data you are using and if this is coming from a feature service, the version of the server you are using? You should know that 100.4.0 of ArcGIS Runtime is a very old release and the current version is 100.12.0. Are you seeing the issue with the latest version?
... View more
10-25-2021
01:55 AM
|
0
|
1
|
1704
|
|
POST
|
There is possibly a way of achieving this using the Local Server product which is part of ArcGIS Runtime. I am finding out if this is still a supported workflow and will report back.
... View more
10-25-2021
01:27 AM
|
0
|
0
|
2070
|
|
POST
|
The usual way of accessing the data is via a feature service which is published using ArcGIS Server. This gives you the rest endpoints for accessing the data which we conveniently have API for accessing. This is an example of how you would access the data via a feature service: https://github.com/Esri/arcgis-runtime-samples-java/tree/main/feature_layers/feature-layer-feature-service There are other workflows available, but its probably best if you explain exactly what you are trying to achieve and we can give you some ideas of the best solution.
... View more
10-18-2021
06:51 AM
|
0
|
1
|
2112
|
|
POST
|
There isn't a way of forcing it to use software rendering. When we are creating a DirectX rendering context, we query the capabilities of the system and if it reports there is a supported graphics card we use it. In this case the system is reporting DirectX hardware support but I wonder if there is a driver issue with this virtual environment. This is a list of the virtual environments we test with: https://developers.arcgis.com/java/reference/system-requirements/#vdi-requirements Out of interest have you tried Parallels which is alternative product? I will take a look at this, but it might not be easy to fix if the DirectX support is not adequate.
... View more
10-18-2021
06:41 AM
|
0
|
2
|
3664
|
|
POST
|
For the line length there is a sample which shows the use of the method. https://github.com/Esri/arcgis-runtime-samples-java/tree/main/geometry/geodesic-operations
... View more
10-14-2021
12:45 PM
|
0
|
0
|
852
|
|
POST
|
Have a look at https://developers.arcgis.com/java/api-reference/reference/com/esri/arcgisruntime/geometry/GeometryEngine.html#lengthGeodetic(com.esri.arcgisruntime.geometry.Geometry,com.esri.arcgisruntime.geometry.LinearUnit,com.esri.arcgisruntime.geometry.GeodeticCurveType) And https://developers.arcgis.com/java/api-reference/reference/com/esri/arcgisruntime/geometry/GeometryEngine.html#areaGeodetic(com.esri.arcgisruntime.geometry.Geometry,com.esri.arcgisruntime.geometry.AreaUnit,com.esri.arcgisruntime.geometry.GeodeticCurveType) This should answer your question.
... View more
10-14-2021
12:39 PM
|
0
|
0
|
852
|
|
POST
|
I've not used VMware Fusion before, but we do test with other virtual environments as in our system requirements: https://developers.arcgis.com/java/reference/system-requirements/ When a runtime app starts up, in the background we create a rendering context for the platform you are running it on. On Mac and Linux this will be an OpenGL context (this will change to Metal on Mac in a future release) and on Windows this will be DirectX. Looking at the crash dump, it has certainly tried to create the context and is making its initial draw to the rending context, but this has failed. I've seen this happen when there is something wrong with the DirectX 11 drivers. The dxdiag tool should tell you the level of DirectX support you have. ArcGIS Runtime SDK is designed to use DirectX11 WARP if there is no graphics card. Often there is no graphics card on VM environments, so this allows for software rendering. The issue could be that VMWare Fusion has an issue supporting some of the DirectX functionality we are calling or the drivers need updating. Another thing you could check is if the DirectX shader files we supply with the SDK are present and correct as in the deployment section: https://developers.arcgis.com/java/license-and-deployment/deployment/ The shaders will be in the jniLibs/directx directory. These are needed for running the apps on Windows platforms.
... View more
10-14-2021
05:37 AM
|
0
|
0
|
3702
|
|
POST
|
@KarthiSivalingam you say it reached 1.3GB, but was it a stable 1.3Gb or was it still going up? Are you able to reproduce the crash in your own environment? Memory management of a Java application isn't like a C++ app where resources are freed up as soon as they are deallocated. In a Java app, resources are only freed up when garbage collection happens. This is something which is controlled by the JVM and cannot be predicted. Garbage collection is an expensive operation, so the JVM may not run it if it feels that system resources are not running out. If you can get me the console output from the crash and any logs I can look at this. When you say "crash", did the the JVM actually crash?
... View more
10-05-2021
03:13 AM
|
0
|
1
|
1716
|
|
POST
|
Just an update on this, I've had the modified version of your app running for about 4 hours now and memory usage has been very stable at about 670mb and isn't going up (it crept up initially, but stabilised). This app has been hitting the toggle button every 250ms for the entire time. I'll leave it running for a bit longer, but to investigate this further I'm going to need some more information on crash you've seen. Console output / crash dump and any details about how you've configured the JVM if you've made any changes from default.
... View more
09-29-2021
07:50 AM
|
0
|
1
|
1729
|
|
POST
|
@DaveWhitla if you don't have a support agreement, you can report the issue here. Current known issues which are likely to cause issues are always listed in our release notes.
... View more
09-29-2021
07:37 AM
|
0
|
2
|
1691
|
|
POST
|
@KarthiSivalingam can you send me the console output you are getting when the application crashes? It would help me to see the details of this. I'm currently running a modified version of your app which is hitting that toggle button 4 times a second to see if I'm able reproduce the crash. I've not managed to get it to crash yet (after 2 hours), but I'm seeing the memory usage of the JVM go up very slightly, but given the allocation and deallocation of resources happening in the background I'd expect this. When resources are deallocated in Java, you won't see an immediate drop in memory usage; this is managed by the garbage collection in the JVM. The JVM should free up resources eventually. I've had a quick look at your code and I can't see any issues with what you are doing here. Send me some more details of the crash and I'll look into this. It certainly shouldn't be crashing.
... View more
09-29-2021
05:51 AM
|
0
|
0
|
1732
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 08-13-2024 05:17 AM | |
| 1 | 07-10-2024 01:50 AM | |
| 1 | 04-22-2024 01:21 AM | |
| 1 | 04-18-2024 01:41 AM | |
| 1 | 12-05-2023 08:50 AM |
| Online Status |
Offline
|
| Date Last Visited |
03-12-2025
07:13 PM
|