1 package org
.argeo
.slc
.gpsbabel
;
3 import java
.util
.StringTokenizer
;
5 import org
.argeo
.slc
.jts
.PositionProvider
;
7 import com
.vividsolutions
.jts
.geom
.Coordinate
;
8 import com
.vividsolutions
.jts
.geom
.GeometryFactory
;
9 import com
.vividsolutions
.jts
.geom
.Point
;
11 public class GpsBabelPositionProvider
implements PositionProvider
{
12 private GpsBabelCall gpsBabelCall
;
14 private GeometryFactory geometryFactory
= new GeometryFactory();
16 private String inputFormat
= "garmin,get_posn";
17 private String inputFile
= "usb:";
20 gpsBabelCall
= new GpsBabelCall(inputFormat
, inputFile
, "csv", "-");
23 public Point
currentPosition() {
25 if (gpsBabelCall
== null)
28 String output
= gpsBabelCall
.function();
29 StringTokenizer st
= new StringTokenizer(output
, ",");
30 Double latitude
= Double
.parseDouble(st
.nextToken());
31 Double longitude
= Double
.parseDouble(st
.nextToken());
32 Point position
= geometryFactory
.createPoint(new Coordinate(longitude
,