首页 / 浏览问题 / 三维GIS / 问题详情
ProjectionImage.addClipRegion怎么用呢
68EXP 2020年07月22日
ProjectionImage.addClipRegion怎么用呢

1个回答

您好,ProjectionImage.addClipRegion的用法如下

其他关于ProjectionImage的用法可参考API文档http://support.supermap.com.cn:8090/webgl/Build/Documentation/ProjectionImage.html?classFilter=ProjectionImage以及示例代码http://support.supermap.com.cn:8090/webgl/examples/editor.html#RTSP

1,545EXP 2020年07月23日
还是不太会用这个方法,有没有例子可以参考一下呢

您好,
                var handlerPolygon = new Cesium.DrawHandler(viewer, Cesium.DrawMode.Polygon, 0);
                handlerPolygon.drawEvt.addEventListener(function (result) {
                    var array = [].concat(result.object.positions);
                    var positions = [];
                    for (var i = 0, len = array.length; i < len; i++) {

                        var cartographic = Cesium.Cartographic.fromCartesian(array[i]);
                        var longitude = Cesium.Math.toDegrees(cartographic.longitude);
                        var latitude = Cesium.Math.toDegrees(cartographic.latitude);
                        var h = cartographic.height;
                        if (positions.indexOf(longitude) == -1 && positions.indexOf(latitude) == -1) {
                            positions.push(longitude);
                            positions.push(latitude);
                            positions.push(h);
                        }
                    }
                    handlerPolygon.polygon.show = false;
                    handlerPolygon.polyline.show = false;
                    projectionImage.addClipRegion({ name: 'test', position: positions });
                    handlerPolygon.deactivate();
                });

这段代码中您在绘制好多边形后,多边形的顶点位置由点串形式输入,具体可参考示例代码http://support.supermap.com.cn:8090/webgl/examples/editor.html#projectionImage

proImg.setClipMode(Cesium.ModifyRegionMode.CLIP_INSIDE)

proImg.setClipMode(1)

这样两种定义裁剪模式是有问题的,是不是跟webgl版本有关呢

...