您的位置:首页 > 其它

skyline中点击读取属性信息

2015-11-18 14:54 330 查看
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());
                }
                
            }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: