Re: Phriday Philosophy (was: MI and Manifold)

2000-08-25 Thread Gary Schwartz

I for one really enjoy the open nature of MapInfo-L.  My interests in MapInfo cover a 
wide range, and to have to try to focus that would be difficult.  I also enjoy the 
email that is outside of my normal interest because occasionally there is something 
that strikes me as interesting.  It keeps me informed about topics that I wouldn't 
otherwise keep up with but still impact what I do for a living.  I would miss that if 
I had to pick and choose which MapInfo lists I subscribed
to.

I still find the easiest way to deal with this is the self-editting method.  The 
delete key remains my favorite tool!

Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: Summary - MI Oracle and MapInfo - Map/nHand?

2000-08-25 Thread Gary Schwartz

Hi,

I just wanted to chime in on this Wireless conversation.  While MapInfo's
pre-packaged solutions are Java/Oracle based, that doesn't mean that wireless
mapping can't be done with MapInfo products without Java and Oracle.  All that's
required is a server-side application that supports the WAP protocol which is
very well documented -- check out Nokia's site at
http://www.forum.nokia.com/main/1,6668,1_1,00.html (requires you to sign up, but
it's free and includes a very cool wap-enabled phone simulator for testing).
Another good resource is The Wireless FAQ at http://allnetdevices.com/faq/

As a test, I wrote an Active Server Pages application using MapXsite
(significantly less expensive than MapXtreme!) to do a scaled-down dealer
locator.  It worked fine with the Nokia simulator.  I haven't tested it with
anything else, but as a proof of concept I think it was a success.  The only
real difference between what I wrote and a traditional MapXsite application is
that instead of spitting out HTML, the application has to write WML (which is
similar to HTML).  Of course, MapInfo would prefer to sell larger (read more
expensive) solutions in this arena because the players tend to have a lot of
dough.  To be honest, I like to make money, too.  But if we can leverage
existing, lower cost products, then I think we have the ability to make our
money on the application development side and still provide a lower-cost
alternative to the customer.

I believe that the real challenge is not from a programming standpoint, but from
a cartographic.  How can we make useful, engaging maps that display on a
monochrome screen within miniscule real estate?  I'm not sure how big the
PalmPilot screen is, but I think the Nokia phone is only 96 pixels wide by 65
pixels high!  I'd love to hear some discussion on this topic, especially
considering the fact that these devices are likely to get smaller and smaller.
I think I heard somewhere that IBM has developed a prototype wristwatch with
wireless capability.  How are we going to display maps on that?!?

Gary Schwartz
Manager Application Development
Mapping Analytics


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



SUM: MI International Geocoding and MapX

2000-08-18 Thread Gary Schwartz

Thanks to all who responded to my query.  It seems that the consensus is that
international street-level geocoding remains next to impossible through any
consistent and coordinated effort.  Currently, the best work around seems to
be geocoding to the place/settlement name.  This offers it's own challenges
(English vs. Native vs. every other possible spelling, etc.,) and doesn't
provide the kind of accuracy that many applications might require.  However,
for those who would find this acceptable, Steven Feldman forward this
information:

Try GeoLocata from whereonearth.com
It offers world wide geocoding to settlement point or postcode.
Contact [EMAIL PROTECTED]

There product seems pretty solid from a first glance and we have requested
more info from them.  I know of several other global gazeteers, but I don't
know if they have any "geocoding" software wrapped around them, so if any of
them are listening, I'd be interested in knowing what they offer.

Thanks also to Ole Gregor who shared some of the difficulties that they have
with geocoding in Denmark and Zoran Markovic who described some of the trouble
with GeoLoc (the MapMarker equivalent for Australia and New Zealand).  I've
attached both of their messages below for those who are interested.

If anyone else has any thoughts that they'd like to share, please let me know.

Gary.

Ole Gregor wrote:

> Hi
>
> That's a tricky one.
>
> I'm living in a country with a long tradition of coordinatet adresses and we
>
> still has problem with geocoding in MI. Our adresses is different than the
> US ones (e.g. mine is Gudenaparken 62 and as you can se there is a special
> danish character and the number after the street name - a special case is
> that I also could have used a aa instead og a and it would still have been a
>
> valid adress) and the MI abbrevations file is not convenient outside US. We
> have done part of our geocoding in MS Access after a wash of both the
> mapadresses and the client adresses. The situation is much more mixed in a
> lot of other countries and in some there is no central accepted/avaliable
> adresss databases.
>
> I whish you luck with your Sissifos (a person from Greek mythology with a
> large continius work)work
>
> Ole Gregor
> Dept. of environment, natureconservation, planning and highways, Viborg
> County, Denmark
> (45) 8727 1307
>

Zoran Markovic wrote:

> Gary
>
> Unfortunately, I do not think you can have a general solution.
> As you said, each country has its own geocoding solution,
> often incompatible with MapMarker.
>
> For example, Australia and New Zealand use GeoLoc software
> with its own spatial streets database.  I have not heard of
> anybody successfully porting this database to MapMarker.
> But, GeoLoc is a decent software with fuzzy matching etc.
> The streets database is not 100%, but its OK (95% satisfactory).
>
> The problem is that GeoLoc is a batch processor, not a
> command line type processor - I will be very hard
> to interface it with something else.
>
> I presume you are trying to create an Internet based distance
> measurer or locator (real time) for the whole world and I do not envy you.
>
> Good luck
> Zoran
>

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



MI International Geocoding and MapX

2000-08-17 Thread Gary Schwartz

Hi all,

We're about to get involved in a project that is giving me ulcers just
thinking about it, and I was hoping some of you might have some
experience or advice to share that might abate my acid reflux.

We're working with a client who needs to do address-level geocoding on a
world-wide basis.  Right now they're interested in just a handful of
countries, but that list is likely to grow.  As far as I know, there is
no single solution for international geocoding.  MapInfo has a MapMarker
version for just a few countries.  Beyond that, there seems to be street
data available at a price for many countries.

What I'm wondering is if anyone knows of any International geocoders or
can share their experiences with working with International street data
for geocoding.  What countries have good data?  What countries have bad
data?  What are the pitfalls with working with other countries' address
information (i.e., address formats, etc.,) in either MapInfo
Professional or (better yet) MapX?  My only real experience has been
with the US version of MapMarker and performing geocoding with MapX and
StreetPro EAL.

We envision creating a single interface that will accept an address,
determine what country the address is for, and based upon that, utilize
either that country's version of MapMarker (or other available geocoder)
or, where that is not available, use MapX and street data for that
country to perform the geocode.  I'm sure you can understand my
stomach's response to this.

Any insight would be greatly appreciated, and, of course, summarized
back to the list.

Thanks,
Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Polygon Attributes

2000-08-02 Thread Gary Schwartz

Seb,

Here's the syntax for your query:

Select ObjectInfo(obj, 21) From MyTable

(21 is the MapBasic constant OBJ_INFO_NPOLYGONS which returns the number of polygons 
in a region object(

Hope this helps,
Gary.


Sebastian Hudson wrote:

> Andy,
>
> Thanks for the reply.  Hopefully this will clarify what I am after.
>
> When double clicking on a region  object it brings up a list of attributes such as 
>area.  One of these is  the number of polygons that make up the object in question.
> Is it possible to do a query in mapinfo on all the objects within a table that will 
>show how many polygons make up each object?
> I have large number of such regions that need checking regularly and doing it 
>manually is time consuming and prone to error as some may be missed out.
>
> Thanks
>
> Seb
>
> For more information on ADAS, visit our website at
>  http://www.adas.co.uk.
>
> The information transmitted is intended only for the addressee and
> may contain confidential and/or privileged material.
> Any use of, or taking of any action in reliance upon, this information
> by parties other than the intended recipient is prohibited.
> If you receive this in error, please contact the sender and delete the
> material from any computer.
> Opinions and other information in this message that do not relate to
> the official business of ADAS are neither given nor endorsed by it.
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI subselect

2000-07-14 Thread Gary Schwartz

Daniel,

Give this a try:

Select * From BigTable Where ID In ( Select ID From SecondTable )

Gary.


Daniel Budmiger wrote:

> hy all,
>
> i have hot a big table with different codes and a
> second table with a certain number of reference-codes.
> how can i select only the rows from the first big table
> which have the same code like in the second reference-
> table?
>
> it must be sort of a subselect...
>
> thanks for your advice.
>
> *
> Daniel Budmiger
> Seminarstr. 115
> 8057 Zürich
> Tel 01 / 364 41 55
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



SUM: MI Overlapping Point Symbols - Cartographic Question

2000-07-14 Thread Gary Schwartz

Thanks to all of you who responded to this questions.  You've definitely
given me some good ideas to try.  The four responses I've received so
far are listed below.

Gary.

***
Yannick Leduc offered this idea for circles sized on the number of
points at the given location:

Hi Gary,

this solution will work if your overlapping points are exactly
at
the same coordinates.

First, you need to add as columns the X and Y coordinates to your point
table using CentroidX() and CentroidY()
Then, perform a query on your table where you will group your data
around X
and Y coordinates. It should looks something like this:
Select Columns: Xcoord, Ycoord, count(*)
>From tables: your_point_table
Where conditions:
Group By: Xcoord, Ycoord
Order By:
into Table Named: Grouped_points

Then, save the query's result into a new table (Save Copy As) and open
it
Then, create points from X and Y coordinates (Table>Create Points...)
Then, create a graduated thematic on the count column.

Finally, you should be able to see a circle where the radius is define
by
the number of occurence at the same location.

I'm not fully operational with english. I hope you have what you need!

Salutations!

Yannick

***
Jason Adam had this idea for creating an individual values theme based
upon the categories that occured at the same location (I especially like
this idea because it makes labelling at lot easier as well):

Gary-
I think ideally you would have one row for each location, and multiple
columns that would be filled with the data that exists at that point.
Then
to make the thematic map you'd have one final column where you
concatenate
all the data together ie category1+category2+category3+  Then when
you
make an Individual thematic you could assign the points "category1" as
one
symbol, "category2" as one symbol, "category1category2" as another,
"category1category2category3" as yet another, and so on.  Just edit the
Legend text to reflect what the codes mean.
Good luck,
Jason
¤»¥«¤»§«¤»¥«¤»§«¤»¥«¤»
Jason Adam
Computer Draftsperson
Monopros Limited
Toronto, ON
[EMAIL PROTECTED]

***
Julie Kanzler offered several possible solutions (I like the starburst
idea):

Gary:

I have been in your situation many times because I map a lot of
sampling data and monitoring sites. Shifting a sample site is
equivalent to falsifying the data! In the past I have generally done
one of a few things:

1) used star-like symbols, where the number of prongs refers to
the number of samples the symbol represents.
2) used a thematic point map where symbol size represents
the number of samples.
3) used a single symbol, but rotated the symbol in place. This
is most useful when the rotations can refer to some element
of the data. I assigned rotations to points based on the data
collection date.  The result is that samples collected during
different sampling events overlay without obscuring any. This
is easier to do in ArcView.
4) used a combination of filled and non-filled symbols.

I hope these give you some ideas.  If you get a chance, let me
know what you end up doing ... maybe I can learn something!

Julie Kanzler
GIS Analyst/Programmer
Wyle Laboratories
Arlington, VA
(703) 415-4550 ext. 20


***
Phil Atkinson suggested using continous theme shading which doesn't
really work for my situation since we are interested in the exact point
locations but may work for other situtations:

Gary,

We use density estimation to produce a continous density surface using
mapbasic. I'll publish the code in 1-2mnths..

Phil


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Undocumented (revisited)

2000-07-14 Thread Gary Schwartz



I can share with you some not very useful information about the "Hoover"
functions from the years I spent working for Claritas.  Claritas was
building a product that became nicknamed Hoover (I suppose it was meant
to be some sort of data vacuum! - anyways I definitely remember a very
loud sucking sound ;->) that used MapInfo Professional for its mapping
engine (for Claritas' sake I won't disclose the product's actual name). 
They struck a deal with MapInfo to include some special functionality for
this product and the functions you found were written to support that. 
I honestly can't remember what they do (it's been at least 4 years now
since I worked on that product) and even if I could I'm sure that information
would be considered confidential.  But I'm pretty sure that they're
really not all that interesting.  My gut feeling is that they were
put in to simplify the way commands were passed between the two products. 
In those days we were still using DDE which was pretty slow, so I think
they might have been added to reduce the number of DDE calls that had to
be sent back and forth.
Hope this sheds a little light on your mystery.  Let me know if
you do figure out exactly what they do.
Gary.
 
Anssi Joutsiniemi wrote:
Functions: SetHooverInfo(strDummy,strDummy)GetHooverInfo(strDummy)HooverCommand(strDummy) 





MI Overlapping Point Symbols - Cartographic Question

2000-07-13 Thread Gary Schwartz

Hi all.

I have a cartographic problem that I'd like to share with the list and
see what kind of ideas you might have to share.  We are creating a
series of maps showing point locations.  In many cases there are
multiple points at the same location, and we would like to use some sort
of symbology to demonstrate this.  The points represent different types
of things, and using the dispersal method isn't really appropriate for
this situation.  We've tried using pie wedges to try to show this, but
that doesn't look very good.  Anybody have any other good ideas?  I'll
happily summarize any responses back to the list.

Thanks,
Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI: Distance & Ruler

2000-07-13 Thread Gary Schwartz

Kumar,

I believe that this already exists.  If you use the ruler tool to open the
ruler window and then switch to the polyline tool to draw your line (keeping
the ruler window open) the distance covered should be displayed in the ruler
window.

Hope I haven't misunderstood what you were asking.

Gary.


Anish Kumar P wrote:

> Hi List
>
> I would like to create a tool which is used for drawing polylines and
> simultaneously display the distance covered(similar to ruler tool) while
> drawing. It is basically integration of polyline & ruler into one.
>
> Any help would be appreciated.
> Thanks in advance
>
> Kumar
>
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



MI MapMarker - Reverse Geocoding

2000-06-16 Thread Gary Schwartz

I have hear rumor that it is possible to perform reverse geocoding
(given a lat/long return the nearest street address) using the MapMarker
Geocoder API with a little bit of programming.  Is anyone aware of this
process, and, if so, can anyone shed some light on how this might be
done?

Thanks,
Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI MapX OCX and Oracle 8i Lite?

2000-05-15 Thread Gary Schwartz

Neil,

I think you're definitely on to something with this.  I think the key to making
this work will be convincing Oracle to develop a Spatial Lite cartridge to work
with 8i Lite and the MapInfo suite of tools.  The developer community has been
waiting a long to time to get the spatial data out of the TAB format and into
something more useful, and the latest Oracle Spatial implentation seems to
really fit the bill.

As for developer environments, don't forget Java.  Oracle has jumped head first
into the deep end over Java and MapInfo is definitely following suit.  I have
heard rumblings about MapInfo marketing the MapJ Java component in much the same
way as they market the MapX OCX.  Whatever your personal feelings about Java
might be, MapInfo and Oracle are going to be pushing developers in that
direction.  I wonder if MapX developers will soon be grumbling about MapInfo
abandoning them with pointless upgrades while focusing all of their energy on
this new fangled Java stuff!  At any rate, I like to think that only good things
can come from the MapInfo-Oracle partnership, but I also remember having similar
feelings when I heard that MapInfo had partnered up with Microsoft for Excel
Map.  I guess like everything else all we can do is make sure MapInfo hears what
we have to say and then just wait and see.  So if you're listening MapInfo, get
on the ball with this Oracle Lite and Spatial Lite idea!

Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI can mapxtreme display vector data

2000-03-17 Thread Gary Schwartz



At present, the NT version of MapXtreme can't do the vector thing. 
But the Java version can...
Gary.
Rajeev saraf wrote:
 One quick
query that has been bothering me for a while.If
i use mapxtreme to develop apps for internet/intranet then it displays
the output as a GIF image on your browser. is it possible for the browser
to get vector data and work exactly in the fashion that we work with mapinfo?
say we are using it on intranet and data security is not an issue.--rajeev
saraf





Re: MI MapXtreme Java - Thematic Mapping

2000-03-14 Thread Gary Schwartz

Mark,

There doesn't appear to be any Individual Values thematic "out of the box", but
it can be done in a round-about sort of way using the IDSelectionTheme
interface.  The basic approach is a two-step process:

Step 1:  Create a recordset using a Group By on the column you want to create
the individual values theme on.

Step 2:  For each record in the recordset, create a recordset for all records
in your table that have the same value of your column.  Create a new
IDSelectionTheme object for all of the features in this recordset.

Here's some sample code that I've just been working on.  It connects to an
Oracle database to get the data (it's using point data):

  private void applyIndividualRenditions(Layer layer, String table,
String column, String whereColumn, String whereValue)
  {
try
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
conn = DriverManager.getConnection(
"jdbc:oracle:thin:@charon:1521:ORCL1","SYSTEM","manager");
Statement statement = conn.createStatement();

//get all of the individual values from the table
ResultSet rs = statement.executeQuery(
"select " + column + " from " + table +
" where " + whereColumn + "='" + whereValue + "' " +
" group by " + column);

//loop through each individual value
while(rs.next())
{
//create the theme using the value from the recordset as the name
IDSelectionTheme theme = new
IDSelectionTheme(rs.getString(column));
PrimaryKey pkey;

//get all features that have the current value for the column
FeatureSet feats = layer.searchByAttribute(null, column,
new Attribute(rs.getString(column)), null);

Feature f = feats.getNextFeature();

//create a random color for the symbol
Rendition rend = new Rendition();
int r, g, b;
r = (int)(Math.random() * 255);
g = (int)(Math.random() * 255);
b = (int)(Math.random() * 255);
Color c = new Color(r, g, b);
rend.setValue(rend.SYMBOL_COLOR, c);

//add each feature in the featureset to the theme
while(f != null)
{
pkey = f.getPrimaryKey();
theme.add(pkey, rend);
f = feats.getNextFeature();
}
layer.getThemeList().add(theme);
}
rs.close();
}
catch (Exception e)
{
e.printStackTrace();
}
  }


"Crompton, Mark" wrote:

> Hi All,
>
> I know that there are not many MapXtreme experts out there, but if anyone
> can help I would appreciate it.  So far I have worked through all the
> examples, and can Thematically Map my own data.  BUT... I can only Map BY
> RANGE.  Is it possible using MapXtreme Java V2 to map by individual values,
> or set the ranges manually?  The CreateRangedTheme method only appears to
> allow 3 different variations (EQUAL_RANGE, EQUAL_NUM and STANDARD_DEV).
> Reading the documentation (what little is provided) there appears a way to
> use the BIN methods to change ranges, BUT HOW???
>
> Any help would be appreciated, Thanks
> Mark Crompton
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Y2K and mapXtreme

1999-12-29 Thread Gary Schwartz

We've recently upgraded a client because of this situation.  The upgrade
was easy and painless.  The Y2K issue is limitted to the Haht
Application Server, so if you are using ASP or some other application
server, you shouldn't be affected.  I believe that the problem is with
one specific function that is used to convert two-digit date strings to
four-digit date variables.  The function assumes that 00 reprents 1900.
I think that the upgrade solves this problem by converting anything
below 30 to 2000 dates and anything above 30 to 1900 dates.  If you
don't use this function, then you shouldn't need to worry.

It is a bit annoying that MapInfo didn't find this until so late in the
year, but I guess the old saying still applies...Better late than never!

Gary.

Dick Hoskins wrote:

> I got a letter in the mail today dated December 17th  from MapInfo
> stating that:
>
> "If you use the HAHTsite Application Server to perform date-related
> functions within your MapXsite and/or MapXtreme applications, this
> information may affect you.  MapInfo has determined that the OEM
> version
> of the third party software, HAHTsite Applicaiton Server OEM version
> 3.1, builds 101 and 103, which was previously believed to be
> Y2K-compliant are indeed not Y2K-compliant without an upgrade.  This
> application server is shipped with MapXtreme NT and MapXsite.  HAHT
> has
> provided an upgrade, which MapInfo has modified and tested for its OEM
>
> version"
>
> The letter then goes on to explain the situation in more
> detail Comments, etc?   Dick Hoskins
> [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Quick VB/MB string formatting question

1999-10-20 Thread Gary Schwartz

Tim,

In VB add a reference to the Microsoft Scripting Runtime library
(windows\system\scrrun.dll) to your project and then use the FileSystemObject
from that library.  There is a method called GetBaseName() that will do the
trick.

In MB use the PathToTableName$() function (it should work with regular
file names, not just tables).

Gary.

Timothy Chinchen Cen-IT wrote:

> Not necessarily an MI question but in VB and/or MB does anyone know how I
> can remove the Path info and extension on a string e.g.
>
> From
> C:\data\MyTable.Tab
> to
> MyTable
>
> Many Thanks
>
> Tim Chinchen (GIS Systems Developer)
> I.T. Services Bournemouth Borough Council
> Mailto:[EMAIL PROTECTED]
>
> **
> This email and any files transmitted with it are confidential and
> intended solely for the use of the individual or entity to whom they
> are addressed. If you have received this email in error please notify
> the system manager.
>
> This footnote also confirms that this email message has been swept by
> MIMEsweeper for the presence of computer viruses.
>
> www.bournemouth.gov.uk
> **
>
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



MI Non-overlapping Buffers

1999-09-21 Thread Gary Schwartz


I just wanted to let the list know that my offer for sharing the MBX
for creating non-overlapping buffers was open to anyone who was
interested.  I've had a few people respond who weren't sure if I had
meant for the offer to be open to everyone.  So, just for clarification,
yes, anyone is welcome to try it out in exchange for constructive
criticism.  However, the source code is not available (at least not at
this time), and I'd prefer not to post the MBX to the archives yet.  I
just want to get a feel for how much interest there is in the program,
and be able to correspond directly with the people using it.

So far, I've had more interest than I expected.  I'm eager to hear
how people are using it and if there's anything else it should do.  So,
if anyone else is interested in the program, please drop me a line.

Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Mouse Over Functionality in MapX

1999-09-20 Thread Gary Schwartz

Suzanne,

I believe that this will be supported natively in MapX V. 4.0, but in the
meantime, I do know a workaround in V. 3.5 using Visual Basic.

In the MouseMove event, convert the screen X & Y into map X & Y and then
use them to perform a SearchAtPoint on the layer of interest.  If the search
returns any features, set the map's ToolTipText property (I don't think this
is part of MapX's API but it is exposed by VB) to the KeyValue of the first
feature.

Hope this helps,
Gary.

[EMAIL PROTECTED] wrote:

> Hello,
>
> I can't seem to find mouse-over functionality in MapX.  Does anybody know
> if it exists?
> I want the names of countries etc to pop up when the mouse goes over them.
>
> Thanks,
> Suzanne
>
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Non-overlapping buffers

1999-09-20 Thread Gary Schwartz

Berk,

I have a MapBasic utility that does exactly this.  The program adds
a menu item to your Tools menu that activates a wizard that steps you
through the process of creating the buffers.  You can run the buffers on
an open table, the current selection, or define an SQL statement that
will select the objects to create the buffers around.
Since the program has never really been tested beyond my own
personal use, we are offering it for free in exchange for constructive
criticism.
If you're interested in trying it out, please send me an email, and
I'll send it to you.

Gary Schwartz
Mgr., Program Applications
Mapping Analytics
Rochester, NY


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Map Basic, VB, COM and more

1999-09-02 Thread Gary Schwartz

Steve makes some very good points in his email, but I still think that
there is a very strong case for direct programming support beyond
MapBasic within MI Pro.

Yes, you can utilize MI Pro from VB as it stands today, but the
interface is limitted.  The major limitation is that MI Pro is an
out-of-process server, which, for those of you with less programming
experience, means that MI Pro needs to be running (albeit in the
background) as well as your own program.  This means two executables
which takes up more system resources than in necessary and requires
inter-process communications for any sharing of data between them which
is much slower than communication within a single process.  Secondly,
the automation server that MI Pro exposes is less than intuitive.  Most
functionality is exposed by passing MapBasic commands to MapInfo which
in turn are parsed and then run just as MapBasic commands entered into
the MapBasic Window.  This, of course, means that we're limitted to the
functionality exposed by MapBasic, which, as I said in my previous
email, is less than adequate for more advanced functionality.  While I
think this was a wonderful way for MapInfo to get started in supporting
more advanced programming, the process is less than elegant and not even
close to efficient.

As for Steve's comments that "all these current options and future moves
require a material leap in programming talent", I agree
whole-heartedly.  I am not encouraging MapInfo to abandon support for
MapBasic.  I'm just suggesting that many of us have outgrown it's
abilities and are craving something better so we can add power and
functionality to the software and, hopefully, sell more of it.  MapBasic
is great for simple and repetitive tasks, and needs to be kept around
for that.  But I think that MapInfo shouldn't devote their efforts into
making MapBasic something that it was never intended to be - a
development environment.  For that, those of us who want to do more with
the software need something better, more robust, like VB Script.  MapX
is a great step in that direction, but anyone who's used MapX knows that
it doesn't compare in the amount of functionality available in MI Pro.
There are times when we need to wrap our own functionality around the
entire set of functionality offered by MI Pro, and MapX just isn't going
to cut it for that.

If what Neil said is true and MapInfo is rearchitecting the product
using COM components, then we're only one step away from this becoming
reality.  If the interfaces are there, MapInfo just needs to find a way
to expose them to hacks like me.

Gary.

"Stephen L. Thompson" wrote:

>  After seeing the messages over the last two days about VB et al.  I
> think it's time to weigh in on the discussion.

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI Object oriented programming for Map Basic

1999-09-01 Thread Gary Schwartz

Since I've been one of those obnoxious people asking for VBA support, I'll thow
in my 2 cents:

My goal/desire/wishful thinking is for MapInfo Professional to become a
development platform.  What I'd like to be able to do is, given a customer's
problem, design a simple and elegant solution using standard programming
practices that solves that problem.  At present, I don't feel that MI Pro with
MapBasic supports this.  The problems, as I see it, are:

1)  MapBasic is a non-standard programming language.  It's great for what it is,
and similar enough to Visual Basic to make it easy to learn, but the
differences, when you hit them, can get you into trouble.  Don't ge me wrong, I
like MapBasic.  I think it revolutionized desktop mapping when it first came
out.  But now it's time for something better.

2)  MapBasic doesn't offer enough control over the application environment.  If
I want to write an application for an end-user, I have to go through way too
many hoops to turn things off that will get them into trouble.  And forget
creating custom windows and dialogs.  Unless you're an expert with the Windows
API calls (which I hope never to be), this is impossible.  MapBasic's Dialog
statement is great for simple user input dialogs, but doesn't cut it for
anything more advanced or interactive.

3)  Using external functionality is tough in MapBasic.  If you've got the
functionality in a DLL you can get at it.  But most third-party tools that are
being developed today are in ActiveX.  There are a number of good reasons for
this, but suffice it to say that ActiveX is the industry standard and we should
embrace it.

4)  Finally, adding functionality to the core components of MI Pro is an issue
that MapBasic can't address.  Let's say you've got a customer who loves MI Pro,
but really needs to have a spell checker for their layout windows (why they want
to do this is none of my business!).  Anyway, there are great spell checking
ActiveX component out there, but just try getting MapBasic to make it work in
your Layout Window.  I won't say it's impossible, but I don't think that many of
us want to waste our time making it work.  If MI Pro supported the concept of
"plug-ins", though, this might be much easier to implement.

Ok, I hate to be one of those annoying people who whines about problems without
offering any solutions, so here's a few possible ways to address this (keeping
in mind that I'm not the person who has to implement it so of course it sounds
great to me!):

Scenario #1:  Keep MapBasic as it is but create a statement that allows you to
run a VB Script, utilizing all of the power that normally goes allong with VB
Script (including the use of ActiveX objects).  This is a great first step, and
would address a lot of the problems, but I don't think that it's a final
solution.

  example:

  Sub MyMapBasicSub( )
  'MapBasic code
  ...
  Begin VBScript
'VB Script code
...
  End VBScript

  'More MapBasic code
  ...
  End Sub

Scenario #2:  Support VB Scripts but allow for embedded MapBasic code (like the
above example in reverse).  This is better (from my standpoint) but you're going
to hear a lot of complaints from people who have a lot of legacy MapBasic code
lying around.

Scenario #3:  Support both MapBasic and VB Script.  This keeps all of us users
happy, but requires more work from MapInfo.  Also, to make this work, you need
to allow the MapBasic to communicate with the VB Script and vice versa.  I don't
know how you'd do this, but it would definitely help.

The real key behind all of this, though, has to come from a new architecture for
MI Pro (which Neil Havermale alluded to).  To make all of this work, this new
architecture needs to encapsulate all core functionality into individual
components that can be called from VB Script and be inherited by our own custom
classes.  I want to be able to create my own Layout window that does everything
that MapInfo's does, but also does more.  Or, I want to take the Redistrictor
and remove some functionality that's going to cause trouble for my end user.

All of this is big, and I'm not asking for it overnight.  But if nobody asks for
it, we'll never see it.  As for MapX, that's not the answer.  MapX is great for
what it is, but it's never going to replace MI Pro.  It wasn't designed to do
that.  Therefore, we can't just say that "Oh, you're doing custom development so
you should use MapX."  I don't want to have to re-create everything that MI Pro
already does just so I can use mapping functionality with ActiveX.  If I need to
deploy a fully functional mapping system, I want to use MI Pro.  If only need
limitted functionality, then MapX is my choice.  MapInfo needs to support both
of these options.

That's my 2 cents.  Sorry if its a bit much, but I welcome any and all
responses.  I think that this is an important coversation for us as users to
have, and I think MapInfo needs to

Re: MI MapX questions

1999-08-18 Thread Gary Schwartz

Ara,

No, you do not have to install the entire SDK on the user's
machine.  In fact, doing so would be a violation of the End User
License.  The help file that ships with MapX has a section on
Distributing MapX Applications (do a help search on "distributing").
This describes in detail the files that need to be installed on the
user's machine and where the should be installed to.

As for your second question, I'm not sure why that would be
happening.  Perhaps someone else on the list has a better idea.

Good luck,
Gary.

G E O I N F O wrote:

>  Hello All..., I have some qustions regarding MapX Application
> Programming Development. 1. We have tried developing a VB and MapX
> based application.After it was compiled to be an .exe and made its
> installer using "Package & Deployment Wizard" - theapplication
> always asked for Mapx30.ocx. It just won't work until I copy the whole
> SDK into the PC.Q:Do we always need to install and use MapX
> SDK to run an application?If not - how? 2. We tried to
> call a geotiff raster to be shown as a vector backdrop - It really
> took a long time compare to theusual MI Pro.Q:What do I
> have to to make it faster?After it was loaded - We failed
> to show it in a small zoom(It doesn't appear in the screen)
> Image quality also degraded(appears some lines on top of
> image)Is it capable opening more than one raster file?(We
> loaded two files and than the app. hang up).Our image file
> size average is 35MB. We use MapX 3.5 and VB 6.0 in a PC with
> PII-400MHz, 64MB Ram, 4 MB VRam, 2X 4.3GB HDD. Please do help us -
> since this is our first experience developing a map based app. with
> MapX and VB.Your shared experiences and ideas would be very
> appreciated. Thank's in Advance. Ara BudidarmaPT. GEONUSA INFOTAMA
> (GEOINFO)
> Tel. 021-8200167; Fax. 021-82405373E-Mail [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI MB 'Run Command' possibilities

1999-07-22 Thread Gary Schwartz

I guess I don't understand why you need to create the array variable with the
Run Command syntax.  Why not just create an empty array as you normally would in
your MapBasic program and then use ReDim to size the array to the necessary
number of fields:

Dim MyArray() As String

...some code...
ReDim MyArray(mysize)

-Gary.

Mapmail wrote:

> This does quite limit my possibilities when working with arrays.
> What is then the normal procedure, for reading arrays from textfiles and
> storing in MapInfo tables ?
> Do you really create a separately named variable for every data post that
> you read ?
> In my case I am reading up from 20 to 75 fields, with 10 to 24 rows,
> needless to say this would be extremely heavy to handle with separate
> variables.
> And since my table is created dynamically (this was not hard in MapInfo) I
> will also have a large problem when I want to store the variables I have
> read.
>
> I will have a look at the possibilities for creating a Visual Basic Program
> that I can send my variables to and later retrieve from for storage. Any
> Input on this idea is welcome !
>
> Thanks for the help
>
> J.I.Dali
>
> > -Original Message-
> > From: Gary Schwartz [SMTP:[EMAIL PROTECTED]]
> > Sent: 22. juli 1999 14:31
> > To:   Mapmail
> > Cc:   '[EMAIL PROTECTED]'
> > Subject:  Re: MI MB 'Run Command' possibilities
> >
> > From my experience, the Run Command statement works just like the MapBasic
> > Window, which means that you can't use functions or subroutines.  However,
> > you
> > can use the Dim statement, but you can't Dim arrays.  So a work around for
> > arrays would be something like this:
> >
> > For i = 1 to NumElements
> > Run Command "Dim ArrayElement" + Str$(i)
> > Next
> > 'this gives you variables:
> > 'ArrayElement1, ArrayElement2, etc.,
> >
> > I'm fairly certain that any variables that you 'Dim' using the Run Command
> > statement end up in the MapInfo global space (as opposed to your MapBasic
> > program's global space) which means that they are visible from other mbx's
> > as
> > well as the MapBasic Window (I used this handly little feature to write an
> > mbx
> > that creates a bunch of variables with the names and values of the
> > constansts
> > defined in the MapBasic.def so I could use them from the MapBasic window).
> > However, this means that you are tying up global memory resources and once
> > the
> > variables exist, if you try to create them again (i.e., by running your
> > mbx
> > again) you will get an error.  Therefore, you should end your program by
> > using
> > the 'UnDim' statement to get rid of any variables that you 'Dim'ed.  So,
> > for the
> > above example, you would:
> >
> > For i = 1 to NumElements
> > Run Command "UnDim ArrayElement" + Str$(i)
> > Next
> >
> >
> > Hope this helps,
> > Gary.
> >
> > Mapmail wrote:
> >
> > > Hello everyone
> > >
> > > I have a question concerning MapBasic.
> > > When using 'Run Command', is there a way to use the statements 'Call',
> > 'Dim'
> > > and 'ReDim' as the command ?
> > > e.g.
> > > Str1 = "Call "
> > > Str2 = "Myfunction"
> > > Run Command Str1+Str2
> > >
> > > or e.g.
> > > Str1 = "Dim "
> > > Str2 = "Myarray(10) as string"
> > > Run Command Str1+Str2
> > >
> > > I have not succeded, but maybe I'm doing something wrong.
> > >
> > > Thank you in advance
> > >
> > > J.I.Dali
> > >
> > > --
> > > To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> > > "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI MB 'Run Command' possibilities

1999-07-22 Thread Gary Schwartz

>From my experience, the Run Command statement works just like the MapBasic
Window, which means that you can't use functions or subroutines.  However, you
can use the Dim statement, but you can't Dim arrays.  So a work around for
arrays would be something like this:

For i = 1 to NumElements
Run Command "Dim ArrayElement" + Str$(i)
Next
'this gives you variables:
'ArrayElement1, ArrayElement2, etc.,

I'm fairly certain that any variables that you 'Dim' using the Run Command
statement end up in the MapInfo global space (as opposed to your MapBasic
program's global space) which means that they are visible from other mbx's as
well as the MapBasic Window (I used this handly little feature to write an mbx
that creates a bunch of variables with the names and values of the constansts
defined in the MapBasic.def so I could use them from the MapBasic window).
However, this means that you are tying up global memory resources and once the
variables exist, if you try to create them again (i.e., by running your mbx
again) you will get an error.  Therefore, you should end your program by using
the 'UnDim' statement to get rid of any variables that you 'Dim'ed.  So, for the
above example, you would:

For i = 1 to NumElements
Run Command "UnDim ArrayElement" + Str$(i)
Next


Hope this helps,
Gary.

Mapmail wrote:

> Hello everyone
>
> I have a question concerning MapBasic.
> When using 'Run Command', is there a way to use the statements 'Call', 'Dim'
> and 'ReDim' as the command ?
> e.g.
> Str1 = "Call "
> Str2 = "Myfunction"
> Run Command Str1+Str2
>
> or e.g.
> Str1 = "Dim "
> Str2 = "Myarray(10) as string"
> Run Command Str1+Str2
>
> I have not succeded, but maybe I'm doing something wrong.
>
> Thank you in advance
>
> J.I.Dali
>
> --
> To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
> "unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]

--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



Re: MI MapBasic capabilities

1999-07-07 Thread Gary Schwartz

> My goal is to build a GUI for mapinfo with limited functionality so
> that our clients can make their own maps.

> Q.  I'm pretty sure that is one of mapbasic's primary functions
> (correct me if I'm wrong)...however, can i do this without mapbasic
> at all?  Can I do it all in VB or C++???

A. Yes, you can do this completely in VB or C++ or any other programming
language that supports OLE.  However, it will help enormously to know a
little bit about MapBasic as the way that the MapInfo OLE Automation Server
works is by passing MapBasic commands to it.  On the positive side, the
Automation Server was designed to allow you to include only the
functionality you want to see in your program, while MapBasic was designed
to add functionality to the existing set of MapInfo functionality.

> Q.  If I can do it without mapbasic...are there any advantages to
> using mapbasic or not using mapbasic (ie VB and Mapinfo)?

A.  I can think of a few off the top of my head.  First, by using MapBasic,
you are utilizing a single process as opposed to creating a separate
executable with VB or C++ which will have its own process as well as the
MapInfo OLE Automation Server process.  This ties up more system resources
and is slower due to cross-process communication.  Additionally, it is
somewhat more complicated to utilize the Automation Server than it is to
write a MapBasic program.  However, if you are hoping to create a
sophisticated UI, you will have a tough time doing it in MapBasic.  Its
really a matter of weighing the pros & cons based upon what's important to
you.  A quick look through Chapter 13 (at least that's what it was in
version 4) of the MapBasic User's Guide will show you the basics of what's
involved in using the Automation Server.

I hope this helps.  If you have any other questions, feel free to let me
know.

Gary.

PS.  By the way, have you considered looking at MapX?  It's much easier to
use with VB and C++, includes much of the functionality of MapInfo, and can
be a less expensive solution if you are deploying over many seats.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]



MI Power Lines

1999-01-03 Thread Gary Schwartz

Does anyone know of a source for power line locations (either national
or regional)?  Obviously public domain would be wonderful, but a
commercial product would work, too.

Thanks,
Gary.


--
To unsubscribe from this list, send e-mail to [EMAIL PROTECTED] and put
"unsubscribe MAPINFO-L" in the message body, or contact [EMAIL PROTECTED]