KR102433396B1 - Method for modeling 3d image and computer-readable recording medium - Google Patents

Method for modeling 3d image and computer-readable recording medium Download PDF

Info

Publication number
KR102433396B1
KR102433396B1 KR1020210090229A KR20210090229A KR102433396B1 KR 102433396 B1 KR102433396 B1 KR 102433396B1 KR 1020210090229 A KR1020210090229 A KR 1020210090229A KR 20210090229 A KR20210090229 A KR 20210090229A KR 102433396 B1 KR102433396 B1 KR 102433396B1
Authority
KR
South Korea
Prior art keywords
wall
baseline
line
target line
generating
Prior art date
Application number
KR1020210090229A
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 KR1020210090229A priority Critical patent/KR102433396B1/en
Application granted granted Critical
Publication of KR102433396B1 publication Critical patent/KR102433396B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Geometry (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)

Abstract

A 3D modeling method according to an embodiment of the present invention relates to a method for generating a 3D drawing using a 2D drawing of a building. The 3D modeling method includes may include the steps of: allowing a storage part to store a 2D drawing; allowing a calculation part to extract columns from the 2D drawing and generate 3D columns corresponding to the extracted columns; allowing the calculation part to generate a 3D beam connecting the 3D columns based on the 3D columns; allowing a calculation part to extract a wall from the 2D drawing and generate a 3D wall corresponding to the extracted wall; and allowing a calculation part to extract a door from the 2D drawing and generate a 3D door corresponding to the extracted door.

Description

3D 모델링 방법 및 컴퓨터로 읽을 수 있는 기록매체{METHOD FOR MODELING 3D IMAGE AND COMPUTER-READABLE RECORDING MEDIUM}3D modeling method and computer-readable recording medium

본 발명은 3D 모델링 방법에 관한 것으로서, 더욱 상세하게는 건물의 2D 도면을 이용하여 건물의 3D 도면을 생성하는 3D 모델링 방법에 관한 것이다.The present invention relates to a 3D modeling method, and more particularly, to a 3D modeling method for generating a 3D drawing of a building using a 2D drawing of a building.

일반적으로 건물을 설계하거나 인테리어 설계를 위한 도면을 작성할 경우 캐드 시스템이나 이미지 편집 시스템을 이용해야만 한다.In general, when designing a building or creating drawings for interior design, a CAD system or an image editing system must be used.

이러한 캐드 시스템이나 이미지 편집 시스템은 사용방법이 어렵고, 작성 시간도 많이 걸리며, 더욱이 3D 작업을 위해서는 3D 전용 시스템을 추가로 사용해야하는 어려움이 있다.Such a CAD system or an image editing system is difficult to use, takes a lot of time to create, and moreover, it is difficult to additionally use a 3D dedicated system for 3D work.

종래 기술을 이용하여 평면도를 작성할 경우 먼저 캐드 시스템을 사용하여 선분이나 원호 등 기본 메뉴를 이용한 통상적인 방식으로 2D 이미지를 작성하여야 한다.When creating a floor plan using the prior art, first, a 2D image must be created in a conventional manner using a basic menu such as a line segment or an arc using a CAD system.

최근에는 대형 건물이나 새로운 건물에 시설물의 안내와 홍보를 위한 길 찾기 콘텐츠가 제공되는데 이러한 길 찾기 콘텐츠는 주로 플래시, 웹, 애플리케이션 등의 형태로 개발되어 판매되고 있으며, 이러한 콘텐츠는 그래픽 편집된 건물 도면이 포함되어 있다.Recently, directions finding content for facility guidance and promotion are provided in large buildings or new buildings. These directions are mainly developed and sold in the form of flash, web, application, etc., and these contents are graphic edited building drawings. This is included.

한편, 그래픽 편집된 건물의 도면은 주로 2D 이미지 또는 3D 이미지로 작성되는데, 3D 이미지를 작성할 경우 복잡한 3D 모델링 소프트웨어를 이용하거나 별도의 3D 전용 캐드 시스템이나 이미지 편집 시스템을 사용하여 2D 이미지를 3D 이미지로 변환하기 작성할 수도 있다.On the other hand, graphic-edited building drawings are mainly created as 2D images or 3D images. When creating 3D images, use complex 3D modeling software or use a separate 3D dedicated CAD system or image editing system to convert 2D images into 3D images. You can also write to transform.

또한, 건축 구조물의 완전한 상세 묘사를 위해서는 2D 상세 설계도 및 3D 가상 실사도가 요구되는바, 2D 상세 설계도는 2D 캐드 프로그램(예를 들어 AutoCAD 또는 UniCAD)을 이용하며, 3D 가상 실사도를 위해서는 3차원 랜더링 프로그램(예를 들어 3D Studio MAX)을 이용한다.In addition, 2D detailed design drawings and 3D virtual photorealistic drawings are required for complete detailed depiction of architectural structures. For 2D detailed designs, 2D CAD programs (eg AutoCAD or UniCAD) are used, and for 3D virtual photorealistic drawings, 3D drawings are required. Use a rendering program (eg 3D Studio MAX).

즉, 2D 도면을 생성하기 위해서는 캐드와 같은 2D 도면 프로그램을 이용해야 하고, 3D 도면을 생성하기 위해서는 MAX와 같은 3D 도면 프로그램을 이용해서 별도로 작업해야 하는 번거로움이 있다.That is, in order to generate a 2D drawing, a 2D drawing program such as CAD must be used, and in order to generate a 3D drawing, a separate operation using a 3D drawing program such as MAX is inconvenient.

한편, 대한민국 등록특허 제10-1391386 B1 (2014.04.25)호에서는 3D 이미지 모델링 시스템 및 방법을 개시하고 있으나, 2D 이미지를 드로잉 이미지에서 삭제한 다음 상기 도형 정보와 좌표 정보로부터 3D 피처를 생성하여 2차원 좌표 정보를 3차원 좌표 정보로 변환하는 단계에서 2D 이미지를 구성하는 기둥, 벽체, 문 등을 정확하게 인식하여 3D 도면으로 생성하는 것에는 한계가 있다.On the other hand, Korean Patent Registration No. 10-1391386 B1 (April 25, 2014) discloses a 3D image modeling system and method, but after deleting a 2D image from a drawing image, and then creating 3D features from the figure information and coordinate information, 2 In the stage of converting dimensional coordinate information into 3D coordinate information, there is a limit to accurately recognizing columns, walls, doors, etc. constituting a 2D image and generating a 3D drawing.

본 발명은 상기와 같은 문제를 해결하기 위한 것으로서, 건물의 2D 도면의 입력만으로도 정확하게 건물의 3D 도면을 모델링할 수 있는 3D 모델링 방법을 제공하고자 함이다.An object of the present invention is to provide a 3D modeling method capable of accurately modeling a 3D drawing of a building only by inputting a 2D drawing of a building in order to solve the above problems.

본 발명이 해결하고자 하는 과제가 상술한 과제로 제한되는 것은 아니며, 언급되지 아니한 과제들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-described problems, and the problems not mentioned will be clearly understood by those of ordinary skill in the art to which the present invention belongs from the present specification and the accompanying drawings. .

본 발명의 일 실시예에 따른 3D 모델링 방법은 건물의 2D 도면을 이용하여 3D 도면을 생성하는 방법에 관한 것으로서, 저장부가 2D 도면을 저장하는 단계; 연산부가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계; 상기 연산부가 3D 기둥에 기초하여 3D 기둥을 잇는 3D 보를 생성하는 단계; 상기 연산부가 2D 도면에서 벽체를 추출하고, 추출한 벽체에 대응되는 3D 벽체를 생성하는 단계; 및 상기 연산부가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계;를 포함할 수 있다.A 3D modeling method according to an embodiment of the present invention relates to a method for generating a 3D drawing using a 2D drawing of a building, the method comprising: storing the 2D drawing by a storage unit; extracting a column from the 2D drawing by the calculator and generating a 3D column corresponding to the extracted column; generating, by the calculating unit, a 3D beam connecting 3D pillars based on the 3D pillar; extracting a wall from the 2D drawing by the calculating unit and generating a 3D wall corresponding to the extracted wall; and extracting the door from the 2D drawing by the calculation unit and generating a 3D door corresponding to the extracted door.

본 발명의 일 실시예에 따른 3D 모델링 방법에 의하면, 건물의 2D 도면의 입력만으로도 정확하게 건물의 3D 도면을 모델링할 수 있는 장점이 있다.According to the 3D modeling method according to an embodiment of the present invention, there is an advantage in that the 3D drawing of the building can be accurately modeled only by inputting the 2D drawing of the building.

본 발명의 효과가 상술한 효과들로 제한되는 것은 아니며, 언급되지 아니한 효과들은 본 명세서 및 첨부된 도면으로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확히 이해될 수 있을 것이다.Effects of the present invention are not limited to the above-described effects, and effects not mentioned will be clearly understood by those of ordinary skill in the art to which the present invention belongs from the present specification and accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 3D 모델링 방법의 개략 순서도.
도 2는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 벽체를 생성하는 단계에 대한 개략 순서도.
도 3은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선을 추출하는 단계에 대한 개략 순서도.
도 4는 본 발명의 일 실시예에 따른 3D 문을 생성하는 단계에 대한 개략 순서도.
도 5는 본 발명의 일 실시예에 따른 3D 모델링 방법의 2D 도면과 3D 도면을 설명하기 위한 개략도.
도 6은 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 기둥을 생성하는 단계 및 3D 보를 생성하는 단계를 설명하기 위한 개략도.
도 7은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선을 추출하는 단계를 설명하기 위한 개략도.
도 8은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선의 길이를 변경하는 단계를 설명하기 위한 개략도.
도 9는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 벽체를 생성하는 단계에 의해 생성된 3D 벽체의 예시도.
도 10 및 도 11은 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 문을 생성하는 단계를 설명하기 위한 개략도.
도 12는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 문을 생성하는 단계에 의해 생성된 3D 문의 예시도.
도 13는 본 발명의 일 실시예에 따른 3D 모델링 방법을 구현하는 3D 모델링 시스템의 개략 구성도.
1 is a schematic flowchart of a 3D modeling method according to an embodiment of the present invention;
2 is a schematic flowchart of a step of generating a 3D wall of a 3D modeling method according to an embodiment of the present invention.
3 is a schematic flowchart of a step of extracting opposite lines of a 3D modeling method according to an embodiment of the present invention.
Fig. 4 is a schematic flowchart of the steps of generating a 3D door according to an embodiment of the present invention;
5 is a schematic diagram for explaining a 2D drawing and a 3D drawing of a 3D modeling method according to an embodiment of the present invention.
6 is a schematic diagram for explaining the steps of generating a 3D column and a 3D beam of the 3D modeling method according to an embodiment of the present invention.
7 is a schematic diagram for explaining the step of extracting the opposite line of the 3D modeling method according to an embodiment of the present invention.
8 is a schematic diagram for explaining the step of changing the length of the opposite line of the 3D modeling method according to an embodiment of the present invention.
9 is an exemplary view of a 3D wall generated by the step of generating a 3D wall of the 3D modeling method according to an embodiment of the present invention.
10 and 11 are schematic diagrams for explaining the step of generating a 3D door of the 3D modeling method according to an embodiment of the present invention.
12 is an exemplary diagram of a 3D door generated by the step of generating a 3D door of the 3D modeling method according to an embodiment of the present invention.
13 is a schematic configuration diagram of a 3D modeling system for implementing a 3D modeling method according to an embodiment of the present invention.

이하에서는 도면을 참조하여 본 발명의 구체적인 실시예를 상세하게 설명한다. 다만, 본 발명의 사상은 제시되는 실시예에 제한되지 아니하고, 본 발명의 사상을 이해하는 당업자는 동일한 사상의 범위 내에서 다른 구성요소를 추가, 변경, 삭제 등을 통하여, 퇴보적인 다른 발명이나 본 발명 사상의 범위 내에 포함되는 다른 실시예를 용이하게 제안할 수 있을 것이나, 이 또한 본원 발명 사상 범위 내에 포함된다고 할 것이다. Hereinafter, specific embodiments of the present invention will be described in detail with reference to the drawings. However, the spirit of the present invention is not limited to the presented embodiment, and those skilled in the art who understand the spirit of the present invention may add, change, delete, etc. other elements within the scope of the same spirit, through addition, change, deletion, etc. Other embodiments included within the scope of the invention may be easily suggested, but this will also be included within the scope of the invention.

본 발명의 일 실시예에 따른 3D 모델링 방법은 건물의 2D 도면을 이용하여 3D 도면을 생성하는 방법에 관한 것으로서, 저장부가 2D 도면을 저장하는 단계; 연산부가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계; 상기 연산부가 3D 기둥에 기초하여 3D 기둥을 잇는 3D 보를 생성하는 단계; 상기 연산부가 2D 도면에서 벽체를 추출하고, 추출한 벽체에 대응되는 3D 벽체를 생성하는 단계; 및 상기 연산부가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계;를 포함할 수 있다.A 3D modeling method according to an embodiment of the present invention relates to a method for generating a 3D drawing using a 2D drawing of a building, the method comprising: storing the 2D drawing by a storage unit; extracting a column from the 2D drawing by the calculator and generating a 3D column corresponding to the extracted column; generating, by the calculating unit, a 3D beam connecting 3D pillars based on the 3D pillar; extracting a wall from the 2D drawing by the calculating unit and generating a 3D wall corresponding to the extracted wall; and extracting the door from the 2D drawing by the calculation unit and generating a 3D door corresponding to the extracted door.

또, 상기 3D 벽체를 생성하는 단계는 2D 도면의 복수의 선에서 마주보는 선을 추출하는 단계; 상기 마주보는 선의 길이를 변경하는 단계; 및 상기 마주보는 선으로 3D 벽체를 생성하는 단계;를 포함할 수 있다.In addition, generating the 3D wall may include extracting opposite lines from a plurality of lines in the 2D drawing; changing the length of the opposite line; and generating a 3D wall with the opposite lines.

또, 상기 마주보는 선을 추출하는 단계는 2D 도면의 복수의 선 중 하나인 기준선(base line)을 선택하는 단계; 상기 기준선에 대한 단위 벡터를 생성하는 단계; 2D 도면의 복수의 선 중 다른 하나인 대상선(object line)을 선택하는 단계; 상기 대상선에 대한 단위 벡터를 생성하는 단계; 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터의 동일 여부를 판단하는 단계; 및 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터가 동일한 경우, 상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는지 여부를 판단하는 단계;를 포함할 수 있다.In addition, the step of extracting the opposite line may include: selecting a base line that is one of a plurality of lines in the 2D drawing; generating a unit vector for the reference line; selecting an object line that is another one of a plurality of lines in the 2D drawing; generating a unit vector for the target line; determining whether the unit vector for the reference line is the same as the unit vector for the target line; and when the unit vector for the reference line and the unit vector for the target line are the same, determining whether the distance between the reference line and the target line is within a preset distance range.

또, 상기 마주보는 선을 추출하는 단계는 상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는 경우,In addition, in the step of extracting the opposite line, when the distance between the reference line and the target line is within a preset distance range,

상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제1 조건, 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제2 조건, 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점에서 만나고 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 종점에서 만나는지에 대한 제3 조건을 판단하는 오버랩 판단 단계; 및A first condition for whether an imaginary perpendicular to the baseline at the starting point of the baseline meets between the starting and ending points of the target line, and an imaginary normal to the baseline at the endpoint of the baseline meeting between the starting and ending points of the target line a second condition for whether an imaginary normal to the baseline at the starting point of the baseline meets at the starting point of the target line, and a third condition for whether an imaginary normal to the baseline meets at the endpoint of the target line at the endpoint of the baseline. an overlap determination step of determining; and

상기 오버랩 판단 단계에서 상기 제1 조건 내지 상기 제3 조건 중 적어도 어느 하나를 만족하는 경우 상기 기준선과 상기 대상선을 상기 마주보는 선으로 정의하는 단계;를 더 포함할 수 있다.The method may further include defining the reference line and the target line as the opposing lines when at least one of the first to third conditions is satisfied in the overlap determination step.

또, 상기 마주보는 선의 길이를 변경하는 단계는 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 시점을 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선까지 연장하며, 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 종점을 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선까지 연장하고, 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 시점을 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선까지 연장하며, 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 종점을 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선까지 연장할 수 있다.Also, in the step of changing the length of the opposite line, when an imaginary perpendicular to the reference line at the starting point of the reference line meets the target line between the starting point and the end point of the target line, the starting point of the reference line is changed from the starting point of the target line to the target It extends to an imaginary normal to a line, and when an imaginary normal to the baseline at the endpoint of the baseline meets the target line between the starting point and the endpoint of the target line, the endpoint of the baseline is set from the endpoint of the target line to the target line extends to an imaginary perpendicular to the target line, and when the imaginary normal to the target line at the starting point of the target line meets the baseline between the starting point and the end point of the baseline, the starting point of the target line is changed from the starting point of the baseline to the virtual to the baseline , and when an imaginary perpendicular to the target line at the endpoint of the target line meets the baseline between the starting and ending points of the baseline, the endpoint of the target line is defined as an imaginary perpendicular to the baseline from the endpoint of the baseline can be extended up to

또, 상기 3D 문을 생성하는 단계는 2D 도면에서 문을 추출하는 단계; 문의 길이로 3D 기준 벽체를 생성하는 단계; 상기 3D 기준 벽체의 단위 벡터를 생성하는 단계; 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는지 여부를 판단하는 단계; 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는 경우, 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계; 및 상기 3D 기준 벽체에 3D 문을 생성하는 단계;를 포함할 수 있다.In addition, the step of generating the 3D door comprises the steps of extracting the door from the 2D drawing; creating a 3D reference wall with the length of the door; generating a unit vector of the 3D reference wall; determining whether the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall; changing the thickness of the 3D reference wall to the thickness of the 3D wall when the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side of the 3D reference wall; and generating a 3D door on the 3D reference wall.

각 실시예의 도면에 나타나는 동일한 사상의 범위 내의 기능이 동일한 구성요소는 동일한 참조부호를 사용하여 설명한다.Elements having the same function within the scope of the same idea shown in the drawings of each embodiment will be described using the same reference numerals.

도 1은 본 발명의 일 실시예에 따른 3D 모델링 방법의 개략 순서도이다.1 is a schematic flowchart of a 3D modeling method according to an embodiment of the present invention.

도 2는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 벽체를 생성하는 단계에 대한 개략 순서도이다.2 is a schematic flowchart of a step of generating a 3D wall of a 3D modeling method according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선을 추출하는 단계에 대한 개략 순서도이다.3 is a schematic flowchart of a step of extracting opposite lines of a 3D modeling method according to an embodiment of the present invention.

도 4는 본 발명의 일 실시예에 따른 3D 문을 생성하는 단계에 대한 개략 순서도이다.4 is a schematic flowchart of the steps of generating a 3D door according to an embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 3D 모델링 방법의 2D 도면과 3D 도면을 설명하기 위한 개략도이다.5 is a schematic diagram for explaining a 2D drawing and a 3D drawing of a 3D modeling method according to an embodiment of the present invention.

도 6은 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 기둥을 생성하는 단계 및 3D 보를 생성하는 단계를 설명하기 위한 개략도이다.6 is a schematic diagram for explaining the steps of generating a 3D column and generating a 3D beam of the 3D modeling method according to an embodiment of the present invention.

도 7은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선을 추출하는 단계를 설명하기 위한 개략도이다.7 is a schematic diagram for explaining a step of extracting opposite lines of the 3D modeling method according to an embodiment of the present invention.

도 8은 본 발명의 일 실시예에 따른 3D 모델링 방법의 마주보는 선의 길이를 변경하는 단계를 설명하기 위한 개략도이다.8 is a schematic diagram for explaining the step of changing the length of the opposite line of the 3D modeling method according to an embodiment of the present invention.

도 9는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 벽체를 생성하는 단계에 의해 생성된 3D 벽체의 예시도이다.9 is an exemplary diagram of a 3D wall generated by the step of generating a 3D wall of the 3D modeling method according to an embodiment of the present invention.

도 10 및 도 11은 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 문을 생성하는 단계를 설명하기 위한 개략도이다.10 and 11 are schematic diagrams for explaining the step of generating a 3D door of the 3D modeling method according to an embodiment of the present invention.

도 12는 본 발명의 일 실시예에 따른 3D 모델링 방법의 3D 문을 생성하는 단계에 의해 생성된 3D 문의 예시도이다.12 is an exemplary diagram of a 3D door generated by the step of generating a 3D door of the 3D modeling method according to an embodiment of the present invention.

도 13는 본 발명의 일 실시예에 따른 3D 모델링 방법을 구현하는 3D 모델링 시스템의 개략 구성도이다.13 is a schematic configuration diagram of a 3D modeling system implementing a 3D modeling method according to an embodiment of the present invention.

첨부된 도면은 본 발명의 기술적 사상을 보다 명확하게 표현하기 위하여, 본 발명의 기술적 사상과 관련성이 떨어지거나 당업자로부터 용이하게 도출될 수 있는 부분은 간략화 하거나 생략하였다.In the accompanying drawings, in order to more clearly express the technical spirit of the present invention, parts that are not related to the technical spirit of the present invention or that can be easily derived from those skilled in the art have been simplified or omitted.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미하며, 하나 또는 그 이상의 다른 특징이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다. Throughout the specification, when a part is "connected" with another part, this includes not only the case of being "directly connected" but also the case of being "electrically connected" with another element interposed therebetween. . Also, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated, and one or more other features However, it is to be understood that the existence or addition of numbers, steps, operations, components, parts, or combinations thereof is not precluded in advance.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다.In this specification, a "part" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. In addition, one unit may be implemented using two or more hardware, and two or more units may be implemented by one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다.Some of the operations or functions described as being performed by the terminal or device in this specification may be instead performed by a server connected to the terminal or device. Similarly, some of the operations or functions described as being performed by the server may also be performed in a terminal or device connected to the corresponding server.

이하에서는 도 1 내지 13을 참조하여, 본 발명의 일 실시예에 따른 3D 모델링 방법을 자세히 설명하겠다.Hereinafter, a 3D modeling method according to an embodiment of the present invention will be described in detail with reference to FIGS. 1 to 13 .

일례로, 상기 3D 모델링 방법은 도 5(a)에 도시한 바와 같이 이미 만들어진 건물의 2D 도면을 이용하여, 도5(b)에 도시한 바와 같이 건물의 3D 도면을 모델링 하는 방법일 수 있다.As an example, the 3D modeling method may be a method of modeling a 3D drawing of a building as shown in FIG.

일례로, 상기 3D 모델링 방법은 도 13에 도시한 3D 모델링 시스템(10)에 의해 구현될 수 있다.As an example, the 3D modeling method may be implemented by the 3D modeling system 10 shown in FIG. 13 .

일례로, 상기 3D 모델링 시스템(10)은 상기 3D 모델링 방법을 구현하는데 필요한 데이터/정보 등을 저장하는 저장부(300), 상기 3D 모델링 방법을 구현하는데 필요한 데이터/정보 등을 외부 전자기기와 통신하는 통신부(200), 상기 3D 모델링 방법을 구현하는데 필요한 데이터/정보 등을 표시하는 디스플레이부(500), 상기 3D 모델링 방법을 구현하는데 필요한 데이터/정보/명령어 등을 관리자로부터 입력받는 입력부(400) 및 상기 3D 모델링 방법을 구현하는데 필요한 데이터/정보 등을 연산/처리하는 연산부(100)를 포함할 수 있다.For example, the 3D modeling system 10 communicates with an external electronic device a storage unit 300 for storing data/information required for implementing the 3D modeling method, and data/information necessary for implementing the 3D modeling method. communication unit 200, a display unit 500 for displaying data/information necessary for implementing the 3D modeling method, and an input unit 400 for receiving data/information/commands necessary for implementing the 3D modeling method from a manager and a calculating unit 100 for calculating/processing data/information required to implement the 3D modeling method.

이하에서는, 도 1 내지 도 12를 참조하여, 상기 3D 모델링 시스템(10)에 의해 구현되는 상기 3D 모델링 방법을 자세히 설명하겠다.Hereinafter, the 3D modeling method implemented by the 3D modeling system 10 will be described in detail with reference to FIGS. 1 to 12 .

도 1에 도시한 바와 같이, 상기 3D 모델링 방법은 저장부(300)가 2D 도면을 저장하는 단계(S10); 연산부(100)가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계(S20); 상기 연산부(100)가 3D 기둥에 기초하여 3D 기둥을 잇는 3D 보를 생성하는 단계(S30); 상기 연산부(100)가 2D 도면에서 벽체를 추출하고, 추출한 벽체에 대응되는 3D 벽체를 생성하는 단계(S40); 및 상기 연산부(100)가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계(S50);를 포함할 수 있다.As shown in Figure 1, the 3D modeling method comprises the steps of the storage unit 300 storing the 2D drawing (S10); The operation unit 100 extracts a column from the 2D drawing, and generates a 3D column corresponding to the extracted column (S20); generating, by the operation unit 100, a 3D beam connecting the 3D pillar based on the 3D pillar (S30); The operation unit 100 extracts a wall from the 2D drawing, and generates a 3D wall corresponding to the extracted wall (S40); and extracting a door from the 2D drawing by the calculator 100 and generating a 3D door corresponding to the extracted door (S50).

이하에서는 상기 3D 모델링 방법을 구성하는 각 단계에 대해 자세히 설명하겠다.Hereinafter, each step constituting the 3D modeling method will be described in detail.

- 상기 2D 도면을 저장하는 단계(S10)- Saving the 2D drawing (S10)

상기 2D 도면을 저장하는 단계(S10)는 이미 만들어진 2D 도면을 상기 저장부(300)가 저장하고, 상기 연산부(100)가 상기 저장부(300)에서 2D 도면을 불러오는 단계를 의미할 수 있다.The step of storing the 2D drawing ( S10 ) may refer to a step in which the storage unit 300 stores the already made 2D drawing, and the operation unit 100 calls the 2D drawing from the storage unit 300 .

여기서, 2D 도면은 해당 건물의 평면도뿐만 아니라 입면도, 단면도, 상세도 등을 포함할 수 있다.Here, the 2D drawing may include not only a floor plan of the corresponding building but also an elevation view, a cross-sectional view, a detailed view, and the like.

- 상기 3D 기둥을 생성하는 단계(S20)- Generating the 3D pillar (S20)

상기 3D 기둥을 생성하는 단계(S20)는 연산부(100)가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계를 의미할 수 있다.The step of generating the 3D pillar ( S20 ) may refer to a step in which the calculator 100 extracts a pillar from the 2D drawing and generates a 3D pillar corresponding to the extracted pillar.

도 6(a)에 도시한 바와 같이 2D 도면에는 기둥이 표시되어 있으며, 상기 연산부(100)는 2D 도면에서 기둥을 추출할 수 있다.As shown in FIG. 6( a ), a column is displayed in the 2D drawing, and the calculating unit 100 may extract the column from the 2D drawing.

예를 들어, 상기 연산부(100)는 2D 도면에서 사각형 및/또는 원을 추출할 수 있으며, 추출된 사각형 및/또는 원들에 대해 상호 일정한 거리로 이격된 패턴을 분석하여 이를 기둥으로 정의하여 추출할 수 있다.For example, the operation unit 100 may extract a rectangle and/or a circle from a 2D drawing, and analyze a pattern spaced apart from each other by a constant distance for the extracted rectangle and/or circle to define it as a column and extract it. can

또한, 관리자가 2D 도면에서 어느 하나의 사각형 및/또는 원을 기둥으로 정의하는 경우, 상기 연산부(100)는 관리자가 정의한 사각형 및/또는 원과 동일한 형상을 가지는 나머지의 사각형 및/또는 원들을 기둥으로 정의할 수도 있다.In addition, when the administrator defines any one of the rectangles and/or circles as pillars in the 2D drawing, the operation unit 100 sets the remaining rectangles and/or circles having the same shape as the rectangles and/or circles defined by the administrator as pillars. can also be defined as

상기 연산부(100)는 2D 도면에서 기둥을 추출한 후, 도 6(b)에 도시한 바와 같이 2D 도면과 대응되는 위치에 3D 기둥을 생성할 수 있다.After extracting a column from the 2D drawing, the calculator 100 may generate a 3D column at a position corresponding to the 2D drawing as shown in FIG. 6( b ).

상기 연산부(100)는 단면도 등을 분석하여 3D 기둥의 높이를 정하여 모델링할 수도 있다.The calculation unit 100 may analyze a cross-sectional view and the like to determine the height of the 3D pillar and model it.

- 상기 3D 보를 생성하는 단계(S30)- Generating the 3D beam (S30)

상기 3D 보를 생성하는 단계(S30)는 생성된 상기 3D 기둥을 기준으로 인접한 상기 3D 기둥간을 잇는 3D 보를 생성하는 단계를 의미할 수 있다.The generating of the 3D beam ( S30 ) may mean generating a 3D beam connecting adjacent 3D pillars based on the generated 3D pillar.

일례로, 상기 연산부(100)는 생성한 복수의 상기 3D 기둥들 간의 이격 방향의 패턴을 산출할 수 있고, 도 6(C)에 도시한 바와 같이 이격 방향과 이격 거리를 이용하여 인접한 상기 3D 기둥들 간을 잇는 상기 3D 보를 생성할 수 있다.For example, the calculating unit 100 may calculate a pattern in a separation direction between the generated plurality of 3D pillars, and the adjacent 3D pillars using the separation direction and separation distance as shown in FIG. 6(C) . It is possible to create the 3D beam connecting between them.

- 상기 3D 벽체를 생성하는 단계(S40)- Creating the 3D wall (S40)

상기 3D 벽체를 생성하는 단계(S40)는 연산부(100)가 2D 도면에서 벽체선을 추출하고, 추출한 벽체선에 대응되는 3D 벽체를 생성하는 단계를 의미할 수 있다.The step of generating the 3D wall ( S40 ) may refer to a step in which the calculator 100 extracts a wall line from the 2D drawing and generates a 3D wall corresponding to the extracted wall line.

일례로, 도 2에 도시한 바와 같이, 상기 3D 벽체를 생성하는 단계(S40)는 2D 도면의 복수의 선에서 마주보는 선을 추출하는 단계(S41); 상기 마주보는 선의 길이를 변경하는 단계(S42); 및 상기 마주보는 선으로 3D 벽체를 생성하는 단계(S43);를 포함할 수 있다.As an example, as shown in FIG. 2 , the step of generating the 3D wall (S40) includes extracting opposite lines from a plurality of lines of the 2D drawing (S41); changing the length of the opposite line (S42); and generating a 3D wall with the opposite lines (S43).

우선, 상기 마주보는 선을 추출하는 단계(S41)를 설명하자면, 도 3에 도시한 바와 같이, 상기 마주보는 선을 추출하는 단계(S41)는 2D 도면의 복수의 선 중 하나인 기준선(base line)을 선택하는 단계(S411); 상기 기준선에 대한 단위 벡터를 생성하는 단계(S412); 2D 도면의 복수의 선 중 다른 하나인 대상선(object line)을 선택하는 단계(S413); 상기 대상선에 대한 단위 벡터를 생성하는 단계(S414); 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터의 동일 여부를 판단하는 단계(S415); 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터가 동일한 경우, 상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는지 여부를 판단하는 단계(S416); 상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는 경우, 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제1 조건, 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제2 조건, 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점에서 만나고 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 종점에서 만나는지에 대한 제3 조건을 판단하는 오버랩 판단 단계(S417); 및 상기 오버랩 판단 단계(S417)에서 상기 제1 조건 내지 상기 제3 조건 중 적어도 어느 하나를 만족하는 경우 상기 기준선과 상기 대상선을 상기 마주보는 선으로 정의하는 단계(S418);를 포함할 수 있다. First, the step of extracting the opposite line (S41) will be described. As shown in FIG. 3, the step of extracting the opposite line (S41) is a base line that is one of a plurality of lines in the 2D drawing. ) to select (S411); generating a unit vector for the reference line (S412); selecting an object line that is another one of the plurality of lines of the 2D drawing (S413); generating a unit vector for the target line (S414); determining whether the unit vector for the reference line is the same as the unit vector for the target line (S415); when the unit vector for the reference line and the unit vector for the target line are the same, determining whether a distance between the reference line and the target line is within a preset distance range (S416); When the distance between the reference line and the target line falls within a preset distance range, a first condition for whether an imaginary perpendicular to the reference line at the starting point of the reference line meets between the starting point and the ending point of the target line; A second condition for whether an imaginary normal to a baseline meets between the starting point and the endpoint of the target line, an imaginary normal to the baseline at the starting point of the baseline meets at the starting point of the target line and to the baseline at the endpoint of the baseline an overlap determination step (S417) of determining a third condition as to whether the virtual repair line meets at the end point of the target line; and defining the reference line and the target line as the opposing lines when at least one of the first to third conditions is satisfied in the overlap determination step (S417) (S418). .

상기 기준선을 선택하는 단계(S411)는 상기 연산부(100)가 상기 3D 벽체를 생성하기 위해 기준이 되는 하나의 선을 선택하는 단계일 수 있다.The step of selecting the reference line ( S411 ) may be a step in which the calculating unit 100 selects one line as a reference to generate the 3D wall.

도 7(a)에 도시한 바와 같이 2D 도면에는 수많은 선들이 있으나, 상기 기준선을 선택하는 단계(S411)에서의 상기 연산부(100)는 2D 도면에서 앞서 생성한 기둥, 보에 대한 선을 제외하고, 나아가 아래에서 설명될 문에 대한 선들을 제외한 선에서 폐합된 폴리라인을 추출할 수 있다.As shown in FIG. 7( a ), there are numerous lines in the 2D drawing, but the calculation unit 100 in the step S411 of selecting the reference line excludes the lines for the columns and beams previously generated in the 2D drawing. , and furthermore, it is possible to extract closed polylines from lines excluding lines for doors, which will be described below.

그 결과, 상기 기준선을 선택하는 단계(S411)에서의 상기 연산부(100)는, 도 7(b)에 도시한 바와 같이, 폐합된 폴리라인을 추출한 후, 이중 하나의 선을 기준선(bl)으로 선택할 수 있다.As a result, the operation unit 100 in the step S411 of selecting the reference line extracts the closed polyline as shown in FIG. You can choose.

이 후, 상기 기준선에 대한 단위 벡터를 생성하는 단계(S412)는 상기 연산부(100)가 선택한 상기 기준선의 방향을 정의하는 것으로서, 도 7(b)에 도시한 바와 같이, 상기 연산부(100)는 상기 기준선(bl)의 단위벡터로서 도면에서 왼쪽에서 우측을 향하는 방향을 가지는 단위벡터로 정의하여 생성할 수 있다.Thereafter, the step of generating the unit vector for the reference line ( S412 ) is to define the direction of the reference line selected by the operation unit 100 , and as shown in FIG. 7( b ), the operation unit 100 is As a unit vector of the reference line bl, it can be defined and generated as a unit vector having a direction from left to right in the drawing.

이 후, 상기 대상선을 선택하는 단계(S413)는 상기 기준선이 포함된 폐합된 폴리라인에서 상기 기준선이 아닌 선 중 어느 하나를 선택하는 단계를 의미할 수 있다.Thereafter, the step of selecting the target line ( S413 ) may mean selecting any one of the lines other than the reference line from the closed polyline including the reference line.

이를 보다 자세히 설명하자면, 상기 대상선을 선택하는 단계(S413)에서의 상기 연산부(100)는, 도 7(b)에 도시한 바와 같이, 상기 기준선(bl)이 포함된 폐합된 폴리라인에서 상기 기준선(bl)이 아닌 8개의 대상선(ol1, ol2, ol3, ol4, ol5, ol6, ol7, ol8)을 추출할 수 있으며, 이중 어느 하나를 대상선으로 추출할 수 있다. To explain this in more detail, the operation unit 100 in the step S413 of selecting the target line, as shown in FIG. Eight target lines (ol1, ol2, ol3, ol4, ol5, ol6, ol7, ol8) other than the baseline (bl) may be extracted, and any one of them may be extracted as the target line.

이 후, 상기 대상선에 대한 단위 벡터를 생성하는 단계(S414)는 상기 연산부(100)가 선택한 상기 대상선의 방향을 정의하는 것으로서, 도 7(b)에 도시한 바와 같이, 상기 연산부(100)는 ol1을 상기 대상선으로 선택한 경우 ol1의 단위벡터로서 도면에서 위에서 아래쪽으로 향하는 방향을 가지는 단위벡터로 정의하여 생성할 수 있다.Thereafter, the step of generating the unit vector for the target line ( S414 ) defines the direction of the target line selected by the calculation unit 100 , and as shown in FIG. 7( b ), the calculation unit 100 . When ol1 is selected as the target line, as a unit vector of ol1, it can be defined and generated as a unit vector having a direction from top to bottom in the drawing.

한편, ol7을 상기 대상선으로 선택한 경우 ol7의 단위벡터로서 도면에서 왼쪽에서 우측을 향하는 방향을 가지는 단위벡터로 정의하여 생성할 수 있다.Meanwhile, when ol7 is selected as the target line, it can be defined and generated as a unit vector having a direction from left to right in the drawing as a unit vector of ol7.

이와 같이, 상기 대상선에 대한 단위 벡터를 생성하는 단계(S414)에서의 상기 연산부(100)는 선택한 상기 대상선에 대한 상기 단위 벡터를 정의하여 생성할 수 있다.As such, in the step of generating the unit vector for the target line ( S414 ), the operation unit 100 may define and generate the unit vector for the selected target line.

이 후, 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터의 동일 여부를 판단하는 단계(S415)는 상기 연산부(100)가 선택한 상기 기준선과 상기 대상선 각각의 방향이 동일한지 여부를 판단하는 단계로서, 상기 기준선과 상기 대상선 각각의 단위벡터를 비교하여 판단할 수 있다.Thereafter, in the step of determining whether the unit vector for the reference line and the unit vector for the target line are the same ( S415 ), it is determined whether the directions of the reference line selected by the operation unit 100 and the respective directions of the target line are the same In this step, it may be determined by comparing the unit vectors of each of the reference line and the target line.

예를 들어, 도 7(b)를 참조하여 설명하자면, 상기 연산부(100)는 상기 기준선(bl)과 ol1의 상기 대상선 간의 단위벡터가 동일한지 여부를 판단할 수 있으며, 상기 기준선(bl)과 ol1의 상기 대상선 간의 단위벡터가 동일하지 않음(방향이 동일하지 않음)에 따라 ol1이 아닌 ol2를 새로운 상기 대상선으로 선택할 수 있다.For example, referring to FIG. 7(b) , the operation unit 100 may determine whether a unit vector between the reference line bl and the target line of ol1 is the same, and the reference line bl Since the unit vectors between the target lines of ol1 and ol1 are not the same (directions are not the same), ol2 other than ol1 may be selected as the new target line.

이런 과정을 반복함에 따라, 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터의 동일 여부를 판단하는 단계(S415)에서, 상기 연산부(100)는 상기 기준선(bl)의 방향과 동일한 방향(왼쪽에서 우측을 향하는 방향)인 ol3, ol5, ol7, ol8인 상기 대상선을 선택할 수 있으며, 나머지 상기 대상선들은 상기 기준선(bl)과 마주보는 선의 후보군에서 제외시킬 수 있다.By repeating this process, in the step of determining whether the unit vector for the reference line and the unit vector for the target line are the same (S415), The operation unit 100 may select the target lines ol3, ol5, ol7, and ol8 in the same direction as the direction of the reference line bl (a direction from left to right), and the remaining target lines are selected from the reference line bl. ) and can be excluded from the candidate group on the opposite line.

이 후, 상기 기 설정된 거리 범위에 속하는지 여부를 판단하는 단계(S416)는 상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터가 동일한 경우, 즉 상기 기준선(bl)과 ol3, ol5, ol7, ol8인 상기 대상선 간의 거리가 기 설정된 거리 범위에 속하는지 여부를 판단하는 단계(S416)로서, 상기 연산부(100)는 상기 기준선(bl)과 ol3, ol5, ol7, ol8인 상기 대상선 각각의 거리를 산출할 수 있으며, 산출한 거리가 기 설정된 거리 범위에 속하는지 여부를 판단할 수 있다.Thereafter, the step of determining whether or not it belongs to the preset distance range ( S416 ) is performed when the unit vector for the reference line and the unit vector for the target line are the same, that is, the reference line bl and ol3, ol5, ol7 , ol8, determining whether or not the distance between the target lines falls within a preset distance range (S416), wherein the calculating unit 100 determines whether the distance between the target lines of . may be calculated, and it may be determined whether the calculated distance belongs to a preset distance range.

예를 들어, 기 설정된 거리 범위는 관리자가 상기 입력부(400)를 통해 미리 입력할 수 있으며 100mm 이상, 500mm 이하인 범위로 지정할 수 있다.For example, the preset distance range may be input in advance by the administrator through the input unit 400 and may be designated as a range of 100 mm or more and 500 mm or less.

여기서, 상기 기준선(bl)과 ol3, ol7, ol8 간의 거리가 기 설정된 거리 범위 내이고, ol5가 기 설정된 거리 범위 밖인 경우, 상기 연산부(100)는 ol5을 상기 기준선(bl)과 마주보는 선의 후보군에서 제외시킬 수 있다.Here, when the distance between the reference line bl and ol3, ol7, and ol8 is within a preset distance range and ol5 is outside the preset distance range, the calculating unit 100 sets ol5 to a candidate group of a line facing the baseline bl. can be excluded from

이 후, 상기 오버랩 판단 단계(S417)는 상기 대상선의 거리가 기 설정된 거리 범위에 속하는 경우 구현되는 방법으로서, 상기 연산부(100)는 상기 기준선과 상기 대상선 간의 관계가 상기 제1 조건 내지 상기 제3 조건 중 어느 하나를 만족하는지 여부를 판단할 수 있다.Thereafter, the overlap determination step ( S417 ) is a method implemented when the distance of the target line falls within a preset distance range. It can be determined whether any one of the three conditions is satisfied.

여기서, 시점은 해당 선의 상측 또는 좌측의 끝점, 종점은 해당 선의 하측 또는 우측의 끝점을 의미하나, 그 반대로 정의될 수도 있음은 물론이다.Here, the starting point means the upper or left end point of the corresponding line, and the ending point means the lower or right end point of the corresponding line. Of course, the opposite may be defined.

다만 설명의 편의를 위해, 시점은 해당 선의 상측 또는 좌측의 끝점, 종점은 해당 선의 하측 또는 우측의 끝점을 의미하는 것으로 가정하고 설명하겠다.However, for convenience of explanation, it is assumed that the starting point means the upper or left end point of the line, and the end point means the lower or right end point of the corresponding line.

여기서, 예를 들어, 도 7(c)를 참조하자면, 상기 오버랩 판단 단계(S417)에서의 상기 연산부(100)는 상기 기준선(bl)과 ol7인 상기 대상선이 상기 제1 조건 내지 상기 제3 조건 중 적어도 어느 하나를 만족하는지 판단할 수 있으며, 보다 구체적으로, 상기 기준선(bl)과 ol7인 상기 대상선 간의 관계에서, 상기 제1 조건을 살펴보면 상기 기준선(bl)의 시점에서 상기 기준선(bl)에 대한 가상의 수선(점선 표시)이 ol7의 시점과 종점을 제외한 ol7의 시점과 종점 사이에서 ol7과 만난다는 점에서 상기 제1 조건을 만족함에 따라 상기 제2 조건 및 상기 제3 조건의 만족여부는 판단할 필요가 없다.Here, for example, referring to FIG. 7C , the operation unit 100 in the overlap determination step S417 determines that the reference line bl and the target line ol7 are the first condition to the third condition. It can be determined whether at least one of the conditions is satisfied, and more specifically, in the relationship between the reference line bl and the target line ol7, looking at the first condition, the reference line bl at the time point of the reference line bl ), the second condition and the third condition are satisfied as the first condition is satisfied in that an imaginary line (indicated by a dotted line) meets ol7 between the start and end points of ol7 except for the start and end points of ol7. There is no need to judge whether

이와 마찬가지로, 도 7(b)에서, 상기 기준선(bl)과 ol3인 상기 대상선 간의 관계에서, 상기 제1 조건을 살펴보면 상기 기준선(bl)의 시점에서 상기 기준선(bl)에 대한 가상의 수선이 ol3의 시점과 종점을 제외한 ol3의 시점과 종점 사이에서 ol3과 만나지 않으므로 상기 제1 조건을 만족하지 않고, 상기 제2 조건을 살펴보면 상기 기준선(bl)의 종점에서 상기 기준선(bl)에 대한 가상의 수선이 ol3의 시점에서 만나나, ol3의 시점과 종점을 제외한 ol3의 시점과 종점 사이에서 ol3과 만나지 않으므로 상기 제2 조건을 만족하지 않으며, 나아가 상기 제3 조건을 살펴보면 상기 기준선(bl)의 시점에서 상기 기준선(bl)에 대한 가상의 수선이 ol3의 시점에서 만나지 않고 상기 기준선(bl)의 종점에서 상기 기준선(bl)에 대한 가상의 수선이 ol3의 종점에서 만나는지 않으므로 상기 제3 조건을 만족하지 않는다는 점에서, 상기 연산부(100)는 ol3를 상기 기준선(bl)과 마주보는 선의 후보군에서 제외시킬 수 있다.Similarly, in FIG. 7(b) , in the relationship between the reference line bl and the target line of ol3, looking at the first condition, an imaginary perpendicular to the reference line bl at the time point of the reference line bl is Since it does not meet ol3 between the start and end points of ol3 except for the start and end points of ol3, the first condition is not satisfied, and looking at the second condition, the imaginary The repair line meets at the time point of ol3, but does not meet ol3 between the start and end points of ol3 except for the start and end points of ol3, so the second condition is not satisfied. Since the imaginary perpendicular to the reference line bl does not meet at the starting point of ol3 and the imaginary perpendicular to the reference line bl at the end of the reference line bl does not meet at the end of ol3, the third condition is not satisfied. In the sense that it is not, the operation unit 100 may exclude ol3 from the candidate group of the line facing the reference line bl.

이와 마찬가지로, 상기 오버랩 판단 단계(S417)에서의 상기 연산부(100)는 ol8도 상기 기준선(bl)과 마주보는 선의 후보군에서 제외시킬 수 있다.Similarly, the operation unit 100 in the overlap determination step S417 may also exclude ol8 from the candidate group of the line facing the reference line bl.

그 결과, 상기 마주보는 선으로 정의하는 단계(S418)는 상기 기준선(bl)을 기준으로 상기 제1 조건 내지 상기 제3 조건 중 적어도 어느 하나를 만족하는 ol7을 상기 기준선(bl)과 마주보는 선으로 정의할 수 있다.As a result, in the step (S418) of defining the opposing line, ol7 satisfying at least one of the first to third conditions with respect to the reference line bl is a line facing the reference line bl. can be defined as

이후, 상기 마주보는 선의 길이를 변경하는 단계(S42)가 구현될 수 있다.Thereafter, the step ( S42 ) of changing the length of the opposite line may be implemented.

일례로, 상기 마주보는 선의 길이를 변경하는 단계(S42)는 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 시점을 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선까지 연장하며, 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 종점을 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선까지 연장하고, 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 시점을 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선까지 연장하며, 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 종점을 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선까지 연장할 수 있다.For example, in the step of changing the length of the opposite line (S42), when an imaginary perpendicular to the reference line at the starting point of the reference line meets the target line between the starting point and the end point of the target line, the starting point of the reference line is the starting point of the target line. Extends from a starting point to an imaginary normal to the target line, and when an imaginary normal to the baseline at the endpoint of the baseline meets the target line between the starting and ending points of the target line, the endpoint of the baseline is set at the endpoint of the target line extending to an imaginary perpendicular to the target line, and when an imaginary normal to the target line at the starting point of the target line meets the baseline between the starting point and the end point of the baseline, the starting point of the target line is determined from the starting point of the baseline Extends to an imaginary normal to the baseline, and when an imaginary normal to the target line at the endpoint of the target line meets the baseline between the starting and ending points of the baseline, the endpoint of the target line is set from the endpoint of the baseline to the baseline It can be extended to a virtual repair of

이를 보다 자세히 설명하자면, 도 8에 도시한 바와 같이, 상기 기준선(bl)의 시점에서 상기 기준선(bl)에 대한 가상의 수선이 ol7인 상기 대상선의 시점과 종점 사이에서 ol7과 만남에 따라, 상기 기준선(bl)의 시점을 ol7인 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선까지 연장한다.To explain this in more detail, as shown in FIG. 8 , according to the meeting with ol7 between the starting point and the end point of the target line where the imaginary perpendicular to the reference line bl at the starting point of the baseline bl is ol7, the The starting point of the reference line bl is extended from the starting point of the target line, which is ol7, to an imaginary perpendicular to the target line.

또한, ol7인 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선이 상기 기준선(bl)의 시점과 종점 사이에서 상기 기준선(bl)과 만남에 따라, ol7인 상기 대상선의 종점을 상기 기준선(bl)의 종점에서 상기 기준선에 대한 가상의 수선까지 연장한다.In addition, as an imaginary perpendicular to the target line at the endpoint of the target line that is ol7 meets the baseline bl between the starting point and the endpoint of the baseline bl, the endpoint of the target line that is ol7 is defined as the baseline bl ) to the imaginary perpendicular to the baseline.

그 결과, 상기 기준선(bl)과 ol7은 각각 연장되어 동일한 길이를 가질 수 있다.As a result, the reference line bl and ol7 may be extended to have the same length.

이 후, 상기 마주보는 선으로 3D 벽체를 생성하는 단계(S43)는 상기 연산부(100)가 상기 기준선(bl)과 ol7의 각각의 시점 간을 연결하고, 각각의 종점 간을 연결하여 하나의 폐합된 폴리라인을 형성하여, 해당 폴리라인을 벽체로 정의하고, 3D 벽체를 생성할 수 있다.After that, in the step (S43) of generating a 3D wall with the opposite lines, the operation unit 100 connects the reference line bl and each start point of ol7, and connects each end point to make one closing. You can create a 3D wall by forming a polyline that has been created, defining the polyline as a wall.

물론, 상기 3D 벽체의 높이는 2D 단면도에 표시된 벽체의 높이로 정의될 수 있다. Of course, the height of the 3D wall may be defined as the height of the wall indicated in the 2D cross-sectional view.

한편, 상기 기준선과 상기 대상선이 상기 제3 조건을 만족하는 경우에는 상기 기준선과 상기 대상선의 길이가 동일하다는 점에서 상기 마주보는 선의 길이를 변경하는 단계(S42)가 생략될 수 있다.Meanwhile, when the reference line and the target line satisfy the third condition, the step ( S42 ) of changing the lengths of the opposite lines may be omitted since the lengths of the reference line and the target line are the same.

이 후, 상기 3D 벽체를 생성하는 단계(S40)는 생성한 상기 3D 벽체들 중 중첩되는 벽체 부분을 하나의 3D 벽체로 변경하는 단계를 더 포함할 수 있다.Thereafter, the step of generating the 3D wall ( S40 ) may further include changing an overlapping wall portion among the generated 3D walls into a single 3D wall.

그 결과, 도 9에 도시한 바와 같이, 상기 3D 벽체를 생성하는 단계(S40)에 의해 다수개의 상기 3D 벽체가 생성될 수 있다.As a result, as shown in FIG. 9 , a plurality of 3D walls may be generated by the step S40 of generating the 3D walls.

- 상기 3D 문을 생성하는 단계(S50)- Generating the 3D door (S50)

상기 3D 문을 생성하는 단계(S50)는 연산부(100)가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계(S50)를 의미할 수 있다.The step (S50) of generating the 3D door may refer to the step (S50) of the operation unit 100 extracting a door from the 2D drawing and generating a 3D door corresponding to the extracted door.

문은 창문도 포함될 수 있다.A door may also include a window.

일례로, 상기 3D 문을 생성하는 단계(S50)는, 도 4에 도시한 바와 같이, 2D 도면에서 문을 추출하는 단계(S51); 문의 길이로 3D 기준 벽체를 생성하는 단계(S52); 상기 3D 기준 벽체의 단위 벡터를 생성하는 단계(S53); 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는지 여부를 판단하는 단계(S54); 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는 경우, 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계(S55); 및 상기 3D 기준 벽체에 3D 문을 생성하는 단계(S56);를 포함할 수 있다.As an example, the step of generating the 3D door (S50), as shown in Figure 4, extracting the door from the 2D drawing (S51); Creating a 3D reference wall with the length of the door (S52); generating a unit vector of the 3D reference wall (S53); determining whether the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall (S54); If the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall, changing the thickness of the 3D reference wall to the thickness of the 3D reference wall (S55); and generating a 3D door on the 3D reference wall (S56).

여기서, 상기 2D 도면에서 문을 추출하는 단계(S51)는, 도 10을 참조하여 설명하자면, 상기 연산부(100)가 2D 도면에서 문(d1, d2)을 추출할 수 있다.Here, the step of extracting the door from the 2D drawing ( S51 ) will be described with reference to FIG. 10 , the operation unit 100 may extract the doors d1 and d2 from the 2D drawing.

일례로, 상기 저장부(300)는 2D 도면에서 표현되는 문 이미지를 미리 저장하고 있으며, 상기 연산부(100)는 상기 저장부(300)에 저장된 문 이미지와 2D 도면을 비교하여 2D 도면에서 문을 추출할 수 있다.For example, the storage unit 300 stores the door image expressed in the 2D drawing in advance, and the operation unit 100 compares the door image stored in the storage unit 300 with the 2D drawing to determine the door in the 2D drawing. can be extracted.

이 후, 상기 문의 길이로 3D 기준 벽체를 생성하는 단계(S52)가 구현될 수 있다.After that, the step (S52) of generating a 3D reference wall with the length of the door may be implemented.

이를 보다 자세히 설명하자면, 도 11은 도 10에서의 w1(벽체), d1(문), w2(벽체) 부분에 대한 도면으로서, 도 11(a)에 도시한 바와 같이, 상기 연산부(100)는 2D 도면에서 추출한 d1인 문의 위치에 d1의 길이와 동일한 길이로 k1인 상기 3D 기준 벽체를 생성할 수 있다.To explain this in more detail, FIG. 11 is a view of w1 (wall), d1 (door), and w2 (wall) parts in FIG. 10, and as shown in FIG. 11(a), the operation unit 100 is At the location of the door d1 extracted from the 2D drawing, the 3D reference wall of k1 with the same length as the length of d1 can be created.

이 후, k1인 상기 3D 기준 벽체의 단위 벡터를 생성하는 단계(S53)가 구현될 수 있다.After that, the step (S53) of generating a unit vector of the 3D reference wall that is k1 may be implemented.

이를 보다 자세히 설명하자면, 상기 연산부(100)는 상기 3D 기준 벽체의 방향을 정의하기 위해 k1인 상기 3D 기준 벽체에 대한 단위 벡터를 생성(좌측에서 우측으로의 방향)할 수 있다.To explain this in more detail, the operation unit 100 may generate a unit vector (left to right direction) for the 3D reference wall that is k1 to define the direction of the 3D reference wall.

이 후, 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는지 여부를 판단하는 단계(S54)가 구현될 수 있다.Thereafter, a step (S54) of determining whether the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall may be implemented.

이를 보다 자세히 설명하자면, 상기 연산부(100)는 k1인 상기 3D 기준 벽체를 기준으로 상기 3D 기준 벽체에 접촉되는 좌측 또는 우측의 상기 3D 벽체가 존재하는지 여부를 판단할 수 있고, 나아가 좌측 또는 우측의 상기 3D 벽체가 존재하는 경우, 좌측 또는 우측의 상기 3D 벽체의 단위 벡터와 상기 3D 기준 벽체의 단위 벡터가 동일한지 여부를 판단할 수 있다.To explain this in more detail, the operation unit 100 can determine whether the 3D wall on the left or right side in contact with the 3D reference wall exists based on the 3D reference wall, which is k1, and furthermore, the left or right side of the 3D wall. When the 3D wall exists, it may be determined whether the unit vector of the 3D wall on the left or right side and the unit vector of the 3D reference wall are the same.

도 11(a)를 참조할 때, k1인 상기 3D 기준 벽체를 기준으로 k1에 접촉되는 좌측의 w1인 상기 3D 벽체가 존재하여, 우측의 w2인 상기 3D 벽체가 존재하고, k1인 상기 3D 기준 벽체와 w1인 상기 3D 벽체 및 w2인 상기 3D 벽체가 모두 좌측에서 우측으로의 방향을 가지는 동일한 단위 벡터를 가짐을 알 수 있다.Referring to FIG. 11( a ), based on the 3D reference wall that is k1, the 3D wall with w1 on the left in contact with k1 exists, and the 3D wall with w2 on the right exists, and the 3D reference with k1 is present. It can be seen that the wall and the 3D wall of w1 and the 3D wall of w2 all have the same unit vector having the direction from left to right.

이 경우, 즉, 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는 경우, 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계(S55)가 구현될 수 있다.In this case, that is, if the 3D wall equal to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall, changing the thickness of the 3D reference wall to the thickness of the 3D wall ( S55) may be implemented.

이를 보다 자세히 설명하자면, 도 11(b)에 도시한 바와 같이, k1인 상기 3D 기준 벽체와 w1인 상기 3D 벽체 및 w2인 상기 3D 벽체가 모두 좌측에서 우측으로의 방향을 가지는 동일한 단위 벡터를 가짐에 따라, 상기 연산부(100)는 k1인 상기 3D 기준 벽체의 두께를 w1인 상기 3D 벽체의 두께 또는 w2인 상기 3D 벽체의 두께로 변경할 수 있다.To explain this in more detail, as shown in Fig. 11(b), the 3D reference wall of k1, the 3D wall of w1, and the 3D wall of w2 have the same unit vector having the same direction from left to right. Accordingly, the calculating unit 100 may change the thickness of the 3D reference wall, which is k1, to the thickness of the 3D wall, which is w1, or the thickness of the 3D wall, which is w2.

예를 들어, 상기 연산부(100)는 k1인 상기 3D 기준 벽체와 w2인 상기 3D 벽체의 두께를 w1인 상기 3D 벽체의 두께로 변경할 수 있으며, 또는 도 11(c)에 도시한 바와 같이 w1인 상기 3D 벽체를 w2인 상기 3D 벽체까지 연장하여 k1인 상기 3D 기준 벽체, w2인 상기 3D 벽체 및 w1인 상기 3D 벽체 두께를 동일하게 할 수도 있다(여기서, w1인 상기 3D 벽체와 w2인 상기 3D 벽체 중 두께가 더 두꺼운 벽체를 기준으로 연장할 수도 있다).For example, the calculating unit 100 may change the thickness of the 3D reference wall of k1 and the 3D wall of w2 to the thickness of the 3D wall of w1, or w1 as shown in FIG. 11(c). By extending the 3D wall to the 3D wall of w2, the 3D reference wall of k1, the 3D wall of w2, and the 3D wall of w1 may have the same thickness (here, the 3D wall of w1 and the 3D wall of w2) It may be extended based on the thicker wall among the walls).

여기서, 만약, 상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하지 않는 경우에는 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계(S55)가 구현되지 않고, 아래에서 설명될 상기 3D 기준 벽체에 3D 문을 생성하는 단계(S56)가 곧 바로 구현될 수 있다.Here, if the 3D wall identical to the unit vector of the 3D reference wall does not exist on the left or right side with respect to the 3D reference wall, changing the thickness of the 3D reference wall to the thickness of the 3D wall ( S55) is not implemented, and the step S56 of creating a 3D door on the 3D reference wall, which will be described below, can be implemented immediately.

이를 보다 자세히 설명하자면, 도 10을 참조할 때, 상기 2D 도면에서 문을 추출하는 단계(S51)에 의해 d2의 문이 추출된 후, 상기 문의 길이로 3D 기준 벽체를 생성하는 단계(S52)에 의해 d2의 문과 동일한 길이와 동일한 두께를 가지는 상기 3D 기준 벽체가 생성되었으나, d2에 대한 상기 3D 기준 벽체의 단위 벡터(왼쪽에서 오른쪽 방향)와 d2에 대한 상기 3D 기준 벽체와 접촉하는 w3, w4의 상기 3D 벽체의 단위 벡터(위에서 아래쪽의 방향)는 동일하지 않다는 점에서, 이 경우 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계(S55)가 구현되지 않고, 아래에서 설명될 상기 3D 기준 벽체에 3D 문을 생성하는 단계(S56)가 곧 바로 구현될 수 있다.To explain this in more detail, referring to FIG. 10, after the door of d2 is extracted by the step (S51) of extracting the door from the 2D drawing, in the step (S52) of creating a 3D reference wall with the length of the door Although the 3D reference wall having the same length and the same thickness as the door of d2 was created by the unit vector (left to right) of the 3D reference wall for d2 and the 3D reference wall in contact with the 3D reference wall for d2 by In that the unit vectors (the direction from top to bottom) of the 3D wall are not the same, in this case, the step (S55) of changing the thickness of the 3D reference wall to the thickness of the 3D wall is not implemented, and will be described below. The step (S56) of creating a 3D door on the 3D reference wall can be implemented immediately.

이 후, 상기 3D 기준 벽체에 3D 문을 생성하는 단계(S56)가 구현될 수 있다.After that, the step (S56) of generating a 3D door on the 3D reference wall may be implemented.

상기 저장부(300)는 2D 도면에서 표현되는 문 이미지와 대응되는 상기 3D 문을 미리 저장하고 있을 수 있으며, 상기 3D 기준 벽체에 3D 문을 생성하는 단계(S56)에서 상기 연산부(100)는 상기 3D 기준 벽체 상에 2D 도면에서 표현되는 문 이미지와 대응되는 상기 3D 문을 생성할 수 있다.The storage unit 300 may have previously stored the 3D door corresponding to the door image expressed in the 2D drawing, and in the step (S56) of generating the 3D door on the 3D reference wall, the operation unit 100 is the The 3D door corresponding to the door image expressed in the 2D drawing may be generated on the 3D reference wall.

그 결과, 도 12에 도시한 바와 같이, 상기 3D 벽체 상에 상기 3D 문이 생성될 수 있다.As a result, as shown in FIG. 12 , the 3D door may be created on the 3D wall.

앞서 설명한 바와 같이, 본 발명의 일 실시예에 따른 상기 3D 모델링 방법은 건물에 대한 2D 도면의 입력 만으로도 건물에 대한 3D 도면을 매우 쉽게 모델링할 수 있는 장점이 있다.As described above, the 3D modeling method according to an embodiment of the present invention has an advantage in that it is possible to very easily model a 3D drawing of a building only by inputting a 2D drawing of the building.

상기에서는 본 발명에 따른 실시예를 기준으로 본 발명의 구성과 특징을 설명하였으나 본 발명은 이에 한정되지 않으며, 본 발명의 사상과 범위 내에서 다양하게 변경 또는 변형할 수 있음은 본 발명이 속하는 기술분야의 당업자에게 명백한 것이며, 따라서 이와 같은 변경 또는 변형은 첨부된 특허청구범위에 속함을 밝혀둔다.In the above, the configuration and features of the present invention have been described based on the embodiments according to the present invention, but the present invention is not limited thereto, and it is understood that various changes or modifications can be made within the spirit and scope of the present invention. It is intended that such changes or modifications will be apparent to those skilled in the art, and therefore fall within the scope of the appended claims.

100: 연산부
200: 통신부
300: 저장부
400: 입력부
500: 디스플레이부
100: arithmetic unit
200: communication department
300: storage
400: input unit
500: display unit

Claims (7)

건물의 2D 도면을 이용하여 3D 도면을 생성하는 3D 모델링 방법에 있어서,
저장부가 2D 도면을 저장하는 단계;
연산부가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계;
상기 연산부가 3D 기둥에 기초하여 3D 기둥을 잇는 3D 보를 생성하는 단계;
상기 연산부가 2D 도면에서 벽체를 추출하고, 추출한 벽체에 대응되는 3D 벽체를 생성하는 단계; 및
상기 연산부가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계;를 포함하며,
상기 3D 벽체를 생성하는 단계는,
2D 도면의 복수의 선에서 마주보는 선을 추출하는 단계;
상기 마주보는 선의 길이를 변경하는 단계; 및
상기 마주보는 선으로 3D 벽체를 생성하는 단계;를 포함하고,
상기 마주보는 선을 추출하는 단계는,
2D 도면의 복수의 선 중 하나인 기준선(base line)을 선택하는 단계;
상기 기준선에 대한 단위 벡터를 생성하는 단계;
2D 도면의 복수의 선 중 다른 하나인 대상선(object line)을 선택하는 단계;
상기 대상선에 대한 단위 벡터를 생성하는 단계;
상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터의 동일 여부를 판단하는 단계; 및
상기 기준선에 대한 단위 벡터와 상기 대상선에 대한 단위 벡터가 동일한 경우, 상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는지 여부를 판단하는 단계;를 포함하는,
3D 모델링 방법.
In the 3D modeling method of generating a 3D drawing using a 2D drawing of a building,
storing the 2D drawing by the storage unit;
extracting a column from the 2D drawing by the calculator and generating a 3D column corresponding to the extracted column;
generating, by the calculating unit, a 3D beam connecting 3D pillars based on the 3D pillar;
extracting a wall from the 2D drawing by the calculating unit and generating a 3D wall corresponding to the extracted wall; and
Including; extracting a door from the 2D drawing by the calculation unit, and generating a 3D door corresponding to the extracted door;
The step of creating the 3D wall is,
extracting opposing lines from a plurality of lines in the 2D drawing;
changing the length of the opposite line; and
Including; creating a 3D wall with the opposite lines;
The step of extracting the opposite line is,
selecting a base line that is one of a plurality of lines of the 2D drawing;
generating a unit vector for the reference line;
selecting an object line that is another one of a plurality of lines in the 2D drawing;
generating a unit vector for the target line;
determining whether the unit vector for the reference line is the same as the unit vector for the target line; and
When the unit vector for the reference line and the unit vector for the target line are the same, determining whether the distance between the reference line and the target line is within a preset distance range;
3D modeling method.
삭제delete 삭제delete 제1항에 있어서,
상기 기준선과 상기 대상선의 거리가 기 설정된 거리 범위에 속하는 경우,
상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제1 조건, 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 만나는지에 대한 제2 조건, 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점에서 만나고 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 종점에서 만나는지에 대한 제3 조건을 판단하는 오버랩 판단 단계; 및
상기 오버랩 판단 단계에서 상기 제1 조건 내지 상기 제3 조건 중 적어도 어느 하나를 만족하는 경우 상기 기준선과 상기 대상선을 상기 마주보는 선으로 정의하는 단계;를 더 포함하는,
3D 모델링 방법.
According to claim 1,
When the distance between the reference line and the target line falls within a preset distance range,
A first condition for whether an imaginary perpendicular to the baseline meets between the starting and ending points of the target line at the starting point of the baseline, and an imaginary perpendicular to the baseline from the starting point of the baseline meeting between the starting and ending points of the target line a second condition for whether an imaginary normal to the baseline at the starting point of the baseline meets at the starting point of the target line, and a third condition for whether an imaginary normal to the baseline meets at the endpoint of the target line at the endpoint of the baseline. an overlap determination step of determining; and
Defining the reference line and the target line as the opposing lines when at least one of the first to third conditions is satisfied in the overlap determination step;
3D modeling method.
제4항에 있어서,
상기 마주보는 선의 길이를 변경하는 단계는,
상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 시점을 상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선까지 연장하며,
상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선이 상기 대상선의 시점과 종점 사이에서 상기 대상선과 만나는 경우 상기 기준선의 종점을 상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선까지 연장하고,
상기 대상선의 시점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 시점을 상기 기준선의 시점에서 상기 기준선에 대한 가상의 수선까지 연장하며,
상기 대상선의 종점에서 상기 대상선에 대한 가상의 수선이 상기 기준선의 시점과 종점 사이에서 상기 기준선과 만나는 경우 상기 대상선의 종점을 상기 기준선의 종점에서 상기 기준선에 대한 가상의 수선까지 연장하는,
3D 모델링 방법.
5. The method of claim 4,
Changing the length of the opposite line comprises:
When an imaginary normal to the baseline at the starting point of the baseline meets the target line between the starting and ending points of the target line, the starting point of the baseline is extended from the starting point of the target line to an imaginary normal to the target line,
When an imaginary normal to the baseline at the endpoint of the baseline meets the target line between the starting and ending points of the target line, the endpoint of the baseline is extended from the endpoint of the target line to an imaginary perpendicular to the target line,
When an imaginary perpendicular to the target line at the starting point of the target line meets the baseline between the starting and ending points of the baseline, the starting point of the target line is extended from the starting point of the baseline to an imaginary perpendicular to the baseline,
When an imaginary normal to the target line at the endpoint of the target line meets the baseline between the starting and ending points of the baseline, extending the endpoint of the target line from the endpoint of the baseline to the imaginary perpendicular to the baseline,
3D modeling method.
건물의 2D 도면을 이용하여 3D 도면을 생성하는 3D 모델링 방법에 있어서,
저장부가 2D 도면을 저장하는 단계;
연산부가 2D 도면에서 기둥을 추출하고, 추출한 기둥에 대응되는 3D 기둥을 생성하는 단계;
상기 연산부가 3D 기둥에 기초하여 3D 기둥을 잇는 3D 보를 생성하는 단계;
상기 연산부가 2D 도면에서 벽체를 추출하고, 추출한 벽체에 대응되는 3D 벽체를 생성하는 단계; 및
상기 연산부가 2D 도면에서 문을 추출하고, 추출한 문에 대응되는 3D 문을 생성하는 단계;를 포함하며,
상기 3D 문을 생성하는 단계는,
2D 도면에서 문을 추출하는 단계;
문의 길이로 3D 기준 벽체를 생성하는 단계;
상기 3D 기준 벽체의 단위 벡터를 생성하는 단계;
상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는지 여부를 판단하는 단계;
상기 3D 기준 벽체를 기준으로 좌측 또는 우측에 상기 3D 기준 벽체의 단위 벡터와 동일한 상기 3D 벽체가 존재하는 경우, 상기 3D 벽체의 두께로 상기 3D 기준 벽체의 두께를 변경하는 단계; 및
상기 3D 기준 벽체에 3D 문을 생성하는 단계;를 포함하는,
3D 모델링 방법.
In the 3D modeling method of generating a 3D drawing using a 2D drawing of a building,
storing the 2D drawing by the storage unit;
extracting a column from the 2D drawing by the calculator and generating a 3D column corresponding to the extracted column;
generating, by the calculating unit, a 3D beam connecting 3D pillars based on the 3D pillar;
extracting a wall from the 2D drawing by the calculating unit and generating a 3D wall corresponding to the extracted wall; and
Including; extracting a door from the 2D drawing by the calculation unit, and generating a 3D door corresponding to the extracted door;
The step of creating the 3D door comprises:
extracting the door from the 2D drawing;
creating a 3D reference wall with the length of the door;
generating a unit vector of the 3D reference wall;
determining whether the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side with respect to the 3D reference wall;
changing the thickness of the 3D reference wall to the thickness of the 3D wall when the 3D wall identical to the unit vector of the 3D reference wall exists on the left or right side of the 3D reference wall; and
Including; creating a 3D door on the 3D reference wall
3D modeling method.
제1항, 제4항 내지 제6항 중 어느 한 항에 따른 3D 모델링 방법을 실행하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
A computer-readable recording medium in which a program for executing the 3D modeling method according to any one of claims 1 to 6 is recorded.
KR1020210090229A 2021-07-09 2021-07-09 Method for modeling 3d image and computer-readable recording medium KR102433396B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210090229A KR102433396B1 (en) 2021-07-09 2021-07-09 Method for modeling 3d image and computer-readable recording medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210090229A KR102433396B1 (en) 2021-07-09 2021-07-09 Method for modeling 3d image and computer-readable recording medium

Publications (1)

Publication Number Publication Date
KR102433396B1 true KR102433396B1 (en) 2022-08-18

Family

ID=83112358

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210090229A KR102433396B1 (en) 2021-07-09 2021-07-09 Method for modeling 3d image and computer-readable recording medium

Country Status (1)

Country Link
KR (1) KR102433396B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116740276A (en) * 2023-06-09 2023-09-12 北京优贝卡科技有限公司 House type diagram generation method, device, equipment and storage medium

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101607886B1 (en) * 2015-07-30 2016-04-11 단국대학교 산학협력단 Automatic generation system of rebar shop drawing using 3D model
KR20180026645A (en) * 2016-09-03 2018-03-13 윤유철 Modeling program to convert 2d blueprint into 3d object

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101607886B1 (en) * 2015-07-30 2016-04-11 단국대학교 산학협력단 Automatic generation system of rebar shop drawing using 3D model
KR20180026645A (en) * 2016-09-03 2018-03-13 윤유철 Modeling program to convert 2d blueprint into 3d object

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116740276A (en) * 2023-06-09 2023-09-12 北京优贝卡科技有限公司 House type diagram generation method, device, equipment and storage medium

Similar Documents

Publication Publication Date Title
US11288413B2 (en) Method for automatic modeling of an architecture based on an architectural drawing
Dore et al. Semi-automatic modelling of building facades with shape grammars using historic building information modelling
US11010500B2 (en) Direct room modeling in computer-aided design
JP5013793B2 (en) Two-dimensional CAD data processing device, two-dimensional CAD data processing method, two-dimensional CAD data processing program
KR101717896B1 (en) Building shape modeling method and apparatus considering optimization of data
JP3574202B2 (en) Graphic I / O device
JP2009524888A (en) How to create architectural space objects
CN106934842B (en) Method and device for identifying closed area
KR102433396B1 (en) Method for modeling 3d image and computer-readable recording medium
CN114818065A (en) Three-dimensional roadway model building method and device, electronic equipment and storage medium
JP6040873B2 (en) Information processing apparatus, information processing method, and computer-readable recording medium
KR101391386B1 (en) System and method for modeling 3d image
CN111985038B (en) Engineering amount calculating method and device for space to be repaired
KR101352082B1 (en) 2D size display method based on the output environment for the 3D image
JP2020091590A (en) Display data generation apparatus, display data generation method, and display data generation program
JP5014509B2 (en) Closed region identification method
KR102409715B1 (en) Method for generating drawing data and apparatus for supporting collaborative design
CN108920819A (en) Three dimensional design platform cable duct/slot creation method
JP2008158793A (en) Information generation device for structural analysis for building, information generation method for structural analysis, and information generation program for structural analysis
CN111814224A (en) Building material estimation system, management server thereof and building material estimation method
JP2003288606A (en) Boundary discrimination device and program therefor
CN105893643B (en) Space polygon incudes three-dimension measuring system and method, row's modular system and method
CN112182686B (en) Method, device, equipment and storage medium for generating channel model
CN114283441B (en) Two-dimensional drawing recognition modeling method and device suitable for railway passenger station
JP2019197345A (en) Image processing device and image processing program

Legal Events

Date Code Title Description
GRNT Written decision to grant