POST
|
The MapViewCameraChangedEvent catches the event when the map is moved. This can be used when in Fixed Cursor Mode on the Stereo Map. Unfortunately, the camera only returns the x and y, not the z.
... View more
06-10-2025
01:53 AM
|
0
|
0
|
258
|
POST
|
Unfortunately, problem is not solved yet. The stereo interpreter is now working faster and the error appears about every hour. We have migrated the application from ArcGIS to ArcGIS Pro. We did exactly the same thing in ArcGIS, and there was no error! What makes things worse, is the fact that after having restarted ArcGIS Pro after the error, the buttons in the ribbon only get activated after about 20 minutes. So as a workaround, we recreate the .aprx. I think that this is a bug that has to be fixed by ESRI staff. I could solve this problem differently by creating a relationship between the square FC and the point FC instead of querying the point FC.
... View more
06-05-2025
12:20 AM
|
0
|
1
|
549
|
POST
|
Our geodatabase is a file geodatabase on a local disk. I've talked to our stereo interpreter. The error now only occurs about once per day, not every hour.
... View more
05-19-2025
11:42 PM
|
0
|
0
|
784
|
POST
|
Thank you, I will do this! I will let you know in a couple of days if the stereo interpreter gets less errors.
... View more
05-15-2025
04:20 AM
|
0
|
1
|
890
|
POST
|
We are doing stereo aerial image interpretation in ImageAnalyst. Our stereo interpreter receives the following error message about every hour: A geodatabase exception has occurred. This happens in the following function, when executing featLayer.Search(queryFilter): public static async Task<Feature> GetFeatureAsync(FeatureLayer featLayer, string whereClause)
{
try
{
Feature feature = await QueuedTask.Run(() =>
{
// Query the FC
QueryFilter queryFilter = new QueryFilter();
queryFilter.WhereClause = whereClause;
using RowCursor rowCursor = featLayer.Search(queryFilter);
if (rowCursor.MoveNext())
{
// Get feature
Row row = rowCursor.Current;
feature = row as Feature;
return feature;
}
return null;
});
return feature;
}
catch (Exception ex)
{
ProPopupMessage.Error(MiscUtils.GetMethodName(), ex.Message);
return null;
}
} I would like to explain a bit in more detail what the stereo interpreter is doing. He is recording woody plant coverage in every square of a biotope object: The workflow looks as follows: He selects a square on the stereo map In the code, the ObjectID of this square (polygon) is retrieved. The ObjectID corresponds to the ID of the point feature. The above function (GetFeatureAsync()) is called to get the corresponding point feature. The whereClause is "ID=" + objectID. After the error has occurred, ArcGIS Pro has to be restarted because the same errors occurs again and again when selecting a polygon. I doublechecked, the objectID really exists when the error occurs. What could be the cause of the problem? Should I try to search the feature class instead of the feature layer?
... View more
05-15-2025
03:49 AM
|
0
|
6
|
915
|
POST
|
This is the code to get the cursor position (x, y, and z) using the Windows API: System.Drawing.Point cursorPoint = System.Windows.Forms.Cursor.Position;
System.Windows.Point screenPoint = new System.Windows.Point(cursorPoint.X, cursorPoint.Y);
var mapPoint = await QueuedTask.Run(() =>
{
// Convert to map position
return MapView.Active.ScreenToMap(screenPoint);
});
... View more
03-24-2025
02:42 AM
|
0
|
0
|
594
|
POST
|
I found a solution to the problem: I declare an internal class member variable (CursorPoint) inside my MapTool which I can access from outside: internal class ToolAddRasterPoint : MapTool
{
internal MapPoint CursorPoint{ get; set; }
public ToolAddRasterPoint()
{
IsSketchTool = true;
UseSnapping = false;
SketchType = SketchGeometryType.Point;
MyModule.ToolAddRasterPoint = this; // to access from outside
}
protected override async void OnToolMouseMove(MapViewMouseEventArgs e)
{
await QueuedTask.Run(() =>
{
CursorPoint = MapView.Active.ClientToMap(e.ClientPoint);
});
}
}
... View more
03-20-2025
02:56 AM
|
0
|
0
|
652
|
POST
|
I tried the OnToolMouseMoveEvent in a MapTool again (see above), and now (in ArcGIS Pro 3.4), it catches the event when the z-value of the cursor changes!
... View more
03-19-2025
02:00 AM
|
0
|
0
|
453
|
POST
|
Hi Selim, I want to do the following: 1. The user clicks on a keyboard shortcut 2. This keyboard shortcut is linked to a command, in which I programmatically get the current cursor position and create a MapPoint Within a map tool, this looks as follows: 1. The user clicks on a keyboard shortcut 2. This keyboard shortcut is linked to a command, in which I programmatically activate a MapTool 3. The user has to click again on the Stereo Map to get the cursor position --> This is one click more. The users of my applications perform these steps about 500 times a day, so these are 500 clicks more...
... View more
03-19-2025
01:38 AM
|
0
|
0
|
693
|
POST
|
Hi Selim, thanks for your reply! I want to display the current object height (height above sea level minus DTM height) in a text box inside a dockpane, when the user moves the mouse (x,y and z) on the stereo map. This could be achieved in ArcObjects using the event OnCurrentZChanged (see above). Unfortunately, MapViewCameraChangedEvent does not catch the event when the mouse (x,y,z) moves on the map (or stereo map) , it only catches the event when the map is moved.
... View more
03-19-2025
01:32 AM
|
0
|
1
|
459
|
POST
|
I can get the current cursor position inside a Map Tool as follows: protected override async Task HandleMouseDownAsync(MapViewMouseButtonEventArgs e)
{
// Get cursor point
MapPoint mapPoint = await QueuedTask.Run(() =>
{
return ActiveMapView.ClientToMap(e.ClientPoint);
});
} However, I would like to get the cursor position outside of a MapTool. Does anyone know how to handle this? I've already posted another question: https://community.esri.com/t5/arcgis-pro-sdk-questions/how-to-catch-event-when-z-changes/m-p/1339114#M10565 Thanks, Barbara
... View more
03-18-2025
05:01 AM
|
0
|
5
|
751
|
POST
|
In the GUI I can set an image service layer selectable or not. However, there is no such method in the SDK: ImageServiceLayer.SetSelectable(selectable); How can I achieve this?
... View more
01-08-2025
06:14 AM
|
0
|
2
|
456
|
POST
|
Hi, thank you for your reply! Unfortunately, this doesn't work. The following method returns null: FrameworkApplication.GetPlugInWrapper("esri_datasourcesraster_stereoCursorModeFixed");
... View more
01-08-2025
12:10 AM
|
0
|
1
|
562
|
POST
|
As this command is not in the ribbon, I don't know how I can get the id. I assumed that it is "esri_datasourcesraster_toggleFixedCursorModeButton", but it isn't. Toggle Fixed Cursor Mode is used for stereo mapping.
... View more
01-07-2025
04:42 AM
|
0
|
3
|
611
|
Title | Kudos | Posted |
---|---|---|
5 | 11-21-2024 12:58 AM | |
1 | 04-02-2020 03:48 AM | |
1 | 09-20-2020 02:31 AM | |
13 | 03-06-2024 02:24 AM | |
2 | 02-28-2024 05:37 AM |
Online Status |
Offline
|
Date Last Visited |
06-10-2025
01:50 AM
|