本文整理汇总了C++中KmlFactory::CreateLookAt方法的典型用法代码示例。如果您正苦于以下问题:C++ KmlFactory::CreateLookAt方法的具体用法?C++ KmlFactory::CreateLookAt怎么用?C++ KmlFactory::CreateLookAt使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类KmlFactory
的用法示例。
在下文中一共展示了KmlFactory::CreateLookAt方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: SetLookAt
void OGRLIBKMLLayer::SetLookAt( const char* pszLookatLongitude,
const char* pszLookatLatitude,
const char* pszLookatAltitude,
const char* pszLookatHeading,
const char* pszLookatTilt,
const char* pszLookatRange,
const char* pszLookatAltitudeMode )
{
KmlFactory *poKmlFactory = m_poOgrDS->GetKmlFactory();
LookAtPtr lookAt = poKmlFactory->CreateLookAt();
lookAt->set_latitude(CPLAtof(pszLookatLatitude));
lookAt->set_longitude(CPLAtof(pszLookatLongitude));
if( pszLookatAltitude != NULL )
lookAt->set_altitude(CPLAtof(pszLookatAltitude));
if( pszLookatHeading != NULL )
lookAt->set_heading(CPLAtof(pszLookatHeading));
if( pszLookatTilt != NULL )
{
double dfTilt = CPLAtof(pszLookatTilt);
if( dfTilt >= 0 && dfTilt <= 90 )
lookAt->set_tilt(dfTilt);
else
CPLError(CE_Warning, CPLE_AppDefined, "Invalid value for tilt: %s",
pszLookatTilt);
}
lookAt->set_range(CPLAtof(pszLookatRange));
if( pszLookatAltitudeMode != NULL )
{
int isGX = FALSE;
const int iAltitudeMode =
kmlAltitudeModeFromString(pszLookatAltitudeMode, isGX);
if( iAltitudeMode != kmldom::ALTITUDEMODE_CLAMPTOGROUND &&
pszLookatAltitude == NULL )
{
CPLError(CE_Warning, CPLE_AppDefined,
"Lookat altitude should be present for altitudeMode = %s",
pszLookatAltitudeMode);
}
else if( isGX )
{
lookAt->set_gx_altitudemode(iAltitudeMode);
}
else
{
lookAt->set_altitudemode(iAltitudeMode);
}
}
m_poKmlLayer->set_abstractview(lookAt);
}