发表用户:bj_meng
收集整理:James.Liu
相关讨论:http://www.mygis.com.cn/forum/dispbbs.asp?boardID=11&ID=2984
信息原始来源:bj_meng

文章标题:在jbuilderX中建立MapXtreme for Java4.7应用(bj_meng学习笔记 2004-5-23)

2004-05-23
终于找到了一个倒霉鬼,让我把他打个浠里哗啦的,七零八落呀,真是痛快死人啦。唉,我实在太佩服自己了,连引领入门的师父也不留一点情面——铁石心肠?不过没办法,球场如战场,我不进洞谁进洞,阿弥陀佛——胜造七级浮屠呀。
不过不要被表面的文字所迷惑,所谓的七七八八的,其实是我赢七盘他赢八盘。说这个实话,其实是想表述一个意思:我们造字的祖先实在是太聪明了。为我们提供这么一个绝妙的制造浮夸虚假的工具,不亲眼目睹是万万不可轻易相信的。
前段时间,回了一趟老家——好边鄙的地方呀,说难听点就是连兔子都不拉X的地方。倒是党的政策宣传得比较地及时呀——正所谓忽如一夜春风来,大康小康到处吹。江同志要用XX年达到小康水平的话音刚落下,我们那就立即冒出了十几户小康生活的富翁啦——响应号召嘛。难道这回又是农村包围城市不成?Tmd,比俺都要快,看来俺真是白混了这几年啦,Tnn的!连我大哥也过上了,真是没有天理呀。仔细一问,原来是这么一回事:小康小康,其实是小缸生活(诸位不要见笑,我们那普通话比较差,还需要继续普及9年义务教育呀,“康”“缸”是不分的,俺就是个自然灾害的典型,正应了那句古训:天作孽不可违,自作孽不可活。普通话都推广有半个世纪啦,俺还BPDT不分,真没前途。令人怀疑我那个大学文凭是不是来路不正,倒是E四居然糊里糊涂地就过啦,^_^)。这两年,家乡干旱,粮食减产,以前需要用大缸才能盛得下的粮食,用小缸就行啦。原来“小康”生活是这么一回事。^_^,看来俺这几年也还没白混。临走时还不大放心,特意检查一下俺大哥家缸们的情况,小的也就半满,大的空空如野。如实存照。
不小心写了这么多的废话。又是一个bt一天的开始。
以上纯属个人的胡思乱想,写出来聊以一慰,大家不可较真。

1、 读取指定坐标位置图元的信息,该坐标从jsp页面传递进来,为所指定的值,目前暂时没有对该功能进行封装,只是验证其正确性,刚开始时,我对其用transformScreenToNumeric转换,老找不对图元,后来直接查找图层的中心位置的图元又可以找到,才发现原因。原来从jsp页面传递进来的坐标已经符合searchAtPoint的要求啦。
俺就受这句话影响:queryPoint - The location from which to perform the search. The point must be in the MapJ Numeric Coordinate System。『红色部分是我个人错误的看法,提请大家注意』

      myMap = new MapJ();
      myMap.loadMapDefinition("e:/share/wh/wh.mdf");
      FeatureLayer layer = (FeatureLayer) myMap.getLayers().get("wh_area");
      ArrayList col = new ArrayList();
      col.add("wh_area");
      if (layer.isSelectable() == false) layer.setSelectable(true);
      /**
       * 读取参数信息
*/
   //调试的数据已经转换好啦
      Double ptx = new Double(0.001245284282174516);
      Double pty = new Double(-8.695112191230891e-4);
      DoublePoint screenpoint = new DoublePoint(ptx.doublevalue(),
                                                pty.doublevalue());
      System.out.println("ptx = " + ptx.toString() + " pty=" + pty.toString());
DoublePoint mappoint = screenpoint; 
//**从页面传递进来的坐标需要调用:myMap.transformScreenToNumeric(screenpoint);
      System.out.println("ptx = " + mappoint.x + " pty=" + mappoint.y);
      FeatureSet fs = layer.searchAtPoint(col, mappoint, null);
      RewindableFeatureSet rfs = new RewindableFeatureSet(fs);
      Feature f = null;
      f = rfs.getNextFeature();
      System.out.println("before while");
      if ( (f) != null) {
        // Print out all of the Attributes of each Feature
        System.out.println("in while");
        System.out.print(f.getAttribute(0));
        System.out.println("");
      }
      fs.dispose();
2、 今天公司的网络断啦,网管又不在,就先不上传了。
3、 回去休息。