KR101911904B1 - Apparatus for 3D object creation and thereof Method - Google Patents
Apparatus for 3D object creation and thereof Method Download PDFInfo
- Publication number
- KR101911904B1 KR101911904B1 KR1020160126755A KR20160126755A KR101911904B1 KR 101911904 B1 KR101911904 B1 KR 101911904B1 KR 1020160126755 A KR1020160126755 A KR 1020160126755A KR 20160126755 A KR20160126755 A KR 20160126755A KR 101911904 B1 KR101911904 B1 KR 101911904B1
- Authority
- KR
- South Korea
- Prior art keywords
- dimensional object
- dimensional
- transform
- generating
- generated
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
- G06T17/205—Re-meshing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/005—Tree description, e.g. octree, quadtree
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/30—Polynomial surface description
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Geometry (AREA)
- Computer Graphics (AREA)
- Mathematical Analysis (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Algebra (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명은 3차원 객체 생성 장치 및 방법에 관한 것으로, 2차원 웹 페이지의 구성 요소를 격자화 및 다수의 폴리곤으로 나누어 3차원 객체를 생성하는 3차원 객체 생성부, 상기 생성된 3차원 객체에서 객체 조작 신호가 입력되면, 상기 객체 조작 신호에 따라 해당 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 조작 처리부를 포함한다. The present invention relates to an apparatus and method for generating a three-dimensional object, which comprises a three-dimensional object generation unit for generating a three-dimensional object by dividing a constituent element of a two-dimensional web page into a plurality of polygons and a plurality of polygons, When a manipulation signal is input, a vertex coordinate value of the corresponding individual grid element is changed according to the object manipulation signal to generate a 3D transform matrix, and the generated 3D transform matrix is applied to a predefined CSS transform, Dimensional object manipulation processing unit.
Description
본 발명은 3차원 객체 생성 장치 및 그 방법에 관한 것으로, 보다 상세하게는 2차원 웹 페이지의 구성 요소를 격자화 및 다수의 폴리곤(polygon)으로 나누어 3차원 객체를 생성하고, 생성된 3차원 객체에서 객체 조작 신호가 입력된 경우, 객체 조작 신호에 따라 해당 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 생성된 3D transform matrix를 기 정의된 CSS(cascading style sheet) transform에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 생성 장치 및 그 방법에 관한 것이다. The present invention relates to an apparatus and method for generating a three-dimensional object, and more particularly to a method and apparatus for generating a three-dimensional object by dividing a constituent element of a two-dimensional web page into a plurality of polygons, A 3D transform matrix is generated by changing the vertex coordinate value of the corresponding individual grid element according to the object manipulation signal, and the generated 3D transform matrix is applied to a predefined CSS (cascading style sheet) transform Dimensional objects, and to a method for generating three-dimensional objects.
최근 자동화가 진전되고 정보사회로의 발전이 진행되면서 컴퓨터 그래픽의 응용분야가 급속히 확대되고 있으며, 특히 3차원 그래픽을 이용하는 분야가 급증하고 있다.As the automation progresses and the development into the information society progresses, the field of application of computer graphics is rapidly expanding, and in particular, the field of using 3D graphics is rapidly increasing.
종래에 제공되는 대부분의 3차원 객체 시스템은 3차원 폴리곤(polygon) 처리 방식을 사용하여 3차원 객체를 생성 및 조작하고 있다. 폴리곤은 3차원 컴퓨터 그래픽에서 입체 형상을 표현할 때 사용하는 가장 작은 단위인 다각형을 의미한다.Most of the conventional three-dimensional object systems have generated and manipulated three-dimensional objects using a three-dimensional polygon processing method. A polygon refers to a polygon that is the smallest unit used to represent a three-dimensional shape in three-dimensional computer graphics.
한편, 웹 페이지에서 3D 기술을 제공하기 위한 대표적인 방식으로 WebGL이 사용되고 있다. WebGL의 경우 가장 기본적이고 보편적인 3D 그래픽 기술인 OpenGL과 유사한 기술로 low-level 개발 환경을 통해 임의의 형태를 지닌 폴리곤 객체의 생성 및 조작이 가능하여 3D 게임 등에 광범위하게 활용될 수 있다. On the other hand, WebGL is being used as a representative method for providing 3D technology in a web page. WebGL is similar to OpenGL, the most basic and common 3D graphics technology, and can be used in 3D games and the like by enabling creation and manipulation of arbitrary polygon objects through a low-level development environment.
그러나, WebGL은 PC 환경에서 Chrome 등의 최신 브라우저만 지원하며 성능 및 호환성 등의 이유로 모바일 기기에서는 지원하지 못하는 단점이 있다. However, WebGL supports only the latest browsers such as Chrome in PC environment, and has a disadvantage that it can not be supported by mobile devices because of performance and compatibility.
본 발명은 상기한 문제점을 해결하기 위하여 안출된 것으로, 본 발명의 목적은 사각형 형태의 quadrangle을 기본 요소로 삼각형 형태의 폴리곤(polygon)을 에뮬레이션(emulation)함으로써, 기본적인 3차원 변형 기술(3d transform)인 rotate, translate, scale과 2차원 변형 기술(2d transform)인 skew만으로도 폴리곤 형태의 3차원 객체를 생성하고 조작할 수 있도록 하는 3차원 객체 생성 장치 및 그 방법을 제공하는데 있다. SUMMARY OF THE INVENTION The present invention has been made in order to solve the problems described above, and it is an object of the present invention to provide a basic 3-D transform technique by emulating a triangular polygon with a quadrangle as a basic element, Dimensional object creation and manipulation of a polygon-type three-dimensional object by using only rotate, translate, scale, and skew, which is a 2D transformation technique (2d transform).
본 발명의 또 다른 목적은 모바일 기기에서 지원 가능한 CSS 2D/3D Transform 기술을 활용하여 Genie Effect, 3D Morphing, Page turn effect 등의 효과를 구현할 수 있을 뿐 아니라, 폴리곤 기반의 3차원 객체 생성 및 조작을 가능하게 하는 3차원 객체 생성 장치 및 그 방법을 제공하는데 있다. It is another object of the present invention to provide a polygon-based 3D object creation and manipulation as well as realizing effects such as genie effect, 3D morphing, and page turn effect using CSS 2D / 3D Transform technology that can be supported by mobile devices Dimensional objects, and a method thereof.
본 발명의 또 다른 목적은 기본적인 3D transform만을 지원하는 제한된 환경(예컨대 모바일 웹)에서도 임의 형태를 지닌 폴리곤 기반의 3차원 객체를 생성 및 조작함으로써, 다양한 사용자 인터페이스 및 그래픽 효과를 제공할 수 있는 3차원 객체 생성 장치 및 그 방법을 제공하는데 있다. It is a further object of the present invention to provide a method and apparatus for generating three-dimensional objects based on polygons having arbitrary shapes in a limited environment (e.g. mobile web) supporting only basic 3D transforms, An object generating apparatus and a method thereof.
본 발명의 또 다른 목적은 웹 기반 요소의 격자화를 통해 폴리곤 기반의 3차원 객체를 생성할 수 있는 3차원 객체 생성 장치 및 그 방법을 제공하는데 있다. It is still another object of the present invention to provide a three-dimensional object generation apparatus and a method thereof capable of generating a polygon-based three-dimensional object through gridding of a web-based element.
일 양상에 있어서, 3차원 객체 생성 장치는 2차원 웹 페이지의 구성 요소를 격자화 및 다수의 폴리곤(polygon) 으로 나누어 3차원 객체를 생성하는 3차원 객체 생성부; 및 상기 생성된 3차원 객체에서 객체 조작 신호가 입력되면, 상기 객체 조작 신호에 따라 해당 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 상기 생성된 3D transform matrix를 기 정의된 CSS transform(Cascading Style Sheet transform)에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 조작 처리부; 를 포함하되, 상기 3차원 객체 생성부는 상기 웹 페이지의 구성요소가 이미지인 경우, 원본 이미지에 대응되는 격자 형태의 개별 이미지를 서비스 제공 장치로부터 전달받거나, 브라우저 내부 연산을 통해 원본 이미지를 비트맵 형태로 변환한 후 격자 이미지를 자체적으로 생성한다.In one aspect, a three-dimensional object generation apparatus includes: a three-dimensional object generation unit for generating a three-dimensional object by dividing a component of a two-dimensional web page into a plurality of polygons; And generating a 3D transform matrix by changing the vertex coordinate value of the corresponding individual grid element according to the object manipulation signal when the object manipulation signal is input in the generated 3D object, a three-dimensional object manipulation processor for generating transformed three-dimensional objects by applying transforms to a Cascading Style Sheet transform; Wherein the three-dimensional object generation unit receives an individual image in a grid form corresponding to the original image from the service providing apparatus when the component of the web page is an image, or receives the original image in bitmap form And then generates the grid image itself.
상술한 과제를 해결하기 위한 본 발명의 일 측면에 따르면, 2차원 웹 페이지의 구성 요소를 격자화 및 다수의 폴리곤으로 나누어 3차원 객체를 생성하는 3차원 객체 생성부, 상기 생성된 3차원 객체에서 객체 조작 신호가 입력되면, 상기 객체 조작 신호에 따라 해당 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 조작 처리부를 포함하는 3차원 객체 생성 장치가 제공된다. According to an aspect of the present invention, there is provided a 3D object generating unit for generating a 3D object by dividing a constituent element of a 2D web page into a plurality of polygons and a plurality of polygons, When the object manipulation signal is input, a vertex coordinate value of the corresponding individual grid element is changed according to the object manipulation signal to generate a 3D transform matrix, and the generated 3D transform matrix is applied to a predefined CSS transform, There is provided a three-dimensional object generation apparatus including a three-dimensional object manipulation processing unit for generating an object.
상기 3차원 객체 생성부는 상기 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성하는 사각형 격자요소 생성모듈, 상기 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누고, 각 사각형 격자 요소를 복제한 후, 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 다수의 폴리곤을 생성하는 3차원 객체 생성 모듈을 포함할 수 있다. Wherein the three-dimensional object generation module includes: a rectangular grid element generation module for uniformly dividing the elements of the web page into a predetermined number of rectangular grid elements to generate a rectangular grid element; Dimensional object generation module for generating a plurality of polygons by adjusting the transparency so that only the triangular regions of the two rectangles are visible after the respective rectangular grid elements are duplicated.
상기 사각형 격자 요소 생성 모듈은 상기 웹 페이지의 구성요소가 이미지인 경우, 원본 이미지에 대응되는 격자 형태의 개별 이미지를 서비스 제공 장치로부터 전달받거나 브라우저 내부 연산을 통해 원본 이미지를 비트맵 형태로 변환한 후 격자 이미지를 자체적으로 생성하고, 상기 웹 페이지의 구성 요소가 이미지가 아닌 경우, 구분 태그를 이용하여 사각형 격자 요소를 생성할 수 있다. When the constituent elements of the web page are images, the rectangular grid element generation module receives an individual image in a grid form corresponding to the original image from the service providing apparatus or converts the original image into a bitmap form through internal operation of the browser A grid image may be created by itself, and if the web page element is not an image, a rectangular grid element may be generated using the division tag.
*상기 3차원 객체 생성 모듈은 상기 구성 요소가 보여지는 삼각형 이외 영역의 투명도를 '0'으로 설정하여, 해당 두 사각형의 서로 다른 영역의 삼각형에서만 구성요소가 보이도록 할 수 있다. The three-dimensional object generation module may set the transparency of the region other than the triangle in which the constituent element is shown to be '0' so that the constituent element is visible only in the triangles of different regions of the two rectangles.
상기 3차원 객체 조작 처리부는 상기 3차원 객체 생성부에서 생성된 3차원 객체를 구성하는 각 격자 요소의 꼭지점 좌표값을 저장하는 좌표값 저장 모듈, 상기 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 상기 변경된 꼭지점 좌표값과 상기 좌표값 저장 모듈에 저장된 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성하는 3D transform matrix 생성 모듈, 상기 생성된 3D transform matrix를 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 변형 모듈을 포함할 수 있다. Wherein the 3D object manipulation processor comprises: a coordinate value storage module for storing vertex coordinate values of the respective lattice elements constituting the 3D object generated by the 3D object generator; A 3D transform matrix generation unit that changes the vertex coordinate values of the individual grid elements according to the object operation signal and generates a 3D transform matrix of the grid elements using the changed vertex coordinate values and the vertex coordinate values stored in the coordinate value storage module Dimensional object transformation module for generating a transformed 3D object by applying the generated 3D transform matrix to a CSS transform.
본 발명의 다른 측면에 따르면, 3차원 객체 생성 장치가 2차원의 웹 페이지 구성요소를 3차원 객체로 생성 및 조작하는 방법에 있어서, (a) 상기 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성하는 단계, (b) 상기 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누고, 각 사각형 격자 요소를 복제한 후, 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 3차원 객체를 생성하는 단계를 포함하는 3차원 객체 생성 방법이 제공된다. According to another aspect of the present invention, there is provided a method for creating and manipulating a two-dimensional web page component as a three-dimensional object, the method comprising the steps of: (a) (B) dividing the diagonal direction vertices of each of the generated square lattice elements into two triangles, duplicating each square lattice element, and then separating the two triangles into different triangular regions And generating a three-dimensional object by adjusting transparency so that the three-dimensional object can be seen.
상기 3차원 객체 생성 방법은 상기 (b) 단계 이후, 상기 생성된 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 상기 변경된 꼭지점 좌표값과 변경전 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성하는 단계, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 단계를 더 포함하는 것을 특징으로 하는 3차원 객체 생성 방법이 제공된다. The 3D object generation method may further include changing the vertex coordinate value of the individual grid element according to the object manipulation signal when the object manipulation signal is input in the generated 3D object after the step (b) Generating a 3D transform matrix of each lattice element using a value and a vertex coordinate value before the change, and applying the generated 3D transform matrix to a predefined CSS transform to generate a transformed three-dimensional object Dimensional objects are generated.
상기 (b) 단계에서, 상기 웹 페이지의 구성요소가 이미지인 경우, 원본 이미지에 대응되는 격자 형태의 개별 이미지를 서비스 제공 장치로부터 전달받거나 브라우저 내부 연산을 통해 원본 이미지를 비트맵 형태로 변환한 후 격자 이미지를 자체적으로 생성하고, 상기 웹 페이지의 구성 요소가 이미지가 아닌 경우, 구분 태그를 이용하여 사각형 격자 요소를 생성할 수 있다. In the step (b), if the component of the web page is an image, an individual image in the form of a grid corresponding to the original image is received from the service providing apparatus, or the original image is converted into a bitmap form A grid image may be created by itself, and if the web page element is not an image, a rectangular grid element may be generated using the division tag.
본 발명의 또 다른 측면에 따르면, 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성하는 단계, 상기 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누고, 각 사각형 격자 요소를 복제한 후, 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 3차원 객체를 생성하는 단계, 상기 생성된 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 상기 변경된 꼭지점 좌표값과 변경전 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성하는 단계, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 단계를 포함하는 3차원 객체 생성 방법이 프로그램으로 기록된 전자장치에서 판독 가능한 기록매체가 제공된다. According to another aspect of the present invention, there is provided a method of generating a rectangular grid element by uniformly dividing elements of a web page into a predetermined number of rectangular grid elements, dividing a diagonal direction vertex of each of the generated rectangular grid elements into two triangles Dimensional object; generating a three-dimensional object by clipping each rectangular grid element and adjusting transparency so that only two triangles have different triangular areas; and when the object manipulation signal is input in the generated three-dimensional object, Changing a vertex coordinate value of each grid element according to a signal and generating a 3D transform matrix of each grid element using the changed vertex coordinate value and the pre-modification vertex coordinate value, And generating a transformed three-dimensional object by applying the transformation to the CSS transform A recording medium readable in the electronic device recorded in a program is provided.
본 발명에 따르면, 사각형 형태의 quadrangle을 기본 요소로 삼각형 형태의 폴리곤(polygon)을 에뮬레이션(emulation)함으로써, 기본적인 3차원 변형 기술(3d transform)인 rotate, translate, scale만으로도 폴리곤을 이용한 3차원 객체를 생성하고 조작할 수 있다. According to the present invention, by emulating a triangular polygon with a quadrangle as a basic element, a three-dimensional object using a polygon can be obtained by simply rotating, translating, or scaling a basic three-dimensional transformation technique (3d transform) You can create and manipulate.
또한, 모바일 기기에서 지원 가능한 CSS 3D Transform 기술을 활용하여 Genie Effect, 3D Morphing, Page turn effect 등의 효과를 구현할 수 있을 뿐 아니라, 폴리곤 기반의 3차원 객체 생성 및 조작을 가능하게 할 수 있다. In addition, it can realize effects such as genie effect, 3D morphing, and page turn effect using CSS 3D Transform technology that can be supported by mobile devices, and it is possible to create and manipulate polygon-based 3D objects.
또한, 기본적인 3D transform만을 지원하는 제한된 환경(예컨대 모바일 웹)에서도 임의 형태를 지닌 폴리곤 기반의 3차원 객체를 생성 및 조작함으로써, 다양한 사용자 인터페이스 및 그래픽 효과를 제공할 수 있다.In addition, various user interfaces and graphic effects can be provided by creating and manipulating polygon-based three-dimensional objects having arbitrary shapes in a limited environment (e.g., mobile web) that supports only basic 3D transforms.
또한, 웹 기반 요소의 격자화를 통해 폴리곤 기반의 3차원 객체를 생성할 수 있다. In addition, a polygon-based three-dimensional object can be created by gridding web-based elements.
도 1은 본 발명의 실시예에 따른 3차원 객체 생성을 위한 시스템을 나타낸 도면.
도 2는 본 발명의 실시예에 따른 3차원 객체 생성 장치의 구성을 개략적으로 나타낸 블럭도.
도 3은 도 2에 도시된 3차원 객체 생성부의 구성을 상세히 나타낸 블럭도.
도 4는 도 2에 도시된 3차원 객체 조작 처리부의 구성을 상세히 나타낸 블럭도.
도 5는 본 발명의 실시예에 따른 3차원 객체 생성 장치가 3차원 객체를 생성 및 조작하는 방법을 나타낸 흐름도.
도 6은 본 발명의 실시예에 따른 3차원 객체 생성 장치가 3차원 객체를 생성하는 방법을 나타낸 흐름도.
도 7은 본 발명의 실시예에 따른 3차원 객체 생성 방법을 설명하기 위한 화면 예시도.
도 8은 본 발명의 실시예에 따른 3차원 객체 생성 장치가 변형된 3차원 객체를 생성하는 방법을 나타낸 흐름도.
도 9는 본 발명의 실시예에 따른 변형된 3차원 객체 생성 방법을 설명하기 위한 화면 예시도.BRIEF DESCRIPTION OF THE DRAWINGS Figure 1 illustrates a system for three-dimensional object creation in accordance with an embodiment of the present invention.
2 is a block diagram schematically illustrating a configuration of a 3D object generating apparatus according to an embodiment of the present invention.
FIG. 3 is a block diagram illustrating a detailed configuration of the three-dimensional object generation unit shown in FIG. 2. FIG.
FIG. 4 is a block diagram showing a detailed configuration of the three-dimensional object manipulation processing unit shown in FIG. 2. FIG.
FIG. 5 is a flowchart illustrating a method of generating and manipulating a three-dimensional object according to an exemplary embodiment of the present invention. FIG.
FIG. 6 is a flowchart illustrating a method of generating a three-dimensional object according to an exemplary embodiment of the present invention. FIG.
FIG. 7 is a diagram illustrating a 3D object generation method according to an embodiment of the present invention. FIG.
8 is a flowchart illustrating a method of generating a modified three-dimensional object by a three-dimensional object generation apparatus according to an embodiment of the present invention.
FIG. 9 is a diagram illustrating a modified 3D object generation method according to an embodiment of the present invention. FIG.
본 발명의 전술한 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하 상세한 설명에 의해 보다 명확하게 이해될 것이다.The foregoing and other objects, features, and advantages of the present invention will become more apparent from the following detailed description taken in conjunction with the accompanying drawings, in which: FIG.
CSS(cascading style sheet)는 웹 문서의 화면 구성 및 렌더링 방식을 지정하기 위한 기술로 2차원 평면좌표계에 적용되는 translate, rotate, scale, skew 등의 2D transform, 3차원 입체좌표계에 적용되는 translate3d, rotate3d, scale3d 등의 3D transform, 각 transform 사이의 애니메이션 효과를 지원한다.A cascading style sheet (CSS) is a technique for specifying the screen composition and rendering method of a web document. It is a 2D transform such as translate, rotate, scale, skew applied to a 2D plane coordinate system, translate3d applied to a three dimensional coordinate system, rotate3d , 3D transformations such as scale3d, and animations between each transform.
또한, CSS는 웹 문서를 구성하는 개별 구성 요소의 간단한 조작에 적합한 기술로 메뉴바/버튼/이미지 등의 단순한 UI 구성 요소 혹은 각 웹 페이지 간의 이동 시에 전환 효과를 제공하는 용도로 사용되어왔다. 그러나, 본 발명에서는 웹 문서의 개별 구성 요소(특히 이미지)를 사각형 형태의 조각으로 더욱 작게 분해한 후, 이를 폴리곤과 유사한 형태로 만들어 임의의 3차원 객체를 생성하고 조작하는 용도로 사용될 수 있다. In addition, CSS has been used as a simple UI component such as a menu bar / button / image or a conversion effect when moving between web pages since it is suitable for simple manipulation of individual components constituting a web document. However, in the present invention, individual components (particularly, images) of a web document may be further divided into rectangular pieces, and then the polygons may be formed into a shape similar to a polygon, thereby being used for creating and manipulating arbitrary three-dimensional objects.
이하 도면을 참조하여 3차원 객체를 생성하고 조작하는 기술에 대해 설명하기로 한다. Hereinafter, a technique for creating and manipulating three-dimensional objects will be described with reference to the drawings.
도 1은 본 발명의 실시예에 따른 3차원 객체 생성을 위한 시스템을 나타낸 도면이다. 1 is a block diagram of a system for generating three-dimensional objects according to an embodiment of the present invention.
도 1을 참조하면, 3차원 객체 생성을 위한 시스템은 3차원 객체 생성 장치(100)의 요청에 따라 웹 또는 왑 페이지를 제공하는 서비스 제공 장치(200)를 포함한다. Referring to FIG. 1, a system for creating a three-dimensional object includes a
3차원 객체 생성 장치(100)는 평면 형태의 2차원 웹 페이지 구성 요소를 다수의 폴리곤으로 나누어 3차원 객체를 생성하고, 3차원 객체에 포함된 개별 격자 요소의 꼭지점 위치를 조작하여 변형된 3차원 객체를 생성한다.The three-dimensional
이러한 3차원 객체 생성 장치(100)는 통신 기능 및 근거리 통신 기능을 탑재한 사용자 장치라면 어느 것이라도 적용될 수 있다. 예를 들면, 노트북, 무선통신 단말, 스마트폰(Smart phone), PMP(Portable Media Player), PDA(Personal Digital Assistant), 타블렛 PC(Tablet PC), 셋탑박스(Set-top box), 스마트 TV 등 다양한 장치가 될 수 있다.The three-dimensional
3차원 객체 생성 장치(100)에 대한 상세한 설명은 도 2를 참조하기로 한다. A detailed description of the three-dimensional
서비스 제공 장치(200)는 3차원 객체 생성 장치(100)의 요청에 따라 웹 또는 왑 페이지를 3차원 객체 생성 장치(100)에 제공한다. The
도 2는 본 발명의 실시예에 따른 3차원 객체 생성 장치의 구성을 개략적으로 나타낸 블럭도, 도 3은 도 2에 도시된 3차원 객체 생성부의 구성을 상세히 나타낸 블럭도, 도 4는 도 2에 도시된 3차원 객체 조작 처리부의 구성을 상세히 나타낸 블럭도이다. FIG. 2 is a block diagram schematically showing the configuration of a three-dimensional object generation apparatus according to an embodiment of the present invention. FIG. 3 is a block diagram showing a detailed configuration of the three-dimensional object generation unit shown in FIG. 3 is a block diagram showing a detailed configuration of a three-dimensional object manipulation processing unit.
도 2를 참조하면, 3차원 객체 생성 장치(100)는 통신망을 통해 데이터를 송수신하는 통신부(110), 입력부(120), 출력부(130), 저장부(140), 3차원 객체 생성부(150), 3차원 객체 조작 처리부(160)를 포함한다.2, a three-dimensional
통신부(110)는 3차원 객체 생성 장치(100)와 서비스 제공 장치를 통신망을 통해 상호 연결시키는 통신 수단으로서, 예를 들어 이동통신, 위성통신 등의 무선 통신모듈, 인터넷 등의 유선 통신모듈, 와이파이 등의 근거리 무선 통신모듈 등을 포함할 수 있다.The
입력부(120)는 3차원 객체 생성 장치(100)의 동작 제어를 위한 사용자 요청을 입력받기 위한 수단으로서, 사용자의 조작에 따라서 사용자의 요청을 전기 신호로 변환한다. 입력부(120)는 사용자로부터 문자, 숫자 및 텍스트 정보를 입력받는 키 입력 수단으로 예컨대, 키 입력 수단은 키보드, 키패드, 터치 스크린 등으로 구현될 수 있다. The
출력부(130)는 3차원 객체 생성 장치(100)가 접속한 웹 사이트 데이터를 표시한다. 또한, 출력부(130)는 애플리케이션 구동에 따른 화면 정보를 디스플레이하는 디스플레이 수단으로, 이러한 출력부(130)는 LCD(Liquid Crystal Display), OLED(Organic Light Emitting Diodes) 등 소형 평판 디스플레이장치로 구현되는 것이 바람직하며, 전술한 입력부(120)와 겹쳐 터치 스크린 형태로 구현될 수 있다.The
저장부(140)는 3차원 객체 생성 장치(100)의 동작 제어 시 필요한 프로그램과, 그 프로그램 수행 중에 발생되는 데이터를 저장한다.The
3차원 객체 생성부(150)는 2차원 웹 페이지 구성 요소의 격자화를 통해 해당 구성요소를 다수의 폴리곤으로 나누어 3차원 객체를 생성한다. 3차원 객체는 다수의 폴리곤(polygon)으로 표현된다. 일반적으로 폴리곤은 점(dot), 선(line), 삼각형(triangle) 중 어느 한 형태를 갖는다. 삼각형 폴리곤은 좌표(x, y, z) 및 자신의 각 정점(vertex)에서의 그 밖의 다른 속성 예를 들면, 색상(color), 텍스쳐(texture) 좌표 등에 의해 표시된다. 폴리곤 정점의 좌표(x, y)는 출력부(130) 상에서의 위치를 나타낸다. 좌표(z)는 정점이 3차원 장면의 선택된 뷰 포인트(view point)로부터 떨어져 있는 거리를 나타낸다.The three-dimensional
3차원 객체 생성부(150)에 대해 도 3을 참조하면, 3차원 객체 생성부(150)는 사각형 격자 요소 생성 모듈(152), 3차원 객체 생성 모듈(154)을 포함한다.3, the three-dimensional
사각형 격자 요소 생성 모듈(152)은 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성한다. 웹 페이지의 구성요소는 이미지, 텍스트 등의 객체를 포함할 수 있다. 따라서, 사각형 격자 요소 생성 모듈(152)은 웹 페이지의 구성요소가 이미지인 경우, 원본 이미지에 대응되는 격자 형태의 개별 이미지를 서비스 제공 장치로부터 전달받거나, 또는 javascript 등을 활용한 브라우저 내부 연산을 통해 원본 이미지를 비트맵 형태로 변환한 후 격자 이미지를 자체적으로 생성할 수 있다. 또한, 사각형 격자 요소 생성 모듈(152)은 웹 페이지의 구성 요소가 이미지가 아닌 경우, <div>, <span> 등의 구분 태그를 이용하여 해당 구성요소를 사각형 격자로 분해하여 사각형 격자 요소를 생성할 수 있다.The rectangular grid
3차원 객체 생성 모듈(154)은 사각형 격자 요소 생성 모듈(152)에서 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 각각 나눈 후, 각 사각형 격자 요소를 복제하여 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 다수의 폴리곤을 생성한다. 이때, 생성된 다수의 폴리곤으로 이루어진 구성 요소가 3차원 객체일 수 있다. 즉, 3차원 객체 생성 모듈(154)은 각 사각형 격자 요소의 대각 방향 꼭지점을 이어 두 개의 삼각형으로 나눈 뒤, 해당 사각형 격자 요소를 두 벌로 복제하여 두 사각형이 서로 다른 삼각형 영역만 보이도록 각 삼각형 영역의 투명도를 조절한다. 예컨대, 이미지의 경우, 3차원 객체 생성 모듈(154)은 보여지는 삼각형 이외의 영역에 투명도(알파값)를 '0'으로 설정하여, 해당 두 사각형의 서로 다른 영역의 삼각형에서 이미지가 보이도록 할 수 있다. 또한, 이미지외 요소의 경우, 3차원 객체 생성 모듈(154)은 한쪽 삼각형은 투명도(알파값)을 '1'로 설정하고, 나머지 삼각형은 투명도(알파값)를 '0'으로 설정하여, 한쪽 삼각형에서만 구성요소가 보이도록 할 수 있다. Dimensional
다시 도 2를 참조하면, 3차원 객체 조작 처리부(160)는 3차원 객체 생성부(150)에서 생성된 3차원 객체에서 객체 조작 신호가 입력되면, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성한다. 즉, 3차원 객체 생성 이후에는 3차원 객체에 포함된 개별 격자 요소의 꼭지점 위치를 조작하여 원본 이미지 혹은 구성 요소의 형태를 자유롭게 변형할 수 있어야 한다. 따라서, 3차원 객체 조작 처리부(160)는 객체 조작 신호가 입력된 경우, 그 객체 조작 신호에 따라 해당 격자 요소들의 형태를 3D transform에 의해 적절하게 변형시켜 원본 이미지를 임의 형태의 3차원 객체로 변형할 수 있다. Referring again to FIG. 2, when the object manipulation signal is input from the three-dimensional object generated by the three-dimensional
3차원 객체 조작 처리부(160)에 대해 도 4를 참조하면, 3차원 객체 조작 처리부(160)는 좌표값 저장모듈(162), 3D transform matrix 생성 모듈(164), 3차원 객체 변형 모듈(166)을 포함한다. 4, the three-dimensional
좌표값 저장 모듈(162)은 3차원 객체 생성부(150)에서 생성된 3차원 객체를 구성하는 각 격자 요소의 꼭지점 좌표값을 저장한다. 이때 좌표값 저장모듈(162)은 개별 격자 요소의 꼭지점 좌표값을 배열 등의 형태로 만들어 저장할 수 있다. The coordinate
3D transform matrix 생성 모듈(164)은 3차원 객체 생성부(150)에서 생성된 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 변경된 꼭지점 좌표값과 좌표값 저장 모듈(162)에 저장된 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성한다. The 3D transform
즉, 사용자가 터치입력, 마우스 등을 이용하여 3차원 객체의 개별 격자 요소를 이동시키거나, 기 저장된 애니메이션 로직 등의 이벤트에 의해 개별 격자 요소가 이동된 경우, 3D transform matrix 생성 모듈(164)은 객체 조작 신호가 입력된 것으로 판단하여, 그 객체 조작 신호에 따라 개별 격자요소들의 꼭지점 좌표값을 변경하고, 모든 격자 요소에 대해 행렬 연산을 수행하여 CSS 연산에 필요한 3D transform matrix들을 생성한다. 이때 생성된 3D transform matrix은 개별 격자 요소마다 상이한 값을 가질 수 있다. 한편, 3D transform matrix 생성 모듈(164)은 화면상에 보이지 않는 꼭지점(즉, 투명한 삼각형 영역에 있는 꼭지점)은 연산에 포함시키지 않는다.That is, when the user moves the individual grid elements of the three-dimensional object using a touch input, a mouse, or the like and the individual grid elements are moved by events such as pre-stored animation logic, the 3D transform
3D transform matrix 생성 모듈(164)이 3D transform matrix를 생성하는 방법에 대해 살펴보면, 화면상에 보이는 3개 꼭지점의 현재 값을 각각 O1(x1, y1, z1), O2(x2, y2, z2), O3(x3, y3, z3)라 하고, 객체 조작 신호에 따라 변경된 꼭지점 좌표값을 D1(a1, b1, c1), D2(a2, b2, c2), D3(a3, b3, c3)라 하며, 구하고자 하는 transform matrix를 M이라 하면, 3D transform matrix 생성 모듈(164)은 M*O1 = D1, M*O2 = D2, M*O3 = D3의 행렬 방정식을 만족해야 한다.The 3D transform
3x3 matrix의 경우 M은, O1, O2, O3을 열로 하는 행렬()의 역행렬을 D1, D2, D3를 열로 하는 행렬()의 앞에 곱하여 쉽게 찾을 수 있다. 그러나, 일반적인 transform matrix는 translate, perspective transform을 적용하기 위해 3x3이 아닌 4x4 형태로 수학식 1과 같은 행렬식()이 성립하며 이 경우 해가 여러 개 존재하므로 일반적으로 역행렬이 존재하지 않는다.For a 3x3 matrix, M is a matrix with columns O1, O2, and O3 ( ) Is a matrix in which D1, D2, and D3 are columns ( ) Before it can be easily found. However, in order to apply the translate and perspective transforms, the general transform matrix is not a 3x3 but a 4x4 form. ), And in this case, since there are several solutions, there is no inverse matrix in general.
[수학식 1][Equation 1]
그러므로, 3D transform matrix 생성 모듈(164)은 이러한 문제를 해결하기 위하여 scale, translate, rotate, skew matrix를 개별적으로 구하는 방식을 이용한다. Translate(tx, ty, tz)와 perspective(0 0 0 1) 관련 부분을 제외하고 transform matrix를 3x3 형태로 재구성하면 수학식 2와 같다.Therefore, the 3D transform
[수학식 2]&Quot; (2) "
여기서, 는 를 재구성한 행렬, 는 를 재구성한 행렬, 는 룰 재구성한 행렬일 수 있다. here, The A matrix reconstructing a matrix, The A matrix reconstructing a matrix, The Rule may be a matrix reconstructed.
수학식 2의 행렬을 scale, rotate, skew matrix로 분해하면 수학식 3과 같다.In Equation (2) The matrix is decomposed into scale, rotate, and skew matrices.
[수학식 3]&Quot; (3) "
여기서, 는 rotate 행렬, 는 skew 행렬, 는 scale 행렬일수 있다.here, Rotate matrix, Is a skew matrix, Can be a scale matrix.
Rotation matrix()의 경우, 원 좌표와 변경 좌표값을 이용하여 수학식 4와 같은 행렬 B를 생성한 후 Singular Value Decomposition을 통해 수학식 5와 같이 구할 수 있다. Rotation matrix ( ), A matrix B as shown in Equation (4) can be generated using the original coordinates and the changed coordinate values, and can be obtained as shown in Equation (5) through Singular Value Decomposition.
[수학식 4]&Quot; (4) "
[수학식 5]&Quot; (5) "
skew matrix와 scale matrix의 경우 삼각형 각 변의 길이 차이와 내각 값의 차이를 통하여 비교적 간단하게 구할 수 있으나 단일 값이 아닌 여러 개의 해가 존재한다. 이 경우, skew를 x 혹은 y 방향만 존재한다고 가정하여 구할 수 있다. 상기 과정으로 얻은 transform matrix는 유일한 해가 아니므로 알고리즘의 변형을 통해 상이한 transform matrix를 구할 수도 있다.The skew matrix and the scale matrix can be obtained relatively easily through the difference of the length difference and the cabinet value of each side of the triangle, but there are several solutions other than the single value. In this case, skew can be obtained assuming that x or y exists only. Since the transform matrix obtained by the above procedure is not the only solution, it is possible to obtain a different transform matrix through the modification of the algorithm.
3차원 객체 변형 모듈(166)은 3D transform matrix 생성 모듈(164)에서 생성된 3D transform matrix들을 CSS transform에 적용하여 변형된 3차원 객체를 생성한다. 즉, 상기 생성된 3D transform matrix들을 이용하여 변경된 꼭지점을 지닌 개별 격자 요소들에 CSS Transform을 적용하면, 객체 조작 신호에 따라 변형된 3차원 객체를 생성할 수 있다. CSS Transform의 경우 HTML을 구성하는 개별 요소(element)에 대한 2/3차원 transform 효과를 적용하기 위한 기술로 rotate, translate, scale, skew 조작 및 이를 조합하여 처리할 수 있는 matrix 인터페이스를 제공한다. 사각형 형태의 HTML 요소를 개별 조작하기 위한 기술이므로 다수의 폴리곤을 지닌 복잡한 형태의 3차원 객체를 생성하거나 이러한 객체의 외형을 변경시키는 작업이 아닌, 화면 전환, 메뉴 구성 등의 간단한 3D 효과가 필요한 부분에 주로 사용된다. CSS Transform의 경우 PC 뿐 아니라 최신의 모바일 기기에서도 지원을 하고 있어 호환성이 높다. The 3D
도 5는 본 발명의 실시예에 따른 3차원 객체 생성 장치가 3차원 객체를 생성 및 조작하는 방법을 나타낸 흐름도이다.5 is a flowchart illustrating a method of generating and manipulating a three-dimensional object according to an exemplary embodiment of the present invention.
도 5를 참조하면, 3차원 객체 생성 장치는 2차원 웹 페이지 구성 요소를 격자화 및 다수의 폴리곤으로 나누어 3차원 객체를 생성한다(S402). 자유로운 3차원 형태의 객체 생성을 위해서는 기본적으로 평면 형태의 직사각형인 웹 페이지의 구성 요소를 다수의 폴리곤(삼각형 객체)으로 나누는 작업이 필요하다. 따라서, 3차원 객체 생성 장치는 3차원 객체를 생성하기 위해 2차원 웹 페이지 구성요소를 다수의 폴리곤으로 나눈다. 3차원 객체 생성 장치가 3차원 객체를 생성하는 방법에 대한 상세한 설명은 도 6을 참조하기로 한다. Referring to FIG. 5, the 3D object generation apparatus divides a 2D web page element into a plurality of polygons and generates a 3D object (S402). In order to create a free three-dimensional object, it is basically necessary to divide the elements of a web page, which is a rectangular plane, into a plurality of polygons (triangular objects). Accordingly, the three-dimensional object generation apparatus divides a two-dimensional web page component into a plurality of polygons to generate a three-dimensional object. A detailed description of a method for generating a three-dimensional object by the three-dimensional object generating apparatus will be described with reference to FIG.
단계 S402의 수행 후, 생성된 3차원 객체에서 객체 조작 신호가 입력되면(S404), 3차원 객체 생성 장치는 입력된 객체 조작 신호에 따른 3D transform matrix를 생성한다(S406). 그런 후, 3차원 객체 생성장치는 생성된 3D transform matrix를 CSS transform에 적용하여 변형된 3차원 객체를 생성한다(S408).After the execution of step S402, if an object manipulation signal is input in the generated three-dimensional object (S404), the 3D object creation apparatus generates a 3D transform matrix according to the inputted object manipulation signal (S406). Then, the 3D object generating apparatus applies the generated 3D transform matrix to the CSS transform to generate a modified 3D object (S408).
상기 3차원 객체 생성 장치가 변형된 3차원 객체를 생성하는 방법에 대한 상세한 설명은 도 8을 참조하기로 한다. A detailed description of a method for generating a modified three-dimensional object by the three-dimensional object generation apparatus will be described with reference to FIG.
도 6은 본 발명의 실시예에 따른 3차원 객체 생성 장치가 3차원 객체를 생성하는 방법을 나타낸 흐름도, 도 7은 본 발명의 실시예에 따른 3차원 객체 생성 방법을 설명하기 위한 화면 예시도이다.FIG. 6 is a flowchart illustrating a method for generating a three-dimensional object according to an exemplary embodiment of the present invention, and FIG. 7 is a view for explaining a method for generating a three-dimensional object according to an exemplary embodiment of the present invention .
도 6을 참조하면, 3차원 객체 생성 장치는 웹 페이지의 구성요소를 일정 개수의 사각형 격자 요소로 균일하게 나누고(S502), 나누어진 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나눈다(S504). Referring to FIG. 6, the three-dimensional object generating apparatus uniformly divides the elements of the web page into a predetermined number of rectangular grid elements (S502), and divides the diagonal vertices of each divided rectangular grid element into two triangles S504).
단계 S504의 수행 후, 3차원 객체 생성 장치는 각 사각형 격자 요소를 복제하여 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 3차원 객체를 생성한다(S506).After performing step S504, the 3D object creation apparatus replicates each of the rectangular grid elements, and adjusts the transparency so that only the triangular areas of the two rectangles are visible (S506).
3차원 객체 생성 장치가 3차원 객체를 생성하는 방법에 대해 도 7을 참조하면, 3차원 객체 생성 장치는 (a)와 같은 이미지(600)를 (b)와 같이 작은 사각형 형태의 격자로 균일하게 나눈다(610). 그런 후, 3차원 객체 생성 장치는 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누어 (c)와 같이 생성한다. 그런 후, 3차원 객체 생성 장치는 (d)와 같이 사각형 격자 요소를 복제하여 제1사각형(630a)에는 왼쪽 상위 삼각형 영역의 이미지가 보이도록 하고, 제2사각형(630b)에는 오른쪽 하위 삼각형 영역의 이미지만 보이도록 투명도를 조절하여 3차원 객체를 생성한다.Referring to FIG. 7, a method of generating a three-dimensional object by a three-dimensional object generation apparatus includes the steps of uniformly dividing an
도 8은 본 발명의 실시예에 따른 3차원 객체 생성 장치가 변형된 3차원 객체를 생성하는 방법을 나타낸 흐름도, 도 9는 본 발명의 실시예에 따른 변형된 3차원 객체 생성 방법을 설명하기 위한 화면 예시도이다.FIG. 8 is a flowchart illustrating a method of generating a modified three-dimensional object according to an exemplary embodiment of the present invention. FIG. 9 is a flowchart illustrating a method of generating a modified three-dimensional object according to an exemplary embodiment of the present invention. Fig.
도 8을 참조하면, 3차원 객체 생성 장치는 3차원 객체에 대한 개별 격자 요소들의 꼭지점 좌표값을 저장한다(S702).Referring to FIG. 8, the 3D object creation apparatus stores vertex coordinate values of individual grid elements for a 3D object (S702).
단계 S702의 수행 후, 3차원 객체에서 객체 조작 신호가 입력되면(S704), 3차원 객체 생성 장치는 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고(S706), 상기 변경된 꼭지점 좌표값과 상기 저장된 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성한다(S708).After the execution of step S702, when the object manipulation signal is input in the three-dimensional object (S704), the three-dimensional object generation apparatus changes the vertex coordinate value of the individual grid element according to the object manipulation signal (S706) And a 3D transform matrix of the grid elements using the stored vertex coordinate values (S708).
그런 후, 3차원 객체 생성 장치는 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성한다(S710).Then, the 3D object generation apparatus applies the generated 3D transform matrix to the predefined CSS transform to generate a modified 3D object (S710).
3차원 객체 생성 장치가 3차원 객체를 변형하는 방법에 대해 도 9를 참조하면, 도 7의 (d)와 같은 3차원 객체를 사용자가 도 9의 (a)와 같이 제1사각형 격자 요소(800a)와 제2사각형 격자 요소(800b)를 이동시키면, 3차원 객체 생성 장치는 제1사각형 격자 요소(800a)와 제2사각형 격자 요소(800b)의 꼭지점 좌표값을 변화시킨다. 그런 후, 3차원 객체 생성 장치는 (b)와 같이 변형된 격자 요소 두 개를 조합하여 변형된 3차원 객체(810)를 생성한다. 이때, 두 개의 사각형 격자 요소는 두 개의 꼭지점을 공유할 수 있다.Referring to FIG. 9, a method of transforming a three-dimensional object by a three-dimensional object generation apparatus will be described with reference to FIG. And the second
한편, 본 발명의 다른 측면에 따르면, 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성하는 단계, 상기 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누고, 각 사각형 격자 요소를 복제한 후, 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 3차원 객체를 생성하는 단계, 상기 생성된 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 상기 변경된 꼭지점 좌표값과 변경전 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성하는 단계, 상기 생성된 3D transform matrix를 기 정의된 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 단계를 포함하는 3차원 객체 생성 방법이 프로그램으로 기록된 전자장치에서 판독 가능한 기록매체가 제공된다. .According to another aspect of the present invention, there is provided a method for generating a rectangular grid element by uniformly dividing a web page into a predetermined number of rectangular grid elements, generating a rectangular grid element by diagonal vertices of the generated rectangular grid elements, Dimensional object by clipping each square grid element and then adjusting the transparency so that only two triangles are different from each other to create a three-dimensional object; when the object manipulation signal is input in the generated three-dimensional object, Changing a vertex coordinate value of each grid element according to an operation signal, generating a 3D transform matrix of each grid element using the changed vertex coordinate value and the pre-modification vertex coordinate value, And generating a transformed three-dimensional object by applying the transformed CSS transform to the transformed three-dimensional object The readable storage medium is provided in the electronic device to record the program. .
이러한 3차원 객체 생성 방법은 프로그램으로 작성 가능하며, 프로그램을 구성하는 코드들 및 코드 세그먼트들은 당해 분야의 프로그래머에 의하여 용이하게 추론될 수 있다. 또한, 3차원 객체 생성 방법에 관한 프로그램은 전자장치가 읽을 수 있는 정보저장매체(Readable Media)에 저장되고, 전자장치에 의하여 읽혀지고 실행될 수 있다.Such a method of generating a three-dimensional object can be written as a program, and the codes and code segments constituting the program can be easily deduced by a programmer in the field. Also, a program related to a method for generating a three-dimensional object can be stored in an information storage medium (Readable Media) that can be read by an electronic device, and can be read and executed by an electronic device.
이와 같이, 본 발명이 속하는 기술분야의 당업자는 본 발명이 그 기술적 사상이나 필수적 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적인 것이 아닌 것으로서 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.Thus, those skilled in the art will appreciate that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the embodiments described above are to be considered in all respects only as illustrative and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.
본 발명은 본 발명의 목적은 사각형 형태의 quadrangle을 기본 요소로 삼각형 형태의 폴리곤(polygon)을 에뮬레이션(emulation)함으로써, 기본적인 3차원 변형 기술(3d transform)인 rotate, translate, scale만으로도 폴리곤을 이용한 3차원 객체를 생성하고 조작할 수 있도록 하는 3차원 객체 생성 장치 및 그 방법에 적용될 수 있다. The object of the present invention is to emulate a polygon of a triangular shape with a quadrangle as a basic element to emulate a polygon using a basic three dimensional transformation technique (rotate, translate and scale) A 3D object generation apparatus and method in which a 3D object can be generated and manipulated.
100 : 3차원 객체 생성장치 110 : 통신부
120 : 입력부 130 : 출력부
140 : 저장부 150 : 3차원 객체 생성부
152 : 사각형 격자 요소 생성 모듈 154 : 3차원 객체 생성 모듈
160 : 3차원 객체 조작 처리부 162 : 좌표값 저장 모듈
164 : 3D transform matrix 생성 모듈
166 : 3차원 객체 변형 모듈100: Three-dimensional object creation device 110:
120: input unit 130: output unit
140: storage unit 150: three-dimensional object generation unit
152: Square grid element generation module 154: 3D object generation module
160: Three-dimensional object manipulation processor 162: Coordinate value storage module
164: 3D transform matrix generation module
166: 3D object transformation module
Claims (5)
상기 생성된 3차원 객체에서 객체 조작 신호가 입력되면, 상기 객체 조작 신호에 따라 해당 개별 격자 요소의 꼭지점 좌표값을 변경하여 3D transform matrix를 생성하고, 상기 생성된 3D transform matrix를 기 정의된 CSS transform(Cascading Style Sheet transform)에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 조작 처리부;
를 포함하되,
상기 3차원 객체 생성부는 상기 웹 페이지의 구성요소가 이미지인 경우, 원본 이미지에 대응되는 격자 형태의 개별 이미지를 서비스 제공 장치로부터 전달받거나, 브라우저 내부 연산을 통해 원본 이미지를 비트맵 형태로 변환한 후 격자 이미지를 자체적으로 생성하고,
상기 3차원 객체 생성부는 상기 웹 페이지의 구성요소를 일정 개수의 사각형 격자로 균일하게 나누어 사각형 격자 요소를 생성하는 사각형 격자요소 생성모듈; 및
상기 생성된 각 사각형 격자 요소의 대각 방향 꼭지점을 이어서 두 개의 삼각형으로 나누고, 각 사각형 격자 요소를 복제한 후, 두 사각형이 서로 다른 삼각형 영역만 보이도록 투명도를 조절하여 다수의 폴리곤을 생성하는 3차원 객체 생성 모듈을 포함하는 것을 특징으로 하는 3차원 객체 생성 장치.
A three-dimensional object generation unit for generating a three-dimensional object by dividing a component of the two-dimensional web page into a plurality of polygons; And
A 3D transform matrix is generated by changing the vertex coordinate value of the corresponding individual grid element according to the object manipulation signal, and the generated 3D transform matrix is transformed into a predefined CSS transform A three-dimensional object manipulation processor for generating a transformed three-dimensional object by applying it to a Cascading Style Sheet transform;
, ≪ / RTI &
If the component of the web page is an image, the three-dimensional object generation unit receives an individual image in a grid form corresponding to the original image from the service providing apparatus, or converts the original image into a bitmap form through internal operation of the browser It creates its own grid image,
Wherein the three-dimensional object generation unit includes: a square grid element generation module for generating square grid elements by uniformly dividing the components of the web page into a predetermined number of square grid; And
Dimensional polygons are generated by dividing the diagonal vertices of each of the generated rectangular lattice elements into two triangles and then replicating the respective rectangular lattice elements and adjusting the transparency so that only the two triangles are different from each other. And an object generation module.
상기 3차원 객체 생성 모듈은 상기 구성 요소가 보여지는 삼각형 이외 영역의 투명도를 '0'으로 설정하여, 해당 두 사각형에서 서로 다른 영역의 삼각형에서만 구성요소가 보이도록 하는 것을 특징으로 하는 3차원 객체 생성 장치.The method according to claim 1,
Dimensional object generation module sets the transparency of a region other than the triangle in which the constituent elements are shown to be '0' so that the constituent elements are visible only in triangles of different regions in the corresponding two rectangles. Device.
상기 3차원 객체 조작 처리부는,
상기 3차원 객체 생성부에서 생성된 3차원 객체를 구성하는 각 격자 요소의 꼭지점 좌표값을 저장하는 좌표값 저장 모듈;
상기 3차원 객체에서 객체 조작 신호가 입력된 경우, 상기 객체 조작 신호에 따라 개별 격자 요소의 꼭지점 좌표값을 변경하고, 상기 변경된 꼭지점 좌표값과 상기 좌표값 저장 모듈에 저장된 꼭지점 좌표값을 이용하여 각 격자 요소들의 3D transform matrix를 생성하는 3D transform matrix 생성 모듈; 및
상기 생성된 3D transform matrix를 CSS transform에 적용하여 변형된 3차원 객체를 생성하는 3차원 객체 변형 모듈을 포함하는 것을 특징으로 하는 3차원 객체 생성 장치.
The method according to claim 1,
Wherein the 3D object manipulation processor comprises:
A coordinate value storage module for storing vertex coordinate values of each lattice element constituting the three-dimensional object generated by the three-dimensional object generation unit;
Wherein when the object manipulation signal is input in the 3D object, the vertex coordinate value of the individual grid element is changed according to the object manipulation signal, and the vertex coordinate value stored in the coordinate value storage module A 3D transform matrix generation module for generating a 3D transform matrix of lattice elements; And
And a 3D object transform module for transforming the generated 3D transform matrix to a CSS transform to generate a transformed 3D object.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160126755A KR101911904B1 (en) | 2016-09-30 | 2016-09-30 | Apparatus for 3D object creation and thereof Method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020160126755A KR101911904B1 (en) | 2016-09-30 | 2016-09-30 | Apparatus for 3D object creation and thereof Method |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020120107025A Division KR101911906B1 (en) | 2012-09-26 | 2012-09-26 | Apparatus for 3D object creation and thereof Method |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160117406A KR20160117406A (en) | 2016-10-10 |
KR101911904B1 true KR101911904B1 (en) | 2018-10-25 |
Family
ID=57146396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020160126755A KR101911904B1 (en) | 2016-09-30 | 2016-09-30 | Apparatus for 3D object creation and thereof Method |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101911904B1 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020187831A1 (en) | 2001-06-08 | 2002-12-12 | Masatoshi Arikawa | Pseudo 3-D space representation system, pseudo 3-D space constructing system, game system and electronic map providing system |
US20040021680A1 (en) | 2002-05-21 | 2004-02-05 | Fumiaki Hara | Image processing method, apparatus and program |
JP2005063287A (en) * | 2003-08-19 | 2005-03-10 | Dainippon Printing Co Ltd | Digital book, digital book display method, and digital book production method |
US20060176295A1 (en) | 2003-05-30 | 2006-08-10 | Lattice Technology, Inc. | 3-Dimensional graphics data display device |
US20100299596A1 (en) | 2009-05-21 | 2010-11-25 | Sony Computer Entertainment America Inc. | Dynamic reconfiguration of gui display decomposition based on predictive model |
US20120054192A1 (en) | 2010-08-30 | 2012-03-01 | Microsoft Corporation | Enhancing search-result relevance ranking using uniform resource locators for queries containing non-encoding characters |
WO2012096988A2 (en) | 2011-01-10 | 2012-07-19 | Rutgers, The State University Of New Jersey | Method and apparatus for shape based deformable segmentation of multiple overlapping objects |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101536926B1 (en) | 2008-11-27 | 2015-07-15 | 삼성전자주식회사 | Apparatus and method for rendering and generating of three dimensional model in electronic device |
-
2016
- 2016-09-30 KR KR1020160126755A patent/KR101911904B1/en active IP Right Grant
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020187831A1 (en) | 2001-06-08 | 2002-12-12 | Masatoshi Arikawa | Pseudo 3-D space representation system, pseudo 3-D space constructing system, game system and electronic map providing system |
US20040021680A1 (en) | 2002-05-21 | 2004-02-05 | Fumiaki Hara | Image processing method, apparatus and program |
US20060176295A1 (en) | 2003-05-30 | 2006-08-10 | Lattice Technology, Inc. | 3-Dimensional graphics data display device |
JP2005063287A (en) * | 2003-08-19 | 2005-03-10 | Dainippon Printing Co Ltd | Digital book, digital book display method, and digital book production method |
US20100299596A1 (en) | 2009-05-21 | 2010-11-25 | Sony Computer Entertainment America Inc. | Dynamic reconfiguration of gui display decomposition based on predictive model |
US20120054192A1 (en) | 2010-08-30 | 2012-03-01 | Microsoft Corporation | Enhancing search-result relevance ranking using uniform resource locators for queries containing non-encoding characters |
WO2012096988A2 (en) | 2011-01-10 | 2012-07-19 | Rutgers, The State University Of New Jersey | Method and apparatus for shape based deformable segmentation of multiple overlapping objects |
Non-Patent Citations (1)
Title |
---|
"JavaScript: The Definitive Guide", Sixth Edition, by David Flanagan, Published by O’Reilly Media(2011)* |
Also Published As
Publication number | Publication date |
---|---|
KR20160117406A (en) | 2016-10-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101911906B1 (en) | Apparatus for 3D object creation and thereof Method | |
US8610714B2 (en) | Systems, methods, and computer-readable media for manipulating graphical objects | |
EP1865467B1 (en) | Image processing system and program | |
US20070245250A1 (en) | Desktop window manager using an advanced user interface construction framework | |
US20080001968A1 (en) | Layered image compositing system for user interfaces | |
CN106575158B (en) | Environment mapping virtualization mechanism | |
CN101421761A (en) | Visual and scene graph interfaces | |
US11314400B2 (en) | Unified digital content selection system for vector and raster graphics | |
KR101911904B1 (en) | Apparatus for 3D object creation and thereof Method | |
US6664975B1 (en) | Cheap well-behaved affine transformation of bounding spheres | |
Fluke et al. | Immersive virtual reality experiences for all-sky data | |
KR101630257B1 (en) | 3D image providing system and providing method thereof | |
Mendes et al. | IMAGO visualization System: an interactive web-based 3D visualization system for cultural heritage applications | |
JPH11296696A (en) | Three-dimensional image processor | |
Gede | Novel Globe Publishing Techniques Using WebGL | |
CN116243831B (en) | Virtual cloud exhibition hall interaction method and system | |
CN108431868A (en) | The relevant graphical effect of tactile | |
JP4250537B2 (en) | Image creating method, image creating apparatus, and program | |
Lehn et al. | Geometry Processing | |
Geng et al. | Key technologies research of an interactive realistic graphics visualization system based on visual C++ and OpenGL | |
Florek et al. | Interactive information visualization using graphics hardware | |
CN117523129A (en) | Method and device for displaying three-dimensional model of product characteristics based on WebGL | |
US20030038806A1 (en) | Image processing apparatus and image processing program | |
AU2019213404A1 (en) | Unified selection model for vector and raster graphics | |
Dhete et al. | Dynamic graph plotting with WPF |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |