美文网首页
视角相关

视角相关

作者: 46c039090c91 | 来源:发表于2019-04-16 13:39 被阅读0次

    1.全球视角


    //全球视角

            private void button16_Click(object sender, EventArgs e)

            {

                GSOCameraState camestate = new GSOCameraState();

                camestate.Longitude = 109.07286491474;

                camestate.Latitude = 37.3716091749733;

                camestate.Distance = 20732473.52;

                globeControl1.Globe.JumpToCameraState(camestate);

            }

    //正北方向

            private void button17_Click(object sender, EventArgs e)

            {

                GSOCameraState camestate = globeControl1.Globe.CameraState;

                camestate.Heading = 0.0;

                globeControl1.Globe.JumpToCameraState(camestate);

            }

    //垂直视角

            private void button18_Click(object sender, EventArgs e)

            {

                GSOCameraState camestate = globeControl1.Globe.CameraState;

                camestate.Tilt = 0.0;

                globeControl1.Globe.FlyToCameraState(camestate);

            }

    //锁定垂直视角

            bool isLockVerticalCamera = false;

            private void button20_Click(object sender, EventArgs e)

            {

                isLockVerticalCamera = !isLockVerticalCamera;

            }

    //地上视角

            private void button21_Click(object sender, EventArgs e)

            {

                if (globeControl1.Globe.CameraMode==EnumCameraMode.UnderGround||globeControl1.Globe.CameraMode==EnumCameraMode.Walk)

                    {

                    globeControl1.Globe.CameraMode = EnumCameraMode.Navigation;

                    GSOCameraState state = globeControl1.Globe.CameraState;

                    if (globeControl1.Globe.CameraState.Tilt < 95 &&globeControl1.Globe.CameraState.Tilt > 85)

                    {

                        state.Tilt = 85;

                    }

                    else

                    {

                        state.Tilt = 180 - globeControl1.Globe.CameraState.Tilt;

                    }

                    //跳转

                    globeControl1.Globe.JumpToCameraState(state);

                }

                else

                {

                    globeControl1.Globe.CameraMode = EnumCameraMode.Navigation;

                }

            }

    //地下视角

            private void button22_Click(object sender, EventArgs e)

            {

                globeControl1.Globe.CameraMode = EnumCameraMode.UnderGround;

                GSOCameraState state = globeControl1.Globe.CameraState;

                if (globeControl1.Globe.CameraState.Tilt < 95 &&

              globeControl1.Globe.CameraState.Tilt > 85)

                {

                    state.Tilt = 95;

                }

                else

                {

                    state.Tilt = 180 - globeControl1.Globe.CameraState.Tilt;

                }

                globeControl1.Globe.JumpToCameraState(state);

            }

    //行走视角

            private void button23_Click(object sender, EventArgs e)

            {

                globeControl1.Globe.CameraMode = EnumCameraMode.Walk;

            }

    相关文章

      网友评论

          本文标题:视角相关

          本文链接:https://www.haomeiwen.com/subject/duauwqtx.html