ThinkGeo.com    |     Documentation    |     Premium Support

Add Delete button on features at EditInteractiveOverlay

 Hi,


 


In our application, we are drawing polygon shapes at the EditInteractiveOverlay. use can drag, resize and add vertex to the polygon shapes. I want to add a delete button on left top corner of the feature. I can add a marker in the top left corner that can use as a delete button. But, the problem is if the user drag, resize or add/remove vertexes then i want to update the position of the marker also. is there any easy way to do this.


I have attached a screenshot to give an idea of what i am trying to achieve.



 


Raquibur,
 
Your idea is great, I think you can implement it but you may spend time on it because the logic is not easy. I agree the way that adding a mark, there are two ways you can follow:
1.       You can use event for each operation, when the event raised you calculate the new position for marker and move it as well.
2.       Create a custom Marker and draw shape on it, the difficult is that you need to parse the shape and many things you need to do it by yourself.
 
I will think another way to solve problem, I will let you know if I find.
 
Thanks
James

Hi James, 
  
 Thanks for your reply. I don’t think solution# 1 is feasible. Because when you drag or resize a feature , the Dragg and resize event fire very frequent.As a result updating the marker position will impact on the performance.  
  
 Will you please give some more details about the solution no 2. 
  
 Regards, 
 Raquib

Raquibur, 
  
 Maybe solution#1 has performance problem, at least you can try it. 
  
 About solution#2, I also don’t have details, my suggestion is that each marker is a control, and you can first draw shape to a image and them draw this image on the control. To get image from shape, you can use GdiPlusGeoCanvas which can pass in a bitmap, and convert shape to Feature, then draw feature by geocanvas. 
  
 Thanks 
 James

Hi James, 
  
 I can make image and add as a marker, but the problem is if i do so then user will not be able to add or remove and move vertexes.  
  
  
 Regards, 
 Raquib

Hi James, 
  
 I can make image and add as a marker, but the problem is if i do so then user will not be able to add or remove and move vertexes.  
  
  
 Regards, 
 Raquib

 Hi Raquibur,


 
I made a sample to demonstrate the feature you required.
In the sample, every polygon has a delete button (contained in a marker) located at its upper left corner.
You can click this button to delete both the marker and feature.
And when you drag the feature to relocate it, the delete button moves along with the feature.
 
Please download the attached zip file and use the decompressed files to replace the “Track And Edit Shapes” sample in the “How Do I Samples”.
 
Regards,
Tsui

sample_code.zip (1.92 KB)

Thanks Tsui. It works great and it is the most elegant and efficient solution. I really appreciate your help. 
 Please add this as a feature in the later release. 
  
 Regards, 
 Raquib

Hi Raquibur, 
  
 You are welcome and please feel free to let us know if you have any further issue with this new Overlay, because it’s not mature enough yet. 
  
 Adding this new overlay to the release version is not likely to be done. Because the public APIs of Map Suite tend to meet the customers’ general needs and this new Overlay is a specific requirement. 
 Adding it to the release version may upset the users who what to delete a feature by right clicking or double clicking.  
  
 We suggest you to keep this code in you code base and make us informed whenever you encounter problems with it. 
  
 Regards, 
 Tsui