KR102486770B1 - Control method of electronic apparatus for automatically generating virtual object based on building information - Google Patents

Control method of electronic apparatus for automatically generating virtual object based on building information Download PDF

Info

Publication number
KR102486770B1
KR102486770B1 KR1020220052715A KR20220052715A KR102486770B1 KR 102486770 B1 KR102486770 B1 KR 102486770B1 KR 1020220052715 A KR1020220052715 A KR 1020220052715A KR 20220052715 A KR20220052715 A KR 20220052715A KR 102486770 B1 KR102486770 B1 KR 102486770B1
Authority
KR
South Korea
Prior art keywords
virtual
virtual object
electronic device
virtual objects
control method
Prior art date
Application number
KR1020220052715A
Other languages
Korean (ko)
Inventor
이한종
Original Assignee
(주)이브이알스튜디오
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 (주)이브이알스튜디오 filed Critical (주)이브이알스튜디오
Priority to KR1020220052715A priority Critical patent/KR102486770B1/en
Application granted granted Critical
Publication of KR102486770B1 publication Critical patent/KR102486770B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Human Computer Interaction (AREA)
  • Architecture (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Processing Or Creating Images (AREA)

Abstract

A control method of an electronic apparatus is disclosed. The control method includes the steps of: receiving a user input for selecting an area corresponding to a real space; obtaining building information for each of a plurality of buildings included in the selected area according to the user input; and generating a plurality of virtual objects that are matched to each of the plurality of buildings in a 3D modeled virtual space.

Description

건물 정보를 기초로 가상 객체를 자동으로 생성하는 전자 장치의 제어 방법 { CONTROL METHOD OF ELECTRONIC APPARATUS FOR AUTOMATICALLY GENERATING VIRTUAL OBJECT BASED ON BUILDING INFORMATION }Control method of electronic device automatically generating virtual object based on building information { CONTROL METHOD OF ELECTRONIC APPARATUS FOR AUTOMATICALLY GENERATING VIRTUAL OBJECT BASED ON BUILDING INFORMATION }

본 개시는 3차원 가상 공간을 모델링하는 전자 장치의 제어 방법에 관한 것으로, 보다 상세하게는, 가상 공간 내에 건물에 해당하는 가상 객체를 자동으로 생성하는 전자 장치의 제어 방법에 관한 것이다.The present disclosure relates to a control method of an electronic device that models a 3D virtual space, and more particularly, to a control method of an electronic device that automatically creates a virtual object corresponding to a building in a virtual space.

3차원 모델링(Modeling)은 시각적으로 이해를 높이고 입체적인 분석을 가능하게 하여, 2차원 정보가 가지는 한계를 개선시킬 수 있다. 특히, 3차원 모델링은, 애니메이션, 게임 등을 구현함에 있어 사용자에게 현실감 있는 3차원의 가상 공간을 제공할 수 있다.3D modeling can visually enhance understanding and enable 3D analysis, thereby improving the limitations of 2D information. In particular, 3D modeling can provide a realistic 3D virtual space to users in implementing animations, games, and the like.

한편, 3차원 가상 공간의 디자인에 있어서, 일반적으로 개발자/디자이너 등은 개별적인 가상 객체(ex. 건물, 사람, 길) 등을 표현하기 위해 많은 시간을 할애한다. Meanwhile, in designing a 3D virtual space, developers/designers generally spend a lot of time expressing individual virtual objects (eg, buildings, people, roads).

예를 들어, 건물 하나를 디자인하는 경우를 가정하면, 건물 하나하나의 구체적인 위치, 형태, 방향, 사이즈를 하나하나 지정해야 하며, 건물 내 세부적인 디테일(재질, 창문, 층, 지붕 등) 역시 하나하나 그려지거나 설정될 필요가 있다. 더하여, 만약 디자인의 대상이 건물 하나가 아니라 도시 하나로 확장되는 경우라면, 수많은 건물이 각각 디자인되어야 하는 어려움이 있다.For example, assuming a case of designing a building, the specific location, shape, direction, and size of each building must be specified one by one, and the detailed details (material, window, floor, roof, etc.) within the building are also one. One needs to be drawn or set. In addition, if the target of design is expanded to one city rather than one building, there is a difficulty in designing numerous buildings individually.

게임/애니메이션/CG 등의 현실감이 점차 상향 평준화되고 있는 상황에서, 높은 퀄리티의 디테일한 이미지를 구축하기 위한 개발자/디자이너의 노력과 시간이 너무 많이 소요되는 실정이다.In a situation where the sense of reality of games/animations/CG is gradually being leveled up, developers/designers spend too much effort and time to build detailed images of high quality.

등록특허공보 제10-2258285호(가상건물 생성과 활용 방법 및 서버)Registered Patent Publication No. 10-2258285 (virtual building creation and utilization method and server)

본 개시는, 맵 기반으로 제공되는 건물 정보만을 활용하여 가상 공간 내 가상 객체를 자동으로 생성하는 전자 장치의 제어 방법을 제공한다.The present disclosure provides a control method of an electronic device that automatically creates a virtual object in a virtual space using only building information provided based on a map.

본 개시의 목적들은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 본 개시의 다른 목적 및 장점들은 하기의 설명에 의해서 이해될 수 있고, 본 개시의 실시 예에 의해 보다 분명하게 이해될 것이다. 또한, 본 개시의 목적 및 장점들은 특허 청구 범위에 나타낸 수단 및 그 조합에 의해 실현될 수 있음을 쉽게 알 수 있을 것이다.The objects of the present disclosure are not limited to the above-mentioned objects, and other objects and advantages of the present disclosure not mentioned above can be understood by the following description and will be more clearly understood by the embodiments of the present disclosure. Further, it will be readily apparent that the objects and advantages of the present disclosure may be realized by means of the instrumentalities and combinations indicated in the claims.

본 개시의 일 실시 예에 따른 전자 장치의 제어 방법은, 실제 공간에 해당하는 일 구역을 선택하는 사용자 입력을 수신하는 단계, 상기 사용자 입력에 따라 선택된 구역에 포함되는 복수의 건물 각각에 대한 건물 정보를 획득하는 단계,A control method of an electronic device according to an embodiment of the present disclosure includes receiving a user input for selecting a zone corresponding to a real space, building information on each of a plurality of buildings included in the zone selected according to the user input. step of obtaining,

상기 건물 정보를 바탕으로, 3차원의 가상 공간 내에 상기 복수의 건물 각각에 매칭되는 복수의 가상 객체를 생성하는 단계를 포함한다.and generating a plurality of virtual objects matching each of the plurality of buildings in a three-dimensional virtual space based on the building information.

상기 건물 정보는, 각 건물의 위치, 높이, 높이 별 단면도, 방향, 및 면적에 대한 정보를 포함할 수 있다.The building information may include information about the location, height, sectional view, direction, and area of each building.

상기 전자 장치의 제어 방법은, 상기 복수의 가상 객체 중 하나의 가상 객체가 선택되면, 상기 선택된 가상 객체의 편집을 위한 적어도 하나의 UI(User Interface)를 제공하는 단계를 포함할 수 있다.The control method of the electronic device may include, when one virtual object is selected from among the plurality of virtual objects, providing at least one user interface (UI) for editing the selected virtual object.

상기 전자 장치의 제어 방법은, 상기 복수의 가상 객체 각각에 식별 번호를 지정하는 단계, 상기 복수의 가상 객체 중 제1 가상 객체를 선택하는 사용자 입력이 수신되면, 상기 제1 가상 객체를 포함하는 상기 가상 공간 내 영역을 표시하는 단계를 포함할 수 있다. 여기서, 상기 가상 공간 내 영역을 표시하는 단계는, 단일 가상 객체를 표시하는 모드가 선택된 경우, 상기 선택된 제1 가상 객체만을 표시하고, 전체 가상 객체를 표시하는 모드가 선택된 경우, 상기 복수의 가상 객체 중 상기 영역에 포함되는 가상 객체들을 모두 표시할 수 있다.The control method of the electronic device may include assigning an identification number to each of the plurality of virtual objects, and when a user input for selecting a first virtual object from among the plurality of virtual objects is received, A step of displaying an area within the virtual space may be included. Here, the displaying of the area in the virtual space may include displaying only the selected first virtual object when a mode for displaying a single virtual object is selected, and displaying the plurality of virtual objects when a mode for displaying all virtual objects is selected. Among them, all virtual objects included in the area may be displayed.

이 경우, 상기 전자 장치의 제어 방법은, 상기 복수의 가상 객체 중 제1 가상 객체를 선택하는 사용자 입력이 수신되면, 상기 제1 가상 객체의 제1 식별 번호를 표시하는 단계, 상기 표시된 제1 식별 번호를 제2 식별 번호로 변경하기 위한 사용자 입력이 수신되면, 상기 제1 가상 객체를 상기 제2 식별 번호에 매칭되는 제2 가상 객체로 변경하는 단계를 포함할 수 있다.In this case, the control method of the electronic device may include displaying a first identification number of the first virtual object when a user input for selecting a first virtual object from among the plurality of virtual objects is received; and changing the first virtual object into a second virtual object matching the second identification number when a user input for changing the number to the second identification number is received.

상기 복수의 가상 객체를 생성하는 단계는, 상기 복수의 가상 객체의 건물 정보를 바탕으로, 상기 복수의 가상 객체를 복수의 그룹으로 구분하고, 상기 복수의 그룹 별로 지정된 컬러를 바탕으로, 상기 복수의 가상 객체의 윤곽 모양을 표시할 수 있다.The generating of the plurality of virtual objects may include classifying the plurality of virtual objects into a plurality of groups based on building information of the plurality of virtual objects, and dividing the plurality of virtual objects into a plurality of groups based on a color designated for each of the plurality of groups. The contour shape of the virtual object can be displayed.

한편, 상기 전자 장치의 제어 방법은, 상기 가상 공간 내 일 지점에 적어도 하나의 건물을 생성하기 위한 사용자 입력이 수신되면, 상기 복수의 가상 객체에 대한 리스트를 제공하는 단계, 상기 리스트 내에서 사용자 입력에 따라 선택된 가상 객체와 동일한 가상 객체를 상기 지점 상에 추가적으로 생성하는 단계를 포함할 수 있다.Meanwhile, the control method of the electronic device may include providing a list of the plurality of virtual objects when a user input for creating at least one building at a point in the virtual space is received; It may include additionally creating a virtual object identical to the virtual object selected according to the point on the point.

이때, 상기 전자 장치의 제어 방법은, 상기 추가적으로 생성된 가상 객체가 선택되면, 상기 추가적으로 생성된 가상 객체와 매칭되는 가상 객체의 위치, 방향, 및 이미지를 제공하는 단계를 포함할 수도 있다.In this case, the control method of the electronic device may include providing, when the additionally created virtual object is selected, providing a location, direction, and image of the virtual object that matches the additionally created virtual object.

한편, 상기 전자 장치의 제어 방법은, 상기 복수의 가상 객체의 건물 정보를 바탕으로, 상기 복수의 가상 객체를 복수의 그룹으로 구분하는 단계, 사용자 입력에 따라, 상기 가상 공간에 포함된 적어도 하나의 가상 객체를 삭제하거나 또는 상기 가상 공간 내에 적어도 하나의 가상 객체를 추가하는 단계, 상기 복수의 그룹 각각에 포함되는 가상 객체의 수의 증감을 모니터링하는 단계, 상기 가상 공간 내 일 지점에 적어도 하나의 가상 객체를 생성하기 위한 사용자 입력이 수신되면, 상기 복수의 그룹 중 가상 객체의 수가 줄어든 그룹에 속하는 적어도 하나의 가상 객체에 대한 정보를 제공하는 단계를 포함할 수도 있다.Meanwhile, the control method of the electronic device may include classifying the plurality of virtual objects into a plurality of groups based on building information of the plurality of virtual objects, and at least one object included in the virtual space according to a user input. Deleting a virtual object or adding at least one virtual object to the virtual space, monitoring an increase or decrease in the number of virtual objects included in each of the plurality of groups, and selecting at least one virtual object at a point in the virtual space. When a user input for creating an object is received, providing information on at least one virtual object belonging to a group in which the number of virtual objects is reduced among the plurality of groups may be included.

본 개시에 따른 전자 장치의 제어 방법은, 실제 공간을 나타내는 맵 상 일부 구역을 선택하는 것만으로도 해당 구역 내 건물 정보를 추출하여 가상 공간 내 복수의 가상 객체를 자동으로 생성할 수 있다는 장점이 있다.The method for controlling an electronic device according to the present disclosure has the advantage of automatically generating a plurality of virtual objects in a virtual space by extracting building information in a corresponding area just by selecting a partial area on a map representing a real space. .

본 개시에 따른 전자 장치의 제어 방법은, 3차원의 가상 공간 내에서 건물 및/또는 도시를 디자인하는 디자이너/개발자의 수고를 줄여주며, 세부 디자인을 반영하기 전에 전반적인 (가상) 도시의 틀을 설계하는 과정을 효율적으로 수행할 수 있다.The control method of an electronic device according to the present disclosure reduces the designer/developer's efforts to design a building and/or city in a 3D virtual space, and designs the overall (virtual) city frame before reflecting the detailed design. process can be carried out efficiently.

도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도,
도 2는 본 개시의 일 실시 예에 따라 가상 객체를 생성하는 전자 장치의 제어 방법을 설명하기 위한 흐름도,
도 3a 내지 도 3e는 본 개시의 일 실시 예에 따른 전자 장치가 OSM(Open Street Map) 정보를 바탕으로 가상 객체를 생성하는 과정을 설명하기 위한 도면들,
도 4a 내지 도 4c는 본 개시의 일 실시 예에 따른 전자 장치가 가상 공간 내 편집 대상인 가상 객체의 형상을 사용자의 설정에 따라 다르게 제공하는 동작을 설명하기 위한 도면들,
도 5는 본 개시의 일 실시 예에 따른 전자 장치가 가상 객체를 복수의 슬롯으로 구분하여 디자인이 반영된 가상 객체를 모델링하는 동작을 설명하기 위한 도면, 그리고
도 6은 본 개시의 다양한 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.
1 is a block diagram for explaining the configuration of an electronic device according to an embodiment of the present disclosure;
2 is a flowchart for explaining a control method of an electronic device generating a virtual object according to an embodiment of the present disclosure;
3A to 3E are diagrams for explaining a process of generating a virtual object based on OSM (Open Street Map) information by an electronic device according to an embodiment of the present disclosure;
4A to 4C are diagrams for explaining an operation of differently providing a shape of a virtual object to be edited in a virtual space according to a user's setting by an electronic device according to an embodiment of the present disclosure;
5 is a diagram for explaining an operation of modeling a virtual object in which a design is reflected by dividing a virtual object into a plurality of slots by an electronic device according to an embodiment of the present disclosure;
6 is a block diagram for explaining the configuration of an electronic device according to various embodiments of the present disclosure.

본 개시에 대하여 구체적으로 설명하기에 앞서, 본 명세서 및 도면의 기재 방법에 대하여 설명한다.Prior to a detailed description of the present disclosure, the method of describing the present specification and drawings will be described.

먼저, 본 명세서 및 청구범위에서 사용되는 용어는 본 개시의 다양한 실시 예들에서의 기능을 고려하여 일반적인 용어들을 선택하였다. 하지만, 이러한 용어들은 당해 기술 분야에 종사하는 기술자의 의도나 법률적 또는 기술적 해석 및 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 일부 용어는 출원인이 임의로 선정한 용어도 있다. 이러한 용어에 대해서는 본 명세서에서 정의된 의미로 해석될 수 있으며, 구체적인 용어 정의가 없으면 본 명세서의 전반적인 내용 및 당해 기술 분야의 통상적인 기술 상식을 토대로 해석될 수도 있다. First, terms used in the present specification and claims are general terms in consideration of functions in various embodiments of the present disclosure. However, these terms may vary depending on the intention of a technician working in the art, legal or technical interpretation, and the emergence of new technologies. In addition, some terms are arbitrarily selected by the applicant. These terms may be interpreted as the meanings defined in this specification, and if there is no specific term definition, they may be interpreted based on the overall content of this specification and common technical knowledge in the art.

또한, 본 명세서에 첨부된 각 도면에 기재된 동일한 참조번호 또는 부호는 실질적으로 동일한 기능을 수행하는 부품 또는 구성요소를 나타낸다. 설명 및 이해의 편의를 위해서 서로 다른 실시 예들에서도 동일한 참조번호 또는 부호를 사용하여 설명한다. 즉, 복수의 도면에서 동일한 참조 번호를 가지는 구성요소를 모두 도시되어 있다고 하더라도, 복수의 도면들이 하나의 실시 예를 의미하는 것은 아니다. In addition, the same reference numerals or numerals in each drawing attached to this specification indicate parts or components that perform substantially the same function. For convenience of description and understanding, the same reference numerals or symbols are used in different embodiments. That is, even if all components having the same reference numerals are shown in a plurality of drawings, the plurality of drawings do not mean one embodiment.

또한, 본 명세서 및 청구범위에서는 구성요소들 간의 구별을 위하여 "제1", "제2" 등과 같이 서수를 포함하는 용어가 사용될 수 있다. 이러한 서수는 동일 또는 유사한 구성요소들을 서로 구별하기 위하여 사용하는 것이며 이러한 서수 사용으로 인하여 용어의 의미가 한정 해석되어서는 안 된다. 일 예로, 이러한 서수와 결합된 구성요소는 그 숫자에 의해 사용 순서나 배치 순서 등이 제한되어서는 안 된다. 필요에 따라서는, 각 서수들은 서로 교체되어 사용될 수도 있다. Also, in the present specification and claims, terms including ordinal numbers such as “first” and “second” may be used to distinguish between elements. These ordinal numbers are used to distinguish the same or similar components from each other, and the meaning of the term should not be construed as being limited due to the use of these ordinal numbers. For example, the order of use or arrangement of elements associated with such ordinal numbers should not be limited by the number. If necessary, each ordinal number may be used interchangeably.

본 명세서에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "구성되다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In this specification, singular expressions include plural expressions unless the context clearly dictates otherwise. In this application, the terms "comprise" or "consist of" are intended to designate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, but one or more other It should be understood that the presence or addition of features, numbers, steps, operations, components, parts, or combinations thereof is not precluded.

본 개시의 실시 예에서 "모듈", "유닛", "부(part)" 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성요소를 지칭하기 위한 용어이며, 이러한 구성요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈", "유닛", "부(part)" 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.In the embodiments of the present disclosure, terms such as “module,” “unit,” and “part” are terms used to refer to components that perform at least one function or operation, and these components are hardware or software. It may be implemented or implemented as a combination of hardware and software. In addition, a plurality of "modules", "units", "parts", etc. are integrated into at least one module or chip, except for cases where each of them needs to be implemented with separate specific hardware, so that at least one processor can be implemented as

또한, 본 개시의 실시 예에서, 어떤 부분이 다른 부분과 연결되어 있다고 할 때, 이는 직접적인 연결뿐 아니라, 다른 매체를 통한 간접적인 연결의 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 포함한다는 의미는, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Also, in an embodiment of the present disclosure, when a part is said to be connected to another part, this includes not only a direct connection but also an indirect connection through another medium. In addition, the meaning that a certain part includes a certain component means that it may further include other components without excluding other components unless otherwise stated.

도 1은 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.1 is a block diagram for explaining the configuration of an electronic device according to an embodiment of the present disclosure.

도 1을 참조하면, 전자 장치(100)는 메모리(110) 및 프로세서(120)를 포함할 수 있다. Referring to FIG. 1 , an electronic device 100 may include a memory 110 and a processor 120 .

전자 장치(100)는 데스크탑 PC, 노트북 PC, 태블릿 PC, 스마트폰, PDA 등 다양한 단말 기기에 해당할 수 있다. 일 예로, 전자 장치(100)는 적어도 하나의 컴퓨터 프로그램을 실행함으로써 후술할 제어 방법(도 2)을 수행할 수 있다. 여기서, 컴퓨터 프로그램은, 게임/애니메이션/CG를 디자인하기 위한 툴로서 유상 또는 무상으로 배포되는 것일 수 있다.The electronic device 100 may correspond to various terminal devices such as a desktop PC, a notebook PC, a tablet PC, a smart phone, and a PDA. For example, the electronic device 100 may perform a control method (FIG. 2) to be described later by executing at least one computer program. Here, the computer program, as a tool for designing games/animations/CGs, may be distributed for a fee or free of charge.

또한, 전자 장치(100)는 적어도 하나의 컴퓨터로 구성된 서버로 구현될 수도 있다. 이 경우, 전자 장치(100)는 다양한 사용자 단말(ex. 데스크탑 PC, 노트북 PC 등)과 통신을 수행할 수 있다. 구체적으로, 전자 장치(100)는 적어도 하나의 웹 페이지 또는 애플리케이션을 통해 디자이너의 사용자 단말과 연동되어 후술할 제어 방법을 수행할 수도 있다.Also, the electronic device 100 may be implemented as a server composed of at least one computer. In this case, the electronic device 100 can communicate with various user terminals (eg, a desktop PC, a notebook PC, etc.). Specifically, the electronic device 100 may perform a control method to be described later in association with a designer's user terminal through at least one web page or application.

메모리(110)는 전자 장치(100)의 구성요소들의 전반적인 동작을 제어하기 위한 운영체제(OS: Operating System) 및 전자 장치(100)의 구성요소와 관련된 적어도 하나의 인스트럭션 또는 데이터를 저장하기 위한 구성이다.The memory 110 is an operating system (OS) for controlling the overall operation of the components of the electronic device 100 and a component for storing at least one instruction or data related to the components of the electronic device 100. .

메모리(110)는 ROM, 플래시 메모리 등의 비휘발성 메모리를 포함할 수 있으며, DRAM 등으로 구성된 휘발성 메모리를 포함할 수 있다. 또한, 메모리(110)는 하드 디스크, SSD(Solid state drive) 등을 포함할 수도 있다.The memory 110 may include non-volatile memory such as ROM and flash memory, and may include volatile memory such as DRAM. Also, the memory 110 may include a hard disk, a solid state drive (SSD), and the like.

메모리(110)는 3차원 가상 공간의 모델링과 관련된 다양한 정보를 포함할 수 있다. 예를 들어, 메모리(110)는 3차원 가상 공간 내 위치하는 다양한 가상 객체에 대한 정보를 포함할 수 있다.The memory 110 may include various information related to modeling of a 3D virtual space. For example, the memory 110 may include information about various virtual objects located in a 3D virtual space.

메모리(110)는 다양한 건물에 대한 건물 정보를 포함할 수 있다. 건물 정보는, 건물의 위치(ex. 주소), 높이, 높이 별 단면도, 방향, 면적, 건물명, 용도 등을 포함할 수 있다.The memory 110 may include building information for various buildings. The building information may include the location (eg, address) of the building, height, cross section by height, direction, area, building name, purpose, and the like.

건물 정보는, 실제 공간을 나타내는 적어도 하나의 맵과 연동되어 관리되는 정보일 수 있다.The building information may be information managed in association with at least one map representing a real space.

예를 들어, 건물 정보는, 실제 존재하는 적어도 하나의 지역에 대하여 공개된 OSM(Open Street Map)에 포함된 정보일 수 있다. OSM은 오픈 소스 방식의 참여형 지도 서비스에 해당하는 바, 각 지역에 위치하는 다양한 건물에 대한 건물 정보를 포함한다.For example, the building information may be information included in an open street map (OSM) for at least one area that actually exists. OSM corresponds to a participatory map service of an open source method, and includes building information about various buildings located in each region.

한편, 건물 정보는, 실제 존재하지 않는 가상으로 정의된 공간을 나타내는 적어도 하나의 맵과 연동되어 관리될 수도 있다. 이 경우, 건물 정보는, 가상으로 정의된 건물에 대한 정보에 해당할 수 있다.Meanwhile, building information may be managed in association with at least one map representing a virtually defined space that does not actually exist. In this case, the building information may correspond to information about a virtually defined building.

프로세서(120)는 전자 장치(100)를 전반적으로 제어하기 위한 구성이다. 구체적으로, 프로세서(120)는 메모리(110)와 연결되는 한편 메모리(110)에 저장된 적어도 하나의 인스트럭션을 실행함으로써 본 개시의 다양한 실시 예들에 따른 동작을 수행할 수 있다.The processor 120 is a component for controlling the electronic device 100 as a whole. Specifically, the processor 120 may perform operations according to various embodiments of the present disclosure by executing at least one instruction stored in the memory 110 while being connected to the memory 110 .

프로세서(120)는 CPU, AP, DSP(Digital Signal Processor) 등과 같은 범용 프로세서, GPU, VPU(Vision Processing Unit) 등과 같은 그래픽 전용 프로세서 또는 NPU와 같은 인공지능 전용 프로세서 등을 포함할 수 있다. 인공지능 전용 프로세서는, 특정 인공지능 모델의 훈련 내지는 이용에 특화된 하드웨어 구조로 설계될 수 있다.The processor 120 may include a general-purpose processor such as a CPU, an AP, or a digital signal processor (DSP), a graphics-only processor such as a GPU or a vision processing unit (VPU), or an artificial intelligence-only processor such as an NPU. An artificial intelligence-only processor may be designed as a hardware structure specialized for training or use of a specific artificial intelligence model.

도 1을 참조하면, 프로세서(120)는 건물 정보 관리 모듈(121), 3D 모델링 모듈(122) 등을 제어할 수 있다. 본 모듈들은, 소프트웨어 및/또는 하드웨어의 결합으로 구현될 수 있다. 한편, 본 모듈들은 프로세서(120)의 기능에 따라 기능 블록을 정의하기 위한 예시에 해당하는 바, 전자 장치(100)의 기능을 설계/정의함에 있어 전자 장치(100) 내 모듈 구성이 반드시 상술한 모듈 구성과 같이 구축되어야 하는 것은 아니다.Referring to FIG. 1 , a processor 120 may control a building information management module 121 and a 3D modeling module 122 . These modules may be implemented as a combination of software and/or hardware. On the other hand, these modules correspond to examples for defining functional blocks according to the functions of the processor 120, and in designing/defining the functions of the electronic device 100, the module configuration in the electronic device 100 must be described above. It does not have to be built like a module configuration.

건물 정보 관리 모듈(121)은 상술한 건물 정보를 획득 및 관리하기 위한 구성이다.The building information management module 121 is a component for obtaining and managing the above-described building information.

일 예로, 건물 정보 관리 모듈(121)은 실제 공간에 해당하는 특정 지역의 OSM으로부터 해당 지역에 존재하는 건물들의 건물 정보를 추출할 수 있다.For example, the building information management module 121 may extract building information of buildings existing in the corresponding region from the OSM of a specific region corresponding to the actual space.

다른 예로, 건물 정보 관리 모듈(121)은 건물의 면적, 층 수, 높이, 층 별 단면도 등을 입력하는 사용자 명령에 따라 건물 정보를 생성할 수도 있다.As another example, the building information management module 121 may generate building information according to a user command for inputting the area, number of floors, height, cross-section of each floor, and the like of the building.

3D 모델링 모듈(122)은, 3차원 이미지 데이터를 바탕으로 3차원 가상 공간을 구축하기 위한 구성으로, 가상 공간을 구성하는 좌표, 각 좌표에 위치하는 가상 객체들에 대한 정보를 관리할 수 있다.The 3D modeling module 122 is a component for constructing a 3D virtual space based on 3D image data, and can manage coordinates constituting the virtual space and information about virtual objects located at each coordinate.

일 예로, 3D 모델링 모듈(122)은, 건물 정보 관리 모듈(121)을 통해 획득된 건물 정보를 바탕으로 적어도 하나의 건물에 해당하는 가상 객체를 가상 공간 내에 생성할 수 있다. 구체적으로, 3D 모델링 모듈(122)은 건물 정보에 포함된 건물의 위치, 면적, 높이, 층수, 높이 별 단면도 등을 바탕으로 실제 건물과 매칭되는 3차원의 가상 객체를 생성할 수 있다.For example, the 3D modeling module 122 may create a virtual object corresponding to at least one building in a virtual space based on building information acquired through the building information management module 121 . Specifically, the 3D modeling module 122 may create a 3D virtual object that matches a real building based on the location, area, height, number of floors, cross-sectional view by height, etc. of the building included in the building information.

이하 도면들을 통해, 3차원 가상 공간 내 가상 객체를 생성하는 전자 장치의 제어 방법을 상세하게 설명한다.A control method of an electronic device generating a virtual object in a 3D virtual space will be described in detail through the following drawings.

도 2는 본 개시의 일 실시 예에 따라 가상 객체를 생성하는 전자 장치의 제어 방법을 설명하기 위한 흐름도이다.2 is a flowchart illustrating a control method of an electronic device generating a virtual object according to an embodiment of the present disclosure.

도 2를 참조하면, 전자 장치(100)는 실제 공간에 해당하는 일 구역을 선택하는 사용자 입력을 수신할 수 있다(S210). 예를 들어, 전자 장치(100)는 OSM 상에서 특정 구역 내지는 특정 지역을 선택하는 사용자 입력을 수신할 수 있다. Referring to FIG. 2 , the electronic device 100 may receive a user input for selecting a zone corresponding to a real space (S210). For example, the electronic device 100 may receive a user input for selecting a specific area or a specific area on the OSM.

이때, 전자 장치(100)는 특정 구역의 주소(ex. 서울시, 강남구, 역삼동 등)를 설정하는 사용자 입력에 따라 해당 구역을 선택할 수 있다. In this case, the electronic device 100 may select a corresponding area according to a user input for setting the address of a specific area (eg, Seoul, Gangnam-gu, Yeoksam-dong, etc.).

또한, 전자 장치(100)는 실제 공간을 나타내는 맵(ex. 2D, 3D)을 제공할 수 있다. 이 경우, 전자 장치(100)는 맵 상에서 적어도 하나의 구역을 선택하는 사용자 입력에 따라 해당 구역을 선택할 수 있다.Also, the electronic device 100 may provide a map (eg, 2D or 3D) representing a real space. In this case, the electronic device 100 may select a corresponding area according to a user input for selecting at least one area on the map.

관련하여, 도 3a는 OSM에 포함된 맵(310), 맵(310)과 연동된 건물 정보(310')를 도시한 것이다. OSM 상에는 맵(310) 내 각 구역과 관련된 건물 정보(310')가 포함되어 있다. 또한, OSM 상에는 맵(310) 내 각 구역과 관련된 경로 정보가 포함되어 있다. 경로 정보는, 각 경로의 위치, 폭, 분류(ex. 고속도로, 자전거길, 인도 등) 등을 포함한다.In relation to this, FIG. 3A shows a map 310 included in the OSM and building information 310' interlocked with the map 310. On the OSM, building information 310' related to each area in the map 310 is included. In addition, route information related to each area in the map 310 is included on the OSM. Path information includes the location, width, classification (ex. highway, bicycle path, sidewalk, etc.) of each path.

도 3b를 참조하면, 전자 장치(100)는 해당 맵(310)을 표시할 수 있으며, 맵(310) 상에서 사용자 입력에 따라 선택된 구역(311)을 식별할 수 있다.Referring to FIG. 3B , the electronic device 100 may display a corresponding map 310 and identify an area 311 selected according to a user input on the map 310 .

그리고, 전자 장치(100)는 (선택된) 해당 구역(ex. 311)에 포함되는 복수의 건물 각각에 대한 건물 정보를 획득할 수 있다(S220). 예를 들어, OSM 내에서 “서울”의 “강남구”가 선택된 경우, 전자 장치(100)는 “강남구”에 포함되는 모든 건물에 대한 건물 정보를 추출할 수 있다.Then, the electronic device 100 may acquire building information for each of a plurality of buildings included in the (selected) corresponding area (ex. 311) (S220). For example, when “Gangnam-gu” of “Seoul” is selected in OSM, the electronic device 100 may extract building information about all buildings included in “Gangnam-gu”.

구체적인 예로, 전자 장치(100)는 OSM을 제공하는 적어도 하나의 웹페이지에 접속하여 curve/flat geo를 포함하는 OSM 데이터를 획득할 수 있다. 이때, 전자 장치(100)는 OSM 데이터 중 building data만을 추출할 수 있으며, 그 결과 각 건물에 대한 건물 정보가 획득될 수 있다. 이 경우, 전자 장치(100)는 OSM 데이터 중 건물의 뼈대(skeleton)를 구성하기 위한 건물 정보(ex. 크기, 높이 별 면적, 높이, 층수, 높이 별 단면도)만을 추출할 수 있다.As a specific example, the electronic device 100 may acquire OSM data including curve/flat geo by accessing at least one web page providing OSM. At this time, the electronic device 100 may extract only building data from OSM data, and as a result, building information for each building may be obtained. In this case, the electronic device 100 may extract only building information (eg, size, area by height, height, number of floors, cross-section by height) for constituting a skeleton of a building from OSM data.

그리고, 획득된 건물 정보를 바탕으로, 전자 장치(100)는 3차원의 가상 공간 내에 복수의 건물 각각에 매칭되는 복수의 가상 객체를 생성할 수 있다(S230). 이때, 3차원의 가상 공간은 가상 공간 내 적어도 하나의 건물 등을 디자인하기 위한 하나의 프로그램(ex. CitiGen으로 명명될 수 있음)이 실행된 결과 제공될 수 있으며, 일 예로, 해당 프로그램을 통해 제공되는 메뉴 상에서 상술한 OSM 데이터 내지는 건물 정보가 선택될 수 있다.Based on the acquired building information, the electronic device 100 may create a plurality of virtual objects that are matched with each of a plurality of buildings in a 3D virtual space (S230). At this time, the 3D virtual space may be provided as a result of executing a program (eg, which may be named CitiGen) for designing at least one building in the virtual space, and for example, provided through the corresponding program. The above-described OSM data or building information may be selected on the menu.

도 3c는 본 개시의 일 실시 예에 따른 전자 장치가 가상 공간 내 건물을 나타내는 가상 객체의 뼈대를 구성하는 동작을 설명하기 위한 도면이다.3C is a diagram for explaining an operation of configuring a skeleton of a virtual object representing a building in a virtual space by an electronic device according to an embodiment of the present disclosure.

도 3c를 참조하면, 전자 장치(100)는 벽, 창문, 문 등이 부착될 각 부분 영역을 제공하기 위한 뼈대를 바탕으로 가상 객체를 생성할 수 있다. 전자 장치(100)는 뼈대를 부분 별로 구분하기 위한 식별 번호(ex. USN: Unique Slot Number)를 지정할 수 있는 바, 추후 가상 객체의 외면을 구성하는 각 영역이 서브 빌딩 단위, 층 단위, 및 옆면 단위 등에 따라 구분되기 위한 슬롯 개념의 기준이 될 수 있다.Referring to FIG. 3C , the electronic device 100 may create a virtual object based on a skeleton for providing each partial region to which walls, windows, doors, etc. are attached. The electronic device 100 may designate an identification number (eg USN: Unique Slot Number) for classifying the skeleton into parts, so that each area constituting the outer surface of the virtual object in the future is divided into sub-building units, floor units, and side surfaces. It may be a criterion of a slot concept for classification according to a unit or the like.

예를 들어, 도 3c를 참조하면, 본 가상 객체는 각각 1번과 2번이 부여된 서브 빌딩들을 포함하며, 2번이 부여된 서브 빌딩을 기준으로 층마다 (단면이 동일한) 별도의 뼈대가 제공될 수 있다. 또한, 각 층을 구성하는 단면마다, 면이 구부러지는 지점을 기준으로 각 단면이 서로 구분되어 별도의 식별 번호를 부여받을 수 있다. For example, referring to FIG. 3C , this virtual object includes sub-buildings assigned numbers 1 and 2, respectively, and a separate skeleton (with the same cross-section) is provided for each floor based on the sub-building assigned number 2. can be provided. In addition, for each cross section constituting each layer, each cross section may be distinguished from each other based on a point at which the surface is bent, and a separate identification number may be assigned.

그 결과, 예를 들어 첫 번째 서브 빌딩의 5층의 4번째 옆면에 매칭되는 뼈대 부분의 경우, 1-5-4와 같은 식별 번호를 순차적으로 부여받을 수 있으며, 이는 추후 건물의 커스텀 디자인의 편집 단위가 되는 슬롯의 식별 번호로 활용될 수 있다.As a result, for example, in the case of the skeletal part matching the 4th side of the 5th floor of the first sub-building, identification numbers such as 1-5-4 can be sequentially assigned, which can be edited later in the custom design of the building. It can be used as an identification number of a unit slot.

관련하여, 도 3d를 참조하면, 뼈대 부분 별로 식별 번호가 부여될 수 있으며, 해당 식별 번호는, 추후 생성되는 가상 객체(: 건물)의 각 면 단위의 식별 번호와 매칭될 수 있다(비록, 도 3d에서 뼈대로 구현된 가상 객체와 실제 생성된 가상 객체는 서로 다른 객체이지만, 개념적 설명을 위해 함께 도시되었음).In this regard, referring to FIG. 3D, an identification number may be assigned to each skeleton part, and the identification number may be matched with an identification number of each side of a virtual object (: building) to be created later (although, FIG. The virtual object implemented as a skeleton in 3d and the virtual object actually created are different objects, but are shown together for conceptual illustration).

그리고, 전자 장치(100)는 각 건물에 해당하는 가상 객체의 윤곽 모양을 적어도 하나의 컬러로 표시할 수 있다. 이때, S210 단계에서 사용자 입력에 따라 선택된 구역에 포함된 모든 건물에 매칭되는 복수의 가상 객체가 일괄적으로 자동 생성될 수 있다.Also, the electronic device 100 may display the contour shape of the virtual object corresponding to each building in at least one color. At this time, a plurality of virtual objects matching all the buildings included in the selected area may be automatically generated collectively according to the user input in step S210.

예를 들어, 도 3e를 참조하면, 전자 장치(100)는 3차원의 가상 공간(320) 내에 각 건물에 매칭되는 복수의 가상 객체를 일괄적으로 생성할 수 있다. 본 가상 객체들은 앞서 도 3b에서 사용자 입력에 따라 선택된 구역(311)에 포함되는 각 건물에 매칭될 수 있다.For example, referring to FIG. 3E , the electronic device 100 may collectively create a plurality of virtual objects that match each building in the 3D virtual space 320 . These virtual objects may be matched with each building included in the area 311 selected according to the user input in FIG. 3B.

이렇듯, 본 개시에 따른 전자 장치(100)의 제어 방법은, OSM 등으로부터 추출된 건물 정보를 바탕으로 복수의 건물에 매칭되는 가상 객체들의 형상을 일괄적으로 생성할 수 있는 바, 3차원 공간 내 건물/도시를 디자인하는 디자이너/개발자의 수고를 크게 줄여줄 수 있다.As such, the control method of the electronic device 100 according to the present disclosure can collectively generate the shapes of virtual objects matched to a plurality of buildings based on building information extracted from OSM, etc., in a 3D space. It can greatly reduce the efforts of designers/developers who design buildings/cities.

도 3e에서, 복수의 가상 객체(건물)는 복수의 그룹으로 구분될 수 있고, 그룹 별로 지정된 컬러에 따라 윤곽 모양이 표시될 수 있다.In FIG. 3E , a plurality of virtual objects (buildings) may be classified into a plurality of groups, and contour shapes may be displayed according to colors designated for each group.

구체적으로, 전자 장치(100)는 복수의 가상 객체의 건물 정보를 바탕으로, 복수의 가상 객체를 복수의 그룹으로 구분할 수 있다.Specifically, the electronic device 100 may classify a plurality of virtual objects into a plurality of groups based on building information of the plurality of virtual objects.

예를 들어, 전자 장치(100)는 각 가상 객체(건물)의 면적, 층 수, 위치, 용도 중 적어도 하나를 기준으로 복수의 가상 객체를 복수의 그룹으로 구분할 수 있다. 구체적인 예로, 가상 공간 내에서 동일한 구역에 포함된 가상 객체들은 동일한 그룹으로 설정될 수 있다.For example, the electronic device 100 may classify a plurality of virtual objects into a plurality of groups based on at least one of the area, number of floors, location, and purpose of each virtual object (building). As a specific example, virtual objects included in the same area in the virtual space may be set as the same group.

한편, 전자 장치(100)는 사용자 입력에 따라 가상 공간(320) 내 적어도 하나의 영역을 표시할 수 있다. 여기서, 전자 장치(100)는 사용자 입력에 따라 가상 공간(320) 내 다양한 영역을 표시할 수 있다.Meanwhile, the electronic device 100 may display at least one area within the virtual space 320 according to a user input. Here, the electronic device 100 may display various regions within the virtual space 320 according to user input.

구체적으로, 가상 공간(320) 내 위치 및/또는 시선 방향을 변경하기 위한 사용자 입력에 따라, 전자 장치(100)는 가상 공간(320) 내 다양한 영역을 표시할 수 있다. 또한, 전자 장치(100)는 사용자 입력에 따라 현재 표시되는 영역을 확대/축소하여 표시할 수도 있다.Specifically, the electronic device 100 may display various regions within the virtual space 320 according to a user input for changing a location and/or a gaze direction within the virtual space 320 . Also, the electronic device 100 may enlarge/reduce and display the currently displayed area according to a user input.

한편, 전자 장치(100)는 생성된 복수의 가상 객체 각각에 식별 번호를 지정할 수 있다. 예를 들어, 800개의 가상 객체가 생성된 경우, 순서대로 0~791번의 식별 번호가 부여될 수 있다.Meanwhile, the electronic device 100 may assign an identification number to each of a plurality of created virtual objects. For example, when 800 virtual objects are created, identification numbers 0 to 791 may be assigned in order.

여기서, 전자 장치(100)는 생성된 복수의 가상 객체 중 하나의 가상 객체를 선택하는 사용자 입력을 수신할 수 있다. 이 경우, 전자 장치(100)는 가상 공간 내에서 선택된 가상 객체를 포함하는 영역을 표시할 수 있다.Here, the electronic device 100 may receive a user input for selecting one virtual object from among a plurality of created virtual objects. In this case, the electronic device 100 may display an area including the selected virtual object in the virtual space.

이때, 전자 장치(100)는 선택된 가상 객체의 편집을 위한 적어도 하나의 UI(User Interface)를 제공할 수 있다.In this case, the electronic device 100 may provide at least one UI (User Interface) for editing the selected virtual object.

관련하여, 도 4a 내지 도 4c는 본 개시의 일 실시 예에 따른 전자 장치가 가상 공간 내 편집 대상인 가상 객체의 형상을 사용자의 설정에 따라 다르게 제공하는 동작을 설명하기 위한 도면들이다.4A to 4C are diagrams for explaining an operation in which an electronic device according to an embodiment of the present disclosure provides a different shape of a virtual object to be edited in a virtual space according to a user's setting.

도 4a를 참조하면, 식별 번호가 “0”인 가상 객체(420-0)가 선택됨에 따라, 전자 장치(100)는 해당 가상 객체(420-0)를 포함하는 포함하는 가상 공간(420) 내 영역을 표시할 수 있다.Referring to FIG. 4A , as a virtual object 420-0 having an identification number of “0” is selected, the electronic device 100 moves within a virtual space 420 including the corresponding virtual object 420-0. area can be displayed.

또한, 전자 장치(100)는 가상 객체(420-0)를 편집하기 위한 UI(421)를 제공할 수 있다. 본 UI(421)는 건물에 해당하는 가상 객체(420-0)를 구성하는 다양한 요소를 디자인하기 위한 것이다.Also, the electronic device 100 may provide a UI 421 for editing the virtual object 420-0. This UI 421 is for designing various elements constituting the virtual object 420-0 corresponding to a building.

UI(421)를 통해, 사용자는 적어도 하나의 가상 객체를 생성/삭제할 수 있다. 또한, UI(421)를 통해, 사용자는 선택된 가상 객체(420-0)의 구조, 크기, 컬러, 재질 등을 다양하게 설정할 수 있다. 이때, 전자 장치(100)는 UI(421)를 통해 수신되는 사용자 입력을 바탕으로, 층 수, 굴곡 등 세부적인 구조를 설정할 수 있다.Through the UI 421, a user can create/delete at least one virtual object. In addition, through the UI 421, the user can variously set the structure, size, color, material, etc. of the selected virtual object 420-0. In this case, the electronic device 100 may set a detailed structure such as the number of floors and curvature based on the user input received through the UI 421 .

한편, UI 항목(421-1)은 적어도 하나의 가상 객체의 식별 번호를 표시하는 식별 번호 표시창에 해당한다.Meanwhile, the UI item 421-1 corresponds to an identification number display window displaying an identification number of at least one virtual object.

일 실시 예로, 가상 객체(420-0)가 선택됨에 따라(ex. 가상 객체(420-2)가 클릭됨), 전자 장치(100)는 가상 객체(420-0)를 포함하는 가상 공간(420) 내 영역을 표시하는 한편, UI 항목(421-1)을 통해 선택된 가상 객체(420-0)의 식별 번호를 표시할 수 있다.As an embodiment, as the virtual object 420-0 is selected (eg, the virtual object 420-2 is clicked), the electronic device 100 displays the virtual space 420 including the virtual object 420-0. ), while displaying the identification number of the selected virtual object 420-0 through the UI item 421-1.

또한, 전자 장치(100)는 UI 항목(421-1) 내에서 식별 번호를 다른 식별 번호(ex. 201)로 변경하기 위한 사용자 입력을 수신할 수 있다. 이 경우, 전자 장치(100)는 해당 가상 객체(420-0)를 변경된 식별 번호(ex. 201)에 매칭되는 다른 가상 객체(ex. 도 4b의 201)로 변경하여 표시할 수 있다. 그 결과, 가상 공간(420) 내에서 기존에 가상 객체(420-0)가 존재하던 위치에 다른 가상 객체(420-201)가 표시될 수 있다. 이렇듯, 전자 장치(100)는 다른 가상 객체의 식별 번호를 입력하는 사용자 입력만으로 각 지점에 위치하는 가상 객체를 변경할 수 있다.Also, the electronic device 100 may receive a user input for changing an identification number to another identification number (eg 201) within the UI item 421-1. In this case, the electronic device 100 may change the corresponding virtual object 420 - 0 to another virtual object (eg 201 in FIG. 4B ) that matches the changed identification number (eg 201 ) and display the same. As a result, another virtual object 420-201 may be displayed in the virtual space 420 at a location where the virtual object 420-0 previously existed. As such, the electronic device 100 may change the virtual object located at each point only with a user input of an identification number of another virtual object.

한편, UI 항목(422)은, 가상 공간(420) 내 가상 객체를 표시하는 모드를 설정하기 위한 구성이다.Meanwhile, the UI item 422 is a component for setting a mode for displaying virtual objects in the virtual space 420 .

예를 들어, UI 항목(422) 내에서 “Display OSM Shape” 항목이 사용자 입력에 따라 체크된 경우, OSM으로부터 추출된 건물 정보에 따른 각 가상 객체의 형상이 표시될 수 있다. 이 경우, 그룹 별로 지정된 컬러에 따라 각 가상 객체의 윤곽 모양(형상)이 표시될 수 있다.For example, when the “Display OSM Shape” item in the UI item 422 is checked according to the user input, the shape of each virtual object according to the building information extracted from the OSM may be displayed. In this case, the contour shape (shape) of each virtual object may be displayed according to a color designated for each group.

또한, UI 항목(422) 내에서 “Show All OSM Building” 항목이 사용자 입력에 따라 체크된 경우(: 전체 가상 객체를 표시하는 모드), 현재 선택된 가상 객체(ex. 420-0) 외에 주변의 다른 가상 객체들 역시 함께 표시될 수 있다. 반면, “Show All OSM Building” 항목이 체크되지 않은 경우(: 단일 가상 객체를 표시하는 모드), 현재 선택된 가상 객체(ex. 420-0)만이 표시될 수 있다.In addition, when the “Show All OSM Building” item in the UI item 422 is checked according to user input (a mode that displays all virtual objects), other surroundings other than the currently selected virtual object (ex. 420-0) Virtual objects may also be displayed together. On the other hand, if the “Show All OSM Building” item is not checked (mode for displaying a single virtual object), only the currently selected virtual object (ex. 420-0) can be displayed.

예를 들어, 도 4b를 참조하면, 현재 “Show All OSM Building” 항목이 체크되지 않았기 때문에, 전자 장치(100)는 가상 공간(420) 내 다른 가상 객체는 표시하지 않고, 현재 선택된 가상 객체(420-201)만을 표시할 수 있다.For example, referring to FIG. 4B , since the “Show All OSM Building” item is not currently checked, the electronic device 100 does not display other virtual objects in the virtual space 420, and the currently selected virtual object 420 -201) can be displayed.

마찬가지로, 상술한 UI 항목(421)을 통해 또 다시 다른 식별 번호(ex. 100)를 기입하는 사용자 입력이 수신되면, 도 4c와 같이 가상 객체(420-201)가 다른 가상 객체(420-100)로 대체될 수 있다.Similarly, when a user input for entering another identification number (ex. 100) is received through the above-described UI item 421, the virtual object 420-201 corresponds to another virtual object 420-100 as shown in FIG. 4C. can be replaced with

한편, 전자 장치(100)는 앞서 도 2를 통한 과정 외에도, 가상 공간 내 적어도 하나의 지점 상에 가상 객체를 (추가로) 생성할 수 있다. 이때, 전자 장치(100)는 식별 번호가 기설정된 복수의 가상 객체 중 적어도 하나를 생성할 수 있다.Meanwhile, the electronic device 100 may (additionally) create a virtual object on at least one point in the virtual space, in addition to the previous process of FIG. 2 . In this case, the electronic device 100 may create at least one of a plurality of virtual objects having preset identification numbers.

구체적으로, 전자 장치(100)는 가상 공간 내 일 지점에 적어도 하나의 건물을 생성하기 위한 사용자 입력이 수신되면, 기존재하는 복수의 가상 객체에 대한 리스트를 제공할 수 있다.Specifically, the electronic device 100 may provide a list of a plurality of existing virtual objects when a user input for creating at least one building at a point in the virtual space is received.

이 경우, 전자 장치(100)는 사용자 입력에 따라 리스트 내 적어도 하나의 가상 객체를 선택할 수 있으며, 해당 지점 상에 선택된 가상 객체를 새롭게 추가 생성할 수 있다.In this case, the electronic device 100 may select at least one virtual object in the list according to a user input, and may newly additionally create the selected virtual object on the corresponding point.

다만, 식별 번호가 기설정된 복수의 가상 객체 중 하나가 선택되어 새롭게 지어진 경우, 이미 동일한 가상 객체가 가상 공간 내 다른 지점에 동시에 존재하게 된다. 완전히 동일한 건물이 의도된 경우라면 무방하지만, 그런 경우가 아니라면, 동일한 가상 객체가 동시에 존재하게 됨에 따라 무의미한 반복으로 느껴질 수 있어 추가적인 수정이 필요할 가능성이 높다.However, when one of a plurality of virtual objects having preset identification numbers is selected and newly built, the same virtual object already exists at another point in the virtual space. It is okay if the exact same building is intended, but if not, as the same virtual object exists at the same time, it may feel like a meaningless repetition, and additional modifications are likely to be required.

관련하여, 일 실시 예로, 새롭게 생성된 가상 객체가 선택되어 표시된 상태에서, 전자 장치(100)는 해당 가상 객체와 동일한 (기존부터 존재하는) 가상 객체의 위치(가상 공간 내 위치), 방향, 및 이미지를 동시에 표시할 수 있다.In this regard, in an embodiment, in a state in which a newly created virtual object is selected and displayed, the electronic device 100 determines the position (position in the virtual space), direction, and Images can be displayed simultaneously.

이 경우, 사용자는 기존에 존재하는 동일한 가상 객체의 현 상태(ex. 외관, 디자인 등)를 참고하면서, 새롭게 생성된 가상 객체의 디자인/편집을 수행할 수 있으므로, 의도하는 차이점이 효과적으로 반영되는지 여부를 실시간으로 비교하면서 디자인이 진행될 수 있다.In this case, the user can design/edit the newly created virtual object while referring to the current state (ex. appearance, design, etc.) of the same existing virtual object, so whether the intended difference is effectively reflected. Design can proceed while comparing in real time.

한편, 상술한 바와 같이, 최초에 OSM 기반의 건물 정보에 따라 복수의 가상 객체가 생성(S230)된 이후에도, 사용자 입력에 따라 하나 이상의 가상 객체가 생성(추가) 및/또는 삭제(제거)될 수 있는 바, 전자 장치(100)는 가상 공간 내에 존재하는 가상 객체의 수의 증감을 모니터링할 수 있다.Meanwhile, as described above, even after a plurality of virtual objects are initially created (S230) according to OSM-based building information, one or more virtual objects may be created (added) and/or deleted (removed) according to user input. As such, the electronic device 100 may monitor an increase or decrease in the number of virtual objects existing in the virtual space.

구체적으로, 전자 장치(100)는 상술한 복수의 그룹 각각에 포함되는 가상 객체의 수의 증감을 모니터링할 수 있다. Specifically, the electronic device 100 may monitor an increase or decrease in the number of virtual objects included in each of the plurality of groups described above.

그리고, 전자 장치(100)는 각 그룹에 포함되는 가상 객체의 수의 증감을 포함하는 통계 정보를 제공할 수 있다. 이 경우, 전자 장치(100)의 사용자는, 실제 공간에 존재하는 복수의 건물의 구성에 대하여 가상 공간 내 건물들(가상 객체들)의 구성의 차이를 수치적으로 확인할 수 있어, 현실감 있는 디자인에 도움이 될 수 있다. 예를 들어, 높이가 비교적 낮은 그룹에 속하는 가상 객체의 수가 현실에 비해 비교적 적다는 통계 정보가 제공되는 경우, 사용자는 전자 장치(100)를 통해 가상 공간 내 건물들의 높이를 전반적으로 증가시키거나, 비교적 높은 건물을 추가 생성할 수 있게 된다.Also, the electronic device 100 may provide statistical information including an increase or decrease in the number of virtual objects included in each group. In this case, the user of the electronic device 100 can numerically check the difference in the configuration of the buildings (virtual objects) in the virtual space with respect to the configuration of a plurality of buildings existing in the real space, thereby creating a realistic design. This can help. For example, when statistical information is provided indicating that the number of virtual objects belonging to a group of relatively low heights is relatively small compared to the real world, the user generally increases the heights of buildings in the virtual space through the electronic device 100, or Allows the creation of additional relatively tall buildings.

또한, 가상 공간 내 적어도 하나의 지점에 가상 객체를 새롭게 생성하기 위한 사용자 입력이 수신되는 경우, 전자 장치(100)는 상술한 복수의 그룹 중 가상 객체의 수가 줄어든 그룹에 속하는 적어도 하나의 가상 객체에 대한 정보를 제공할 수도 있다. 예를 들어, 해당 그룹에 속하는 가상 객체의 생성을 추천하는 정보가 제공될 수 있다. 그 결과, 전자 장치(100)는 가상 공간의 현실감 유지에 기여할 수 있다.Also, when a user input for newly creating a virtual object is received at at least one point in the virtual space, the electronic device 100 assigns at least one virtual object belonging to a group in which the number of virtual objects is reduced among the plurality of groups described above. You can also provide information about For example, information recommending creation of a virtual object belonging to a corresponding group may be provided. As a result, the electronic device 100 may contribute to maintaining a sense of reality in the virtual space.

한편, 가상 객체의 윤곽 모양/형상에 그치지 않고, 전자 장치(100)는 가상 객체를 복수의 슬롯으로 구분하여 가상 객체의 구체적인 디자인을 자동으로 생성할 수도 있다.Meanwhile, the electronic device 100 may automatically create a detailed design of the virtual object by dividing the virtual object into a plurality of slots, not just the contour shape/shape of the virtual object.

관련하여, 도 5는 본 개시의 일 실시 예에 따른 전자 장치의 제어 방법이 가상 객체에 대한 디자인을 자동으로 수행하는 동작을 설명하기 위한 도면이다.In this regard, FIG. 5 is a diagram for explaining an operation of automatically performing a design for a virtual object by a control method of an electronic device according to an embodiment of the present disclosure.

일 실시 예로, 전자 장치(100)는 사용자 입력에 따라 가상 객체의 서브 빌딩의 수, 층 수, 및 옆면의 수를 각각 설정할 수 있다.As an example, the electronic device 100 may set the number of sub-buildings, the number of floors, and the number of sides of the virtual object, respectively, according to a user input.

또는, 일 실시 예로, 전자 장치(100)는 가상 객체의 건물 정보에 포함된 높이 별 단면도, 면적, 층 수를 바탕으로, 가상 객체의 서브 빌딩의 수, 층 수, 및 옆면의 수를 자동으로 식별할 수 있다.Alternatively, as an embodiment, the electronic device 100 automatically determines the number of sub-buildings, the number of floors, and the number of sides of the virtual object based on the cross-section by height, area, and number of floors included in the building information of the virtual object. can be identified.

구체적으로, 전자 장치(100)는 가상 객체의 형상을 바탕으로 가상 객체를 둘 이상의 서브 빌딩으로 구분할 수 있다. 이 경우, 전자 장치(100)는 가상 객체의 전체 형상 내에서 하나 이상의 직육면체를 식별하여 하나의 서브 빌딩으로 정의하는 한편 해당 직육면체를 기준으로 돌출된 부분을 별도의 서브 빌딩으로 정의할 수 있으나, 한정되지 않는다.Specifically, the electronic device 100 may divide the virtual object into two or more sub-buildings based on the shape of the virtual object. In this case, the electronic device 100 may identify one or more cuboids within the overall shape of the virtual object and define them as one sub-building, while defining a protruding part based on the cuboid as a separate sub-building. It doesn't work.

또한, 전자 장치(100)는 건물 정보에 포함된 층 수에 따라 가상 객체를 층 별로 구분할 수 있다.In addition, the electronic device 100 may classify virtual objects by floor according to the number of floors included in the building information.

또한, 전자 장치(100)는 가상 객체를 구성하는 복수의 옆면을 식별할 수 있다. 이때, 복수의 옆면 각각은, 하나의 면으로 구성되어 동일한 방향을 바라보는 영역으로 구성될 수 있다. 즉, 가상 객체의 옆면 전체 중 접힌 부분 또는 굴곡을 기준으로 복수의 옆면이 구분될 수 있다. 또는, 가상 객체의 옆면 전체가 일정 간격에 따라 복수의 옆면으로 구분될 수도 있다. 예를 들어, 하나 또는 두 개의 창문 단위로 면을 구분하는 라인을 기준으로 복수의 옆면이 구분될 수도 있다.Also, the electronic device 100 may identify a plurality of side surfaces constituting the virtual object. In this case, each of the plurality of side surfaces may be configured as an area that is composed of one surface and faces the same direction. That is, a plurality of side surfaces may be distinguished based on a folded portion or curvature of the entire side surface of the virtual object. Alternatively, the entire side surface of the virtual object may be divided into a plurality of side surfaces at regular intervals. For example, a plurality of side surfaces may be divided based on a line dividing the sides in units of one or two windows.

이때, 전자 장치(100)는 가상 객체를 구성하는 서브 빌딩의 수, 층 수, 및 옆면의 수를 바탕으로, 가상 객체를 복수의 슬롯으로 구분할 수 있다. In this case, the electronic device 100 may classify the virtual object into a plurality of slots based on the number of sub-buildings, the number of floors, and the number of sides constituting the virtual object.

슬롯은, 디자인의 대상인 가상 객체를 구분하기 위한 단위에 해당하며, 서브 빌딩, 층, 면 중 적어도 하나에 따라 정의될 수 있다.A slot corresponds to a unit for classifying a virtual object as a design target, and may be defined according to at least one of a sub-building, a floor, and a surface.

일 예로, 각 슬롯은, 하나의 서브 빌딩 내 하나의 층에서 하나의 옆 면에 해당하는 부분을 나타낼 수 있는 바, 각 슬롯에 식별자가 부여될 수 있다. 식별자는, 서브 빌딩에 대한 식별 번호, 층에 대한 식별 번호, 옆면에 대한 식별 번호를 각각 포함할 수 있다. 예시적으로, “1-4-8”에 해당하는 식별자는, 첫 번째 서브 빌딩의 4층 중 8번째 옆면에 해당하는 슬롯을 나타낼 수 있다.For example, since each slot may represent a portion corresponding to one side surface of one floor in one sub-building, an identifier may be assigned to each slot. The identifier may include an identification number for a sub-building, an identification number for a floor, and an identification number for a side surface, respectively. For example, an identifier corresponding to “1-4-8” may indicate a slot corresponding to the 8th side of the 4th floor of the first sub-building.

이 경우, 전자 장치(100)는 복수의 슬롯 각각에 적어도 하나의 디자인 샘플의 이미지 데이터를 반영하여 가상 객체를 자동으로 모델링할 수 있다. 여기서, 디자인 샘플은, 벽, 지붕, 창문, 입구 중 적어도 하나가 디자인될 수 있는 샘플일 수 있다.In this case, the electronic device 100 may automatically model the virtual object by reflecting image data of at least one design sample in each of a plurality of slots. Here, the design sample may be a sample in which at least one of a wall, a roof, a window, and an entrance can be designed.

구체적으로, 식별된 서브 빌딩의 수, 층 수, 및 옆면의 수를 바탕으로, 전자 장치(100)는 복수의 기본 디자인 샘플 중 하나의 기본 디자인 샘플을 선택할 수 있다.Specifically, based on the identified number of sub-buildings, floors, and sides, the electronic device 100 may select one basic design sample from among a plurality of basic design samples.

이 경우, 전자 장치(100)는 가상 객체 내 서브 빌딩의 수, 층 수, 옆면의 수 중 적어도 하나에 가장 적합한 기본 디자인 샘플을 자동으로 선택할 수 있다. 또한, 전자 장치(100)는, 가상 객체의 면적, 높이 별 단면도 중 적어도 하나의 가장 적합한 기본 디자인 샘플을 자동으로 선택할 수도 있다.In this case, the electronic device 100 may automatically select a basic design sample most suitable for at least one of the number of sub-buildings, the number of floors, and the number of sides in the virtual object. Also, the electronic device 100 may automatically select at least one most appropriate basic design sample from among the cross-sectional area and height of the virtual object.

일 예로, 전자 장치(100)는 각 실제 건물의 디자인에 대한 정보(: 디자인 샘플) 및 각 실제 건물의 건물 정보를 바탕으로, 상술한 가상 객체에 적합한 기본 디자인 샘플을 선택할 수 있다.For example, the electronic device 100 may select a basic design sample suitable for the virtual object based on design information (design sample) of each real building and building information of each real building.

구체적으로, 전자 장치(100)는 상술한 서브 빌딩의 수, 층 수, 옆면의 수 중 적어도 하나에 매칭되는 건물 정보를 가지는 실제 건물을 식별하고, 식별된 실제 건물의 디자인에 매칭되는 기본 디자인 샘플을 선택할 수 있다.Specifically, the electronic device 100 identifies a real building having building information matching at least one of the number of sub-buildings, the number of floors, and the number of sides, and the basic design sample that matches the design of the identified real building. can choose

그리고, 전자 장치(100)는 복수의 슬롯 각각에 선택된 기본 디자인 샘플의 이미지 데이터를 일괄적으로 반영하여 가상 객체를 모델링할 수 있다.In addition, the electronic device 100 may model the virtual object by collectively reflecting image data of the selected basic design sample in each of a plurality of slots.

그 결과, 단순한 윤곽 모양에 그치지 않고 건물의 외관(: 디자인)을 갖춘 가상 객체(420-150')가 자동으로 생성될 수 있다. 도 5를 참조하면, 가상 객체(420-150')는 앞서 구분된 3개의 서브 빌딩, 6개의 층, 복수의 옆면으로 구성되는 한편, 복수의 슬롯 각각에 디자인 샘플이 반영된 외관을 가질 수 있다.As a result, the virtual object 420-150' having the appearance (design) of the building beyond the simple outline shape may be automatically generated. Referring to FIG. 5 , the virtual objects 420-150' are composed of three sub-buildings, six floors, and a plurality of side surfaces, and may have an appearance in which design samples are reflected in each of a plurality of slots.

생성된 가상 객체가 복수 개인 경우, 상술한 과정을 통해 복수의 가상 객체의 디자인이 기본 디자인 샘플을 바탕으로 자동으로 완성될 수 있다는 장점이 있다.When a plurality of virtual objects are created, the design of the plurality of virtual objects can be automatically completed based on the basic design sample through the above process.

또한, 전자 장치(100)는 UI(521)를 통해 수신되는 사용자 입력을 바탕으로 가상 객체(420-150')의 디자인을 슬롯 별로 편집할 수 있다.Also, the electronic device 100 may edit the design of the virtual objects 420 to 150' for each slot based on a user input received through the UI 521.

구체적인 예로, “1-5-11”이 입력됨에 따라 1번 서브 빌딩의 5번째 면의 11층에 해당하는 슬롯이 선택될 수 있다.As a specific example, as “1-5-11” is input, a slot corresponding to the 11th floor of the 5th side of sub-building 1 may be selected.

이 경우, 전자 장치(100)는 적어도 하나의 슬롯을 선택하거나 또는 일정 범위(ex. 1-5-1 ~ 1-5-11)의 슬롯을 선택하는 사용자 입력을 수신할 수 있다. 또한, 전자 장치(100)는 UI(521)를 통해 복수의 디자인 샘플을 제공하는 한편, 그 중 선택된 디자인 샘플을 앞서 선택된 적어도 하나의 슬롯에 반영할 수 있다. 그 결과, 가상 객체(420-150')의 디자인이 슬롯 별로 편집될 수 있다.In this case, the electronic device 100 may receive a user input for selecting at least one slot or slots within a certain range (eg, 1-5-1 to 1-5-11). In addition, while providing a plurality of design samples through the UI 521, the electronic device 100 may reflect a selected design sample among them to at least one previously selected slot. As a result, the design of the virtual objects 420-150' may be edited for each slot.

한편, 도 6은 본 개시의 다양한 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도이다.Meanwhile, FIG. 6 is a block diagram illustrating a configuration of an electronic device according to various embodiments of the present disclosure.

도 6을 참조하면, 전자 장치(100)는 메모리(110) 및 프로세서(120) 외에 통신부(130), 디스플레이(140), 사용자 입력부(150) 등을 더 포함할 수 있다.Referring to FIG. 6 , the electronic device 100 may further include a communication unit 130, a display 140, a user input unit 150, and the like in addition to the memory 110 and the processor 120.

통신부(130)는 다양한 유무선 통신방식으로 적어도 하나의 외부 장치와 통신을 수행하기 위한 회로, 모듈, 칩 등을 포함할 수 있다.The communication unit 130 may include a circuit, module, chip, etc. for performing communication with at least one external device through various wired/wireless communication methods.

통신부(130)는 다양한 네트워크를 통해 외부 장치들과 연결될 수 있다.The communication unit 130 may be connected to external devices through various networks.

네트워크는 영역 또는 규모에 따라 개인 통신망(PAN; Personal Area Network), 근거리 통신망(LAN; Local Area Network), 광역 통신망(WAN; Wide Area Network) 등일 수 있으며, 네트워크의 개방성에 따라 인트라넷(Intranet), 엑스트라넷(Extranet), 또는 인터넷(Internet) 등일 수 있다.The network may be a Personal Area Network (PAN), a Local Area Network (LAN), a Wide Area Network (WAN), etc., depending on the area or size, and an intranet, It may be an extranet or the Internet.

통신부(130)는 LTE(long-term evolution), LTE-A(LTE Advance), 5G(5th Generation) 이동통신, CDMA(code division multiple access), WCDMA(wideband CDMA), UMTS(universal mobile telecommunications system), WiBro(Wireless Broadband), GSM(Global System for Mobile Communications), DMA(Time Division Multiple Access), WiFi(Wi-Fi), WiFi Direct, Bluetooth, NFC(near field communication), Zigbee 등 다양한 무선 통신 방식을 통해 외부 장치들과 연결될 수 있다. The communication unit 130 performs long-term evolution (LTE), LTE Advance (LTE-A), 5th generation (5G) mobile communication, code division multiple access (CDMA), wideband CDMA (WCDMA), and universal mobile telecommunications system (UMTS). , WiBro (Wireless Broadband), GSM (Global System for Mobile Communications), DMA (Time Division Multiple Access), WiFi (Wi-Fi), WiFi Direct, Bluetooth, NFC (near field communication), Zigbee, etc. It can be connected with external devices through

또한, 통신부(130)는 이더넷(Ethernet), 광 네트워크(optical network), USB(Universal Serial Bus), 선더볼트(ThunderBolt) 등의 유선 통신 방식을 통해 외부 장치들과 연결될 수도 있다.In addition, the communication unit 130 may be connected to external devices through a wired communication method such as Ethernet, optical network, Universal Serial Bus (USB), or Thunderbolt.

디스플레이(140)는 다양한 정보를 시각적으로 출력하기 위한 구성이다. The display 140 is a component for visually outputting various information.

디스플레이(140)는 LCD(Liquid Crystal Display), PDP(Plasma Display Panel), OLED(Organic Light Emitting Diodes), TOLED(Transparent OLED), Micro LED 등으로 구현될 수 있으나, 이에 한정되는 것은 아니고 이밖에 종래 알려진 다양한 형태의 디스플레이를 포함할 수 있다. 디스플레이(140)는, 사용자의 터치 조작을 감지할 수 있는 터치스크린 형태로 구현될 수 있으며, 접히거나 구부러질 수 있는 플렉서블 디스플레이로 구현될 수도 있다.The display 140 may be implemented with a Liquid Crystal Display (LCD), Plasma Display Panel (PDP), Organic Light Emitting Diodes (OLED), Transparent OLED (TOLED), Micro LED, etc., but is not limited thereto, and is not limited thereto. Various known types of displays may be included. The display 140 may be implemented in the form of a touch screen capable of detecting a user's touch manipulation, or may be implemented as a flexible display capable of being folded or bent.

일 예로, 전자 장치(100)는 디스플레이(140)를 통해 실제 공간을 나타내는 맵을 표시할 수 있으며, 3차원의 가상 공간 내 다양한 영역을 표시할 수 있다.For example, the electronic device 100 may display a map representing a real space through the display 140 and may display various regions in a 3D virtual space.

사용자 입력부(150)는 다양한 명령 또는 정보를 사용자로부터 입력 받기 위한 구성이다. 사용자 입력부(150)는 적어도 하나의 버튼, 터치 패드, 터치 스크린, 마이크, 카메라, 센서 등으로 구현될 수 있다. 또한, 전자 장치(100)는 마우스, 키보드 등으로 구성된 별도의 사용자 입력 장치와 연결될 수도 있다.The user input unit 150 is a component for receiving various commands or information from a user. The user input unit 150 may be implemented with at least one button, a touch pad, a touch screen, a microphone, a camera, a sensor, and the like. Also, the electronic device 100 may be connected to a separate user input device including a mouse and keyboard.

예를 들어, 전자 장치(100)는 사용자 입력부(150)를 통해 수신된 사용자 입력에 따라 맵 상 적어도 하나의 구역을 선택하여 건물 정보를 추출할 수 있다. 또한, 전자 장치(100)는 사용자 입력부(150)를 통해 수신된 사용자 입력에 따라 복수의 가상 객체를 일괄 생성할 수 있으며, 각 건물의 편집을 수행할 수 있다.For example, the electronic device 100 may extract building information by selecting at least one area on the map according to a user input received through the user input unit 150 . Also, the electronic device 100 may collectively generate a plurality of virtual objects according to a user input received through the user input unit 150 and edit each building.

한편, 이상에서 설명된 다양한 실시 예들은 서로 저촉되거나 모순되지 않는 한 두 개 이상의 실시 예가 서로 결합되어 구현될 수 있다.Meanwhile, the various embodiments described above may be implemented by combining two or more embodiments as long as they do not conflict or contradict each other.

한편, 이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합된 것을 이용하여 컴퓨터(computer) 또는 이와 유사한 장치로 읽을 수 있는 기록 매체 내에서 구현될 수 있다.Meanwhile, various embodiments described above may be implemented in a recording medium readable by a computer or a similar device using software, hardware, or a combination thereof.

하드웨어적인 구현에 의하면, 본 개시에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. According to the hardware implementation, the embodiments described in this disclosure are application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), and field programmable gate arrays (FPGAs). ), processors, controllers, micro-controllers, microprocessors, and electrical units for performing other functions.

일부의 경우에 본 명세서에서 설명되는 실시 예들이 프로세서 자체로 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상술한 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.In some cases, the embodiments described herein may be implemented by a processor itself. According to software implementation, embodiments such as procedures and functions described in this specification may be implemented as separate software modules. Each of the software modules described above may perform one or more functions and operations described herein.

한편, 상술한 본 개시의 다양한 실시 예들에 따른 전자 장치(100)에서의 처리동작을 수행하기 위한 컴퓨터 명령어(computer instructions) 또는 컴퓨터 프로그램은 비일시적 컴퓨터 판독 가능 매체(non-transitory computer-readable medium)에 저장될 수 있다. 이러한 비일시적 컴퓨터 판독 가능 매체에 저장된 컴퓨터 명령어 또는 컴퓨터 프로그램은 특정 기기의 프로세서에 의해 실행되었을 때 상술한 다양한 실시 예에 따른 전자 장치(100)에서의 처리 동작을 상술한 특정 기기가 수행하도록 한다. On the other hand, computer instructions or computer programs for performing processing operations in the electronic device 100 according to various embodiments of the present disclosure described above are provided on a non-transitory computer-readable medium can be stored in Computer instructions or computer programs stored in such a non-transitory computer readable medium, when executed by a processor of a specific device, cause the above-described specific device to perform processing operations in the electronic device 100 according to various embodiments.

비일시적 컴퓨터 판독 가능 매체란 레지스터, 캐쉬, 메모리 등과 같이 짧은 순간 동안 데이터를 저장하는 매체가 아니라 반영구적으로 데이터를 저장하며, 기기에 의해 판독(reading)이 가능한 매체를 의미한다. 비일시적 컴퓨터 판독 가능 매체의 구체적인 예로는, CD, DVD, 하드 디스크, 블루레이 디스크, USB, 메모리카드, ROM 등이 있을 수 있다.A non-transitory computer readable medium is a medium that stores data semi-permanently and is readable by a device, not a medium that stores data for a short moment, such as a register, cache, or memory. Specific examples of the non-transitory computer readable media may include CD, DVD, hard disk, Blu-ray disk, USB, memory card, ROM, and the like.

이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.Although the preferred embodiments of the present disclosure have been shown and described above, the present disclosure is not limited to the specific embodiments described above, and is common in the technical field belonging to the present disclosure without departing from the gist of the present disclosure claimed in the claims. Of course, various modifications and implementations are possible by those with knowledge of, and these modifications should not be individually understood from the technical spirit or perspective of the present disclosure.

100: 전자 장치 110: 메모리
120: 프로세서
100: electronic device 110: memory
120: processor

Claims (10)

전자 장치의 제어 방법에 있어서,
실제 공간을 나타내는 맵 상에서 일 구역을 선택하는 사용자 입력을 수신하는 단계;
상기 사용자 입력에 따라 선택된 구역에 포함되는 복수의 건물 각각에 대한 건물 정보를 획득하는 단계; 및
상기 건물 정보를 바탕으로, 3차원의 가상 공간 내에 상기 복수의 건물 각각에 매칭되는 복수의 가상 객체를 일괄적으로 생성하는 단계;를 포함하고,
상기 복수의 가상 객체를 일괄적으로 생성하는 단계는,
상기 건물 정보에 포함된 높이 별 단면도, 면적, 층 수를 바탕으로, 가상 객체의 서브 빌딩의 수, 층 수, 및 옆면의 수를 식별하고,
상기 식별된 서브 빌딩의 수, 층 수, 및 옆면의 수를 바탕으로, 상기 가상 객체를 복수의 슬롯으로 구분하고,
상기 복수의 슬롯 각각에 기본 디자인 샘플의 이미지 데이터를 반영하여 상기 가상 객체를 모델링하고,
상기 전자 장치의 제어 방법은,
상기 복수의 가상 객체 각각에 식별 번호를 지정하는 단계;
상기 가상 공간 내 일 지점에 적어도 하나의 건물을 생성하기 위한 사용자 입력이 수신되면, 상기 식별 번호를 바탕으로 상기 복수의 가상 객체에 대한 리스트를 제공하는 단계; 및
상기 리스트 내에서 사용자 입력에 따라 선택된 식별 번호와 매칭되는 가상 객체를 상기 지점 상에 추가적으로 생성하는 단계;를 포함하는, 전자 장치의 제어 방법.
In the control method of an electronic device,
receiving a user input for selecting an area on a map representing a real space;
obtaining building information for each of a plurality of buildings included in a selected area according to the user input; and
Based on the building information, collectively generating a plurality of virtual objects matching each of the plurality of buildings in a three-dimensional virtual space;
The step of generating the plurality of virtual objects at once,
Identifying the number of sub-buildings, the number of floors, and the number of sides of the virtual object based on the cross-section by height, area, and number of floors included in the building information;
Dividing the virtual object into a plurality of slots based on the number of identified sub-buildings, the number of floors, and the number of sides;
Modeling the virtual object by reflecting image data of a basic design sample in each of the plurality of slots;
The control method of the electronic device,
assigning an identification number to each of the plurality of virtual objects;
providing a list of the plurality of virtual objects based on the identification number when a user input for generating at least one building at a point in the virtual space is received; and
and additionally generating a virtual object matching an identification number selected from the list according to a user input on the point.
제1항에 있어서,
상기 건물 정보는,
각 건물의 위치, 높이, 높이 별 단면도, 방향, 및 면적에 대한 정보를 포함하는, 전자 장치의 제어 방법.
According to claim 1,
The building information,
A method for controlling an electronic device, including information about a location, height, cross-section by height, direction, and area of each building.
제1항에 있어서,
상기 전자 장치의 제어 방법은,
상기 복수의 가상 객체 중 하나의 가상 객체가 선택되면, 상기 선택된 가상 객체의 편집을 위한 적어도 하나의 UI(User Interface)를 제공하는 단계;를 포함하는, 전자 장치의 제어 방법.
According to claim 1,
The control method of the electronic device,
and providing at least one user interface (UI) for editing the selected virtual object when one virtual object is selected from among the plurality of virtual objects.
제1항에 있어서,
상기 전자 장치의 제어 방법은,
상기 복수의 가상 객체 중 제1 가상 객체를 선택하는 사용자 입력이 수신되면, 상기 제1 가상 객체를 포함하는 상기 가상 공간 내 영역을 표시하는 단계;를 포함하고,
상기 가상 공간 내 영역을 표시하는 단계는,
단일 가상 객체를 표시하는 모드가 선택된 경우, 상기 선택된 제1 가상 객체만을 표시하고,
전체 가상 객체를 표시하는 모드가 선택된 경우, 상기 복수의 가상 객체 중 상기 영역에 포함되는 가상 객체들을 모두 표시하는, 전자 장치의 제어 방법.
According to claim 1,
The control method of the electronic device,
displaying an area in the virtual space including the first virtual object when a user input for selecting a first virtual object from among the plurality of virtual objects is received;
In the step of displaying an area in the virtual space,
When a mode of displaying a single virtual object is selected, displaying only the selected first virtual object;
When a mode of displaying all virtual objects is selected, displaying all virtual objects included in the area among the plurality of virtual objects.
제4항에 있어서,
상기 전자 장치의 제어 방법은,
상기 복수의 가상 객체 중 제1 가상 객체를 선택하는 사용자 입력이 수신되면, 상기 제1 가상 객체의 제1 식별 번호를 표시하는 단계;
상기 표시된 제1 식별 번호를 제2 식별 번호로 변경하기 위한 사용자 입력이 수신되면, 상기 제1 가상 객체를 상기 제2 식별 번호에 매칭되는 제2 가상 객체로 변경하는 단계;를 포함하는, 전자 장치의 제어 방법.
According to claim 4,
The control method of the electronic device,
displaying a first identification number of the first virtual object when a user input for selecting a first virtual object from among the plurality of virtual objects is received;
When a user input for changing the displayed first identification number to a second identification number is received, changing the first virtual object into a second virtual object matching the second identification number; control method.
삭제delete 제1항에 있어서,
상기 전자 장치의 제어 방법은,
상기 추가적으로 생성된 가상 객체가 선택되면, 상기 추가적으로 생성된 가상 객체와 매칭되는 가상 객체의 위치, 방향, 및 이미지를 제공하는 단계;를 포함하는, 전자 장치의 제어 방법.
According to claim 1,
The control method of the electronic device,
and providing a location, direction, and image of a virtual object that matches the additionally created virtual object when the additionally created virtual object is selected.
제1항에 있어서,
상기 전자 장치의 제어 방법은,
상기 복수의 가상 객체의 건물 정보를 바탕으로, 상기 복수의 가상 객체를 복수의 그룹으로 구분하는 단계;
사용자 입력에 따라, 상기 가상 공간에 포함된 적어도 하나의 가상 객체를 삭제하거나 또는 상기 가상 공간 내에 적어도 하나의 가상 객체를 추가하는 단계;
상기 복수의 그룹 각각에 포함되는 가상 객체의 수의 증감을 모니터링하는 단계; 및
상기 가상 공간 내 일 지점에 적어도 하나의 가상 객체를 생성하기 위한 사용자 입력이 수신되면, 상기 복수의 그룹 중 가상 객체의 수가 줄어든 그룹에 속하는 적어도 하나의 가상 객체에 대한 정보를 제공하는 단계;를 포함하는, 전자 장치의 제어 방법.
According to claim 1,
The control method of the electronic device,
classifying the plurality of virtual objects into a plurality of groups based on building information of the plurality of virtual objects;
deleting at least one virtual object included in the virtual space or adding at least one virtual object to the virtual space according to a user input;
monitoring an increase or decrease in the number of virtual objects included in each of the plurality of groups; and
and providing information on at least one virtual object belonging to a group in which the number of virtual objects is reduced among the plurality of groups when a user input for generating at least one virtual object is received at a point in the virtual space. To, a control method of an electronic device.
제1항에 있어서,
상기 복수의 가상 객체를 일괄적으로 생성하는 단계는,
상기 복수의 가상 객체의 건물 정보를 바탕으로, 상기 복수의 가상 객체를 복수의 그룹으로 구분하고,
상기 복수의 그룹 별로 지정된 컬러를 바탕으로, 상기 복수의 가상 객체의 윤곽 모양을 표시하는, 전자 장치의 제어 방법.
According to claim 1,
The step of generating the plurality of virtual objects at once,
Classifying the plurality of virtual objects into a plurality of groups based on the building information of the plurality of virtual objects;
The control method of the electronic device of displaying contour shapes of the plurality of virtual objects based on the color designated for each of the plurality of groups.
삭제delete
KR1020220052715A 2022-04-28 2022-04-28 Control method of electronic apparatus for automatically generating virtual object based on building information KR102486770B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220052715A KR102486770B1 (en) 2022-04-28 2022-04-28 Control method of electronic apparatus for automatically generating virtual object based on building information

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220052715A KR102486770B1 (en) 2022-04-28 2022-04-28 Control method of electronic apparatus for automatically generating virtual object based on building information

Publications (1)

Publication Number Publication Date
KR102486770B1 true KR102486770B1 (en) 2023-01-10

Family

ID=84894006

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220052715A KR102486770B1 (en) 2022-04-28 2022-04-28 Control method of electronic apparatus for automatically generating virtual object based on building information

Country Status (1)

Country Link
KR (1) KR102486770B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116975972A (en) * 2023-07-28 2023-10-31 贝壳找房(北京)科技有限公司 Door and window design data processing method and device, electronic equipment and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101356462B1 (en) * 2013-07-30 2014-02-04 덕산메카시스 주식회사 Ifc based three dimensional building control method and three dimensional building control system using the same
KR20200078074A (en) * 2018-12-21 2020-07-01 서울시립대학교 산학협력단 Server and method for 3d city modeling based on object, and system using the same
KR102258285B1 (en) 2019-11-19 2021-05-31 데이터킹주식회사 Method and server for generating and using a virtual building

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101356462B1 (en) * 2013-07-30 2014-02-04 덕산메카시스 주식회사 Ifc based three dimensional building control method and three dimensional building control system using the same
KR20200078074A (en) * 2018-12-21 2020-07-01 서울시립대학교 산학협력단 Server and method for 3d city modeling based on object, and system using the same
KR102258285B1 (en) 2019-11-19 2021-05-31 데이터킹주식회사 Method and server for generating and using a virtual building

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116975972A (en) * 2023-07-28 2023-10-31 贝壳找房(北京)科技有限公司 Door and window design data processing method and device, electronic equipment and storage medium
CN116975972B (en) * 2023-07-28 2024-04-26 贝壳找房(北京)科技有限公司 Door and window design data processing method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
US10937211B2 (en) Automated parametrization of floor-plan sketches for multi-objective building optimization tasks
US10372308B2 (en) Predictive material editor
CN108597026A (en) A method of three-dimensional building model is quickly generated based on two-dintension CAD drawing
US10275122B2 (en) Semantic card view
US20120259594A1 (en) Bim based 3-d visualization
US20120086719A1 (en) Expandable graphical affordances
CN110197534B (en) Virtual building accessory model hooking method, device, processor and terminal
CN105637564A (en) Generating augmented reality content for unknown objects
EP2973433A2 (en) Mapping augmented reality experience to various environments
US8843352B2 (en) System and methods facilitating interfacing with a structure design and development process
US11270037B2 (en) Playback profiles for simulating construction schedules with three-dimensional (3D) models
US11562517B2 (en) Method and system for populating a digital environment using a semantic map
CN106683201A (en) Scene editing method and device based on three-dimensional virtual reality
KR102486770B1 (en) Control method of electronic apparatus for automatically generating virtual object based on building information
CN112199751B (en) Wall model generation method and device, electronic equipment and storage medium
US20150193563A1 (en) Method for creating template of building component, method for creating primitive, and apparatus for modeling building component
US20160085831A1 (en) Method and apparatus for map classification and restructuring
KR20150034058A (en) Method and Apparatus For Generating Drawing Animation Based On Image Analysis
JP6395092B2 (en) Light environment design support device, light environment design support system, program
KR102520660B1 (en) Control method of electronic appratus for providing tools for designing virtual object corresponding to building in units of slots
KR20140120156A (en) Method of generating 3-d graphic data with improved usability for mobile device and application development environment enabling the method
KR102483778B1 (en) Control method of electronic apparatus for designing roof part of virtual object corresponding to bulding
Huang et al. Developing a BIM-based visualization and interactive system for healthcare design
KR102454831B1 (en) Control method of electronic apparatus for deforming virtual object by adjusting skeleton matching to each floor
CN113987652A (en) Wall model generation method and device

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant