网站建设验收汇报做网站和优化共多少钱?

张小明 2026/1/9 9:32:26
网站建设验收汇报,做网站和优化共多少钱?,计算机科学与技术,苏州设计网站公司三维场景中如何实现交互 一、介绍 MapGIS Objects SDK #xff1a; 是一款组件式地理信息开发平台#xff0c;提供全空间数据存储、管理、显示、编辑、查询、分析、制图输出等二三维一体化核心 GIS 功能#xff0c;提供 C、.NET、Java、Python 等开发资源#xff0c;接口…三维场景中如何实现交互一、介绍MapGIS Objects SDK 是一款组件式地理信息开发平台提供全空间数据存储、管理、显示、编辑、查询、分析、制图输出等二三维一体化核心 GIS 功能提供 C、.NET、Java、Python 等开发资源接口简单易用性能优越具备跨平台开发能力。本篇内容将知道您如何使用MapGIS Objects SDK、MapGIS Desktop SDK实现在三维场景中如何实现模型的捕捉功能。二、开发环境软件版本下载地址说明MapGIS 10 x64 All In One SDK for Windows10.7开发包下载地址MapGIS 提供的一款地理信息开发平台包含 MapGIS Objects Java 面向 Java 开发环境的跨平台组件式 GIS 开发资源。MapGIS 开发授权\开发授权下载地址MapGIS 针对开发者提供开发授权下载开发包并安装后还需要获取开发授权才能正常使用。IntelliJ IDEA2020.3 以上版本IDEA 下载地址一款适用于 Java 专业开发的集成开发环境IDE。JDK1.8JDK 下载地址JDK 是 Java 语言的软件开发工具包JDK 是整个 java 开发的核心它包含了 JAVA 的运行环境JVMJava 系统类库和 JAVA 工具。三、应用场景及功能实现在基于 MapGIS 二次开发库进行桌面端应用或插件开发的过程中常常需要实现用户自定义的交互功能。例如交互式绘制轨迹、绘制任意多边形实现地理要素选取、三维空间测量等场景都离不开对用户鼠标操作的响应与图形的动态绘制。为了实现这类交互逻辑MapGIS 提供了强大的底层交互支持机制。开发者可以通过继承 G3DBaseTool 基类重写其事件处理方法来自定义交互行为。该类封装了三维场景中的鼠标按下、移动、抬起等核心事件是构建自定义三维交互工具的基础。本文将以在三维场景中交互式绘制并添加一个面状几何模型为例详细介绍如何基于 G3DBaseTool 实现自定义交互流程。通过本示例用户将能够清晰掌握 MapGIS 三维开发中交互工具的设计思路与实现机制为后续开发更复杂的三维交互功能如拉框查询、动态建模、路径绘制等打下坚实基础。相关 API 的详细说明可参考MapGIS Objects Java 的开发入门文档api 文档参考 MapGIS Objects Java API。1.实现交互绘制工具publicclassInteractDrawToolextendsG3DBaseTool{privateDots3Ddots3D;privateGraphics3Dgraphics3D;publicCreateSurface(SceneControlsceneControl){super(sceneControl);this.dots3DnewDots3D();}Overridepublicvoidstart(){this.sceneControl.enableInputTool(false);this.sceneControl.setCursor(Cursor.CROSSHAIR);super.start();}Overridepublicvoidstop(){super.stop();this.clearTool();this.sceneControl.setCursor(Cursor.DEFAULT);this.sceneControl.enableInputTool(true);}OverridepublicbooleanonMouseDbClick(MouseEvente){if(e.getButton()MouseButton.PRIMARY){Dot3Ddot3DnewDot3D();booleanpickedthis.sceneControl.wpToLp((int)e.getX(),(int)e.getY(),dot3D);if(!picked){returnfalse;}this.dots3D.append(dot3D);}elseif(e.getButton()MouseButton.SECONDARY){if(this.dots3D.size()2){Dot3Ddt0this.dots3D.get(0);if(this.dots3D.size()2){Dots3DnewDtsnewDots3D();Dot3Ddt2this.dots3D.get(1);Dot3Ddt1newDot3D(dt0.getX(),dt2.getY(),dt0.getZ());Dot3Ddt3newDot3D(dt2.getX(),dt0.getY(),dt0.getZ());newDts.append(dt0);newDts.append(dt1);newDts.append(dt2);newDts.append(dt3);this.dots3DnewDts.clone();}this.dots3D.append(dt0);Scenescenethis.sceneControl.getMapGISScene();if(scenenull){returnfalse;}ListMap3DLayerlayerssceneControl.getMapGISScene().getEditLayer(EditLayerType.Surface,SelectLayerControl.Visible);if(layers.size()0){returnfalse;}GeoVarLinevarLinenewGeoVarLine(this.dots3D);GeoMultiLinemultiLinenewGeoMultiLine();multiLine.append(varLine);GeoPolygonpolygonnewGeoPolygon();polygon.append(multiLine);GeoAnySurfacesurfacenewGeoAnySurface();GeoModelCommon.createAnySurface(surface,this.dots3D,null,null,0,null);Map3DLayerlayerlayers.get(0);SFeatureClssfcls(SFeatureCls)layer.getData();if(sfclsnull){returnfalse;}SurfaceInfosurInfonewSurfaceInfo();surInfo.setFillClr(3);longoidsfcls.append(surface,null,surInfo);this.sceneControl.updateSceneByModelState(scene,(short)layer.getLayerRenderIndex(),(int)oid,ModelOperType.AppendMdl);this.dots3D.clear();}this.clearTool();}returnsuper.onMouseDbClick(e);}OverridepublicbooleanonMouseMoved(MouseEvente){if(this.dots3D.size()0){returnfalse;}Dot3Ddot3DnewDot3D();booleanpickedthis.sceneControl.wpToLp((int)e.getX(),(int)e.getY(),dot3D);if(!picked){returnfalse;}Dots3DnewDotsnewDots3D();newDots.append(this.dots3D);newDots.append(dot3D);this.drawPath(newDots,true);returnsuper.onMouseMoved(e);}/** * 清除数据 */privatevoidclearTool(){if(this.graphics3D!null){this.graphics3D.removeAll();this.sceneControl.deleteGraphics(this.graphics3D);this.graphics3Dnull;}}/** * 绘制路径 * * param pathDots * param clear */privatevoiddrawPath(Dots3DpathDots,booleanclear){if(clear){this.clearTool();}if(pathDotsnull||pathDots.size()1){return;}if(this.graphics3Dnull){this.graphics3Dthis.sceneControl.createGraphics();}Dots3DvirtualDotsnewDots3D();Dot3Ddt0pathDots.get(0);virtualDots.append(dt0);if(pathDots.size()2){Dots3DnewDtsnewDots3D();Dot3Ddt2pathDots.get(1);Dot3Ddt1newDot3D(dt0.getX(),dt2.getY(),dt0.getZ());Dot3Ddt3newDot3D(dt2.getX(),dt0.getY(),dt0.getZ());newDts.append(dt0);newDts.append(dt1);newDts.append(dt2);newDts.append(dt3);pathDotsnewDts.clone();virtualDots.append(dt2);}elseif(pathDots.size()3){Dots3DnewDtsnewDots3D();Dot3Ddt2pathDots.get(1);Dot3Ddt1newDot3D(dt0.getX(),dt2.getY(),dt0.getZ());Dot3Ddt3newDot3D(dt2.getX(),dt0.getY(),dt0.getZ());newDts.append(dt0);newDts.append(dt1);newDts.append(dt2);newDts.append(dt3);newDts.append(dt0);virtualDotsnewDts.clone();}else{virtualDots.append(pathDots.get(pathDots.size()-2));}pathDots.append(dt0);// region 折线ModelmodelnewModel();GeoMultiLinelinesnewGeoMultiLine();lines.append(newGeoVarLine(pathDots));lines.append(newGeoVarLine(virtualDots));model.addPolyLine(lines);LinInfo3DlinInfonewLinInfo3D();linInfo.setFillClr(6);model.setLine3DInfo(linInfo);this.graphics3D.append(model);// endregion}}
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

最优惠的建设网站建设企业展厅怎么设计

中国科学技术大学学位论文LaTeX模板完整使用教程 【免费下载链接】ustcthesis LaTeX template for USTC thesis 项目地址: https://gitcode.com/gh_mirrors/us/ustcthesis ustcthesis是中国科学技术大学官方推荐的学位论文LaTeX模板,完全符合研究生院和本科生…

张小明 2026/1/4 20:09:04 网站建设

.netcms网站管理系统动效做的好的网站

一文搞懂令牌桶限流:平均速率与突发流量的本质(分布式令牌桶实现思路) 在做后端系统设计、网关限流或高并发控制时,令牌桶(Token Bucket) 是一个绕不开的核心算法。很多人知道它“能限流”,但真…

张小明 2026/1/3 0:10:14 网站建设

网站如何在国外推广宁波seo优化公司

1976降水数据集(1940-2024)数据简介降水数据集覆盖1940至2024年的长时间序列降水数据集,具有极其重要的科学与应用价值。它为全球气候变化监测、极端天气事件(如洪涝、干旱)的规律识别与风险评估提供了宝贵基础&#x…

张小明 2026/1/4 23:15:34 网站建设

重庆最火的网站公司制作网站价格表

博主介绍 💗博主介绍:✌全栈领域优质创作者,专注于Java、小程序、Python技术领域和计算机毕业项目实战✌💗 👇🏻 精彩专栏 推荐订阅👇🏻 2025-2026年最新1000个热门Java毕业设计选题…

张小明 2026/1/6 6:02:08 网站建设

连锁销售公司网站的建设方案文创产品设计说明

Wan2.2-T2V-A14B在剧本可视化中的辅助作用 你有没有经历过这样的场景?编剧写完一场关键对白,导演皱着眉头反复读了几遍,却依然无法判断镜头节奏是否合适;美术指导根据文字描述搭建布景,结果与摄影指导的构图设想大相径…

张小明 2026/1/6 6:02:21 网站建设

银川网站建设那家好做个电商网站

手把手教你用ESP32搭建本地Wi-Fi热点:Soft-AP实战全解析你有没有遇到过这样的场景?手里的智能设备还没连上家里的Wi-Fi,怎么给它配网?或者在野外、地下室这种没有路由器的地方,想临时控制一个传感器系统,该…

张小明 2026/1/6 6:01:56 网站建设