flash背景墙生成方法及装置与流程

文档序号:16978319发布日期:2019-02-26 19:14阅读:220来源:国知局
flash背景墙生成方法及装置与流程

本发明涉及三维图形设计技术领域,特别涉及一种flash背景墙生成方法及装置。



背景技术:

现有技术中,三维模型已经用于各种不同的领域。在建筑业、医疗行业、电影行业、视频游戏产业,还有在科学研究及工程应用等领域都得到了广泛的应用。在创建任意3d图形的时候人们常常会使用3dmax软件进行建模,然而对于不熟悉3dmax软件的用户制作3d图形十分困难,尤其是3dmax软件的用户自定义的模型不容易操作,使用户制作3d图形的速度较慢。



技术实现要素:

本发明的目的在于提供一种flash背景墙生成方法及装置,可以实现让用户快速制作3d图形。

本发明是这样实现的,本发明第一方面提供一种flash背景墙生成方法,所述flash背景墙生成方法包括:

flash客户端获取二维图形信息和标注信息,并将所述二维图形信息中的二维图形坐标信息和所述标注信息发送至threejs引擎;

所述threejs引擎根据所述二维图形信息和所述标注信息生成三维立体图形数据,并将所述三维立体图形数据发送至所述flash客户端;

所述flash客户端根据所述三维立体图形数据生成三维立体图形,并根据所述二维图形信息中的二维图形地点信息将所述三维立体图形放置在用户绘制二维图形的位置。

本发明第二方面提供一种flash背景墙生成装置,所述flash背景墙生成装置包括flash客户端和threejs引擎;

所述flash客户端获取二维图形信息和标注信息,并将所述二维图形信息中的二维图形坐标信息和所述标注信息发送至threejs引擎;

所述threejs引擎根据所述二维图形信息和所述标注信息生成三维立体图形数据,并将所述三维立体图形数据发送至所述flash客户端;

所述flash客户端根据所述三维立体图形数据生成三维立体图形,并根据所述二维图形信息中的二维图形地点信息将所述三维立体图形放置在用户绘制二维图形的位置。

本发明提供一种flash背景墙生成方法,flash背景墙生成方法包括:flash客户端获取二维图形信息和标注信息,并将二维图形信息中的二维图形坐标信息和标注信息发送至threejs引擎;threejs引擎根据二维图形信息和标注信息生成三维立体图形数据,并将三维立体图形数据发送至flash客户端;flash客户端根据三维立体图形数据生成三维立体图形,并根据二维图形信息中的二维图形地点信息将三维立体图形放置在用户绘制二维图形的位置。本发明技术方案可以实现在flash客户端绘制二维图形,将二维图形的特征点数据发送至threejs引擎,在threejs引擎中构建用户自定义的背景墙几何体,通过将生成自定义背景墙的处理逻辑放在了flash客户端外部,突破flash客户端自身运算的限制将,更加快速的实现了三维几何体的生成。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例1提供的一种flash背景墙生成方法的流程图;

图2是本发明实施例1提供的一种flash背景墙生成方法中步骤s11的一种实施方式的流程图;

图3是本发明实施例1提供的一种flash背景墙生成方法中步骤s12的一种实施方式的流程图;

图4是本发明实施例1提供的一种flash背景墙生成方法中步骤s123的另一种实施方式的流程图;

图5是本发明实施例1提供的一种flash背景墙生成方法中步骤s13的另一种实施方式的流程图;

图6是本发明实施例2提供的一种flash背景墙生成装置的结构示意图;

图7是本发明实施例2提供的一种flash背景墙生成装置中的flash客户端的结构示意图;

图8是本发明实施例2提供的一种flash背景墙生成装置中的threejs引擎的结构示意图;

图9是本发明实施例2提供的一种flash背景墙生成装置中的threejs引擎的另一结构示意图;

图10是本发明实施例2提供的一种flash背景墙生成装置中的flash客户端的另一结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

为了说明本发明的技术方案,下面通过具体实施例来进行说明。

实施例1

为了便于理解,本发明实施例1提供一种flash背景墙生成方法,如图1所述,所述flash背景墙生成方法包括步骤s11、步骤s12以及步骤s13,具体如下:

步骤s11.flash客户端获取二维图形信息和标注信息,并将所述二维图形信息中的二维图形坐标信息和所述标注信息发送至threejs引擎。

在步骤s11中,flash客户端包括2d墙体界面、2d户型界面、3d户型界面以及渲染引擎数据构建模块,标注信息是指用户所设计的图形相关信息,例如,用户在flash客户端的2d墙体界面绘制自己想要的背景墙图形并设置凸起高度后,flash客户端采集用户所绘制的二维图形信息,二维图形信息包括二维图形坐标信息和二维图形地点信息,二维图形坐标信息是指二维坐标系中坐标,二维图形地点信息包括用户绘制二维图形的位置,flash客户端将二维图形坐标信息和所设置的凸起高度通过内部机制调用外部的引擎库发送到threejs渲染引擎。

作为一种实施方式,如图2所示,步骤s11还包括对孔洞信息的获取,即flash客户端获取二维图形信息和标注信息,并将所述二维图形信息中的二维图形坐标信息和所述标注信息发送至threejs引擎,包括步骤s110、步骤s111以及步骤s112,具体如下:

步骤s110.flash客户端获取二维图形信息和标注信息,判断是否包含孔洞信息,是,则执行步骤s111,否,则执行步骤s112。

步骤s111.将用户所绘制的多边形顶点坐标、标注生成立方体的高度信息以及孔洞的多边形顶点坐标发送至threejs引擎。

步骤s112.将用户所绘制的多边形顶点坐标以及标注生成立方体的高度信息发送至threejs引擎。

通过本实施方式,可以实现对用户设置的孔洞信息的检测及发送。

步骤s12.所述threejs引擎根据所述二维图形信息和所述标注信息生成三维立体图形数据,并将所述三维立体图形数据发送至所述flash客户端。

作为一种实施方式,如图3所示,步骤s12中所述threejs引擎根据所述二维图形信息和所述标注信息生成三维立体图形数据,包括步骤s121、步骤s122以及步骤s123,具体如下:

步骤s121.所述threejs引擎将所述多边形顶点坐标转换成三维坐标系中的世界坐标。

在步骤s121中,threejs引擎收到从flash端发来的背景墙的几何数据后,进行数据格式转换将2d的坐标点转换成自身所需要的世界坐标点。

步骤s122.所述threejs引擎根据所述世界坐标生成面片,并根据所述高度信息对所述面片进行拉伸后生成三维立体图形。

在步骤s122中,所述threejs引擎将所述世界坐标传入mesh构造器经过放样拉伸之后生成面片,mesh的构造函数是这样的:mesh(geometry,material)geometry是它的形状,material是它的材质,三维模型通常用三角形的网格来描述。

步骤s123.所述threejs引擎根据所述三维立体图形获取三维立体图形数据。

作为一种实施方式,如图4所示,步骤s123包括:

步骤s1231.所述threejs引擎将所述三维立体图形转化为缓存网格模型。

步骤s1232.所述threejs引擎根据所述缓存网格模型获取所述三维立体图形所通用的顶点信息、索引信息以及uv坐标信息。

在步骤s1231和步骤s1232中,将三维立体图形转化为缓存网格模型即buffergeometry,这个类是另一种创建几何体对象的方式,它将所有的数据包括顶点位置、法线、面、颜色、uv信息和其它的自定义属性存在缓冲区,这样可以减少gpu的负荷,buffergeometry同样也比geometry对象复杂,增加了使用的难度,这里的属性都是存放在数组中,需要从属性缓冲区中读原始数据,即buffergeometry中会包含3d图形所通用的顶点、索引、uv信息,获取这些信息然后将这些信息传给flash客户端。

步骤s13.所述flash客户端根据所述三维立体图形数据生成三维立体图形,并根据所述二维图形信息中的二维图形地点信息将所述三维立体图形放置在用户绘制二维图形的位置。

作为一种实施方式,如图5所示,步骤s13包括:

步骤s131.所述flash客户端根据所述顶点信息、所述索引信息以及所述uv坐标信息创建面片,并将所述面片组合生成三维立体图形。

在步骤s131中,flash客户端收到从threejs发送过来的渲染数据后按照flash场景内的渲染引擎的格式要求,将顶点、法线、uv数据取出来进行对相关转换,然后构建在flash显示的mesh面片并添加对应贴图返回完整的背景墙几何体信息,在3d户型界面显示出来。

步骤s132.所述flash客户端根据所述二维图形信息中的二维图形地点信息将所述三维立体图形通过旋转平移定位到用户绘制二维图形的位置。

本发明提供一种flash背景墙生成方法,flash背景墙生成方法包括:flash客户端获取二维图形信息和标注信息,并将二维图形信息中的二维图形坐标信息和标注信息发送至threejs引擎;threejs引擎根据二维图形信息和标注信息生成三维立体图形数据,并将三维立体图形数据发送至flash客户端;flash客户端根据三维立体图形数据生成三维立体图形,并根据二维图形信息中的二维图形地点信息将三维立体图形放置在用户绘制二维图形的位置。本发明技术方案可以实现在flash客户端绘制二维图形,将二维图形的特征点数据发送至threejs引擎,在threejs引擎中构建用户自定义的背景墙几何体,通过将生成自定义背景墙的处理逻辑放在了flash客户端外部,突破flash客户端自身运算的限制将,更加快速的实现了三维几何体的生成。

实施例2

本发明实施例2提供一种flash背景墙生成装置,如图6所示,所述flash背景墙生成装置包括:flash客户端20和threejs引擎21;

所述flash客户端20获取二维图形信息和标注信息,并将所述二维图形信息中的二维图形坐标信息和所述标注信息发送至threejs引擎21;

所述threejs引擎21根据所述二维图形信息和所述标注信息生成三维立体图形数据,并将所述三维立体图形数据发送至所述flash客户端20;

所述flash客户端20根据所述三维立体图形数据生成三维立体图形,并根据所述二维图形信息中的二维图形地点信息将所述三维立体图形放置在用户绘制二维图形的位置。

如图7所示,所述flash客户端20包括:

信息获取单元200,用于获取二维图形信息和标注信息;

孔洞判断单元201,用于判断是否包含孔洞信息,当判定结果为是时,则将用户所绘制的多边形顶点坐标、标注生成立方体的高度信息以及孔洞的多边形顶点坐标发送至threejs引擎21;当判定结果为否时,则将用户所绘制的多边形顶点坐标以及标注生成立方体的高度信息发送至threejs引擎21。

如图8所示,所述threejs引擎21包括:

坐标转换单元210,用于将所述多边形顶点坐标转换成三维坐标系中的世界坐标;

三维图形生成单元211,用于根据所述世界坐标生成面片,并根据所述高度信息对所述面片进行拉伸后生成三维立体图形;

图形数据获取单元212,用于根据所述三维立体图形获取三维立体图形数据。

如图9所示,所述threejs引擎21还包括:

模型获取单元213,用于将所述三维立体图形转化为缓存网格模型;

信息获取单元214,用于根据所述缓存网格模型获取所述三维立体图形所通用的顶点信息、索引信息以及uv坐标信息。

如图10所示,所述flash客户端还包括:

三维图形创建单元202,用于根据所述顶点信息、所述索引信息以及所述uv坐标信息创建面片,并将所述面片组合生成三维立体图形;

位置转换单元203,用于根据所述二维图形信息中的二维图形地点信息将所述三维立体图形通过旋转平移定位到用户绘制二维图形的位置。

上述计算机设备中模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1