CN109544701A - 一种用于三维模型显示和编辑的sdk - Google Patents
一种用于三维模型显示和编辑的sdk Download PDFInfo
- Publication number
- CN109544701A CN109544701A CN201811362040.5A CN201811362040A CN109544701A CN 109544701 A CN109544701 A CN 109544701A CN 201811362040 A CN201811362040 A CN 201811362040A CN 109544701 A CN109544701 A CN 109544701A
- Authority
- CN
- China
- Prior art keywords
- model
- data
- sdk
- management
- scene
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
Landscapes
- Engineering & Computer Science (AREA)
- Architecture (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
- Telephone Function (AREA)
Abstract
本发明提供一种用于三维模型显示和编辑的SDK。所述SDK至少包括:SDK状态机制流程设计;数据结构设计,包括用于物品或场景的单个模型数据、及用于方案的作品数据,分解模型与场景之间的逻辑关系;服务器数据管理模块ServerData,封装加载流程和封装交互逻辑。该SDK基于模型展示和模型交互,设计模块化模型数据和作品数据,独立性好、易迭达,能够实现三维模型在移动端的快速显示和编辑。
Description
技术领域
本发明涉及三维模型编辑技术,特别涉及一种设计模块化模型数据和作品数据、封装加载流程和封装交互逻辑、能够实现三维模型在移动端快速显示和编辑的SDK。
背景技术
随着社会和科技的进步,信息展示和交流慢慢从文字、图片和视频向三维甚至多维转变,从而衍生了大量新的技术,如虚拟现实(VR)、增强现实(AR)、混合显示(MR)等,而这些技术又离不开三维模型,三维模型创建后不一定能适应任何地方任何情况,手机作为当今通讯时代大众化的生活用品,其三维模型的显示和编辑仍存在很多不足:
1、由于三维模型一般数据量大,其显示或编辑业务逻辑相对复杂,因此使得三维模型的对接对于一般的应用而言相当不方便,编程工程庞大,缺乏简单快捷的对接方式;
2、模型显示方面,大多手机端需借助flash或其他插件,但加载速度慢,显示不顺畅;
3、模型编辑方面,需要借助第三方软件,目前模型编辑比较通用的方案是将模型导回到制作软件进行修改编辑(如3DMAX、Maya、Blender、C4D等三维建模软件),编辑完再导出相应的格式使用,造成使用相对繁琐。
发明内容
本发明的目的是为了解决上述技术问题,提供一种用于三维模型显示和编辑的SDK,该SDK基于模型展示和模型交互,设计模块化模型数据和作品数据,封装加载流程和封装交互逻辑,同时分解模型与场景之间的逻辑关系,独立性好、易迭达,能够实现三维模型在移动端的快速显示和编辑。
为了解决上述现有技术问题,本发明的技术方案是:
本发明一种用于三维模型显示和编辑的SDK,所述SDK至少包括:
SDK状态机制流程设计;
数据结构设计,包括用于物品或场景的单个模型数据、及用于方案的作品数据,分解模型与场景之间的逻辑关系;
服务器数据管理模块ServerData,封装加载流程和封装交互逻辑。
所述SDK状态机制流程设计为:a.GameCenter控制模型编辑初始化启动,DeployConfigMng项目配置;b.Wait待机状态验证初始化数据;c.创建数据管理与数据描述对象,创建相机控制状态机;d.SceneFsm启动场景状态机;e.LoadModel模型加载;f.RunGame开始运行状态;g.UnloadGame退出模型展示编辑。
所述数据结构设计包括用于物品或场景的单个模型数据、及用于方案的作品数据,所述单个模型数据包括后台ID、Andriod下载地址与Code码、IOS下载地址与Code码、WebGL下载地址与Code码、模型类型、模型名字、位置、旋转角度、模型大小、模型缩放,所述模型类型包括场景模型、物品模型,所述作品数据包括展示类型、模型列表、相机移动速度,所述展示类型包括单个物品展示、场景展示与方案展示,所述模型列表用于选择多个单个模型数据。
所述移动端模型编辑方法包括IOS端编辑方法和Android端编辑方法,所述IOS端编辑方法将老子云SDK中的Xcode工程作为一个windows合并到自身的Xcode工程,所述Android端编辑方法将老子云SDK中的Android工程作为一个view合并到自身的Android工程;
所述服务器数据管理模块ServerData包括服务器网络连接任务管理、数据下载管理、数据存储管理,所述网络连接任务管理包括根据参数与url建立下载任务、设置所有下载模型云数据的统一出入口、设置同时下载任务数和下载速度,所述数据下载管理包括统一的下载函数定义、Json数据结构定义、数据返回统一出入口,所述数据存储管理包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件。
所述SDK还包括:
相机管理,所述相机管理用于所有对相机的操作的管理,包括管理相机视图画布、相机移动旋转、相机特效、后期可根据手机配置动态设置效果;
选中效果,包括模型选中效果、尺寸显示;
错误码提示管理,包括错误码提示管理、多语言切换;
模型打包管理,包括模型打包设置、新设计将交互打包到模型本身上、碰撞模拟;
输出输入控制管理,用于所有信息事件收集和通知,包括屏幕手势输入、对接SDK参数输入、跨平台和语言通信和事件通知;
本地测试管理,包括本地测试系统;
模型工具管理,包括管理选中、标尺、模型位置计算辅助交互逻辑;
API文档编写,包括API文档详细描述对接流程、参数传递;
模型交互标签管理,包括交互标签修改;
模型拖入场景,包括模型拖入预判定;
模型移动与旋转,包括模型在场景中移动与旋转;
模型点击,包括场景中模型点击选中逻辑与点击交互、物体模型点击交互;
模型与场景交互判定管理,包括不同模型在不同场景对象做相应交互;
模型与模型交互,包括不同模型与不同模型之间相应交互;
兼容现有Tag标签模型,实现包括场景与物品模型本身的门和抽屉交互;
数据管理系统,用于作品数据管理,包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件;
模型交互系统,用于模型拖入预判定,包括模型拖入自动计算大小、模型拖入位置判定和是否能放置、模型拖入对应效果判定。
所述SDK还包括Xcode工程、Android工程、SDK导入和应用方法;
所述SDK导入和应用方法包括:IOS移动端编辑方法,将所述SDK中的Xcode工程作为一个windows合并到自身的Xcode工程;Android移动端编辑方法,将所述SDK中的Android工程作为一个view合并到自身的Android工程;Unity方式编辑方法,对接封装加载,封装交互文档设计自身的加载流程与UI。
本发明一种用于三维模型显示和编辑的SDK,其有益效果有:
1、基于模型展示,模型交互设计SDK;
2、剥离所有业务逻辑,剥离所有UI,只实现模型加载,显示,以及交互功能;
3、封装加载流程,封装交互逻辑,后期可能会加密,Dll等密封措施。
4、SDK的通用性,支持多端快速对接,在SDK基础上灵活的二次开发。
5、分解模型与场景之间的逻辑关系,增加独立性,易迭代;
6、SDK将已模块为最小单元,减少后期被反编译可能。
附图说明
图1,为本发明一种用于三维模型显示和编辑的SDK的状态机制流程设计的示意图;
图2,为本发明一种用于三维模型显示和编辑的SDK的数据结构设计图;
图3,为本发明一种用于三维模型显示和编辑的SDK的总体流程图。
具体实施方式
下面结合实施例对本发明作进一步说明:
实施例,请参见图1、图2、图三:
本发明一种用于三维模型显示和编辑的SDK,所述SDK是一个适用于移动端应用,可跨平台和二次开发的模型展示第三方插件;用户使用该SDK展示三维模型;IOS:将老子云SDK中的Xcode工程作为一个windows合并到自身的Xcode工程即可;Android:将老子云SDK中的Android工程作为一个view合并到自身的Android工程即可;Unity:对接封装加载,封装交互文档设计自身的加载流程与UI。
所述SDK至少包括:
SDK状态机制流程设计;
数据结构设计,包括用于物品或场景的单个模型数据、及用于方案的作品数据,分解模型与场景之间的逻辑关系,新设计中只有作品数据。去除主模型概念与数据;去除单个场景模型展示的概念。作品展示兼容了单个场景模型,单个模型的展示,以未保存的作品表示;
服务器数据管理模块ServerData,封装加载流程和封装交互逻辑。
所述SDK还包括Xcode工程、Android工程、SDK导入和应用方法;
所述SDK导入和应用方法包括:IOS移动端编辑方法,将老子云SDK中的Xcode工程作为一个windows合并到自身的Xcode工程;Android移动端编辑方法,将老子云SDK中的Android工程作为一个view合并到自身的Android工程;Unity方式编辑方法,对接封装加载,封装交互文档设计自身的加载流程与UI。
所述SDK状态机制流程设计为:a.GameCenter控制模型编辑初始化启动;b.StartLoad启动状态参数加载或设置,并下载初始化数据;c.验证数据,创建用户ID人物状态机;d.SceneFsm启动场景状态机;e.LoadModel模型加载;f.RunGame开始运行状态;g.UnloadGame退出模型编辑。
所述数据结构设计包括用于物品或场景的单个模型数据、及用于方案的作品数据,所述单个模型数据包括后台ID、Andriod下载地址、IOS下载地址、WebGL下载地址、模型类型、模型名字、模型来源、位置、旋转角度、模型大小、图片地址,所述模型类型包括场景模型、物品模型,所述模型来源包括扫描、自制,所述作品数据包括作品ID、图片地址、描述、模型列表、名字、作者、作品创建时间,所述作者包括作者ID、作者名字,所述模型列表用于选择多个单个模型数据,
所述移动端模型编辑方法包括IOS端编辑方法和Android端编辑方法,所述IOS端编辑方法将老子云SDK中的Xcode工程作为一个windows合并到自身的Xcode工程,所述Android端编辑方法将老子云SDK中的Android工程作为一个view合并到自身的Android工程;
所述服务器数据管理模块ServerData包括服务器网络连接任务管理、数据下载管理、数据存储管理,所述网络连接任务管理包括根据参数与url建立下载任务、设置所有下载模型云数据的统一出入口、设置同时下载任务数和下载速度,所述数据下载管理包括统一的下载函数定义、Json数据结构定义、数据返回统一出入口,所述数据存储管理包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件。
所述SDK还包括:
相机管理,所述相机管理用于所有对相机的操作的管理,包括管理相机视图画布、相机移动旋转、相机特效、后期可根据手机配置动态设置效果;
选中效果,包括模型选中效果、尺寸显示;
错误码提示管理,包括错误码提示管理、多语言切换;
模型打包管理,包括模型打包设置、新设计将交互打包到模型本身上、碰撞模拟;
输出输入控制管理,用于所有信息事件收集和通知,包括屏幕手势输入、对接SDK参数输入、跨平台和语言通信和事件通知;
本地测试管理,包括本地测试系统;
模型工具管理,包括管理选中、标尺、模型位置计算辅助交互逻辑;
API文档编写,包括API文档详细描述对接流程、参数传递;
模型交互标签管理,包括交互标签修改;
模型拖入场景,包括模型拖入预判定;
模型移动与旋转,包括模型在场景中移动与旋转
模型点击,包括场景中模型点击选中逻辑与点击交互、物体模型点击交互
模型与场景交互判定管理,包括不同模型在不同场景对象做相应交互;
模型与模型交互,包括不同模型与不同模型之间相应交互;
兼容现有Tag标签模型,实现包括场景与物品模型本身的门和抽屉交互;
数据管理系统,用于作品数据管理,包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件;
模型交互系统,用于模型拖入预判定,包括模型拖入自动计算大小、模型拖入位置判定和是否能放置、模型拖入对应效果判定。
以上已将本发明做一详细说明,以上所述,仅为本发明之较佳实施例而已,当不能限定本发明实施范围,即凡依本申请范围所作一般技术手段的增减或替换,皆应仍属本发明涵盖范围内。
Claims (6)
1.一种用于三维模型显示和编辑的SDK,其特征在于,所述SDK至少包括:
SDK状态机制流程设计;
数据结构设计,包括用于物品或场景的单个模型数据、及用于方案的作品数据,分解模型与场景之间的逻辑关系;
服务器数据管理模块ServerData,封装加载流程和封装交互逻辑。
2.根据权利要求1所述的一种用于三维模型显示和编辑的SDK,其特征在于,所述SDK状态机制流程设计为:a.GameCenter控制模型编辑初始化启动,DeployConfigMng项目配置;b.Wait待机状态验证初始化数据;c.创建数据管理与数据描述对象,创建相机控制状态机;d.SceneFsm启动场景状态机;e.LoadModel模型加载;f.RunGame开始运行状态;g.UnloadGame退出模型展示编辑。
3.根据权利要求1所述的一种用于三维模型显示和编辑的SDK,其特征在于,所述数据结构设计包括用于物品或场景的单个模型数据、及用于方案的作品数据,所述单个模型数据包括后台ID、Andriod下载地址与Code码、IOS下载地址与Code码、WebGL下载地址与Code码、模型类型、模型名字、位置、旋转角度、模型大小、模型缩放,所述模型类型包括场景模型、物品模型,所述作品数据包括展示类型、模型列表、相机移动速度,所述展示类型包括单个物品展示、场景展示与方案展示,所述模型列表用于选择多个单个模型数据。
4.根据权利要求1所述的一种用于三维模型显示和编辑的SDK,其特征在于,所述服务器数据管理模块ServerData包括服务器网络连接任务管理、数据下载管理、数据存储管理,所述网络连接任务管理包括根据参数与url建立下载任务、设置所有下载模型云数据的统一出入口、设置同时下载任务数和下载速度,所述数据下载管理包括统一的下载函数定义、Json数据结构定义、数据返回统一出入口,所述数据存储管理包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件。
5.根据权利要求1所述的一种用于三维模型显示和编辑的SDK,其特征在于,所述SDK还包括:
相机管理,所述相机管理用于所有对相机的操作的管理,包括管理相机视图画布、相机移动旋转、相机特效、后期可根据手机配置动态设置效果;
选中效果,包括模型选中效果、尺寸显示;
错误码提示管理,包括错误码提示管理、多语言切换;
模型打包管理,包括模型打包设置、新设计将交互打包到模型本身上、碰撞模拟;
输出输入控制管理,用于所有信息事件收集和通知,包括屏幕手势输入、对接SDK参数输入、跨平台和语言通信和事件通知;
本地测试管理,包括本地测试系统;
模型工具管理,包括管理选中、标尺、模型位置计算辅助交互逻辑;
API文档编写,包括API文档详细描述对接流程、参数传递;
模型交互标签管理,包括交互标签修改;
模型拖入场景,包括模型拖入预判定;
模型移动与旋转,包括模型在场景中移动与旋转;
模型点击,包括场景中模型点击选中逻辑与点击交互、物体模型点击交互;
模型与场景交互判定管理,包括不同模型在不同场景对象做相应交互;
模型与模型交互,包括不同模型与不同模型之间相应交互;
兼容现有Tag标签模型,实现包括场景与物品模型本身的门和抽屉交互;
数据管理系统,用于作品数据管理,包括作品中模型列表的增删改查、所有数据的处理和存储、数据变更通知和分发事件;
模型交互系统,用于模型拖入预判定,包括模型拖入自动计算大小、模型拖入位置判定和是否能放置、模型拖入对应效果判定。
6.根据权利要求1所述的一种用于三维模型显示和编辑的SDK,其特征在于,所述SDK还包括Xcode工程、Android工程、SDK导入和应用方法;
所述SDK导入和应用方法包括:IOS移动端编辑方法,将所述SDK中的Xcode工程作为一个windows合并到自身的Xcode工程;Android移动端编辑方法,将所述SDK中的Android工程作为一个view合并到自身的Android工程;Unity方式编辑方法,对接封装加载,封装交互文档设计自身的加载流程与UI。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811362040.5A CN109544701B (zh) | 2018-11-15 | 2018-11-15 | 一种三维模型显示和编辑的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811362040.5A CN109544701B (zh) | 2018-11-15 | 2018-11-15 | 一种三维模型显示和编辑的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109544701A true CN109544701A (zh) | 2019-03-29 |
CN109544701B CN109544701B (zh) | 2022-11-04 |
Family
ID=65847741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811362040.5A Active CN109544701B (zh) | 2018-11-15 | 2018-11-15 | 一种三维模型显示和编辑的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109544701B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111985013A (zh) * | 2020-06-05 | 2020-11-24 | 沈振江 | 一种基于混合现实的建筑设计系统 |
CN115268667A (zh) * | 2022-07-18 | 2022-11-01 | 北京数字冰雹信息技术有限公司 | 一种网页端数字孪生三维场景控制方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731452A (zh) * | 2005-08-04 | 2006-02-08 | 浙江大学 | 基于x3d标准的物体动态交互建模方法 |
US20160246899A1 (en) * | 2015-02-25 | 2016-08-25 | Onshape Inc. | Multi-User Cloud Parametric Feature-Based 3D CAD System |
CN107861714A (zh) * | 2017-10-26 | 2018-03-30 | 天津科技大学 | 基于IntelRealSense的汽车展示应用的开发方法及系统 |
-
2018
- 2018-11-15 CN CN201811362040.5A patent/CN109544701B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1731452A (zh) * | 2005-08-04 | 2006-02-08 | 浙江大学 | 基于x3d标准的物体动态交互建模方法 |
US20160246899A1 (en) * | 2015-02-25 | 2016-08-25 | Onshape Inc. | Multi-User Cloud Parametric Feature-Based 3D CAD System |
CN107861714A (zh) * | 2017-10-26 | 2018-03-30 | 天津科技大学 | 基于IntelRealSense的汽车展示应用的开发方法及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111985013A (zh) * | 2020-06-05 | 2020-11-24 | 沈振江 | 一种基于混合现实的建筑设计系统 |
CN115268667A (zh) * | 2022-07-18 | 2022-11-01 | 北京数字冰雹信息技术有限公司 | 一种网页端数字孪生三维场景控制方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN109544701B (zh) | 2022-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109993829B (zh) | 一种模块化虚拟舞台 | |
CN106846468B (zh) | 一种基于ros系统的机械臂建模及运动规划实现方法 | |
CN103019702B (zh) | 一种可视化三维显示控制编辑系统和方法 | |
CN103020340A (zh) | 基于web的3D家居设计系统 | |
CN102819861A (zh) | 电力系统三维设备场景建模方法 | |
KR20120045744A (ko) | 체험형 학습 콘텐츠 저작 장치 및 방법 | |
CN108932751A (zh) | 快速创建vr/ar/mr内容的系统及方法 | |
CN110929310A (zh) | 一种云端图纸智能生成及编辑方法 | |
CN112802192B (zh) | 一种可实时交互的三维图形图像播放器 | |
CN110796712A (zh) | 素材处理方法、装置以及电子设备、存储介质 | |
CN109544701A (zh) | 一种用于三维模型显示和编辑的sdk | |
CA3139657C (en) | Apparatus for multi-angle screen coverage analysis | |
CN110765518A (zh) | 室内环境模拟方法及相关设备 | |
CN111047708A (zh) | 一种基于混合现实的复杂设备高风险项目训练系统 | |
US11625900B2 (en) | Broker for instancing | |
CN102929592A (zh) | 基于监控系统的设备的三维交互的方法以及装置 | |
CN112258637A (zh) | 非遗文化项目虚拟展示方法、系统、介质、设备及终端 | |
CN115115787B (zh) | 一种基于DirectVR的二维图纸转3D模型方法 | |
CN107515587A (zh) | 人机交互操作仿真的系统、方法、装置、设备和存储介质 | |
CN111897530B (zh) | 基于ue4平台的ui系统及方法 | |
CN112233208B (zh) | 机器人状态处理方法、装置、计算设备和存储介质 | |
Song et al. | Hands-on: rapid interactive application prototyping for media arts and stage production | |
KR20130035485A (ko) | 3차원 가상현실 동영상 편집시스템 및 편집방법 | |
CN202771416U (zh) | 一种可视化3d编程装置 | |
Broll et al. | Interactive bits: Prototyping of mixed reality applications and interaction techniques through visual programming |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |