国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久

顯示源代碼
添加管線
 開發文檔
            <!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>圓柱體、圓錐體</title>
 
    <link  rel='stylesheet' />
    <script src='http://ua.bigemap.com:30081/bmsdk/bigemap-gl.js/v1.1.0/bigemap-gl.js'></script>

</head>
<style>
    * {
        margin: 0;
        padding: 0;
    }

    #container {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 100%;
    }

    button {
        position: absolute;
        top: 20px;
        left: 20px;
    }
</style>

<body>
<div id="container"></div>
<div id="loadingOverlay">
    <h1>Loading...</h1>
</div>
<button onclick="drawstart()"><span class="btnval">開始繪制</span></button>
</body>
<script>
    bmgl.Config.HTTP_URL = 'http://ua.bigemap.com:30081/bmsdk/';
    var viewer = new bmgl.Viewer('container', {
        requestRenderMode: false,
        mapId: 'bigemap.dc-tian-w-satellite',
        infoBox:false,
        selectionIndicator:false,
    });
    viewer.scene.globe.depthTestAgainstTerrain = false;

    function computeCircle(radius) {
        var positions = [];
        for (var i = 0; i < 360; i+=30) {
            var radians = bmgl.Math.toRadians(i);
            positions.push(
                new bmgl.Cartesian2(
                    radius * Math.cos(radians),
                    radius * Math.sin(radians)
                )
            );
        }
        return positions;
    }

    function computeStar(arms, rOuter, rInner) {
        var angle = Math.PI / arms;
        var length = 2 * arms;
        var positions = new Array(length);
        for (var i = 0; i < length; i++) {
            var r = i % 2 === 0 ? rOuter : rInner;
            positions[i] = new bmgl.Cartesian2(
                Math.cos(i * angle) * r,
                Math.sin(i * angle) * r
            );
        }
        return positions;
    }
    var redTube = viewer.entities.add({
        polylineVolume: {
            positions: bmgl.Cartesian3.fromDegreesArray([
                -85.0,
                32.0,
                -85.0,
                36.0,
                -89.0,
                36.0,
            ]),
            shape: computeCircle(60000.0),
            material: bmgl.Color.RED,
        },
    });

    var greenBox = viewer.entities.add({
        polylineVolume: {
            positions: bmgl.Cartesian3.fromDegreesArrayHeights([
                -90.0,
                32.0,
                0.0,
                -90.0,
                36.0,
                100000.0,
                -94.0,
                36.0,
                0.0,
            ]),
            shape: [
                new bmgl.Cartesian2(-50000, -50000),
                new bmgl.Cartesian2(50000, -50000),
                new bmgl.Cartesian2(50000, 50000),
                new bmgl.Cartesian2(-50000, 50000),
            ],
            cornerType: bmgl.CornerType.BEVELED,
            material: bmgl.Color.GREEN.withAlpha(0.5),
            outline: true,
            outlineColor: bmgl.Color.BLACK,
        },
    });

    var blueStar = viewer.entities.add({
        polylineVolume: {
            positions: bmgl.Cartesian3.fromDegreesArrayHeights([
                -95.0,
                32.0,
                0.0,
                -95.0,
                36.0,
                100000.0,
                -99.0,
                36.0,
                200000.0,
            ]),
            shape: computeStar(7, 70000, 50000),
            cornerType: bmgl.CornerType.MITERED,
            material: bmgl.Color.BLUE,
        },
    });
    viewer.zoomTo(viewer.entities);
    var scene = viewer.scene;
    var handler = new bmgl.ScreenSpaceEventHandler(scene.canvas);
    var ellipsoid = scene.globe.ellipsoid; //得到當前三維場景的橢球體
    let firstclick = 1;
    let nowtube
    let tmpNowtube;
    let path = [];
    let tmpP=[];
    let drawstate = false
    handler.setInputAction(function (movement) {
        cartesian = viewer.camera.pickEllipsoid(movement.position, ellipsoid);//movement.endPosition
        if (cartesian&&drawstate) {
            //將笛卡爾坐標轉換為地理坐標
            var cartographic = bmgl.Cartographic.fromCartesian(cartesian);
            longitudeString = bmgl.Math.toDegrees(cartographic.longitude);
            latitudeString = bmgl.Math.toDegrees(cartographic.latitude);
            if (!nowtube){
                nowtube = viewer.entities.add({
                    polylineVolume: {
                        positions:new bmgl.CallbackProperty(function (){
                            return bmgl.Cartesian3.fromDegreesArray(path);
                        },false),
                        shape: computeCircle(10000),
                        material: bmgl.Color.RED,
                    },
                });
            }
            if (!tmpNowtube){
                viewer.entities.add({
                    polylineVolume: {
                        positions:new bmgl.CallbackProperty(function (){
                            return tmpP[0]? bmgl.Cartesian3.fromDegreesArray(tmpP):[];
                        },false),
                        shape: computeCircle(10000),
                        material: bmgl.Color.BLUE.withAlpha(0.7),
                    },
                });
            }
            path.push(longitudeString);
            path.push(latitudeString);
            tmpP[0]=longitudeString;
            tmpP[1]=latitudeString;
        }
    }, bmgl.ScreenSpaceEventType.LEFT_UP);

    handler.setInputAction(function (movement) {
        //通過指定的橢球或者地圖對應的坐標系,將鼠標的二維坐標轉換為對應橢球體三維坐標
        cartesian = viewer.camera.pickEllipsoid(movement.endPosition, ellipsoid);
        if (cartesian&&drawstate) {
            //將笛卡爾坐標轉換為地理坐標
            var cartographic = ellipsoid.cartesianToCartographic(cartesian);
            //將弧度轉為度的十進制度表示
            tmpP[2] = bmgl.Math.toDegrees(cartographic.longitude);
            tmpP[3] = bmgl.Math.toDegrees(cartographic.latitude);
        }
    }, bmgl.ScreenSpaceEventType.MOUSE_MOVE);

    function drawstart() {
        if (drawstate) {
            let btn = document.querySelector('.btnval')
            btn.innerHTML = "開始繪制";
            path.length>=4&&(nowtube.polylineVolume.positions=nowtube.polylineVolume.positions.getValue());
            path.length=0;
            tmpP.length=0;
        } else {
            let btn = document.querySelector('.btnval')
            btn.innerHTML = "結束繪制";
            if (nowtube){
                nowtube.polylineVolume.positions=new bmgl.CallbackProperty(function (){
                    return bmgl.Cartesian3.fromDegreesArray(path);
                },false);
            }
        }
        drawstate = !drawstate;
    }
</script>
</html>                                                                                                                    
国产久_亚欧精品一区_久久亚洲美女_99精品在线观看_日韩成人三级_久久精品久久久久
<code id="kseui"><acronym id="kseui"></acronym></code>
  • <abbr id="kseui"><tbody id="kseui"></tbody></abbr>
  • <button id="kseui"></button>
  • 亚洲一区二区在线免费观看| 国内外成人免费视频| 免费永久网站黄欧美| 国产精品有限公司| 欧美在线视屏| 亚洲久久一区| 91久久国产综合久久蜜月精品| 免费久久99精品国产自在现线 | 日韩中文字幕一区二区| 伊人久久大香线蕉精品| 亚洲精品极品| 精品一区二区三区视频日产| 亚洲v欧美v另类v综合v日韩v| 久久不射中文字幕| 国产精品初高中精品久久| 一区二区三区久久网| 日韩高清dvd| 伊人久久婷婷| 久久综合九色综合网站| 国内激情久久| 国产一区免费视频| 激情久久五月| 热re99久久精品国99热蜜月| 日韩午夜免费视频| 亚洲精华国产欧美| 亚洲一区二区三区高清不卡| 免费在线欧美黄色| 久久久夜精品| 欧美成人有码| 免费99视频| 激情综合在线| 亚洲精选91| 久久国产欧美精品| 国精品一区二区三区| 激情文学一区| 激情小说综合网| 亚洲第一黄色| 亚洲特色特黄| 一二三区精品| 欧美1区2区3区| 悠悠资源网久久精品| 亚洲欧美精品| 精品一卡二卡三卡四卡日本乱码 | 亚洲精品一品区二品区三品区| 亚洲美女毛片| 国产精品一区二区不卡视频| 亚洲一二三区在线| 国产精品视频免费观看| 秋霞毛片久久久久久久久| 欧美一区二区三区另类| 狠色狠色综合久久| 超碰97网站| 亚洲一区二区成人| 免费在线国产精品| 国产私拍一区| 欧美xxxx黑人又粗又长密月| 午夜精品一区二区三区四区 | 成人自拍网站| 久久综合中文色婷婷| 国产欧美高清| 亚洲茄子视频| 日本一区免费观看| 亚洲性图久久| 好吊妞www.84com只有这里才有精品| 欧美fxxxxxx另类| 激情一区二区三区| 午夜久久资源| 亚洲激情国产| 久久久久无码国产精品一区| 国内精品久久久久久久影视蜜臀 | 欧美国产高潮xxxx1819| 久久亚洲国产精品一区二区 | 国产精品大全| 好吊色欧美一区二区三区| 国产一区亚洲| 久久综合入口| 亚洲尤物影院| 中文字幕一区二区三区有限公司 | 99国产超薄丝袜足j在线观看| 中日韩在线视频| 久久久久久亚洲精品不卡4k岛国| 日韩影院一区| 99久久综合狠狠综合久久止| 欧美国产三区| 欧美国产综合视频| 美女精品在线| 好吊视频一区二区三区四区| 久久www免费人成精品| 国产精品亚洲不卡a| 美女久久一区| 狠狠色综合网站久久久久久久| 狠狠色噜噜狠狠狠狠色吗综合| 99热免费精品| 在线看视频不卡| 欧美极品一区| 999国产视频| 亚洲一区二区三区高清| 欧美激情自拍| 色女人综合av| 久久久久久亚洲精品不卡4k岛国 | 国产精品一页| 亚洲国产mv| 欧美精品二区三区四区免费看视频| 国产一区免费视频| 国产伦精品一区二区三区| 欧美三区美女| 玖玖视频精品| 亚洲一区二区高清视频| 亚洲福利精品| 一区免费视频| 激情偷拍久久| 亚洲经典在线看| 亚洲日本激情| 激情久久久久久| 亚洲国产日本| 亚洲国产一区在线| 伊人久久大香线蕉综合热线| 狠狠久久综合婷婷不卡| 黄色亚洲在线| 亚洲理论在线| 国产精品视频| 3d动漫精品啪啪一区二区三区免费 | 国产精品二区三区四区| 蜜桃av综合| 999热视频在线观看| 成人欧美一区二区三区黑人免费| 91成人免费视频| 国产精品视频免费一区二区三区| 国产高清在线精品一区二区三区| 超碰97人人在线| 久久久久久高清| 欧美资源一区| 国产精品一区在线播放| 91入口在线观看| 国内精品久久久久久久97牛牛| 欧美大香线蕉线伊人久久| 你懂的网址一区二区三区| 日本一区视频在线播放| 日韩激情久久| 欧美天堂亚洲电影院在线观看| 在线不卡欧美| 狂野欧美一区| 欧美一区二视频在线免费观看| 亚洲电影免费| 日韩视频免费| 国产精品果冻传媒潘| 青青草成人激情在线| 亚洲欧美日韩不卡一区二区三区| 欧美国产综合| 美女精品网站| 日本精品一区二区三区不卡无字幕| 亚洲一区二区不卡视频| 一区二区高清| 久久99九九| 亚洲午夜激情| 色女孩综合网| 久久三级福利| 日本一区二区在线| 99国产精品| 久久99国产精品| 欧美日韩日本网| eeuss一区二区三区| 少妇免费毛片久久久久久久久| 亚洲欧洲日本mm| 精品亚洲一区二区三区四区五区高| 无码免费一区二区三区免费播放 | 国产伦视频一区二区三区| 亚洲视频电影| 国产一区二区三区久久久久久久久| 国产女主播一区二区| 一区视频在线| 日韩精品国内| 久久免费一区| 欧美国产综合| 蜜桃91精品入口| 国产日韩一区二区三区| 日韩亚洲视频| 亚洲精品一区二区三区av| 美日韩精品免费| 亚洲精品一区二| 久久精品美女| 国产精品激情| 亚洲欧洲日韩精品| av一本久道久久波多野结衣| 一区在线电影| 九九九九九精品| 免费亚洲视频| 亚洲成人中文| 日韩高清国产一区在线观看| 91手机在线视频| 尹人成人综合网| 亚洲黄色一区二区三区| 国产激情美女久久久久久吹潮| 亚洲婷婷在线| 欧美777四色影| 三区精品视频| 久久久影院一区二区三区| 久久久夜精品| 国产毛片一区| 99视频一区|