windrobin / winforms-geplugin-control-library

Automatically exported from code.google.com/p/winforms-geplugin-control-library
GNU General Public License v3.0
0 stars 1 forks source link

Running WalkKmlDom on a MultiGeometry #97

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
What steps will reproduce the problem?
1. Attempt to zoom-in on a placemark whose geometry is a KmlMultigeometry by 
double clicking on the corresponding placemark on the KmlTreeView
2.The KmlHelpers.WalkKmlDom attempts to determine the placemark boundaries by 
calling the getOuterBoundary() method on a geometry which has been identified 
as a KmlMultiGeometry (see KmlHelpers lines 923 to 931). This causes a 
"System.Reflection.TargetInvocation" exception to be thrown as the 
KmlMultiGeometry class does not feature a getOuterBoundary() method.
3.

What is the expected output? What do you see instead?
Expected the plugin to zoom in on the selected placemark. Instead, a 
System.Reflection.TargetInvocation exception was thrown.

What version of the product are you using? On what operating system?
Running 64-bit Win7 with 4gb RAM on a VM. Also using the Geplugin version 
6.2.2.6613.

Please provide any additional information below.

Original issue reported on code.google.com by kjpkome...@gmail.com on 8 Nov 2012 at 4:41

GoogleCodeExporter commented 9 years ago
Again, thanks for bringing this to my attention. I believe this is due to a 
simple oversight in the code and can be rectified easily. I will make the 
changes asap and will respond here as soon as I do.

Best,

Fraser

Original comment by fraser.c...@gmail.com on 18 Nov 2012 at 7:04

GoogleCodeExporter commented 9 years ago
This is fixed in the latest commit. Now getGeometries() is called on the 
KmlMultiGeometry and the resultant GESchemaObjectContainer is walked as long as 
the WalkKmlDom walkGeometries parameter is set to true. 

Thanks again for pointing this out.

Original comment by fraser.c...@gmail.com on 20 Nov 2012 at 4:16