关闭

skyline中点击读取属性信息

1768人阅读 评论(0) 收藏 举报
分类:
JavaScript:
var IIM = sgworld.Window.GetMouseInfo();
    var Point = sgworld.Window.PixelToWorld(IIM.X, IIM.Y, -1);
    if (Point.ObjectID != "") {
        var obj = sgworld.ProjectTree.GetObject(Point.ObjectID);
        if (obj.ObjectType == 33) {
            var FName = obj.FeatureAttributes.GetFeatureAttribute("FileName").Value;
移动端:
            int x = X;
            int y = Y;
            //IScreenPointInfo
            IWorldPointInfo pointInfo = ISGWorld.getInstance().getWindow().PixelToWorld(x, y);
            double XX = pointInfo.getPosition().getX();
            double YY = pointInfo.getPosition().getY();
            String objID = pointInfo.getObjectID();
            if(objID!=""){
                ITerraExplorerObject iobj = ISGWorld.getInstance().getProjectTree().GetObject(objID);
                String idd = iobj.getID();
                int typee = iobj.getObjectType();
                if(typee == 33){
                    IFeature iff = iobj.CastTo(IFeature.class);
                    int count = iff.getFeatureAttributes().getCount();
                    String name  = iff.getFeatureAttributes().GetFeatureAttribute("NAME").getValue();
                }
                
            }
      遍历属性:
            public boolean OnLButtonDown(int Flags, int X, int Y) {
            // TODO Auto-generated method stub
            int x = X;
            int y = Y;
            //IScreenPointInfo
            IWorldPointInfo pointInfo = ISGWorld.getInstance().getWindow().PixelToWorld(x, y);
            double XX = pointInfo.getPosition().getX();
            double YY = pointInfo.getPosition().getY();
            String objID = pointInfo.getObjectID();
            if(objID!=""){
                ITerraExplorerObject iobj = ISGWorld.getInstance().getProjectTree().GetObject(objID);
                String idd = iobj.getID();
                int typee = iobj.getObjectType();
                if(typee == 33){
                    IFeature iFeature = iobj.CastTo(IFeature.class);
                    int count = iFeature.getFeatureAttributes().getCount();
                    //String name  = iFeature.getFeatureAttributes().GetFeatureAttribute("NAME").getValue();
                    IFeatureAttributes iFeatureAttributes =  iFeature.getFeatureAttributes();
                    StringBuffer stuf =    new StringBuffer(); 
                    for(int i=0; i < count; i++){
                        Object obj = iFeatureAttributes.get_Item(i);
                        IFeatureAttribute ifeatureAttr = ((TEIUnknownHandle) obj).CastTo(IFeatureAttribute.class);
                        String name = ifeatureAttr.getName();
                        String value = ifeatureAttr.getValue();
                        stuf.append(name + ":" + value );
                    }
                    System.out.println(stuf.toString());
                }
                
            }
1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:101142次
    • 积分:2606
    • 等级:
    • 排名:第14570名
    • 原创:142篇
    • 转载:143篇
    • 译文:1篇
    • 评论:4条
    最新评论