• arcgis for js学习之Graphic类


    arcgis for js学习之Graphic类

        <title>Graphic类</title>
        <meta charset="utf-8" />
        <!-- 说明:Graphic类
            一个graphic类包括四个基本的参数:一个geometer,一个symbol,attribute和infoTemplate.
            Grpaphic只能显示在GraphicsLayer对象中,即在GraphicLayer上监听Graphic对象。
            两种实例化的方式:
            new Graphic(geometry,symbol,attributes,infoTemplate)
            new Grpahic(json)
             -->
        <!-- data 属性:
            data-class-break:
            data-geometry-type:几何类型:point,polyline,polygon ,multipoint
            data-hidden:添加到图形中的节点时隐藏
            data-selected:添加到图形中的节点被选中
             -->
        <!-- 属性:
            attributes:属性字段值
            geometry:定义一个几何图形
            infoTemplate:infoWindow中显示的内容
            symbol:图形的样式
            visible:图形的可见性
             -->
        <!-- 方法:
            attr(name,value):修改属性值
            draw():绘制图形
            getContent():返回内容的值
            getDojoShape():
            getInfoTemplate():返回信息模板
            getLayer():返回一个图层的
            getNode():返回节点用于绘制图层
            getNodes():返回多个节点
            getShape():返回一个esri图形
            getShapes():。。。。
            getATitle():获取标题
            hide():隐藏图形
            setAttributes(attributes):定义图形的属性
            setGeometry(geometry):定义几何图形
            setInfoTemplate(infoTempate):定义一个infoWindow
            setSymbol(symbol):设置图形的象征
            show():显示图形
            toJson():将对象转换为json标的是的gis服务器
             -->
        <script>
            //实例一:最基本的图形
            require([
                "esri/geometry/Point", "esri/symbols/SimpleMarkerSymbol",
                "esri/Color", "esri/InfoTemplate", "esri/graphic"
            ], function (Point, SimpleMarkerSymbol, Color, InfoTemplate, Graphic) {
                var pt = new Point(xloc, yloc, map.spatialReference);
                var sms = new SimpleMarkerSymbol().setStyle(SimpleMarkerSymbol.STYLE_SQUARE).setColor(new Color([225, 0, 0, 0.5]));
                var attr = {
                    "Xcoord": evt.mapPoint.x,
                    "Ycoord": evt.mapPoint.y,
                    "Plant": "Mesa Mint"
                };
                var infoTemplate = new InfoTemplate("");
                var graphic = new Graphic(pt, sms, attr, infoTemplate);
            });
            //实例二:创建一个线图形
            require([
                "esri/graphic"
            ], function (Graphic) {
                var myLine = {
                    geometry: {
                        "path": [[[111, 222], [222, 333]]],
                        "spatialReference": { "wkid": 4326 }
                    },
                    "symbol": {
                        "color": [0, 0, 0, 255],
                        "width": 1,
                        "type": "esriSLS",
                        "style": "esriSLSSolid"
                    }
                };
                var gra = new Graphic(myLine);
            });
            //实例三:创建一个面图层
            require([
                "esri/graphic"
            ], function (Graphic) {
                var myPolygon = {
                    "geometry": {
                        "rings": [[[222, 333], [333, 222], [334, 666]]],
                        "spatialReference": { "wkid": 4326 }
                    },
                    "symbol": {
                        "color": [0, 0, 0, 64],
                        "outline": {
                            "outline": [0, 0, 0, 255],
                            "width": 1,
                            "type": "esriSLS",
                            "style": "esriSFSSolid"
                        }
                    }
                };
                var gra = new Graphic(myPolygon);
            });
            //实例四:创建多个点
            require([
                "esri/graphic"
            ], function (Graphic) {
                var myPoint = {
                    "geometry": {
                        "x": 333,
                        "y": 222,
                        "spatialReference": { "wkid": 4326 }
                    },
                    "attributes": {
                        "Xcoord": 222.222,
                        "Ycoord": 333.333,
                        "Plant": "Mesa Mint"
                    },
                    "symbol": {
                        "color": [222, 0, 0, 222],
                        "size": 12,
                        "angle": 0,
                        "xoffest": 0,
                        "yoffest": 0,
                        "type": "esriSMS",
                        "style": "esriSMSSquare",
                        "outline": {
                            "color": [0, 0, 0, 233],
                            "width": 1,
                            "type": "esriSLS",
                            "type": "esriSLSSOlid"
                        }
                    },
                    "infoTemplate": {
                        "title": "sssss",
                        "content": "latude:${Field}"
                    }
                };
                var gra = new Graphic(myPoint);
            })
        </script>
  • 相关阅读:
    mongodb里释放空间相关问题解决方案
    php计算多个集合的笛卡尔积实例详解
    Linux系统下,在文件中查找某个字符串
    Php中文件下载功能实现超详细流程分析
    jquery获取一组文本框的值
    C#找不到ConfigurationManager类
    php获取当前时间的毫秒数
    随机打乱一个数组
    mysql 语法积累
    linq给list集合数据分页
  • 原文地址:https://www.cnblogs.com/dongteng/p/6506975.html
Copyright © 2020-2023  润新知