CN104254878A - 用于生成3d对象的设备和方法 - Google Patents

用于生成3d对象的设备和方法 Download PDF

Info

Publication number
CN104254878A
CN104254878A CN201380022288.6A CN201380022288A CN104254878A CN 104254878 A CN104254878 A CN 104254878A CN 201380022288 A CN201380022288 A CN 201380022288A CN 104254878 A CN104254878 A CN 104254878A
Authority
CN
China
Prior art keywords
generated
coordinate value
generate
quadrilateral mesh
transformation matrix
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
Application number
CN201380022288.6A
Other languages
English (en)
Other versions
CN104254878B (zh
Inventor
沈煜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Telecom Co Ltd
SK Planet Co Ltd
Original Assignee
SK Telecom Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by SK Telecom Co Ltd filed Critical SK Telecom Co Ltd
Priority to CN201710537098.8A priority Critical patent/CN107256207B/zh
Publication of CN104254878A publication Critical patent/CN104254878A/zh
Application granted granted Critical
Publication of CN104254878B publication Critical patent/CN104254878B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/005Tree description, e.g. octree, quadtree
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/30Polynomial surface description
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Architecture (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)

Abstract

本发明涉及一种用于生成三维对象的设备和方法。所述设备包括:三维对象生成单元,所述三维对象生成单元用于通过将二维网页的结构性元素网格化和划分为多个多边形来生成三维对象;以及三维对象操纵处理单元,当在生成的三维对象中输入对象操纵信号时,所述三维对象操纵处理单元通过响应于所述对象操纵信号改变各个网格元素的顶点坐标值来生成3D变换矩阵,并且通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的三维对象。

Description

用于生成3D对象的设备和方法
技术领域
本发明涉及一种用于生成3D对象的设备和方法,更具体地说,涉及一种3D对象生成设备和方法,用于通过将2D网页的结构性元素网格化和将2D网页的结构性元素划分为多个多边形而生成3D对象,当在生成的3D对象中接收到对象操纵信号时通过响应于对象操纵信号改变单独的网格元素的顶点坐标值而生成3D变换矩阵,以及通过将预定的层叠样式表(CSS)变换应用于生成的3D变换矩阵来生成变换的3D对象。
背景技术
随着自动化的近期进展和朝着信息社会的发展,计算机图形快速地应用于宽的应用领域。具体地说,使用3D图形的领域突然增加。
在多数常规的3D对象***中,利用3D多边形处理方法生成并操纵3D对象。多边形意指这样一种多边形,即,用于表示3D计算机图形中的立体形状的最小单元。
同时,使用WebGL作为用于在网页中提供3D技术的代表性方法。WebGL是与作为最基本和普遍的3D图形技术的OpenGL相似的技术,并且可广泛用于3D游戏中,这是因为可通过低级别的开发环境生成和操纵特定形状的多边形对象。
然而,WebGL的缺点在于其仅支持PC环境中的最新的浏览器,诸如Chrome,并且其因为性能和兼容性的原因在移动装置中不受支持。
发明内容
技术目的
已提出本发明以解决以上问题,并且本发明的目的是提供一种用于生成3D对象的设备和方法,通过利用四边形形式的四边形作为基本元素来仿真三角形形式的多边形,所述设备和方法能够仅利用“旋转”、“平移”和“缩放”(即,基本3D变换技术)以及“扭曲”(即,2D变换技术)生成和操纵多边形形式的3D对象。
本发明的另一目的是提供一种用于生成3D对象的设备和方法,其可利用移动装置中可支持的CSS 2D/3D变换技术实现诸如神奇效果、3D变形和翻页效果的效果,并且还能够基于多边形生成和操纵3D对象。
本发明的又一目的是提供一种用于生成3D对象的设备和方法,即使在仅支持基本3D变换的有限的环境(例如,移动网络)中,所述设备和方法也能够基于具有特定形式的多边形、通过生成和操纵3D对象提供各种用户界面和图形效果。
本发明的另一目的是提供一种用于生成3D对象的设备和方法,其能够通过基于网络的元素的网格化生成基于多边形的3D对象。
技术方案
根据用于实现所述目的的本发明的一方面,提供了一种3D对象生成设备,该3D对象生成设备包括:3D对象生成单元,所述3D对象生成单元用于通过将2D网页的结构性元素网格化和划分为多个多边形来生成3D对象;以及3D对象操纵处理单元,当在生成的3D对象中输入对象操纵信号时,所述3D对象操纵处理单元通过响应于所述对象操纵信号改变各个网格元素的顶点坐标值来生成3D变换矩阵,并且通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
3D对象生成单元可包括:四边形网格元素生成模块,所述四边形网格元素生成模块用于通过将所述网页的结构性元素等分为特定数量的四边形网格来生成四边形网格元素;以及3D对象生成模块,所述3D对象生成模块用于沿着对角线方向将各个生成的四边形网格元素的顶点划分为两个三角形、复制四边形网格元素、以及通过控制透明度以使得仅看见两个四边形的不同的三角形区来生成多个多边形。
四边形网格元素生成模块可在所述网页的所述结构性元素是图像的情况下从服务提供设备接收对应于原始图像的网格形式的单独的图像,或者通过浏览器内的内部操作将原始图像变换为位图形式并生成网格图像,并且在所述网页的所述结构性元素不是图像的情况下利用界定标签生成所述四边形网格元素。
3D对象生成模块可将除其中看见结构性元素的三角形以外的区的透明度设为“0”,从而仅在两个对应的四边形的不同区的三角形中看见结构性元素。
3D对象操纵处理单元可包括:坐标值存储器模块,所述坐标值存储器模块用于存储形成了通过所述3D对象生成单元所生成的3D对象的所述各个网格元素的顶点坐标值;3D变换矩阵生成模块,所述3D变换矩阵生成模块用于当输入所述对象操纵信号时响应于所述对象操纵信号改变所述各个网格元素的顶点坐标值,并利用改变后的顶点坐标值和存储在所述坐标值存储器模块中的所述顶点坐标值来生成所述各个网格元素的所述3D变换矩阵;以及3D对象变换模块,所述3D对象变换模块用于通过将所生成的3D变换矩阵应用于所述CSS变换来生成所述变换的3D对象。
根据本发明的另一方面,提供了一种通过3D对象生成设备生成和操纵2D网页的结构性元素成为3D对象的方法中的3D对象生成方法,该方法包括以下步骤:(a)通过将所述网页的所述结构性元素等分为特定数量的四边形网格来生成四边形网格元素;以及(b)沿着对角线方向连接各个生成的四边形网格元素的顶点,将所连接的四边形网格元素划分为两个三角形,复制所述四边形网格元素,并且通过控制透明度以使得仅看见两个四边形的不同的三角形区来生成所述3D对象。
提供了一种3D对象生成方法,该方法还包括以下步骤:在所述步骤(b)之后,当在所生成的3D对象中输入对象操纵信号时,响应于所述对象操纵信号改变所述各个网格元素的顶点坐标值,并且利用改变后的顶点坐标值和改变前的顶点坐标值生成所述各个网格元素的3D变换矩阵;以及通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
在步骤(b)中,在所述网页的所述结构性元素是图像的情况下,可从服务提供设备接收到对应于原始图像的网格形式的单独的图像,或者原始图像通过浏览器中的内部操作变换为位图形式,并且可生成网格图像,而在所述网页的所述结构性元素不是图像的情况下可以利用界定标签生成所述四边形网格元素。
根据本发明的又一方面,提供了一种其上以程序形式记录了用于生成3D对象的方法的电子装置可读记录介质,该方法包括以下步骤:通过将网页的结构性元素等分为特定数量的四边形网格来生成四边形网格元素;沿着对角线方向连接各个生成的四边形网格元素的顶点,将所连接的四边形网格元素划分为两个三角形,复制所述四边形网格元素,并且通过控制透明度以使得仅在不同的三角形区中看见两个四边形来生成3D对象;当在所生成的3D对象中输入对象操纵信号时,响应于所述对象操纵信号改变每一个所述网格元素的顶点坐标值,并且利用改变后的顶点坐标值和改变前的顶点坐标值生成各个网格元素的3D变换矩阵;以及通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
发明效果
通过利用四边形形式的四边形作为基本元素来仿真三角形形式的多边形,所述设备和方法能够仅利用“旋转”、“平移”和“缩放”(即,基本3D变换技术)以及“扭曲”(即,2D变换技术)生成和操纵多边形形式的3D对象。
可利用移动装置中可支持的CSS 3D变换技术实现诸如神奇效果、3D变形和翻页效果的效果,并且还能够基于多边形生成和操纵3D对象。
即使在仅支持基本3D变换的有限的环境(例如,移动网络)中,所述设备和方法也能够基于具有特定形式的多边形、通过生成和操纵3D对象提供各种用户界面和图形效果。
能够通过基于网络的元素的网格化生成基于多边形的3D对象。
附图说明
图1是示出根据本发明的实施方式的用于生成3D对象的***的示图;
图2是示意性地示出根据本发明的实施方式的3D对象生成设备的构造的框图;
图3是示出图2所示的3D对象生成单元的构造的详细框图;
图4是示出图2所示的3D对象操纵处理单元的构造的详细框图;
图5是示出根据本发明的实施方式的通过3D对象生成设备生成和操纵3D对象的方法的流程图;
图6是示出根据本发明的实施方式的通过3D对象生成设备生成3D对象的方法的流程图;
图7是示出根据本发明的实施方式的生成3D对象的方法的画面的示例性示图;
图8是示出根据本发明的实施方式的通过3D对象生成设备生成变换的3D对象的方法的流程图;
图9是示出根据本发明的实施方式的用于生成变换的3D对象的方法的画面的示例性示图。
[附图中主要元件的标号说明]
100:3D对象生成设备
110:通信单元
120:输入单元
130:输出单元
140:存储器单元
150:3D对象生成单元
152:四边形网格元素生成模块
154:3D对象生成模块
160:3D对象操纵处理单元
162:坐标值存储器模块
164:3D变换矩阵生成模块
166:3D对象变换模块
具体实施方式
从以下基于附于本发明的说明书的附图的具体实施方式中将更加清楚地理解本发明的上述目的、技术构造和操作效果的细节。
层叠样式表(CSS)是用于指定画面构造和网络文档的渲染方法的技术,并且CSS支持施加至2D平面坐标系的2D变换(诸如“平移”、“旋转”、“缩放”和“扭曲”)、施加至3D立体图形坐标系的3D变换(诸如“平移3d'、“旋转3d'和“缩放3d')和变换之间的动画效果。
此外,CSS是适于简单地操纵构成网络文档的每一个结构性元素的技术,并且已用于提供诸如菜单栏/按钮/图像这样的简单的UI结构性元素,以及基于网页之间的移动的切换效果。然而,在本发明中,CSS可用于通过将网络文档的单独的结构性元素(具体地,图像)分解为四边形形式的片断以及生成与多边形相似的形式的片断来生成和操纵特定的3D对象。
以下参照附图描述其中生成和操纵3D对象的技术。
图1是示出根据本发明的实施方式的生成3D对象的***的示图。
参照图1,生成3D对象的***包括用于响应于3D对象生成设备100来提供网页或WAP页面的服务提供设备200。
3D对象生成设备100通过将平面形式的2D网页的结构性元素划分为多个多边形来生成3D对象,并通过操纵3D对象中的每一个网格元素的顶点的位置来生成变换的3D对象。
这种3D对象生成设备100可应用于具有通信功能和短程通信功能的任何用户装置。例如,用户装置可包括诸如笔记本、无线通信终端、智能电话、便携式媒体播放器(PMP)、便携式数字助理(PDA)、平板PC、机顶盒和智能TV等的各种装置。
参照图2详细描述3D对象生成设备100。
服务提供设备200响应于3D对象生成设备100的请求将网页或WAP页面提供至3D对象生成设备100。
图2是示意性地示出根据本发明的实施方式的3D对象生成设备的构造的框图,图3是示出图2所示的3D对象生成单元的构造的详细框图,图4是示出图2所示的3D对象操纵处理单元的构造的详细框图。
参照图2,3D对象生成设备100包括通过通信网络发送和接收数据的通信单元110、输入单元120、输出单元130、存储器单元140、3D对象生成单元150和3D对象操纵处理单元160。
通信单元110是用于经通信网络将3D对象生成设备100与服务提供设备连接的通信装置,并且其可包括例如诸如移动通信和卫星通信这样的无线通信模块、诸如互联网的有线通信模块和诸如Wi-Fi的短程无线通信模块。
输入单元120是用于接收控制3D对象生成设备100的操作的用户请求的装置,并且其响应于用户的操纵将用户请求转换为电信号。输入单元120是指用于从用户接收字母、数字和文本信息的键输入装置,并且可利用键盘、键区或触摸屏实现键输入装置。
输出单元130显示被3D对象生成设备100访问的网站的数据。此外,输出单元130是指用于根据应用的驱动来显示画面信息的显示装置。优选地,利用诸如液晶显示器(LCD)或有机发光二极管(OLED)的小型平板显示装置实现输出单元130。此外,输出单元130可与输入单元120一起以触摸屏形式形成。
存储器单元140存储控制3D对象生成设备100的操作所需的程序以及当执行程序时所生成的数据。
3D对象生成单元150通过将对应的结构性元素通过2D网页的结构性元素的网格化划分为多个多边形来生成3D对象。3D对象由多个多边形表示。通常,多边形具有点、线和三角形的任一种形式。三角形多边形由其各个顶点的坐标(x,y,z)和其它属性(例如,颜色和纹理坐标)表示。多边形顶点的坐标(x,y)指示输出单元130上的位置。坐标(z)指示顶点与3D场景的选择的视点间隔开。
以下参照图3描述3D对象生成单元150。3D对象生成单元150包括四边形网格元素生成模块152和3D对象生成模块154。
四边形网格元素生成模块152通过将网页的结构性元素划分为特定数量的相等的四边形网格来生成四边形网格元素。网页的结构性元素可包括诸如图像、文本等这样的对象。因此,如果网页的结构性元素是图像,则四边形网格元素生成模块152可从服务提供设备接收对应于原始图像的网格形式的单独的图像。此外,四边形网格元素生成模块152可利用Java脚本等通过浏览器内的内部操作将原始图像变换为位图形式,以及接着生成网格图像。此外,如果网页的结构性元素不是图像,则四边形网格元素生成模块152可通过利用诸如<div>或<span>这样的界定标签将对应的结构性元素分解为四边形网格来生成四边形网格元素。
3D对象生成模块154通过沿对角线方向连接通过四边形网格元素生成模块152生成的四边形网格元素的顶点来生成多个多边形,将连接的四边形网格元素划分为两个三角形,复制四边形网格元素,以及控制各个四边形网格元素的透明度,使得仅看见两个四边形的不同的三角形区。这里,由多个所生成的多边形形成的结构性元素可以是3D对象。也就是说,3D对象生成模块154沿着对角线方向连接四边形网格元素的顶点,将连接的网格元素划分为两个三角形,复制两对对应的四边形网格元素,并且控制各个三角形区的透明度以使得仅看见两个四边形的不同的三角形区。例如,就图像而言,3D对象生成模块154将除了看见的三角形以外的区的透明度(α值)设为“0”,从而在两个四边形的不同的区的三角形中看见图像。此外,就除图像以外的元素而言,3D对象生成模块154可将一侧的三角形的透明度(α值)设为“1”,并且将另一侧的三角形的透明度(α值)设为“0”,从而仅在一侧的三角形看见结构性元素。
返回参照图2,当在通过3D对象生成单元150生成的3D对象中接收到对象操纵信号时,3D对象操纵处理单元160通过响应于对象操纵信号改变单独的网格元素的顶点坐标值来生成3D变换矩阵,并且通过将生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。也就是说,在生成3D对象之后,结构性元素的原始图像或形状能够通过操纵包括在3D对象中的单独的网格元素的顶点的位置自由地变换。因此,当接收到对象操纵信号时,3D对象操纵处理单元160可响应于对象操纵信号通过根据3D变换合适地变换网格元素的形状将原始图像变换为特定形式的3D对象。
下面参照图4描述3D对象操纵处理单元160。3D对象操纵处理单元160包括坐标值存储器模块162、3D变换矩阵生成模块164和3D对象变换模块166。
坐标值存储器模块162存储构成通过3D对象生成单元150生成的3D对象的各个网格元素的顶点坐标值。这里,坐标值存储器模块162可存储阵列形式的各个网格元素的顶点坐标值。
当在通过3D对象生成单元150生成的3D对象中接收到对象操纵信号时,3D变换矩阵生成模块164响应于对象操纵信号来改变各个网格元素的顶点坐标值,并利用改变后的顶点坐标值和存储在坐标值存储器模块162中的顶点坐标值生成各个网格元素的3D变换矩阵。
也就是说,如果用户利用触摸输入或鼠标移动3D对象的单独的网格元素,或者单独的网格元素响应于诸如存储的动画逻辑这样的事件而移动,则3D变换矩阵生成模块164确定已接收到对象操纵信号,响应于对象操纵信号改变各个网格元素的顶点坐标值,并且通过在所有网格元素上执行矩阵操作来生成CSS操作所需的3D变换矩阵。这里,生成的3D变换矩阵在网格元素中可具有不同的值。同时,在操作中,3D变换矩阵生成模块164不包括在画面中不可见的顶点(即,透明三角形区中的顶点)。
下面描述通过3D变换矩阵生成模块164生成3D变换矩阵的方法。假设在场景上看到的三个顶点的当前值分别为O1(x1,y1,z1)、O2(x2,y2,z2)和O3(x3,y3,z3),响应于对象操纵信号改变的顶点坐标值为D1(a1,b1,c1)、D2(a2,b2,c2)和D3(a3,b3,c3),并且将获得的变换矩阵为M,3D变换矩阵生成模块164需要满足矩阵等式“M*O1=D1,M*O2=D2,M*O3=D3”。
就3×3矩阵而言,可通过在其中D1、D2和D3对应于一列的矩阵Pdestination之前乘以其中O1、O2和O3对应于一列的矩阵Porigin的逆矩阵容易地获得M。然而,在公共变换矩阵中,为了应用“平移”和“透明变换”,以4×4形式而非3×3形式建立诸如数学等式1这样的矩阵等式Mtransform。在这种情况下,因为存在多个方案,所以不提供逆矩阵。
[数学等式1]
Mtransform*Porigin=Pdestination
a b c t x d e f t y g h i t z 0 0 0 1 x 1 x 2 x 3 x 1 x 2 x 3 y 1 y 2 y 3 1 1 1 = a 1 a 2 a 3 b 1 b 2 b 3 c 1 c 2 c 3 1 1 1
因此,为了解决该问题,3D变换矩阵生成模块164使用单独地计算缩放、平移、旋转和扭曲矩阵的方法。如果以3×3形式而非关于平移(tx,ty,tz)和透视(0001)的部分来重构变换矩阵,则获得数学等式2。
[数学等式2]
MT'*Po'=Pd'(未变换)
a b c d e f g h i x 1 x 2 x 3 x 1 x 2 x 3 y 1 y 2 y 3 = a 1 a 2 a 3 b 1 b 2 b 3 c 1 c 2 c 3
这里,MT'可以是根据Mtransform重构的矩阵,Po'可以是根据Porigin重构的矩阵,Pd'可以是根据Pdestination重构的矩阵。
如果将数学等式2的MT'矩阵分解为缩放、旋转和扭曲矩阵,则获得数学等式3
[数学等式3]
MT'=MRotate*Mskew*Mscale
a b c d e f g h i = R a R b R c R d R e R f R g R h R i 1 X k 0 Y k 1 0 0 0 1 X s 0 0 0 Y s 0 0 0 1
这里,MRotate可以是旋转矩阵,Mskew可以是扭曲矩阵,Mscale可以是缩放矩阵。
通过生成诸如数学等式4这样的矩阵B,可利用原始坐标和改变后的坐标值如在数学等式5那样获得旋转矩阵MRotate,然后执行奇异值分解。
[数学等式4]
[数学等式5]
MRotate=UMVT
M=diag([(11  det(U)det(V))])
可通过三角形的边长之间的差异和内角值之间的差异相对简单地获得扭曲矩阵和缩放矩阵,但具有多个方案而非单个值。在这种情况下,可获得扭曲矩阵和缩放矩阵,假设“扭曲”仅存在于x方向或y方向。可通过算法的变换获得不同的变换矩阵,这是因为获得的变换矩阵并非单个方案。
3D对象变换模块166通过将通过3D变换矩阵生成模块164生成的3D变换矩阵应用于CSS变换而生成变换的3D对象。也就是说,如果CSS变换应用于利用生成的3D变换矩阵改变了顶点的网格元素,则可响应于对象操纵信号生成变换的3D对象。CSS变换是其中2D变换效果或3D变换效果应用于形成HTML的每一个元素的技术。CSS变换提供用于操纵“旋转”、“平移”、“缩放”和“扭曲”以及组合和处理“旋转”、“平移”、“缩放”和“扭曲”的组合的矩阵接口。CSS变换是单独地操纵四边形形式的HTML元素的技术,并且其主要用于诸如画面切换和菜单构造的需要简单3D效果的部分,而非用于生成包括多个多边形的复杂3D对象或者用于改变这种对象的向外的形状的任务。CSS变换具有高兼容性,这是因为其除PC以外由最新移动装置支持。
图5是示出根据本发明的实施方式的通过3D对象生成设备生成和操纵3D对象的方法的流程图。
参照图5,3D对象生成设备通过将2D网页的结构性元素网格化和划分为多个多边形来生成3D对象(S402)。为了生成自由3D形式的对象,需要用于将网页的结构性元素(即,平面形式的矩形)划分为多个多边形(三角形对象)的任务。因此,为了生成3D对象,3D对象生成设备将2D网页的结构性元素划分为多个多边形。参照图6详细描述通过3D对象生成设备生成3D对象的方法。
在执行步骤S402之后,当在生成的3D对象中输入对象操纵信号时(S404),3D对象生成设备根据输入的对象操纵信号生成3D变换矩阵(S406)。然后,3D对象生成设备通过将生成的3D变换矩阵应用于CSS变换而生成变换的3D对象(S408)。
参照图8详细描述通过3D对象生成设备生成变换的3D对象的方法。
图6是示出根据本发明的实施方式的通过3D对象生成设备生成3D对象的方法的流程图,图7是根据本发明的实施方式的示出生成3D对象的方法的画面的示例性示图。
参照图6,3D对象生成设备将网页的结构性元素划分为特定数量的相等的四边形网格元素(S502),沿着对角线方向连接各个划分的四边形网格元素的顶点,以及将连接的四边形网格元素划分为两个三角形(S504)。
在执行步骤S504之后,3D对象生成设备复制每一个四边形网格元素,并且通过控制每一个四边形网格元素的透明度以使得仅看见两个四边形的不同的三角形区来生成3D对象(S506)。
下面参照图7描述通过3D对象生成设备生成3D对象的方法。3D对象生成设备将图像600(诸如(a))等分为如(b)所示的四边形形式的小网格(610)。然后,3D对象生成设备沿着对角线方向连接各个四边形网格元素的顶点,并将连接的四边形网格元素划分为两个三角形,如(c)所示。然后,如(d)所示,3D对象生成设备复制四边形网格元素,并通过控制透明度以使得在第一四边形630a中仅看见左上三角形区中的图像而在第二四边形630b中仅看见左下三角形区中的图像来生成3D对象。
图8是示出根据本发明的实施方式的通过3D对象生成设备生成变换的3D对象的方法的流程图,图9是根据本发明的实施方式的示出生成变换的3D对象的方法的画面的示例性示图。
参照图8,3D对象生成设备存储针对3D对象的网格元素的顶点坐标值(S702)。
在执行了步骤S702之后,当在3D对象中输入了对象操纵信号时(S704),3D对象生成设备响应于对象操纵信号改变各个网格元素的顶点坐标值(S706),并利用改变后的顶点坐标值和存储的顶点坐标值生成网格元素的3D变换矩阵(S708)。
然后,3D对象生成设备通过将生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象(S710)。
下面参照图9描述通过3D对象生成设备变换3D对象的方法。当用户诸如图7的(d)地移动3D对象中的第一四边形网格元素800a和第二四边形网格元素800b时,如图9的(a)所示,3D对象生成设备改变第一四边形网格元素800a和第二四边形网格元素800b的顶点坐标值。然后,3D对象生成设备通过将如(b)所示的两个变换的网格元素进行组合来生成变换的3D对象810。这里,所述两个四边形网格元素可共享两个顶点。
同时,根据本发明的另一方面,提供了一种电子装置可读记录介质,其上以程序的形式记录了生成3D对象的方法,该方法包括以下步骤:通过将网页的结构性元素等分为特定数量的四边形网格来生成四边形网格元素;沿对角线方向连接生成的四边形网格元素的顶点,将连接的四边形网格元素划分为两个三角形,复制四边形网格元素,以及通过控制透明度以使得仅看见两个四边形的不同的三角形区来生成3D对象;当在生成的3D对象中输入对象操纵信号时,响应于对象操纵信号改变每一个网格元素的顶点坐标值,并且利用改变后的顶点坐标值和改变之前的顶点坐标值生成各个网格元素的3D变换矩阵;以及通过将生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
能够以程序的形式写入所述生成3D对象的方法,并且本领域熟练的程序员可容易地归纳出形成程序的代码片断和代码块。此外,关于生成3D对象的方法的程序可存储在电子装置可读的介质中,并且可被电子装置读出和执行。
根据本发明,通过利用四边形形式的四边形作为基本元素来仿真三角形形式的多边形,仅利用“旋转”、“平移”和“缩放”(即,基本3D变换技术)以及“扭曲”(即,2D变换技术)可生成和操纵多边形形式的3D对象。
此外,可利用移动装置中能够支持的CSS 2D/3D变换技术实现诸如神奇效果、3D变形和翻页效果这样的效果,并且还能够基于多边形生成和操纵3D对象。
此外,在其中仅支持基本3D变换的有限的环境(例如,移动网络)中,基于具有特定形式的多边形,可通过生成和操纵3D对象提供各种用户界面和图形效果。
此外,可通过基于网络的元素的网格化生成基于多边形的3D对象。
本发明也可应用于用于生成3D对象的设备和方法,通过利用四边形形式的四边形作为基本元素仿真三角形形式的多边形,所述设备和方法能够仅利用“旋转”、“平移”和“缩放”(即,基本3D变换技术)以及“扭曲”(即,2D变换技术)来生成和操纵多边形形式的3D对象。
如上所述,本发明所属领域的技术人员应该理解在不脱离本发明的技术精神和主要特征的情况下,本发明可按照其它各种形式实施。因此,前述实施方式不应理解为是限制性的,而应在所有方面理解为是说明形式的。在权利要求而非具体实施方式中清楚地公开了本发明的范围。应该理解,本发明的含义和范围衍生的所有修改形式和变形形式被包括在权利要求的范围内。
工业适用性
本发明的目的是通过利用四边形形式的四边形作为基本元素来仿真三角形形式的多边形,仅利用“旋转”、“平移”和“缩放”(即,基本3D变换技术)以及“扭曲”(即,2D变换技术)可生成和操纵多边形形式的3D对象。

Claims (8)

1.一种3D对象生成设备,包括:
3D对象生成单元,所述3D对象生成单元用于通过将2D网页的结构性元素网格化和划分为多个多边形来生成3D对象;以及
3D对象操纵处理单元,当在生成的3D对象中输入对象操纵信号时,所述3D对象操纵处理单元通过响应于所述对象操纵信号改变各个网格元素的顶点坐标值来生成3D变换矩阵,并且通过将所生成的3D变换矩阵应用于预定的层叠样式表(CSS)变换来生成变换的3D对象。
2.根据权利要求1所述的3D对象生成设备,其中,所述3D对象生成单元包括:
四边形网格元素生成模块,所述四边形网格元素生成模块用于通过将所述网页的结构性元素等分为特定数量的四边形网格来生成四边形网格元素;以及
3D对象生成模块,所述3D对象生成模块用于沿着对角线方向将各个生成的四边形网格元素的顶点划分为两个三角形、复制四边形网格元素、以及通过控制透明度以使得仅看见两个四边形的不同的三角形区来生成多个多边形。
3.根据权利要求2所述的3D对象生成设备,其中,所述四边形网格元素生成模块在所述网页的所述结构性元素是图像的情况下从服务提供设备接收对应于原始图像的网格形式的单独的图像,或者通过浏览器内的内部操作将原始图像变换为位图形式并生成网格图像,并且在所述网页的所述结构性元素不是图像的情况下利用界定标签生成所述四边形网格元素。
4.根据权利要求1所述的3D对象生成设备,其中,所述3D对象操纵处理单元包括:
坐标值存储器模块,所述坐标值存储器模块用于存储形成了通过所述3D对象生成单元所生成的3D对象的所述各个网格元素的顶点坐标值;
3D变换矩阵生成模块,所述3D变换矩阵生成模块用于当输入所述对象操纵信号时响应于所述对象操纵信号改变所述各个网格元素的顶点坐标值,并利用改变后的顶点坐标值和存储在所述坐标值存储器模块中的所述顶点坐标值来生成所述各个网格元素的所述3D变换矩阵;以及
3D对象变换模块,所述3D对象变换模块用于通过将所生成的3D变换矩阵应用于所述CSS变换来生成所述变换的3D对象。
5.一种在通过3D对象生成设备生成和操纵2D网页的结构性元素成为3D对象的方法中的3D对象生成方法,所述方法包括以下步骤:
(a)通过将所述网页的所述结构性元素等分为特定数量的四边形网格来生成四边形网格元素;以及
(b)沿着对角线方向连接各个生成的四边形网格元素的顶点,将所连接的四边形网格元素划分为两个三角形,复制所述四边形网格元素,并且通过控制透明度以使得仅看见两个四边形的不同的三角形区来生成所述3D对象。
6.根据权利要求5所述的3D对象生成方法,该方法还包括以下步骤:
在所述步骤(b)之后,当在所生成的3D对象中输入对象操纵信号时,响应于所述对象操纵信号改变所述各个网格元素的顶点坐标值,并且利用改变后的顶点坐标值和改变前的顶点坐标值生成所述各个网格元素的3D变换矩阵;以及
通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
7.根据权利要求5所述的3D对象生成方法,其中,在所述步骤(b)中,在所述网页的所述结构性元素是图像的情况下,从服务提供设备接收到对应于原始图像的网格形式的单独的图像,或者原始图像通过浏览器中的内部操作变换为位图形式,并且生成网格图像,而在所述网页的所述结构性元素不是图像的情况下利用界定标签生成所述四边形网格元素。
8.一种其上以程序形式记录了用于生成3D对象的方法的电子装置可读记录介质,该方法包括以下步骤:
通过将网页的结构性元素等分为特定数量的四边形网格来生成四边形网格元素;
沿着对角线方向连接各个生成的四边形网格元素的顶点,将所连接的四边形网格元素划分为两个三角形,复制所述四边形网格元素,并且通过控制透明度以使得仅在不同的三角形区中看见两个四边形来生成3D对象;
当在所生成的3D对象中输入对象操纵信号时,响应于所述对象操纵信号改变每一个所述网格元素的顶点坐标值,并且利用改变后的顶点坐标值和改变前的顶点坐标值生成各个网格元素的3D变换矩阵;以及
通过将所生成的3D变换矩阵应用于预定的CSS变换来生成变换的3D对象。
CN201380022288.6A 2012-09-26 2013-07-31 用于生成3d对象的设备和方法 Active CN104254878B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710537098.8A CN107256207B (zh) 2012-09-26 2013-07-31 用于生成3d对象的设备和方法

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1020120107025A KR101911906B1 (ko) 2012-09-26 2012-09-26 3차원 객체 생성 장치 및 그 방법
KR10-2012-0107025 2012-09-26
PCT/KR2013/006915 WO2014051250A1 (ko) 2012-09-26 2013-07-31 3차원 객체 생성 장치 및 그 방법

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201710537098.8A Division CN107256207B (zh) 2012-09-26 2013-07-31 用于生成3d对象的设备和方法

Publications (2)

Publication Number Publication Date
CN104254878A true CN104254878A (zh) 2014-12-31
CN104254878B CN104254878B (zh) 2017-08-11

Family

ID=50388590

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201710537098.8A Active CN107256207B (zh) 2012-09-26 2013-07-31 用于生成3d对象的设备和方法
CN201380022288.6A Active CN104254878B (zh) 2012-09-26 2013-07-31 用于生成3d对象的设备和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201710537098.8A Active CN107256207B (zh) 2012-09-26 2013-07-31 用于生成3d对象的设备和方法

Country Status (5)

Country Link
US (1) US9367957B2 (zh)
JP (1) JP5908653B2 (zh)
KR (1) KR101911906B1 (zh)
CN (2) CN107256207B (zh)
WO (1) WO2014051250A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912569A (zh) * 2016-03-29 2016-08-31 网易传媒科技(北京)有限公司 显示三维目标场景中包含的网页元素的方法和装置
CN107426601A (zh) * 2017-07-21 2017-12-01 青岛海信电器股份有限公司 一种智能电视中ui控件的显示方法及装置

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101659780B1 (ko) 2016-02-23 2016-09-27 (주)이지스 3차원 지리 공간 시스템에서 2차원 도면 데이터를 지구 구면 공간에 표현하는 방법
KR101659779B1 (ko) 2016-02-23 2016-09-27 (주)이지스 3차원 지리 공간 시스템에서의 3차원 도면 구축 방법
US9983697B1 (en) 2016-05-18 2018-05-29 Meta Company System and method for facilitating virtual interactions with a three-dimensional virtual environment in response to sensor input into a control device having sensors
US10303323B2 (en) * 2016-05-18 2019-05-28 Meta Company System and method for facilitating user interaction with a three-dimensional virtual environment in response to user input into a control device having a graphical interface
US10168789B1 (en) * 2017-05-31 2019-01-01 Meta Company Systems and methods to facilitate user interactions with virtual content having two-dimensional representations and/or three-dimensional representations
CN107913519B (zh) * 2017-08-29 2022-11-04 深圳壹账通智能科技有限公司 2d游戏的渲染方法及移动终端
US11966793B1 (en) 2017-10-18 2024-04-23 Campfire 3D, Inc. Systems and methods to extend an interactive space across multiple platforms
US10834413B2 (en) * 2018-08-24 2020-11-10 Disney Enterprises, Inc. Fast and accurate block matching for computer generated content
CN109925715B (zh) * 2019-01-29 2021-11-16 腾讯科技(深圳)有限公司 一种虚拟水域生成方法、装置及终端
US11086476B2 (en) * 2019-10-23 2021-08-10 Facebook Technologies, Llc 3D interactions with web content
US11475639B2 (en) 2020-01-03 2022-10-18 Meta Platforms Technologies, Llc Self presence in artificial reality
US11295503B1 (en) 2021-06-28 2022-04-05 Facebook Technologies, Llc Interactive avatars in artificial reality
CN116228951B (zh) * 2023-04-25 2023-07-14 安徽海马云科技股份有限公司 一种数字虚拟对象的表情数据处理方法和装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5268677A (en) * 1988-08-04 1993-12-07 The Grass Valley Group, Inc. Reduced viewport for graphics display
JP3603118B2 (ja) 2001-06-08 2004-12-22 東京大学長 擬似3次元空間表現システム、擬似3次元空間構築システム、ゲームシステム、及び電子地図提供システム
JP4096622B2 (ja) 2002-05-21 2008-06-04 株式会社セガ 画像処理方法及び装置、並びにプログラム及び記録媒体
EP1635297B1 (en) 2003-05-30 2012-06-13 Lattice Technology, Inc. 3-dimensional graphics data display device
JP2005063287A (ja) * 2003-08-19 2005-03-10 Dainippon Printing Co Ltd 電子書籍、電子書籍表示方法、および電子書籍制作方法
CN100545871C (zh) * 2006-05-12 2009-09-30 中国科学院自动化研究所 一种直接传递三维模型姿态的方法
US8026929B2 (en) * 2006-06-26 2011-09-27 University Of Southern California Seamlessly overlaying 2D images in 3D model
US7639253B2 (en) * 2006-07-13 2009-12-29 Inus Technology, Inc. System and method for automatic 3D scan data alignment
US8237739B2 (en) * 2006-09-12 2012-08-07 Qualcomm Incorporated Method and device for performing user-defined clipping in object space
US8564590B2 (en) * 2007-06-29 2013-10-22 Microsoft Corporation Imparting three-dimensional characteristics in a two-dimensional space
US8279222B2 (en) 2008-03-14 2012-10-02 Seiko Epson Corporation Processing graphics data for a stereoscopic display
US8352884B2 (en) 2009-05-21 2013-01-08 Sony Computer Entertainment Inc. Dynamic reconfiguration of GUI display decomposition based on predictive model
KR101649098B1 (ko) 2009-06-30 2016-08-19 삼성전자주식회사 휴대용 단말기에서 센서를 이용한 렌더링 방법 및 장치
KR20110024053A (ko) 2009-09-01 2011-03-09 삼성전자주식회사 3d 오브젝트 변형 장치 및 방법
KR100955463B1 (ko) 2009-10-22 2010-04-29 주식회사 넥서스칩스 3차원 스케일링 방식을 이용한 이미지변환모듈을 구비한 모바일단말 및 이를 이용한 이미지변환방법
EP2679013A2 (en) * 2010-02-23 2014-01-01 MUV Interactive Ltd. A system for projecting content to a display surface having user-controlled size, shape and location/direction and apparatus and methods useful in conjunction therewith
CN102375831B (zh) * 2010-08-13 2014-09-10 富士通株式会社 三维模型检索装置及其方法和模型库生成装置及其方法
US8977624B2 (en) 2010-08-30 2015-03-10 Microsoft Technology Licensing, Llc Enhancing search-result relevance ranking using uniform resource locators for queries containing non-encoding characters
CN102542601A (zh) * 2010-12-10 2012-07-04 三星电子株式会社 一种用于3d对象建模的设备和方法
US9292933B2 (en) 2011-01-10 2016-03-22 Anant Madabhushi Method and apparatus for shape based deformable segmentation of multiple overlapping objects
KR101179644B1 (ko) 2011-01-13 2012-09-04 호남대학교 산학협력단 2d 모바일 기기를 위한 3d 렌더러 장치
CN102156779B (zh) * 2011-04-13 2013-03-20 北京石油化工学院 地下水流仿真与预测分析方法
CN102184082B (zh) * 2011-05-20 2013-04-03 广州市数字视频编解码技术国家工程实验室研究开发与产业化中心 一种基于双目视差原理的3d浏览器实现方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105912569A (zh) * 2016-03-29 2016-08-31 网易传媒科技(北京)有限公司 显示三维目标场景中包含的网页元素的方法和装置
CN105912569B (zh) * 2016-03-29 2020-03-20 网易传媒科技(北京)有限公司 显示三维目标场景中包含的网页元素的方法和装置
CN107426601A (zh) * 2017-07-21 2017-12-01 青岛海信电器股份有限公司 一种智能电视中ui控件的显示方法及装置
CN107426601B (zh) * 2017-07-21 2020-02-07 青岛海信电器股份有限公司 一种智能电视中ui控件的显示方法及装置

Also Published As

Publication number Publication date
KR101911906B1 (ko) 2018-10-25
US20150371441A1 (en) 2015-12-24
JP5908653B2 (ja) 2016-04-26
KR20140040416A (ko) 2014-04-03
US9367957B2 (en) 2016-06-14
CN107256207A (zh) 2017-10-17
WO2014051250A1 (ko) 2014-04-03
CN107256207B (zh) 2020-09-29
JP2015518217A (ja) 2015-06-25
CN104254878B (zh) 2017-08-11

Similar Documents

Publication Publication Date Title
CN104254878A (zh) 用于生成3d对象的设备和方法
CN106062705B (zh) 跨平台渲染引擎
CN111324837B (zh) web前端基于GIS***的三维图表可视化方法及装置
JP5992934B2 (ja) 三次元ビューイングの方法
CN102043571A (zh) 移动设备金融商品报价屏幕显示线图的操作装置与方法
CN102043572A (zh) 行动设备屏幕显示与操作的装置与方法
GB2578947A (en) Unified digital content selection system for vector and raster graphics
US6925473B2 (en) Staged stylization in multiple tiers
WO2023174392A1 (zh) 用于固体***的数据处理方法和装置
Song et al. Development of a lightweight CAE middleware for CAE data exchange
Fluke et al. Immersive virtual reality experiences for all-sky data
CN114930285B (zh) 一种软件架构的可视化方法及装置
KR101911904B1 (ko) 3차원 객체 생성 장치 및 그 방법
Cheng et al. Object-oriented interactive mechanism design and analysis
CN112445951A (zh) 快速灵活切换的兼容多种地图的海洋数据可视化方法
CN114595018B (zh) 电流流向三维展示方法、装置、计算机设备和存储介质
Gede Novel Globe Publishing Techniques Using WebGL
TWI382656B (zh) 行動設備螢幕顯示與操作之裝置與方法
CN109062416A (zh) 地图的状态转换方法和装置
CN115329697B (zh) 仿三维线路图生成方法、装置、***和存储介质
Barsoum et al. Towards adaptive Web scriptable user interfaces for virtual environments
Wellmann et al. Subdivide and Conquer: Adapting Non-manifold Subdivision Surfaces to Surface-Based Representation and Reconstruction of Complex Geological Structures
Jiang et al. Virtual display system of Virtools in e-commerce
Hou et al. Developing and testing a web-based platform for visualizing flow in a watershed
Zhu A methodology for building up an infrastructure of haptically enhanced computer-aided design systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant