Thank you for your help. I had previously tried to install Garmin
Trip & Waypoint Manager on my mac iBook G4 using two different
PC emulators (Virtual PC and Guest PC) and Windows 98 SE. On
both cases it didn't work: Garmin software can't find my GPS.
Tom, I don't know what is the official projection used here in Brazil.
To my need, a flat surface is fine.
Norman, your algorithm idea looked simple but I couldn't
implement it so I followed your second suggestion, and found a
site with a good method to calculate polygon areas.
With this method I wrote a small Python language program
to calculate areas of non-self-intersecting polygons
(the source is at the end of this email).
You just have to save on the same folder two files:
the source code file ( area_poligono.py ) and a file with the
points of the track ( vertices.dat ).
The program looks for a text file called vertices.dat on his folder.
Then it opens the file and starts to read it line-by-line. Each line of
vertices.dat must have two numbers (UTM coordinates of one
point) separated by a TAB (Tab key on the keyboard). Example:
If you have a Mac or Linux system your already have Python
installed. If you are on Windows, download Python from
To run the program, open a Terminal window (command line).
Change to the folder where you saved the two files. Type this to
run the program:
I don't know in which language GPSBabel is written but I believe
that is very easy to implement the code below inside GPSBabel,
maybe called by a new "Extras > Area calculation..." menu item.
When clicked, it could open a File Open dialog box, followed by
another dialog with the answer (the polygon area, or a
That's my suggestion and I hope you do it!
Charlie, thank you for your kind offer.
Greetings to all,
The source code...
# Calculate polygon area.
# Marcio Moreira. 20/jan/2007.
# Teresina, Piaui, Brazil.
# 1) Create a text file with the UTM coordinates of one point
# on each line. The two numbers must be separated
# by a TAB. Name this file "vertices.dat"
# 2) Put this python program file on the same folder of the
# "vertices.dat" file with the name "area_poligono.py"
# 3) Run this program with the following command line:
# python area_poligono.py
# I have used the following reference to write this program:
vertices = 
# Open the file and read all lines
f = open("vertices.dat", "r")
lines = f.readlines()
# Process each line
for one_line in lines:
# Split line in tokens and convert them to integers
str_x, str_y = string.split(one_line)
x, y = int(str_x), int(str_y)
# Add one vertex to vertices list
vertices.append( (x,y) )
determinants = 0
for index in range(len(vertices)):
xa = vertices[index]
ya = vertices[index]
if index == len(vertices) - 1:
n = 0
n = index + 1
xb = vertices[n]
yb = vertices[n]
# Calculate determinant
det = float((xa * yb) - (xb * ya))
determinants = determinants + det
# Apply the area formula
area = determinants / 2
print "Area:", area
Fale com seus amigos de graça com o novo Yahoo! Messenger