Alex, I've just been converting a reasonably large MapX application (VB6) so that it will work with either MapX or MapObjects. I have quite a bit of experience with MapX, but this was my first MapObjects project. The first thing which struck me was the number of similarities between the two object models - I was able to leave large chunks of code unaltered, e.g. when iterating the map layers collection. As you would expect, there are also one or two areas where the two architectures are completely different - for example in dealing with highlighting and selections (actually MapObjects doesn't really have any built-in support for these, but you have the tools to implement them). It was also a major nuisance that shape files can only contain topology of a single type, so the code had to accommodate several shapefiles where a single MapInfo table had been sufficient with MapX.
But, all in all, I was pleasantly surprised with how quickly I implemented the MapX application with MapObjects. The big surprise for me, as someone with relatively little ESRI experience, came when I started throwing 'real' quantities of data at the application. During development and testing I had used relatively small shapefiles and had not noticed any difference in performance between MapX and MapObjects. However, when I started using larger quantities of data, the performance of MapObjects suffered to a far greater extent than MapX - and I'm talking in the region of an order of magnitude. The big performance hits came when: * opening shapefiles * searching for objects in shapefiles based on attribute values (when you don't know the location) * editing shapefiles The performance in some areas of the application was so bad that I was forced to change the architecture. To be fair to MapObjects, this is perhaps to be expected when converting an application built around MapX and I may have had similar problems converting a MapObjects application to MapX. The thing I dislike the most is that to have a reasonable performance with a large shapefile, it must have a 'spatial index'. Trouble is, if you edit that shapefile (e.g. insert a new object) the spatial index is destroyed and needs to be recreated (otherwise just panning the map will cripple the application) - but recreating a large spatial index can take minutes. Get the picture? I have found that to get a reasonable performance I have to organise my data in certain ways, e.g. by having a smaller shapefile into which new objects can be captured and reserving the larger shapefiles for data which is mostly static. For me, the greatest difference between MapX and MapObjects is that with MapObjects, performance issues dictate the way the data is managed to a greater extent than does MapX. MapX does not have the same data-related performance issues and therefore gives you more freedom over the management of your data and architecture of your application. Richard Burkmar Swift LG -----Original Message----- From: Alex Eshed Sent: 15 July 2002 07:31 To: [EMAIL PROTECTED] Cc: Subject: MI-L MapX vs. MapObjects Greetings List, My apologies if this has posted earlier recently. We have seen several discussions comparing MI Pro with ArcView. However, I don't recall seeing anything with similar comparisons between MapX and MapObjects. I need that comparison now. Any and all contributions very welcome. TIA to all responders. Will summarize. Best regards, Alex Eshed email: [EMAIL PROTECTED] OPISOFT Ltd. Tel: +972-3-6136050 ext. 213 SHAP Building Fax: +972-3-6139850 3 HaYetzira St. Ramat Gan 52521 Israel _________________________________________________________________ Chat with friends online, try MSN Messenger: http://messenger.msn.com --------------------------------------------------------------------- List hosting provided by Directions Magazine | www.directionsmag.com | To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- List hosting provided by Directions Magazine | www.directionsmag.com | To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
