예제 #1
0
        private void MapTest_Load(object sender, EventArgs e)
        {
            tbDest.Text          = "Enter Destination";
            tbLoc.Text           = "Enter Location";
            pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
            p          = new Point();
            currMap    = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu         = new Mapping.MapUtils();
            gu         = new Mapping.GeoUtils();
            g          = new Mapping.Geo();
            //check phone radio is on.
            if (SystemState.PhoneRadioOff == false)
            {
                Cell.CellUtils cu = new Cell.CellUtils();
                Cell.CellTower ct = cu.getTowerInfo();
                g.setLatLng(cu.getCoords(ct));
                g.setLat(cu.getLat());
                g.setLng(cu.getLng());
                currCentre = gu.getGeoLocation(g);
                currMarker = new Mapping.Marker(1, "red", "S", currCentre.getCoords());
                //update location textbox
                tbLoc.Text = currCentre.getDisplay_address();
            }
            else
            {
                g.setAddress("ANU");
                currCentre = gu.getLocation(g);
            }

            //initialize map settings
            startLoc = new Mapping.Location();
            destLoc  = new Mapping.Location();


            currMap.setMapType("rmap");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            //currMarker = new Mapping.Marker(1, "red", "S", currCentre.getCoords());
            currMap.clearMarkers();
            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));

            //add start location
            startLoc = new Mapping.Location();
            startLoc.setReady(1);
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());

            //tbLoc.Text = currCentre.getDisplay_address();
        }
예제 #2
0
        private void setLocCI_Click(object sender, EventArgs e)
        {
            pt = new Point();
            pt = pictureBox1.PointToClient(p);
            gu = new Mapping.GeoUtils();
            mu = new Mapping.MapUtils();

            //translate pixels tapped on to GPS coordinates
            double lat    = currCentre.getLat();
            double lng    = currCentre.getLng();
            double newLat = Mapping.CoordTranslate.adjustLatByPixels(lat, pt.Y - 150, zoom);
            double newLng = Mapping.CoordTranslate.adjustLonByPixels(lng, pt.X - 240, zoom);

            //clear previous markers from the array
            currMap.clearMarkers();

            //add the new loc marker to the map
            currMarker = new Mapping.Marker(1, "red", "S", (newLat + "," + newLng));
            currMap.setMarkers(currMarker.toString());

            //check if need to add existing destination marker
            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", destLoc.getCoords());
                currMap.setMarkers(currMarker.toString());
            }

            //generate map
            currMap.setCenter((newLat + "," + newLng));
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update start location object
            startLoc.setLat(newLat);
            startLoc.setLng(newLng);
            startLoc.setCoords((newLat + "," + newLng));
            startLoc.setReady(1);

            //update centre location
            currCentre.setLat(newLat);
            currCentre.setLng(newLng);
            currCentre.setCoords((newLat + "," + newLng));

            //update address to textbox
            Mapping.Geo tempG = new Mapping.Geo();
            tempG.setLat(newLat);
            tempG.setLatLng((newLat + "," + newLng));
            Mapping.Location tempLoc = gu.getGeoLocation(tempG);
            tbLoc.Text = tempLoc.getDisplay_address();
        }
예제 #3
0
        private void miGetCellLoc_Click(object sender, EventArgs e)
        {
            p          = new Point();
            currMap    = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu         = new Mapping.MapUtils();
            gu         = new Mapping.GeoUtils();
            g          = new Mapping.Geo();

            Cell.CellUtils cu = new Cell.CellUtils();
            Cell.CellTower ct = cu.getTowerInfo();
            g.setLatLng(cu.getCoords(ct));
            g.setLat(cu.getLat());
            g.setLng(cu.getLng());
            currCentre = gu.getGeoLocation(g);

            //update start location object
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());
            startLoc.setDisplay_address(currCentre.getDisplay_address());
            startLoc.setReady(1);

            currMap.setMapType("hyb");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            currMap.clearMarkers();
            currMarker = new Mapping.Marker(1, "red", "S", startLoc.getCoords());

            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", destLoc.getCoords());
            }

            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update location textbox
            tbLoc.Text = startLoc.getDisplay_address();
        }
예제 #4
0
        private void genMap(double lat, double lng)
        {
            p          = new Point();
            currMap    = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu         = new Mapping.MapUtils();
            gu         = new Mapping.GeoUtils();
            g          = new Mapping.Geo();

            g.setLatLng(lat + "," + lng);
            g.setLat(lat);
            g.setLng(lng);
            currCentre = gu.getGeoLocation(g);

            //update start location object
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());
            startLoc.setDisplay_address(currCentre.getDisplay_address());
            startLoc.setReady(1);

            currMap.setMapType("hyb");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            currMap.clearMarkers();
            currMarker = new Mapping.Marker(1, "red", "S", startLoc.getCoords());

            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", startLoc.getCoords());
            }

            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update location textbox
            tbLoc.Text = startLoc.getDisplay_address();
        }
예제 #5
0
        private void setLocCI_Click(object sender, EventArgs e)
        {
            pt = new Point();
            pt = pictureBox1.PointToClient(p);
            gu = new Mapping.GeoUtils();
            mu = new Mapping.MapUtils();

            //translate pixels tapped on to GPS coordinates
            double lat = currCentre.getLat();
            double lng = currCentre.getLng();
            double newLat = Mapping.CoordTranslate.adjustLatByPixels(lat, pt.Y - 150, zoom);
            double newLng = Mapping.CoordTranslate.adjustLonByPixels(lng, pt.X - 240, zoom);

            //clear previous markers from the array
            currMap.clearMarkers();

            //add the new loc marker to the map
            currMarker = new Mapping.Marker(1, "red", "S", (newLat + "," + newLng));
            currMap.setMarkers(currMarker.toString());

            //check if need to add existing destination marker
            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", destLoc.getCoords());
                currMap.setMarkers(currMarker.toString());
            }

            //generate map
            currMap.setCenter((newLat + "," + newLng));
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update start location object
            startLoc.setLat(newLat);
            startLoc.setLng(newLng);
            startLoc.setCoords((newLat + "," + newLng));
            startLoc.setReady(1);

            //update centre location
            currCentre.setLat(newLat);
            currCentre.setLng(newLng);
            currCentre.setCoords((newLat + "," + newLng));

            //update address to textbox
            Mapping.Geo tempG = new Mapping.Geo();
            tempG.setLat(newLat);
            tempG.setLatLng((newLat + "," + newLng));
            Mapping.Location tempLoc = gu.getGeoLocation(tempG);
            tbLoc.Text = tempLoc.getDisplay_address();
        }
예제 #6
0
        private void miGetCellLoc_Click(object sender, EventArgs e)
        {
            p = new Point();
            currMap = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu = new Mapping.MapUtils();
            gu = new Mapping.GeoUtils();
            g = new Mapping.Geo();

            Cell.CellUtils cu = new Cell.CellUtils();
            Cell.CellTower ct = cu.getTowerInfo();
            g.setLatLng(cu.getCoords(ct));
            g.setLat(cu.getLat());
            g.setLng(cu.getLng());
            currCentre = gu.getGeoLocation(g);

            //update start location object
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());
            startLoc.setDisplay_address(currCentre.getDisplay_address());
            startLoc.setReady(1);

            currMap.setMapType("hyb");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            currMap.clearMarkers();
            currMarker = new Mapping.Marker(1, "red", "S", startLoc.getCoords());

            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", destLoc.getCoords());
            }

            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update location textbox
            tbLoc.Text = startLoc.getDisplay_address();
        }
예제 #7
0
        private void MapTest_Load(object sender, EventArgs e)
        {
            tbDest.Text = "Enter Destination";
            tbLoc.Text = "Enter Location";
            pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;
            p = new Point();
            currMap = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu = new Mapping.MapUtils();
            gu = new Mapping.GeoUtils();
            g = new Mapping.Geo();
            //check phone radio is on.
            if (SystemState.PhoneRadioOff == false)
            {
                Cell.CellUtils cu = new Cell.CellUtils();
                Cell.CellTower ct = cu.getTowerInfo();
                g.setLatLng(cu.getCoords(ct));
                g.setLat(cu.getLat());
                g.setLng(cu.getLng());
                currCentre = gu.getGeoLocation(g);
                currMarker = new Mapping.Marker(1, "red", "S", currCentre.getCoords());
                //update location textbox
                tbLoc.Text = currCentre.getDisplay_address();
            }
            else
            {
                g.setAddress("ANU");
                currCentre = gu.getLocation(g);
            }

            //initialize map settings
            startLoc = new Mapping.Location();
            destLoc = new Mapping.Location();

            currMap.setMapType("rmap");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            //currMarker = new Mapping.Marker(1, "red", "S", currCentre.getCoords());
            currMap.clearMarkers();
            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));

            //add start location
            startLoc = new Mapping.Location();
            startLoc.setReady(1);
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());

            //tbLoc.Text = currCentre.getDisplay_address();
        }
예제 #8
0
        private void genMap(double lat, double lng)
        {
            p = new Point();
            currMap = new Mapping.Map();
            currMarker = new Mapping.Marker();
            mu = new Mapping.MapUtils();
            gu = new Mapping.GeoUtils();
            g = new Mapping.Geo();

            g.setLatLng(lat + "," + lng);
            g.setLat(lat);
            g.setLng(lng);
            currCentre = gu.getGeoLocation(g);

            //update start location object
            startLoc.setLat(currCentre.getLat());
            startLoc.setLng(currCentre.getLng());
            startLoc.setCoords(currCentre.getCoords());
            startLoc.setDisplay_address(currCentre.getDisplay_address());
            startLoc.setReady(1);

            currMap.setMapType("hyb");
            currMap.setCenter(currCentre.getCoords());
            currMap.setSensor("false");
            currMap.setSize(480, 300);
            currMap.setZoom(zoom.ToString());
            currMap.clearMarkers();
            currMarker = new Mapping.Marker(1, "red", "S", startLoc.getCoords());

            if (destLoc.getReady() == 1)
            {
                currMarker = new Mapping.Marker(1, "yellow", "D", startLoc.getCoords());
            }

            currMap.setMarkers(currMarker.toString());
            pictureBox1.Image = mu.getMapImage(mu.generateMap(currMap));
            pictureBox1.Refresh();

            //update location textbox
            tbLoc.Text = startLoc.getDisplay_address();
        }