问题描述
- VS2010与Google Earth COM API,SetCamera异常
-
用三个滑块分别实现视高、倾斜角、方位角的设置,刷新视图,在m_geApplication.SetCamera(m_geCamera,1.5); 这个地方出现问题。程序代码如下:
dlgRange=pAdjustDlg->m_slide1.GetPos();
dlgTilt=(pAdjustDlg->m_slide2.GetPos()*90)/100;
dlgAzimuth=((pAdjustDlg->m_slide3.GetPos()-50)*180)/50;
if(dlgRange>50)
{
geMutiple=((dlgRange-50)/10.0+1.0)*10; //计算缩小倍数
}
else if(dlgRange<50)
{
geMutiple=(10.0/((50-dlgRange)+10))*0.1; //计算放大倍数}
else
{
geMutiple=1.0;
}BOOL m_geTimer; //m_geTimer用来控制Timer()函数 m_geTimer=pAdjustDlg->IsTimer; //判断是否停止调整操作 if(m_geTimer==FALSE) { KillTimer(1); //关闭定时器 } m_geCamera.SetRange(geMutiple*oldRange); //重新设置当前视高 m_geCamera.SetTilt((double)dlgTilt); //重新设置当前倾斜视角 m_geCamera.SetAzimuth((double)dlgAzimuth); //重新设置当前方位视角
** m_geApplication.SetCamera(m_geCamera,1.5); //刷新视图**前面的代码都正常,调试到这一句就出现异常。我用try……catch……捕获到的是 COleDispatchException这个异常,我不懂这个是什么意思。求各位大侠帮忙看看,挺着急的。
解决方案
估计就是SetCamera所传入的参数有问题
时间: 2024-11-02 21:05:19