社区
其它技术问题
帖子详情
做过GIS开发的进来!!!
无花无酒,天涯人
2011-11-02 05:31:41
做过GI的大神给点开发经验啦~~~。
还有我现在需要在打开layer,然后给一个矩形的坐标,然后要在这个layer里面找到和这个矩形所有相交的点。这样需要用到哪几个函数呢??
求一份GDAL、PROJ、OGR、GEOS库的中文手册、或者一些应用程序。就此拜谢了~~~~~~~~~~~~~~~·
...全文
175
11
打赏
收藏
做过GIS开发的进来!!!
做过GI的大神给点开发经验啦~~~。 还有我现在需要在打开layer,然后给一个矩形的坐标,然后要在这个layer里面找到和这个矩形所有相交的点。这样需要用到哪几个函数呢?? 求一份GDAL、PROJ、OGR、GEOS库的中文手册、或者一些应用程序。就此拜谢了~~~~~~~~~~~~~~~·
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
无花无酒,天涯人
2011-11-10
打赏
举报
回复
谁能告诉我一下:我传入4坐标分别是start_x,start_y,end_x,end_y,或者经纬度start_lon,start_lat,end_lon,end_lat。来创建一个矩形么?
无花无酒,天涯人
2011-11-09
打赏
举报
回复
怎么没一个大牛来帮帮忙呢?
gzyyan249
2011-11-07
打赏
举报
回复
楼主你去这里找找http://www.sharpgis.com/,你的问题我无法解决,不好意思
无花无酒,天涯人
2011-11-04
打赏
举报
回复
,在源码上面没有看到类似的例子.....!
huangzhe10
2011-11-04
打赏
举报
回复
只能是自己看源码了,呵呵
无花无酒,天涯人
2011-11-04
打赏
举报
回复
这样是输出了这个.shp里面"点"的所有"坐标"。
然后我看到源码里边有一个 Union、Intersection()函数
OGRGeometry * OGRGeometry::Union ( const OGRGeometry * poOtherGeom )
virtual OGRGeometry * Intersection (const OGRGeometry *) const
调用这个函数。返回一个新的Geometry.
然后就输出。
想法是这样的。不知道思路是否正确。
无花无酒,天涯人
2011-11-04
打赏
举报
回复
[Quote=引用 2 楼 gzyyan249 的回复:]
是矩形框相交的点还是在矩形框内的点??
[/Quote]
是矩形框内的和框相交的点。
下面是一段源码。你看看
#include <ogrsf_frmts.h>
int main()
{
OGRRegisterAll();
OGRDataSource *poDS;
poDS = OGRSFDriverRegistrar::Open( "point.shp", FALSE );
if( poDS == NULL )
{
//const char *openerrmsg = CPLGetLastErrorMsg();
printf( "Open failed.\n "/*why=%s\n", openerrmsg*/ );
exit( 1 );
}
OGRLayer *poLayer;
poLayer = poDS->GetLayerByName( "point" );
OGRFeature *poFeature;
poLayer->ResetReading();
while( (poFeature = poLayer->GetNextFeature()) != NULL )
{
OGRFeatureDefn *poFDefn = poLayer->GetLayerDefn();
int iField;
for( iField = 0; iField < poFDefn->GetFieldCount(); iField++ )
{
OGRFieldDefn *poFieldDefn = poFDefn->GetFieldDefn( iField );
if( poFieldDefn->GetType() == OFTInteger )
printf( "%d,", poFeature->GetFieldAsInteger( iField ) );
else if( poFieldDefn->GetType() == OFTReal )
printf( "%.3f,", poFeature->GetFieldAsDouble(iField) );
else if( poFieldDefn->GetType() == OFTString )
printf( "%s,", poFeature->GetFieldAsString(iField) );
else
printf( "%s,", poFeature->GetFieldAsString(iField) );
}
OGRGeometry *poGeometry;
poGeometry = poFeature->GetGeometryRef();
if( poGeometry != NULL
&& wkbFlatten(poGeometry->getGeometryType()) == wkbPoint )
{
OGRPoint *poPoint = (OGRPoint *) poGeometry;
printf( "%.3f,%3.f\n", poPoint->getX(), poPoint->getY() );
}
else
{
printf( "no point geometry\n" );
}
}
OGRDataSource::DestroyDataSource( poDS );
}
gzyyan249
2011-11-04
打赏
举报
回复
还有你的layer也是点吗??
gzyyan249
2011-11-04
打赏
举报
回复
是矩形框相交的点还是在矩形框内的点??
无花无酒,天涯人
2011-11-02
打赏
举报
回复
自己先顶一下~~~~~~~~~
VC++通用
GIS
功能
开发
解决方案
它的功能部分解决了
GIS
开发
的诸多普遍问题和关键技术(如数据结构,地图显示,基于DEM的地形分析等),可适用于城市规划、地质勘探、土地丈量、水利枢纽、农田建设,乃至其他构建于城市图和地形图之上的
GIS
类软件
开发
...
组件技术在
GIS
_
开发
中的应用.pdf
### 组件技术在
GIS
开发
中的应用 #### 一、引言 随着计算机技术的迅猛发展,新概念和新技术不断涌现,组件式软件技术已经成为当前软件技术的重要趋势之一。组件技术的出现标志着面向对象技术步入了一个更为成熟且...
3D与4D
GIS
的基础研究及展示
此外,还可以将其他软件如AutoCAD® Civil3D和Autodesk® Revit中的详细模型整合
进来
,扩展模型的属性并添加时间戳,以进行更为深入的数据分析和设计。 在城市规划和土地使用方面,3D与4D
GIS
同样发挥着重要作用。...
tianditu.rar_
gis
_tianditu_天地图
Arc
GIS
是Esri公司
开发
的一款强大的
GIS
软件,它允许用户进行地图制作、数据分析、空间建模等多种功能。在Arc
GIS
中加载天地图作为底图,可以为用户提供准确的地理位置背景,便于进行各种地理分析工作。这一过程涉及到...
基于Mapbox的地图应用:矢量图层加载与展示技术解析及其地理信息系统(
GIS
)应用场景
适用人群:
GIS
开发
者或者想要深入了解Web
GIS
开发
技术的学习者。 使用场景及目标:为从事地理空间数据分析、城市规划等领域工作的专业人士提供技术支持和方法指导,帮助他们快速实现在线可视化地理信息系统解决方案...
其它技术问题
3,882
社区成员
9,046
社区内容
发帖
与我相关
我的任务
其它技术问题
C/C++ 其它技术问题
复制链接
扫一扫
分享
社区描述
C/C++ 其它技术问题
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章