当前位置: 首页>>代码示例>>C++>>正文


C++ OGRSFDriver::Open方法代码示例

本文整理汇总了C++中OGRSFDriver::Open方法的典型用法代码示例。如果您正苦于以下问题:C++ OGRSFDriver::Open方法的具体用法?C++ OGRSFDriver::Open怎么用?C++ OGRSFDriver::Open使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在OGRSFDriver的用法示例。


在下文中一共展示了OGRSFDriver::Open方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: OpenShapefile

void CShapefileLayer::OpenShapefile(const std::string& filename)
{
	m_FileName_ = filename;
	OGRRegisterAll();
	std::string pszDriverName = "ESRI Shapefile";
	//CPLSetConfigOption("SHAPE_ENCODING", "");				//支持中文

	OGRSFDriver* poDriver = OGRSFDriverRegistrar::GetRegistrar()->GetDriverByName(pszDriverName.c_str());
	m_pDataSource_ = poDriver->Open(m_FileName_.c_str(), false);				//打开shapefile文件,获取数据源
	if(m_pDataSource_ == NULL)
	{
		m_bExistFile_ = false;
		return;
	}
	m_pLayer_ = m_pDataSource_->GetLayer(0);						//获取shapefile第0层
	if(m_pLayer_ == NULL)
	{
		m_bExistFile_ = false;
		return ;
	}
	int theFeatureCount = m_pLayer_->GetFeatureCount();				//层里面的数据数量
    OGRFeature *poFeature = NULL;									//读取的数据指针
	m_pLayer_->ResetReading();										//重新读取
	m_ShapefileType_ = m_pLayer_->GetLayerDefn()->GetGeomType();	//类型
	m_bExistFile_ = true;
}
开发者ID:vtronxy,项目名称:MapEngineES2.0,代码行数:26,代码来源:ShapefileLayer.cpp

示例2:

JNIEXPORT jlong JNICALL Java_es_gva_cit_jogr_OGRSFDriver_openNat
  (JNIEnv *env, jobject obj, jlong cPtr, jstring pszName, jboolean bUpdate){
  	
  	OGRSFDriver 			*drv = (OGRSFDriver *) 0 ;
  	OGRDataSource 			*ds;
  	long 					ptr_ds;
  	drv = *(OGRSFDriver **)&cPtr;
	
  	const char *name = env->GetStringUTFChars( pszName, 0);
  	if(bUpdate==true)
  		ds=drv->Open(name,1);
  	else
	  	ds=drv->Open(name,0);
  	env->ReleaseStringUTFChars( pszName, name);
  	
  	if(ds==NULL)return -1;
  	
  	ptr_ds = (long)&(*ds);
  	return (jlong)ptr_ds;
  	
  }
开发者ID:,项目名称:,代码行数:21,代码来源:


注:本文中的OGRSFDriver::Open方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。