首页 / 浏览问题 / 云GIS / 问题详情
icient for openlayer 加载rest4490服务报错
20EXP 2021年09月13日

openlayers设置为4490坐标系

使用TileSupermapRest叠加iserver上发布的4490地图服务会报错:

Cannot read property 'getOrigin' of null

1个回答

您这个报错是因为读取不到中心点属性,您能把您的完整代码粘贴出来吗,我这边看下
2,248EXP 2021年09月13日
        proj4.defs("EPSG:4490", "+proj=longlat +ellps=GRS80 +no_defs");
        ol.proj.proj4 && ol.proj.proj4.register(proj4);
        var proj1=new ol.proj.Projection({
            code:"EPSG:4490",
            units:"degrees", 
        })
        ol.proj.addProjection(proj1);
        ol.proj.addCoordinateTransforms("EPSG:4326","EPSG:4490",
        function(coordinate){
            return(proj4("EPSG:4326","EPSG:4490",coordinate))
        },
        function(coordinate){
            return(proj4("EPSG:4490","EPSG:4326",coordinate))
        }
        )
  
        var proj4490=new ol.proj.get("EPSG:4490")
        var map, url = "http://localhost:8090/iserver/services/map-4490/rest/maps/New_Region@test";
        var map = new ol.Map({
            target: 'map',
            controls: ol.control.defaults({ attributionOptions: { collapsed: false } })
                .extend([new ol.supermap.control.Logo()]),
            view: new ol.View({
                center: [-21.13 , 21.63],
                zoom: 2,
                projection: proj4490
            })
        });
        // 添加图层
        var layer = new ol.layer.Tile({
            source: new ol.source.TileSuperMapRest({
                url: url,
                wrapX: true
            }),
            projection: proj4490
        });
        map.addLayer(layer);

...