POST
|
Well, finally I could not edit the Bézier curve with the IElementEditVertices and the ISelectionTracker classes, so I have to develope my custom edit class. I have drawn every control vertex and every tangent line of the curve and then capture the mouse down position with a IHitTest class. Then, with the point and the index of the vertex, I have used a BezierMovePointFeedbackClass to help the user edit the curve.
... View more
09-20-2011
12:14 AM
|
0
|
0
|
463
|
POST
|
Thanks for your answer Sean. I´m developing an application in ArcGIS Engine 9.3.1 and I have to allow the user to draw figures over maps and then modify them. The figures can be any annotation the user want to show in a map (points, polylines, polygons, text and polylines with text along it), for example a forest fire, an accident, etc. I cannot use the Editor, because it is a desktop object, but thanks to your post I realized I can use IElementVertices and ISelectionTracker. Unfortunately it doesn´t work (I don´t know why because with polylines works perfectly) with Bezier curves as my text with polyline is... My code is like this: public override void OnClick() { try { m_HitElement = ((IGraphicsContainerSelect)AxMapControl1.Map).SelectedElement(0); if (m_HitElement is IGroupElement) { m_EditVertices = (IElementEditVertices) IGroupElement)m_HitElement).get_Element(0); } else { m_EditVertices = (IElementEditVertices)m_HitElement; } m_HitElement.Activate((IDisplay)AxMapControl1.ActiveView.ScreenDisplay); m_EditVertices.MovingVertices = true; m_SelectionTracker = m_EditVertices.GetMoveVerticesSelectionTracker(); m_SelectionTracker.Display = AxMapControl1.ActiveView.ScreenDisplay; m_SelectionTracker.ShowHandles = true; AxMapControl1.ActiveView.Refresh(); } catch (Exception Err) { } } public override void OnMouseUp(int Button, int Shift, int X, int Y) { try { m_SelectionTracker.OnMouseUp(Button, Shift, X, Y); m_HitElement.Geometry = m_SelectionTracker.Geometry; AxMapControl1.ActiveView.GraphicsContainer.UpdateElement(m_HitElement); AxMapControl1.ActiveView.Refresh(); } catch (Exception Err) { } } Thanks again Víctor Aparicio
... View more
09-07-2011
11:16 PM
|
0
|
0
|
463
|
POST
|
I need to edit a Bézier curve Element with a text along it and I wonder if there is any sketch class or command like the ArcMap´s Edit vertices command. I have tried with a BezierMovePointFeedbackClass but the Start method needs a vertex index like parameter and I can get only the first vertex of the curve with a HitTest object. Any ideas??? Thanks in advance!
... View more
09-06-2011
09:56 PM
|
0
|
4
|
670
|
POST
|
I realized that my problem was caused because the map had not finished refreshing the annotation drawphase, so I solved it with a flag in the axMapControl OnAfterDraw
... View more
08-21-2011
10:18 PM
|
0
|
0
|
407
|
POST
|
I have the same problem. When I try to export an image of the active view after a refresh, I have the COMException that says the data is not yet available. Did you solve the problem?? Thanks a lot!
... View more
08-16-2011
01:09 AM
|
0
|
0
|
407
|
POST
|
Hello, This is the firs time I have to work with a WFS (I have to connect my app to a WFS in ArcGIS server) and I found the IWFSServer Interface. I use this code to get the capabilities xml: IWFSServer pWFSServer = new WFSServerClass(); string url = @"http://server/ArcGIS/services/map/MapServer/WFSServer"; pWFSServer.SetParameter("URL", url); string respuesta = pWFSServer.GetData(esriWFSHttpVerb.esriWFSGet, "getcapabilities"); and I get this XML: <ows:ExceptionReport version='1.1.0' language='en' xmlns:ows='http://www.opengis.net/ows'><ows:Exception exceptionCode='NoApplicableCode'><ows:ExceptionText>Xml Parsing failed. Reason:Invalid at the top level of the document. Linepos:1 Source:??.</ows:ExceptionText></ows:Exception></ows:ExceptionReport> When I get the capabilities with IE Explorer or Firefox I get a correct XML, so I don´t know if I´m doing something wrong. Sorry for my ignorance!Thanks a lot!
... View more
05-18-2011
10:37 PM
|
0
|
0
|
553
|
POST
|
Hello, I created a WMSLayer from a WMS and I took the maximum and minimum scale of the layer´s properties. But, if I calculate that scale taking the maximum and minimum scaleHint of the WMS Capabilities I get a different result. Does anybody know the reason? Maybe the pixel size taken to calculate the scale? Thank you!
... View more
05-11-2011
01:03 AM
|
0
|
0
|
489
|
POST
|
I have the same problem... I need to catch the event when layer´s symbology changes. It fires the OnViewRefresh, but I have to isolate it from other issues, like a map movement o a map re-scale.
... View more
04-06-2011
11:26 PM
|
0
|
0
|
208
|
POST
|
Hi! Has anyone used the NewTextFeedBack class? If you read the description in the table of the classes that implement the IDisplayFeedback, it says that it is used to move a text display feedback object, just the same as the MoveTextFeedback does. Also, if you read the description inside the INewTextFeedback interface help, it says that is used to rotate a text feedback, the same as the IRotateTextFeedback... I have found no samples about how this class works. Anyone has any ideas??? Is there a bug in the descriptions of the class? Thanks in advance!
... View more
09-08-2010
03:58 AM
|
0
|
0
|
652
|
POST
|
If you're setting your own symbol for the tool then you'll need to set the ROP2 property to NotXorPen. symbol.ROP2 = esriRasterOpCode.esriROPNotXOrPen It works perfectly. Thank you very much for your help!
... View more
08-17-2010
12:57 AM
|
0
|
0
|
464
|
POST
|
Hi! I have to develope a tool for drawing polylines in C# for ArcGis Engine and i´m using INewLineFeedback interface. I have no problem with the start and end point, but I don´t know how to use the MoveTo method correctly in the MouseMove Event. This is my code: if (m_pNewLineFeedback != null) { IPoint pPoint = pActiveView.ScreenDisplay.DisplayTransformation.ToMapPoint(X, Y); m_pNewLineFeedback.MoveTo(pPoint); } It draws a line when the mouse moves, but I don´t know how to remove the lines it draws before. Any ideas?? Thank you very much in advance!
... View more
08-16-2010
01:55 AM
|
0
|
5
|
2659
|
Online Status |
Offline
|
Date Last Visited |
11-11-2020
02:23 AM
|