Questions tagged «oracle»

3
解决ArcObjects的IFeatureClass.Search(仅在具有直接连接的SDE上)中的内存泄漏?
ESRI支持人员说,他们已重现了该问题,并已打开一个错误报告(NIM070156)。 我已确定,有内存泄漏(在非托管堆内存)时发生在工具我的.NET / C#ArcMap中附加执行空间查询(返回ICursor从IFeatureClass.Search与ISpatialFilter查询过滤器)。不再需要所有COM对象时,它们将被释放(使用Marshal.FinalReleaseCOMObject)。 为了确定这一点,我首先建立了一个带有ArcMap.exe的“专用字节”,“虚拟字节”和“工作集”计数器的PerfMon会话,并注意到,随着执行查询的工具的每次使用,这三者均稳步增加(每次迭代大约增加 500KB) 。至关重要的是,只有在使用直接连接(ST_Geometry存储,Oracle 11g客户端和服务器)对SDE上的要素类执行此操作时,才会发生这种情况。使用文件地理数据库以及连接到使用应用程序连接的较旧SDE实例时,计数器保持不变。 然后,我使用LeakDiag和LDGrapher(在此博客文章中提供了一些指导)并三次登录Windows Heap Allocator:第一次加载ArcMap并选择工具对其进行初始化之后,运行了数十次该工具,然后运行了它几十次。 以下是LDGrapher的默认视图(总大小)中显示的结果: 这是红线的调用堆栈: 如您所见SgsShapeFindRelation2,sg.dll中的功能似乎是导致内存泄漏的原因。 据我了解,sg.dll是ArcObjects使用的核心几何库,SgsShapeFindRelation2大概是在应用空间过滤器的地方。 在我做其他事情之前,我只是想看看是否有人遇到了这个问题(或类似的问题),以及他们是否有能力解决这个问题。另外,仅通过直接连接发生这种情况的原因可能是什么?这听起来像是ArcObjects中的错误,配置问题还是编程问题? 这是产生此行为的方法的最低工作版本: private string GetValueAtPoint(IPoint pPoint, IFeatureClass pFeatureClass, string pFieldName) { string results = ""; ISpatialFilter pSpatialFilter = null; ICursor pCursor = null; IRow pRow = null; try { pSpatialFilter = new SpatialFilterClass(); pSpatialFilter.Geometry = …

6
在ArcMap中确定真实的曲线/弧?
在ArcMap中创建圆的唯一好方法是使用真实的圆弧(复合曲线),但是由于兼容性问题,我需要将圆弧转换为顶点(密集化)。我需要有关地理数据库和SDO_geometry(arcsde)的信息 是的,有办法。我用: UPDATE layer1 a SET arctype = 'compound' WHERE has_compound_curves(a.shape) <> 0; 然后使用ET Geotools逐层压实。 但是在Oracle或ArcMap中应该有更简单的方法来做到这一点,而我只是想浓缩具有真正弧线的要素。我不希望直线上有任何不必要的顶点,等等。 如何在ArcMap中标识真实的弧,以及如何尽可能快速,轻松地对其进行密化? 与Oracle SQL相同。

3
如何从arcpy / python确定存储类型(ST_Geom / Oracle)
我们正在将某些要素类从SDELOB(或某些较旧的二进制格式)迁移到ST_Geometry。当我们编写arcpy脚本以使用ESRI Migrate Storage Tool时,我们要测试是否已经有ST_Geom ...除了将钩子写入数据库,使用comtypes包等之外,还有谁知道一个简单的方法?确定这个的方法?
10 arcpy  oracle 
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.