首页 / 浏览问题 / 组件GIS / 问题详情
Query方法中指定对象的缓冲范围查询,其缓冲区参数是怎样默认的?
28EXP 2023年01月17日
supermap iobject .net 10i
****************************
public Recordset Query(
	Geometry geometry,用于查询的空间对象
	double bufferDistance,缓冲区的半径。单位与被查询数据集的单位一致
	CursorType cursorType 指定的查询结果记录集的游标类型
)

*********************************

该方法对线对象,默认的缓冲区端点类型(平头、圆头)、左右缓冲距离是怎样设置的?

1个回答

您好,根据您描述的 Query 接口,是用于查询数据集中落在指定空间对象的缓冲区内的记录。无论指定对象是否是线对象,都是直接设置缓冲区半径的,没有额外封装对线对象的缓冲模式设置。

如果您要单独设置线对象的缓冲模式后再进行空间查询的话,建议可以结合缓冲接口和空间查询接口自行实现具体的业务逻辑。

希望可以帮到您。

2,253EXP 2023年01月17日
感谢,只是想了解一下,目前我确实自己写了(缓冲区+查询);

//生成缓冲区,作为查询对象
queryParameter.SpatialQueryObject = BufferAnalystGeometry.CreateBuffer(geoLine1, bufferAnalystParameter);
//获取在set2中查询得到的要素集
Recordset bufferSet = set2.Query(queryParameter);

但如果该方法能直接达到上述代码的效果,应该有利于提高我的代码运行效率。
原本空间查询的缓冲区设置只是常规的基础设置,特别是针对线对象来说,其余缓冲参数都是使用的默认参数,根据您的需求来说,的确需要使用您目前的实现方式。
好的,万分感谢,祝您新年快乐
...