开发技术 - 超腾开源博客 | AI技术、开发实战与软件资源
本文整理了三维GIS开发从数据到展示全链路所需的成熟开源工具。内容包括:GDAL/OGR负责栅格与矢量数据读写,PROJ处理坐标系换算,GEOS提供几何运算支持;点云处理推荐PDAL、LAStools、CloudCompare及PotreeConverter;高程分析与空间插值可用SAGA GIS和PyKrige;通过CesiumLab可完成倾斜模型、BIM等向3D Tiles的转换,再由CesiumJS在网页端展示,国产方案还可用Mars3D。此外还涉及RTKLIB用于GNSS后处理、OpenCASCADE和FreeCAD做参数化建模。文章最后以速查表形式总结了各项任务的首选工具及官方地址。
100
0
发布于2026年9月6日
文章记录了排查ArcGIS数据导入Oracle数据库时遭遇ORA-00955错误的完整过程。问题表象是向SDE粘贴数据时提示对象名称已被占用,但未指明具体冲突对象。通过逐层排查,作者发现根因在于SDE的序列SEQ_ST_INDEX_ID失步,其当前值(169)远小于空间索引登记表中已使用的最大ID(945)。该序列负责分配空间索引编号,失步导致新索引编号与已有辅助表S<ID>_IDX$重名。此外还发现S0_IDX$是每次建索引的临时构建表,失败后残留会加剧问题。解决方案是将序列调整至最大ID之上并清理残留表。文章还顺带提及了ORA-28595错误(EXTPROC路径配置问题)及排查SQL清单。
标签: ArcGIS
70
0
发布于2026年9月1日
本文记录了在Vue 3 + Vite项目中,使用京东micro-app微前端框架加载Mars3D三维地球子应用时遇到的四个关键问题及解决方案。问题包括:Cesium全局变量在沙箱中丢失导致mars3d无法访问;ES Module脚本在with沙箱中因new Function执行而报import语法错误;micro-app自定义元素默认尺寸为0导致Canvas无法渲染;以及CESIUM_BASE_URL跨域导致WebGL SecurityError。作者通过micro-app的loader钩子改写代码、配置escapeProperties、设置元素尺寸和Vite代理等手段逐一解决。核心思路是理解沙箱对全局变量、脚本执行、DOM和网络请求的影响,并提供了完整的配置示例和调试技巧。
129
0
发布于2026年8月15日
本文介绍了GeoServer部署后通过Nginx代理访问时出现302重定向至80端口并报404错误的解决方案。问题源于GeoServer未感知代理地址,导致生成错误的重定向URL。解决方式有两种:若只需访问GeoServer发布的服务,可在全局设置或global.xml中配置proxyBaseUrl为代理后的地址;若需完整访问Web管理界面,则需修改Nginx配置,添加Host、X-Forwarded-*等请求头设置,并重载Nginx即可正常访问。
146
0
发布于2026年8月9日
ArcGIS Server 10.0的鉴权问题表明,调用MapServer服务时必须在URL参数中传递token,同时在Cookie中传递agstoken,且两者值必须一致。单独使用URL参数或Cookie均会导致498、401或499错误。正确方式为同时携带两者,服务才能正常返回图层信息。
385
0
发布于2026年6月10日
超图iServer WMTS服务默认只支持返回18层级及以下的瓦片,超过18层级会返回404错误。解决方法是通过iServer管理平台创建新的服务接口,并编辑配置文件增加自定义比例尺集。具体步骤包括:在服务管理中新增WMTS服务接口,选择Custom比例尺集;编辑iserver-services-interfaces.xml文件,添加0-25层级的比例尺参数(可根据天地图或谷歌底图选择对应比例尺);最后将新接口关联到地图服务并重启。修改后即可通过新接口地址访问19-25层级瓦片。注意配置文件需使用空格而非制表符,且比例尺必须与底图一致以避免偏移。
478
0
发布于2026年6月4日
本文介绍了在使用SuperMap iDesktop 11i和iServer 11i时,从ArcGIS导出的gdb文件导入超图数据后,空间查询REST API无法返回数据,而条件查询正常的问题。原因可能是导入时数据集内部元数据异常,导致空间索引无法正常建立。解决方法是通过复制数据集(如GasTiaoYaXiang)生成新数据集,删除原数据集后重命名,超图会重新生成完整的元数据和空间索引,从而恢复空间查询功能。操作前需确保磁盘空间充足并备份数据。
475
0
发布于2026年6月3日
Nuxt 4中修改HTML的lang属性为“zh-CN”时,常规方法(如配置app.head.htmlAttrs.lang或使用render:html钩子)均无效,因为系统默认采用“en”。根本原因在于Nuxt 4内部使用siteConfig管理语言设置,当currentLocale和defaultLocale为undefined时使用默认值。正确解决方案是在nuxt.config.ts中配置site.currentLocale或site.defaultLocale为“zh-CN”。文章通过错误示例与正确方法对比,总结了这一未被明确文档化的机制。
546
0
发布于2026年5月30日
本文介绍了当管线和管点数据超过10万条时,如何通过优化操作系统、Oracle数据库、ArcSDE、ArcGIS Server和ArcGIS Map等环节,提升ArcGIS Server 10.x的渲染速度。具体措施包括:将操作系统电源和处理器计划改为高性能和后台服务优先;将Oracle和ArcSDE进程优先级设为高,调整Oracle系统参数和表空间;为SDE表添加空间和属性索引;优化ArcGIS Server服务参数,如最大实例数和缓存设置;在ArcMap中设置图层显示比例尺、清除缓存、添加索引等。文章还指出了常见问题及解决方法,如32位Oracle的SGA限制和ArcGIS Server内存设置不当导致的REST API无法访问。这些优化对ArcGIS 10.0至10.8版本具有参考意义。
696
0
发布于2026年5月30日
本文介绍了如何使用Three.js结合卷积法实现平滑的物体描边效果,用于物体选中高亮或轮廓识别。文章指出传统法线延展法存在法线夹角大时描边断裂的缺陷,而卷积法通过图像处理中的卷积运算检测边缘,效果更自然。实现步骤包括:首先生成掩膜纹理(将目标物体渲染为白色,其他区域黑色),然后通过片元着色器进行卷积计算得到灰色边框,最后将边框叠加到原始场景上。该方法相比法线延展法更平滑,能有效避免断裂问题,提升三维场景视觉体验。
471
0
发布于2026年5月30日