Ejemplo n.º 1
0
  /**
   * 指定一个固定位置。
   *
   * @param longitude
   * @param latitude
   */
  public void setFixPlace(double longitude, double latitude) {
    fixPlace.longitude = longitude;
    fixPlace.latitude = latitude;
    useFixPlace = true;

    writeCfg();
  }
 private void zoom(float scale) {
   final double domainSpan = maxXY.x - minXY.x;
   final double domainMidPoint = maxXY.x - domainSpan / 2.0f;
   final double offset = domainSpan * scale / 2.0f;
   minXY.x = domainMidPoint - offset;
   maxXY.x = domainMidPoint + offset;
   checkBoundaries();
 }
Ejemplo n.º 3
0
  @Override
  public void onReceiveLocation(BDLocation bdLocation) {
    // 信息没有参考性
    // MMLog.autoDebug(MMLog.printObjectFields(locationClient));

    if (bdLocation == null) {
      return;
    }

    log(bdLocation);

    if (!(bdLocation.getLocType() == BDLocation.TypeGpsLocation
        || bdLocation.getLocType() == BDLocation.TypeNetWorkLocation)) {
      return;
    }

    // 发送定位后的经纬度。
    PointD pointDTemp = new PointD();
    pointDTemp.longitude = bdLocation.getLongitude();
    pointDTemp.latitude = bdLocation.getLatitude();
    pointDTemp.province = bdLocation.getProvince();
    pointDTemp.city = bdLocation.getCity();
    pointDTemp.district = bdLocation.getDistrict();
    pointDTemp.addr = bdLocation.getAddrStr();

    setPointD(pointDTemp);

    stop();

    Msg msg = new Msg();
    msg.setData(pointDTemp);
    MsgMgr.getInstance().sendMsg(MsgType.MT_Util_Location, msg);

    startTime();
  }
  private void scroll(float pan) {
    final double domainSpan = maxXY.x - minXY.x;
    final double step = domainSpan / graph.getWidth();
    final double offset = pan * step;
    minXY.x += offset;
    maxXY.x += offset;

    if (minXY.x < absMinX) {
      minXY.x = absMinX;
      maxXY.x -= offset; // (absMinX-minXY.x);
    } else if (minXY.x > maxNoError) minXY.x = maxNoError;
    if (maxXY.x > absMaxX) {
      maxXY.x = absMaxX; // (maxXY.x-absMaxX);
      minXY.x -= offset; // (maxXY.x-absMaxX);
    } else if (maxXY.x < minNoError) maxXY.x = minNoError;
    if (maxXY.x - minXY.x < minDif) maxXY.x = maxXY.x + (double) (minDif - (maxXY.x - minXY.x));

    graph.setDomainBoundaries(minXY.x, maxXY.x, BoundaryMode.FIXED);
  }
 private void checkBoundaries() {
   // Make sure the proposed domain boundaries will not cause plotting issues
   if (minXY.x < absMinX || ((Double) minXY.x).equals(Double.NaN)) minXY.x = absMinX;
   else if (minXY.x > maxNoError) minXY.x = maxNoError;
   if (maxXY.x > absMaxX || ((Double) maxXY.x).equals(Double.NaN)) maxXY.x = absMaxX;
   else if (maxXY.x < minNoError) maxXY.x = minNoError;
   if (maxXY.x - minXY.x < minDif) maxXY.x = maxXY.x + (double) (minDif - (maxXY.x - minXY.x));
   else if (maxXY.x - minXY.x > maxDif)
     maxXY.x = maxXY.x + (double) (maxDif - (maxXY.x - minXY.x));
   graph.setDomainBoundaries(minXY.x, maxXY.x, BoundaryMode.FIXED);
 }
Ejemplo n.º 6
0
  private void readCfg() {
    if (pointD == null) {
      pointD = new PointD();
    }

    try {
      pointD.longitude = Double.valueOf(ModuleMgr.getCfgMgr().getString("LM_longitude", "1000"));
      pointD.latitude = Double.valueOf(ModuleMgr.getCfgMgr().getString("LM_latitude", "1000"));

      pointD.province = ModuleMgr.getCfgMgr().getString("LM_province", "");
      pointD.city = ModuleMgr.getCfgMgr().getString("LM_city", "");
      pointD.district = ModuleMgr.getCfgMgr().getString("LM_district", "");

      pointD.addr = ModuleMgr.getCfgMgr().getString("LM_addr", "");

      useFixPlace = ModuleMgr.getCfgMgr().getBoolean("LM_Fix_use", false);
      fixPlace.longitude =
          Double.valueOf(ModuleMgr.getCfgMgr().getString("LM_Fix_latitude", "1000"));
      fixPlace.latitude =
          Double.valueOf(ModuleMgr.getCfgMgr().getString("LM_Fix_longitude", "1000"));
    } catch (Exception e) {
      MMLog.printThrowable(e);
    }
  }