KR100433946B1 - 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법 - Google Patents

캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법 Download PDF

Info

Publication number
KR100433946B1
KR100433946B1 KR10-2002-0007247A KR20020007247A KR100433946B1 KR 100433946 B1 KR100433946 B1 KR 100433946B1 KR 20020007247 A KR20020007247 A KR 20020007247A KR 100433946 B1 KR100433946 B1 KR 100433946B1
Authority
KR
South Korea
Prior art keywords
dimensional
plane
data
triangular data
shape
Prior art date
Application number
KR10-2002-0007247A
Other languages
English (en)
Other versions
KR20030067793A (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 KR10-2002-0007247A priority Critical patent/KR100433946B1/ko
Publication of KR20030067793A publication Critical patent/KR20030067793A/ko
Application granted granted Critical
Publication of KR100433946B1 publication Critical patent/KR100433946B1/ko

Links

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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • 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)
  • Computer Graphics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 발명은 3차원으로 작도(作圖)된 형상을 다양한 방식으로 볼 수 있는 보기 기능을 제공하는 CAD Viewer에 대하여 단순한 단면보기 기능뿐만 아니라 여러 개의 복합 평면들이 계단식으로 이루어져 있는 기준 평면들을 사용하여 다단계 단면보기 기능을 제공하는 방법에 관한 것으로서, 마우스를 통하여 화면상의 여러 점을 입력받고 입력받은 점들을 이어 폴리라인을 생성하는 제 1 과정과;상기 대상 형상을 이루고 있는 3차원 삼각형 데이터들을 소정 화면상에 투영시켜 2차원 삼각형 데이터로 변환하는 제 2 과정과;상기 폴리라인과 상기 2차원 삼각형 데이터들 간의 절단을 수행하는 제 3 과정과;절단후 생성된 다각형에서 새롭게 2차원 삼각형 데이터를 생성하는 제 4 과정과;상기 제 2 과정의 2차원 삼각형 데이터 및 상기 제 4 과정의 새롭게 생성된 2차원 삼각형 데이터를 다시 3차원 삼각형 데이터로 변환하는 제 5 과정과;변환된 3차원 삼각형 데이터들로 새로운 형상을 생성하고, 이를 화면에 디스플레이 해주는 제 6 과정;을 포함한다.

Description

캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기 제공 방법{Method of Providing A Staggered Section View for Three Dimension Data in CAD System}
본 발명은 CAD 시스템에서 형상을 검도(檢圖)하기 위한 방법의 하나인 단면보기 방법에 관한 것으로써, 특히 3차원으로 작도(作圖)된 형상을 다양한 방식으로 볼 수 있는 보기 기능을 제공하는 CAD Viewer에 대하여 단순한 단면보기 기능뿐만 아니라 여러 개의 복합 평면들이 계단식으로 이루어져 있는 기준 평면들을 사용하여 다단계 단면보기 기능을 제공하는 방법에 관한 것이다.
CAD Viewer 프로그램이란 CAD(Computer Aided Design) 프로그램에 의해 작성된 도면을 다양한 방식으로 검도(檢圖)하기 위한 프로그램으로서, 종래의 CAD Viewer 프로그램으로는 오토캐드사(AutoCAD社)의 Volo View 등이 있으며, 이러한 종래 CAD Viewer에서 제공하는 종래의 단면보기 방법은, 단순한 평면을 사용하여 형상을 절단하는 방식에 의한 단면보기 방법이었다.
우선, 단면 보기를 위해 형상을 자르기 위한 평면을 정의하기 위해서는 다음과 같은 방법이 사용되어진다.
첫째, 3차원 상의 3점을 입력받아 그 점을 지나는 평면 생성하는 방법이 있다. 예를 들어 X-Y-Z 좌표축을 가지는 3차원 좌표계에서 (0, 0, 0), (1, 1, 1), (1,-1, 1)과 같은 원하는 세 점을 선택하고 선택된 세 점에 의하여 정의되는 평면으로서 형상을 자르는 방법이다. 이 방법은 형상에 대한 고려없이 임의의 기준점을 먼저 선택하여 절단에 사용될 평면을 먼저 정의하고 이를 대상이 되는 형상에 적용하는 방식이다.
둘째, 절단하고자 하는 형상 위의 3점을 선택하여 그 점들을 지나는 평면 생성하는 방법이 있다. 이 방식은 3차원으로 표시된 대상 형상 위에 절단이 요구되는 부분을 고려하여 소정의 절단 평면을 형성하는 세 점을 선택하고 이 세 점을 잇는 평면에 의하여 대상 형상을 자르는 방식이다.
셋째, 평면의 수직 벡터(Normal Vector)와 한점 값을 입력받아 평면을 생성하는 방법이 있다.
넷째, 화면상으로 수평/수직 혹은 수평/수직으로부터 일정 각을 가지는 평면 생성하는 방법이 있다. 이 방식은 예를 들어 화면에 대한 수직인 임의의 평면에 대하여 기준이 되는 한 점을 찍고 각도를 입력하여 소정 평면을 특정하는 방식이다.
다섯째, 절단하고자 하는 형상을 도시한 화면상에 두 점을 찍어 이 두 점을 잇는 선분을 기준으로 상기 화면과 수직하는 평면을 생성하는 방법이 있다.
위와 같은 방법으로 만들어진 평면(예를 들어 평면식:aX+bY+cZ+d=0에 의해 정의되는)을 가지고 형상을 절단하게 된다. 이때 d 값을 변화시켜가며 실시간으로 새롭게 생성되는 단면들을 사용자가 확인할 수 있다.
이하에서는 이와 같은 종래의 단면보기 방법을 예를 들어 설명하기로 한다.
도 1은 절단하고자 하는 대상 형상의 일예를 도시하는 사시도이다. 도면에서는 스크류 기어를 대상 형상(10)으로 도시하고 있다. 도 2는 도 1의 대상 형상(10)에 대하여 종래의 단면보기를 위한 단순한 평면을 생성하기 위해 평면을 정의하는 방법의 일예를 도시한다.
도 2는 상기 종래 방법 중 다섯째 방법을 사용한 것으로서, 도 1의 대상 형상(10, 스크류 기어)을 수직 상방에서 바라본 평면도에 대하여 사용자가 평면도 화면 상의 원하는 지점에 두 점(A, B)을 찍어 하나의 선분(L1)을 정의해 주면 그 선분을 지나면서 도 2의 평면에 대하여 수직하는 수직 평면(도 4의 P1 참조)이 생성되고, 이 수직 평면(P1)에 의하여 도 3 및 도 4에서 보는 것과 같이 그 정의된 평면(P1)을 사용하여 대상 형상을 절단하게 된다. 이때 생성되는 형상은 단면 자체가 단순한 평면이기에 절단면이 하나의 평면(P1)으로 이루어져 있다.
도 3은 도 2에서 정의된 평면(P1)에 의해 절단된 형상의 두 부분 중 우측 부분(30)을 도시하는 평면도이고, 도 4는 도 2에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분(30)을 도시하는 사시도이다.
그러나, 상기한 종래의 방식은 CAD Viewer에서 단면보기를 구현하기 위한 기본적인 방식으로 단순히 형상의 검도(檢圖)를 위한 방법으로는 문제가 없으나, 대상 형상을 하나의 평면에 의해서만 절단할 수 있으므로, 사용자가 형상 내부를 계단식의 복합 평면으로 잘라 확인하고 싶어할 때는 이러한 기능을 지원해 주지 않고, 단지 대상 형상을 여러 번 각각의 단일 평면으로 잘라 확인 후 정리해야 하는방식에 의해서만 가능하므로, 원하는 부분을 단일한 하나의 평면에 의하여 절단하여 효과적으로 검도(檢圖)하는 것이 불가능하다는 문제점이 지적되어 왔다.
또한 대상 형상이 형상 전체로 하나의 주형 내지 틀에 의해 일체로 제작하는 것이 불가능하고 분리하여 제작하여야 할 필요성이 있는 경우에는 절단된 각 부분 형상을 따로 제작하여 제품의 완성을 위해서 부분들을 다시 조립을 하여야 하는바, 이 경우 종래의 방법에 의하여 하나의 평면으로 대상 형상을 절단한 후 각 절단된 2 개의 분리된 부분 형상을 각각 제작하여 이를 다시 조립하고자 할 때 각 형상의 각 접착 면이 단순한 하나의 평면이어서 접착의 기준이 되는 지점을 찾기가 어렵고, 이에 따라 두 개의 형상이 완전히 일치되도록 접착하기가 어렵다는 문제점이 지적되어 왔다.
또한 분리된 두 형상의 접착 평면이 상호 완전히 평행하므로, 접착 평면의 구조상 접착 평면에 대하여 수평적으로 작용하는 힘에 대한 대항력이 존재하지 않는다. 따라서, 상호 접착을 한다 해도 내구성이라든지 외부 충격에 약하다는 문제점이 지적되어 왔다.
도 4를 참고하면, 절단된 대상 형상의 우측 부분(30)과 좌측 부분(도시되지 않음)은 접착 평면(P1)이 상호 걸리는 부분이 존재하지 않는 평행한 단일 평면이므로 양 절단 부분이 접합시 상호 미끄러지기가 쉽고, 또한 접합시 상호 정확히 끼워맞춤되기 위한 기준 지점으로 작용할 수 있는 걸림 부분이 존재하지 않으므로, 접합 지점을 찾기도 용이하지 않으며, 접착을 하더라도 접착되는 구조의 단순성 때문에 수평력, 수직력 기타 외력에 대한 저항력이 약할 수 밖에 없다는 것을 분명히이해할 수 있다.
본 발명은 상기와 같은 종래 기술의 문제점을 해결하기 위해 안출된 것으로서, 종래의 단일 평면을 이용한 단면보기 기능에 더해서 계단식의 복합 평면으로 이루어진 다단계 평면을 사용하여 형상을 절단할 수 있는 단면보기 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 하나의 형상을 여러 조각으로 분리하여 제품을 제작하여 조립을 하고자 할 때 접착 면이 여러 평면으로 이루어져 접착을 용이하게 하고 접착 후 내구성과 외부 충격에 강하게 할 수 있는 단면보기 방법을 제공하는 것을 목적으로 한다.
또한, 본 발명은 미리 절단된 형상을 계단식의 복합 평면으로 한번에 사용자가 원하는 부분의 형상 내부를 자세히 검도(檢圖)할 수 있도록 하는 단면보기 방법을 제공하는데 그 목적이 있다.
도 1은 절단하고자 하는 대상 형상의 일예를 도시하는 사시도이다.
도 2는 도 1의 대상 형상에 대하여 종래의 단면보기를 위한 단순한 평면을 생성하기 위해 평면을 정의하는 방법의 일예를 도시한다.
도 3은 도 2에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분을 도시하는 평면도이다.
도 4는 도 2에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분을 도시하는 사시도이다.
도 5는 본 발명의 단면보기 방법에 의하여 대상 형상을 계단식의 복합 평면으로 이루어진 다단계 평면으로 절단하는 모습을 도시하는 평면도이다.
도 6은 도 5에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분을 도시하는 평면도이다.
도 7은 도 5에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분을 도시하는 사시도이다.
도 8은 본 발명의 단면보기 방법의 각 과정을 도시하는 순서도이다.
도 9는 3차원 삼각형 데이터를 2차원 평면에 투영시키는 방법을 도시하는 개략도이다.
도 10은 2차원 삼각형 데이터를 3차원 데이터로 변환시키는 방법을 도시하는 개략도이다.
본 발명의 구성 및 동작을 첨부된 그림을 참고하여 상세히 설명하면 다음과 같다.
도 5는 본 발명의 단면보기 방법에 의하여 대상 형상을 계단식의 복합 평면으로 이루어진 다단계 평면으로 절단하는 모습을 도시하는 평면도이다.
도 5에 도시된 바와 같이, 대상 형상에 대하여 원하는 절단면을 형성하도록 사용자가 원하는 위치에 소정 갯수의 점(도면에서는 4 개; C, D, E, F)을 찍어 각 점을 잇는 3개의 선분(L2, L3, L4)으로 이루어진 폴리라인(Polyline)을 정의해 주면, 각각의 선분(L2, L3, L4)에 대해서 화면에 대해 수직으로 평면(P2, P3, P4; 도 7 참조)이 형성되고, 계단식으로 구부려 놓은 듯한 모습의 상기 세 평면으로 이루어진 절단면으로 대상 형상을 자르게 되면 도 6 내지 도 7과 같은 결과를 얻을 수 있다.
도 6은 도 5에서 정의된 평면(P2, P3, P4)에 의해 절단된 형상의 두 부분 중 우측 부분(60)을 도시하는 평면도이고, 도 7은 도 5에서 정의된 평면에 의해 절단된 형상의 두 부분 중 우측 부분(60)을 도시하는 사시도이다.
단면을 자르기 위한 평면을 정의하는 방법을 양호한 예를 들어 보다 구체적으로 설명하면, 사용자는 예를 들어 마우스 왼쪽 버튼을 사용하여 화면상의 원하는 곳에 점을 입력할 수 있으며, 입력된 점과 점 사이로 계속해서 선분이 이어지며 폴리라인(Polyline)이 생성되며, 점의 입력을 종료하기 위해서는 예를 들어 마지막에 마우스 왼쪽 버튼을 더블 클릭하는 방법을 취할 수 있다.
도 5의 화면상에 보여지는 것은 폴리라인(Polyline)이지만 실제로 생성되는 것은 도 5의 화면상에 수직인 도 7과 같은 계단식의 평면이 생성된다. 도 6 내지 도 7에서 생성된 형상을 보면 단면이 도 3 내지 도 4와 달리 계단식으로 생성되어져 있음을 확인할 수 있다.
도 8은 본 발명의 단면보기 방법의 각 과정을 도시하는 순서도이다. 도면을참고하여 본 발명의 각 과정을 상세히 설명한다.
먼저, 사용자로부터 마우스를 통하여 화면상의 여러 점을 입력받는다(S 810). 사용자는 원하는 형태의 계단식 절단 평면을 형성하도록 원하는 위치에 소정 갯수의 점(예를 들어 C, D, E, F)을 입력을 할 수 있다.
다음, 상기 입력받은 점들을 이어 폴리라인을 생성한다(S 820). 폴리라인의 생성은 오토캐드(AutoCAD), 페인트샵(Paintshop), 포토샵(Photoshop), 그림판 등 종래의 그래픽 프로그램에서 지원하는 기능이므로 상세한 설명은 생략한다.
다음, 상기 생성된 폴리라인이 서로 겹치는지 여부를 확인하는 과정(S 830)을 추가할 수 있다. 사용자가 잘못하여 동일한 점을 두 번 클릭한다든지 선분이 서로 교차하도록 점을 클릭하는 경우에는 적절한 절단 평면을 형성할 수 없으므로 이를 방지하기 위한 과정이다. 폴리라인이 서로 겹치는 경우에는 S 810의 과정으로 돌아가 점 입력을 다시 받도록 하며, 겹치지 않는 경우에는 다음 과정으로 진행한다.
다음, 형상을 이루고 있는 3차원 삼각형 데이터들을 화면상에 투영시켜 2차원 삼각형 데이터로 변환한다(S 840). 삼각형 데이터란 CAD 프로그램에서 형상을 이루는 삼각형 모양의 요소 성분으로서 TV 브라운관의 화소에 대응하는 개념이다. 보통 하나의 형상은 대략 만 개 내지 십만 개의 삼각형 데이터에 의해 표현된다.
예를 들어, 입체 형상을 표현하기 위해서는 형상의 표면을 각 부분 요소로 나누고 이 부분 요소에 대한 데이터를 저장함으로써 형상 표면을 표현하여 결과적으로 입체 형상의 표현이 가능한데, 상기 각 부분 요소는 미세한 삼각형 평면으로이루어질 수 있으며, 각 미세 삼각형 평면은 세 점으로 이루어지며, 각 점은 X-Y-Z 좌표계에서 예를 들어 (1, 2, 3)과 같은 3차원 좌표값을 가진다. 결과적으로 상기 3차원 삼각형 데이터란 형상 표현의 단위 구성 요소인 삼각형에 대한 세 점의 3차원 좌표값을 의미한다. 이에 비해 2차원 삼각형 데이터란 2차원 모양의 단위 구성 요소인 미세 삼각형에 대한 세 점의 2차원 좌표값을 의미한다.
종래의 단면보기 방법은 단순한 직선형 단일 평면으로 구성되는 절단 평면에 의하여 단면보기를 수행하므로, 3차원 삼각형 데이터 자체에 대하여 절단 평면을 적용하여 단면보기를 수행하는 것이 가능하였다. 그러나, 본 발명과 같이 복잡한 계단형 절단 평면에 의해 형상의 단면보기를 수행하려고 하는 경우에는, 절단 평면이 계단형으로 복잡하여 데이터 자체가 매우 복잡하고 절단경계선에 의해 삼각형 모양을 유지하지 못하고 다각형으로 변형되는 등 데이터의 복잡도가 증가하기 때문에, 3차원 삼각형 데이터 자체에 대하여 절단을 수행하는 것은 불가능하였다.
따라서, 이에 새로운 데이터 처리 방법이 요구되었는데, 본 발명에서는 3차원 형상에 대한 3차원 삼각형 데이터를 소정의 기준 평면을 의미하는 상기 화면(예를 들어 도 1의 대상 형상을 수직 상방에서 바라본 도 2 또는 도 5와 같은 평면)에 대하여 투영시켜 2차원 삼각형 데이터로 변환하고 이를 기준으로 절단을 수행하여 절단 경계면에서의 경계면 처리를 한 후 이를 다시 역변환하여 3차원 삼각데이터로 변환하는 새로운 방식을 고안하였다.
도 9는 3차원 삼각형 데이터를 2차원 평면에 투영시키는 방법을 도시하는 개략도이다.
3차원 삼각형 데이터의 한 꼭지점인 Pt3d를 상기 화면 즉 소정 2차원 평면에 투영하는 과정은 다음과 같다.
벡터 P = Pt3d - Org (단, 여기에서, Pt3d는 절대좌표를 기준으로 한 3차원 좌표값을, Org는 기준점을, 벡터 P는 기준점인 Org를 기준으로 한 3차원 좌표값을 각각 의미함)
Pt2d.x = P * nu (단, 여기에서, Pt2d.x는 벡터 P의 2차원 평면에로의 투영된 벡터인 Pt2d 중 수평 성분 즉 u축 방향 성분을 의미하고, nu는 2차원 평면에서의 u축 방향 단위 벡터이고, * 는 벡터의 내적을 의미함)
Pt2d.y = P * nv (단, 여기에서, Pt2d.y는 벡터 P의 2차원 평면에로의 투영된 벡터인 Pt2d 중 수직성분 즉 v축 방향 성분을 의미하고, nv는 2차원 평면에서의 v축 방향 단위 벡터를 의미함)
따라서 3차원 데이터의 한 꼭지점인 Pt3d(Px, Py, Pz)는 소정 평면으로의 벡터 내적에 의해 2차원 벡터 Pt2d(Pt2d.x, Pt2d.y)로 변환된다.
상기 수학식 1 내지 수학식 3의 방법을 반복하면 3차원 삼각형 데이터의 세 점에 대응하는 각각의 2차원 삼각형 데이터의 꼭지점을 계산할 수 있고, 나아가 대상 형태를 이루는 모든 3각형 데이터에 대한 2차원 삼각형 데이터의 꼭지점을 계산할 수 있다.
다음, 상기 S 820 과정에서 생성된 폴리라인과 상기 S 850 과정에서 생성된 2차원 데이터들 간의 절단(intersection)을 수행한다(S 850).
다음, 절단후 생성된 다각형에서 새롭게 2차원 삼각형 데이터를 생성한다(S 860). 경계 부분에 위치한 삼각형 데이터의 경우 절단 평면의 경계선에 의해 절단이 이루어지므로, 삼각형 형태를 유지하지 못하고 사다리꼴, 사각형 내지 기타 다각형으로 형태의 변형이 발생하게 된다. 따라서, 이렇게 경계 부분의 형태 변형된 다각형 데이터를 다시 삼각형 데이터로 재조정하여 경계 부분을 매끄럽게 처리할 수 있도록 한다. 삼각형 데이터로의 재조정은, 예를 들어 폴리곤-매쉬(polygon mesh) 방법과 같은 다각형을 삼각형으로 쪼개는 종래의 방법에 의하여 행할 수 있다.
다음, 상기 S 840 과정의 2차원 삼각형 데이터 및 상기 S 860 과정의 새롭게 생성된 2차원 삼각형 데이터를 다시 3차원 삼각형 데이터로 변환한다(S 870).
도면 및 수식을 참고로 2차원 삼각형 데이터를 원래의 3차원 데이터로 변환 과정을 상술한다.
먼저, Pt2d를 자신이 위치하고 있는 3차원 평면으로 투영시켜 Pt3d1을 계산한다. 즉, 상기 Pt2d 자체는 임의로 정의한 소정의 2차원 평면상에서 기준점 Org를 기준으로 한 u방향, v방향으로의 2차원적인 벡터이므로, 이를 절대 좌표계(x-y-z)를 기준으로 한 3차원적인 벡터로 먼저 변환하여야 한다. 변환 방법은 다음의 수학식에 의한다.
Pt3d1 = Org + pt2d.x ×nu + pt2d.y ×nv
즉, 절대 좌표계의 원점(0, 0, 0)에 대한 상기 기준점(Org) 벡터값을 Pt2d 중 수평·수직 각 성분의 크기를 각각 u·v 방향 단위 벡터와 곱하여 얻은 Pt2d 벡터값에다 더하여, 최종적으로 절대 좌표계에 대한 Pt2d값의 좌표, 즉, Pt3d1을 구한다.
다음, 상기 Pt3d1을 지나고 화면(상기 임의로 정의한 소정의 2차원 평면)에 수직인 벡터(Norm_Vec)에 평행한 벡터와 원래 3차원 데이터가 존재했던 평면과의 교점을 구하면 구하고자 하는 3차원 데이터를 계산해 낼 수 있다.
원래 3차원 데이터가 존재했던 평면을 정의하는 수학식은 예를 들어 다음과 같다.
plane_a[0] × x + plane_a[1] × y + plane_a[2] × z - plane_a[3] = 0
다음, 상기 화면에 대한 수직 벡터와 수학식 5에 의해 정의되는 원래의 3차원 데이터가 있던 평면과의 교점인 Pt3d를 구하는 수학식은 다음과 같다.
Pt3d = Pt3d1 + t×Norm_Vec
(단, 여기에서 t = (plane_a[3] - plane_a*Pt3d1)/(plane_a*Norm_Vec))
상기 수학식 4 내지 수학식 6의 방법을 반복하면 2차원 삼각형 데이터의 세 점에 대응하는 각각의 3차원 삼각형 데이터의 꼭지점을 계산할 수 있고, 나아가 대상 형태를 이루는 모든 삼각형 데이터에 대한 3차원 삼각형 데이터의 꼭지점을 계산할 수 있다.
다음, 변환된 3차원 삼각형 데이터들로 새로운 형상을 생성하고(S 880), 이를 화면에 디스플레이 해준다(S 890). 즉, 도 6 내지 도 7과 같은 원하는 계단식 복합 평면으로 절단된 단면보기 형상을 생성하여 디스플레이 해준다.
이상 본 발명을 양호한 실시예를 들어 설명하였으나, 이는 그 이해를 위한 것이지 그 제한을 위한 것은 아님을 이해할 것이다. 또한 본 발명의 사상을 벗어나지 않는 범위에서 본 발명이 속하는 기술 분야의 당업자에 의한 다양한 수정 및 변형이 가능함을 이해할 것이다.
상기와 같은 본 발명의 구성에 의하면, 계단식 복합 평면에 의한 단면보기가 가능하므로 사용자가 원하는 대로 형상 내부의 형태를 자세히 검도(檢圖)할 수 있다는 효과가 있다.
또한, 본 발명에 의하면 잘려진 형상을 각 절단 부분별로 제작한 후 다시 조립을 위하여 접착을 시도할 경우에도 절단면이 평행한 단일면이 아니라 계단식이므로 걸리는 부위가 존재하여 접착 기준점을 찾기가 용이하다는 효과가 있다.
또한, 본 발명에 의하면 절단면이 계단식이므로 그 구조 내지 형태상 수직력 및 수평력에 대한 대항력이 커지므로 내구성이 강하고 외부 충격에 잘 견디므로 접착 효과가 향상된다는 효과가 있다.

Claims (5)

  1. 소정의 대상 형상에 대하여 단면보기를 제공하는 방법에 있어서,
    마우스를 통하여 화면상의 여러 점을 입력받고 입력받은 점들을 이어 폴리라인을 생성하는 제 1 과정과;
    상기 대상 형상을 이루고 있는 3차원 삼각형 데이터들을 소정 화면상에 투영시켜 2차원 삼각형 데이터로 변환하는 제 2 과정과;
    상기 폴리라인과 상기 2차원 삼각형 데이터들 간의 절단을 수행하는 제 3 과정과;
    절단후 생성된 다각형에서 새롭게 2차원 삼각형 데이터를 생성하는 제 4 과정과;
    상기 제 2 과정의 2차원 삼각형 데이터 및 상기 제 4 과정의 새롭게 생성된 2차원 삼각형 데이터를 다시 3차원 삼각형 데이터로 변환하는 제 5 과정과;
    변환된 3차원 삼각형 데이터들로 새로운 형상을 생성하고, 이를 화면에 디스플레이 해주는 제 6 과정;을 포함하는 것을 특징으로 하는 단면보기 제공 방법.
  2. 제 1 항에 있어서, 상기 제 1 과정은, 상기 생성된 폴리라인이 서로 겹치는지 여부를 확인하여 폴리라인이 서로 겹치는 경우에는 점 입력을 다시 받도록 하고, 겹치지 않는 경우에는 제 2 과정으로 진행하도록 하는 제 1-1 과정을 추가로 포함하는 것을 특징으로 하는 단면보기 제공 방법.
  3. 제 1 항에 있어서, 상기 제 2 과정에서 화면상에의 투영은, 상기 3차원 삼각형 데이터의 각 꼭지점을 다음의 수학식, 즉,
    벡터 P = Pt3d - Org (단, 여기에서, Pt3d는 절대좌표를 기준으로 한 상기 3차원 삼각형 데이터의 좌표값을, Org는 기준점을, 벡터 P는 기준점인 Org를 기준으로 한 3차원 좌표값을 각각 의미함);
    Pt2d.x = P * nu (단, 여기에서, Pt2d.x는 벡터 P의 상기 화면에로의 투영된 상기 2차원 삼각형 데이터(Pt2d) 중 u축 방향 성분을 의미하고, nu는 상기 화면에서의 u축 방향 단위 벡터이고, * 는 벡터의 내적을 의미함);
    Pt2d.y = P * nv (단, 여기에서, Pt2d.y는 벡터 P의 상기 화면에로의 투영된 상기 2차원 삼각형 데이터(Pt2d) 중 v축 방향 성분을 의미하고, nv는 상기 화면에서의 v축 방향 단위 벡터를 의미함);
    에 의하여 2차원 삼각형 데이터로 변환하는 방식으로 이루어지는 것을 특징으로 하는 단면보기 제공 방법.
  4. 제 1 항에 있어서, 상기 제 4 과정은 폴리곤-매쉬(polygon mesh) 방법으로 수행하는 것을 특징으로 하는 단면보기 제공 방법.
  5. 제 1 항에 있어서, 상기 제 5 과정의 변환은 다음의 수학식, 즉,
    Pt3d1 = Org + pt2d.x ×nu + pt2d.y ×nv;
    plane_a[0] × x + plane_a[1] × y + plane_a[2] × z - plane_a[3] = 0(3차원 데이터가 존재했던 원래 평면을 정의함);
    Pt3d = Pt3d1 + t×Norm_Vec
    (단, 여기에서 t = (plane_a[3] - plane_a*Pt3d1)/(plane_a*Norm_Vec));
    에 의해 2차원 삼각형 데이터에 대응하는 각각의 3차원 삼각형 데이터를 계산하는 것을 특징으로 하는 단면보기 제공 방법.
KR10-2002-0007247A 2002-02-08 2002-02-08 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법 KR100433946B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2002-0007247A KR100433946B1 (ko) 2002-02-08 2002-02-08 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2002-0007247A KR100433946B1 (ko) 2002-02-08 2002-02-08 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법

Publications (2)

Publication Number Publication Date
KR20030067793A KR20030067793A (ko) 2003-08-19
KR100433946B1 true KR100433946B1 (ko) 2004-06-04

Family

ID=32221005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2002-0007247A KR100433946B1 (ko) 2002-02-08 2002-02-08 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법

Country Status (1)

Country Link
KR (1) KR100433946B1 (ko)

Also Published As

Publication number Publication date
KR20030067793A (ko) 2003-08-19

Similar Documents

Publication Publication Date Title
US6219070B1 (en) System and method for adjusting pixel parameters by subpixel positioning
US7289119B2 (en) Statistical rendering acceleration
US7239319B2 (en) Rendering outline fonts
US7408548B2 (en) Triangulating procedural geometric objects
US7027050B1 (en) 3D computer graphics processing apparatus and method
Jones The production of volume data from triangular meshes using voxelisation
US20030103049A1 (en) Cuts removal system for triangulated CAD models
JPH0727579B2 (ja) グラフィクス処理装置及び方法並びにピクセル・メモリ装置
US7098924B2 (en) Method and programmable device for triangle interpolation in homogeneous space
CN102722861A (zh) 一种基于cpu的图形渲染引擎及实现方法
JPH05266216A (ja) ボリュームレンダリングを行う方法及び装置
Purschke et al. Virtual reality-new methods for improving and accelerating the development process in vehicle styling and design
US9858708B2 (en) Convex polygon clipping during rendering
Wyvill et al. Polygonization of implicit surfaces with constructive solid geometry
JP4463597B2 (ja) 3次元描画モデル生成方法及びそのプログラム
US20050151735A1 (en) Method for determining the bounding voxelisation of a 3D polygon
Zhang et al. Efficient voxelization using projected optimal scanline
Lazarus et al. Metamorphosis of Cylinder‐like Objects
US6489966B1 (en) Graphic processing device
US8049753B2 (en) Computer graphics methods and systems for generating images with rounded corners
KR100433946B1 (ko) 캐드 시스템에서 3차원 데이터에 대한 다단계 단면보기제공 방법
Hou et al. Real-time Multi-perspective Rendering on Graphics Hardware.
JP2001134633A (ja) 電子図面ビューア
JP2005234787A (ja) Cgを用いた可視化手法
Chen et al. Computing characteristic views of quadric-surfaced solids

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120404

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20130408

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20150305

Year of fee payment: 12

LAPS Lapse due to unpaid annual fee