|
POST
|
Hi Wolfgang, I pulled your changes from the last commit "Simplified code to manage DataGrid control", but I cannot see any major changes to the view model acting as a view pane. Would you be so kind and validate if you pushed the changes you made to the public repository or maybe it is just committed to your local one?
... View more
11-14-2016
02:03 PM
|
0
|
1
|
2989
|
|
POST
|
There is a need for using custom panes connected to the map view like the attribute table is already doing.
... View more
11-07-2016
05:40 AM
|
0
|
4
|
2989
|
|
IDEA
|
Any timeframe yet? Come on we want some Streaming Quartz release.
... View more
09-20-2016
08:09 AM
|
2
|
0
|
4160
|
|
IDEA
|
Right now, only the JavaScript API allows the usage of a Streaming Layer (e.g. connecting to the GeoEvent Processor).
... View more
03-13-2014
08:55 AM
|
19
|
16
|
6780
|
|
POST
|
Here is an updated sample. The reference to the data source was corrupted.
... View more
05-17-2013
06:16 AM
|
0
|
0
|
866
|
|
POST
|
It would be nice, if the PDB's were shipped or maybe uploaded to the Esri Symbol Server. We have seen some C++ exceptions which were thrown by the ArcGIS Runtime binaries. For now, it is nearly impossible to narrow the unexpected behaviour down. We are creating dump files for the application crashes and attach those to the bug reports we are creating. Having the PDB's we were able to create better technical feedback and only upload the WinDbg analyze output. Thanks in advance
... View more
05-02-2013
04:58 AM
|
0
|
1
|
2925
|
|
POST
|
Just open the workspace by using the path to the geodatabase and then enumerate through the containing datasets. The code below iterates through all feature datasets and their containing feature classes. If your feature classes are not within a feature dataset you have to modify the third line by using a type of esriDTFeatureClass for getting those.
var workspaceFactory = (IWorkspaceFactory) Activator.CreateInstance(typeof(FileGDBWorkspaceFactoryClass));
var featureWorkspace = workspaceFactory.OpenFromFile(@"C:\data\OpenStreetMap\Germany.gdb", 0);
var datasets = featureWorkspace.Datasets[esriDatasetType.esriDTFeatureDataset];
datasets.Reset();
IDataset dataset;
while (null != (dataset = datasets.Next()))
{
var featureDataset = (IFeatureDataset) dataset;
var featureSubsets = featureDataset.Subsets;
IDataset subset;
while (null != (subset = featureSubsets.Next()))
{
if (esriDatasetType.esriDTFeatureClass == subset.Type)
{
var featureClass = (IFeatureClass) subset;
}
}
}
Happy coding
... View more
01-22-2013
11:37 PM
|
0
|
0
|
1284
|
|
POST
|
Thank you for clarification. I was just confused because the WPF API allows creating an ArcGISLocalDynamicMapServiceLayer passing an instance of a local map service to the constructor. It would be nice if the Java API uses stronger types e.g. MapPackage(java.io.File path) for paths to mpk's and URL for REST end points.
... View more
01-22-2013
11:06 PM
|
0
|
0
|
723
|
|
POST
|
Would someone be so kind and explain the usage of the implementation of ArcGISLocalDynamicMapServiceLayer? If you want to use dynamic workspaces with the ArcGIS Runtime SDK for Java 10.1.1 you have to use the ArcGISDynamicMapServiceLayer implementation e.g. for adding shapefiles or local geodatabases. Trying to use an instance of ArcGISLocalDynamicMapServiceLayer will fail. No exception is be thrown, instead the LayerStatus is ERRORED and Layer::getInitializationError returns "WARNING: The filename, directory name, or volume label syntax is incorrect" after the layer initialize complete event was fired. ArcGISLocalDynamicMapServiceLayer extends directly from ArcGISDynamicMapServiceLayer, but behaves different using dynamic workspaces. Is it correct that ArcGISLocalDynamicMapServiceLayer is only used for dynamic layers directly pointing to an existing map package? When I was using ArcGIS Runtime SDK for WPF 10.1 using an instance of ArcGISLocalDynamicMapServiceLayer for dynamic workspaces worked as expected. But you had to specify a LocalMapServer instance not the corresponding URL.
arcGisLocalDynamicMapServiceLayer = new ArcGISLocalDynamicMapServiceLayer(localMapService)
Works:
private List<ArcGISDynamicMapServiceLayer> createLocalDynamicLayers(LocalMapService localMapService, WorkspaceInfoSet dynamicWorkspaces) {
List<ArcGISDynamicMapServiceLayer> localLayerList = new ArrayList<>(dynamicWorkspaces.size());
for (final WorkspaceInfo dynamicWorkspace : dynamicWorkspaces) {
ArcGISDynamicMapServiceLayer mapServiceLayer = new ArcGISDynamicMapServiceLayer(localMapService.getUrlMapService());
mapServiceLayer.addLayerInitializeCompleteListener(new LayerInitializeCompleteListener() {
@Override
public void layerInitializeComplete(LayerInitializeCompleteEvent e) {
logger.info(bundle.getString("LocalDataLoader.info.localDynamicLayerInitialized"));
ArcGISDynamicMapServiceLayer localDynamicLayer = (ArcGISDynamicMapServiceLayer) e.getLayer();
LayerStatus status = localDynamicLayer.getStatus();
if (LayerStatus.INITIALIZED != status) {
logger.severe(String.format(bundle.getString("LocalDataLoader.error.localDynamicLayerUninitialized"), localDynamicLayer.getUrl()));
String initializationError = localDynamicLayer.getInitializationError();
logger.warning(initializationError);
return;
}
Fails:
private List<ArcGISDynamicMapServiceLayer> createLocalDynamicLayers(LocalMapService localMapService, WorkspaceInfoSet dynamicWorkspaces) {
List<ArcGISDynamicMapServiceLayer> localLayerList = new ArrayList<>(dynamicWorkspaces.size());
for (final WorkspaceInfo dynamicWorkspace : dynamicWorkspaces) {
ArcGISDynamicMapServiceLayer mapServiceLayer = new ArcGISLocalDynamicMapServiceLayer(localMapService.getUrlMapService());
mapServiceLayer.addLayerInitializeCompleteListener(new LayerInitializeCompleteListener() {
@Override
public void layerInitializeComplete(LayerInitializeCompleteEvent e) {
logger.info(bundle.getString("LocalDataLoader.info.localDynamicLayerInitialized"));
ArcGISDynamicMapServiceLayer localDynamicLayer = (ArcGISDynamicMapServiceLayer) e.getLayer();
LayerStatus status = localDynamicLayer.getStatus();
if (LayerStatus.INITIALIZED != status) {
logger.severe(String.format(bundle.getString("LocalDataLoader.error.localDynamicLayerUninitialized"), localDynamicLayer.getUrl()));
String initializationError = localDynamicLayer.getInitializationError();
logger.warning(initializationError);
return;
}
Thanks in advance
... View more
01-21-2013
11:16 AM
|
0
|
2
|
4115
|
|
POST
|
If you have a valid locator instance you should iterate through the reference tables. Each reference table has a name property. This name instance should implement IDatasetName. Using IDatasetName you have the information of the dataset and its workspace and you can open the dataset if necessary. Keep in mind, this will throw an exception if the dataset is not accessible.
internal static void WriteReferenceTableNamesToConsole(ILocator locator)
{
var addressLocator = locator as IReferenceDataTables;
if (null == addressLocator)
return;
var referenceDataTables = addressLocator.Tables;
IReferenceDataTable referenceDataTable;
while (null != (referenceDataTable = referenceDataTables.Next()))
{
var tableName = (IDatasetName) referenceDataTable.Name;
Console.WriteLine(tableName.WorkspaceName.PathName + Environment.NewLine + tableName.Name);
try
{
var referenceTable = (IFeatureClass) ((IName) tableName).Open();
// ...
}
catch (COMException)
{
Console.Error.WriteLine(string.Format("Reference data '{0}' for locator '{1}' not accessible!", tableName, locator.Name));
}
}
}
Regards from Germany
... View more
01-11-2013
08:10 AM
|
0
|
0
|
504
|
|
POST
|
Regarding to How-to-use-dynamic-workspaces-correctly. Adding a shapefile should work with the next release. Happily announced here: Coming up in ArcGIS Runtime SDKs 10.1.1 a lot.
... View more
11-04-2012
11:25 PM
|
0
|
0
|
500
|
|
POST
|
No, I am not using a VM. But I was able to narrow this down. The behaviour is reproducible by using the same JOGL libs like the ArcGIS Runtime. The current release seems to use JOGL v2.0-rc5. If I download the necessary libs for linux 64 Bit (gluegen-rt, gluegen-all-natives, jogl-all, jogl-all-natives) from JOGAMP Deployment v2.0-rc5 from 19-Dec-2011 the sample JOGL application fails like mentioned above. If I am using the current deployment v2.0-rc10 or the deployment v2.0-rc6 from 25-April-2012 it just works. The real magic happens around christmas. 🙂 When using the sample JOGL application by referencing the "Patched ArcGIS Runtime libs" with the four JOGL v2.0-rc6 libs the sample works too. But, trying to start a map application with this self patched ArcGIS Runtime libs results in the following OpenGL Error: Shader language version 2.0 or greater is required. 😞 VERSION:2.1 Mesa 8.0.2 RENDERER:Mesa DRI Mobile Intel® GM45 Express Chipset VENDOR:Tungsten Graphics, Inc SHADER LANGUAGE:1.20 Maybe, this is the reason for the strange exception mentioned above. Is there any plan to upgrade to a newer version of JOGL?
... View more
08-22-2012
01:19 PM
|
0
|
0
|
704
|
|
POST
|
If I start a simple map application the Runtime tries to initialize the OpenGL routines by using JOGL. But JOGL fails with the following exception. Info: XInitThreads() called for concurrent Thread support javax.media.opengl.GLException: X11GLXDrawableFactory - Could not initialize shared resources for :0.0 See JOGL Bugzilla (Same exception) https://jogamp.org/bugzilla/show_bug.cgi?id=576 A simple JOGL sample by using only the Runtime delivered JOGL libraries misbehaves the same way. Is this a known issue?
... View more
08-21-2012
12:39 AM
|
0
|
2
|
3143
|
|
POST
|
I modified the "Dynamic Layers - Simple Renderer Sample" by using a LocalMapService and added a new WorkspaceInfo instance as dynamic workspace. After modifying the data source by using DynamicLayerInfo::setLayerSource and refreshing the layer by ArcGISDynamicMapServiceLayer::refresh, an EsriServiceException "Requested an image but received content type text. Either the token used to access this server has expired or the parameters of this request are invalid." occurs. The workspace is a copy of the unpacked usa.gdb from the package folder. It would be nice to have a sample showing how to use dynamic workspaces. Thanks in advance. Modifed code: private WorkspaceInfo workspaceInfo; private JMap createMap() { ... // Add a new workspace LocalMapService mapService = new LocalMapService(getPathSampleData() + "MPKs/USCitiesStates.mpk"); mapService.setEnableDynamicLayers(true); WorkspaceInfoSet dynamicWorkspaces = mapService.getDynamicWorkspaces(); workspaceInfo = new WorkspaceInfo("WORKSPACE", WorkspaceInfo.WorkspaceFactoryType.FILE_GDB, "DATABASE=C:/data/arcgis/USA/usa.gdb"); dynamicWorkspaces.add(workspaceInfo); mapService.start(); dynamicLayer = new ArcGISDynamicMapServiceLayer(mapService.getUrlMapService()); ... } private void render(Renderer<Graphic> renderer, int layerId) { // Create new drawing info from our renderer, with set transparency DrawingInfo drawingInfo = new DrawingInfo(renderer, TRANSPARENCY); // Get the layerInfo from the dynamic layer and set the drawing info DynamicLayerInfoCollection layerInfos = dynamicLayer.getDynamicLayerInfos(); DynamicLayerInfo layerInfo = layerInfos.get(layerId); layerInfo.setDrawingInfo(drawingInfo); TableDataSource tableDataSource = new TableDataSource(); tableDataSource.setWorkspaceId(workspaceInfo.getId()); tableDataSource.setDataSourceName("Cities"); LayerDataSource layerDataSource = new LayerDataSource(); layerDataSource.setDataSource(tableDataSource); layerInfo.setLayerSource(layerDataSource); // Refresh the layer dynamicLayer.refresh(); }
... View more
08-03-2012
11:10 AM
|
0
|
8
|
6881
|
|
POST
|
As far as I can judge it, you need to initialize (starts the local server and so on) the layer first. Otherwise the layer instance is useless. See code snippet below. @Test public void addLocalFeatureLayer() throws InterruptedException { final Lock lock = new ReentrantLock(); lock.lock(); try { final Condition condition = lock.newCondition(); final ArcGISLocalFeatureLayer layer = new ArcGISLocalFeatureLayer(mapPackagePath, "Germany"); layer.addLayerInitializeCompleteListener(new LayerInitializeCompleteListener() { @Override public void layerInitializeComplete(LayerInitializeCompleteEvent e) { lock.lock(); try { assertTrue("The local layer must have a valid URL!", null != layer.getUrl()); Type geometryType = layer.getGeometryType(); assertTrue("The geometry type is not valid!", Geometry.Type.Polygon == geometryType); } finally { condition.signal(); lock.unlock(); } } }); layer.initializeAsync(); condition.await(); } finally { lock.unlock(); } }
... View more
05-25-2012
04:56 AM
|
0
|
0
|
583
|
| Title | Kudos | Posted |
|---|---|---|
| 1 | 05-22-2025 04:30 AM | |
| 3 | 09-18-2024 11:29 AM | |
| 1 | 07-30-2024 07:55 AM | |
| 1 | 03-13-2024 09:41 AM | |
| 1 | 03-13-2024 10:42 AM |
| Online Status |
Offline
|
| Date Last Visited |
12-02-2025
02:29 AM
|