KR101188173B1 - 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법 - Google Patents

복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법 Download PDF

Info

Publication number
KR101188173B1
KR101188173B1 KR1020110007443A KR20110007443A KR101188173B1 KR 101188173 B1 KR101188173 B1 KR 101188173B1 KR 1020110007443 A KR1020110007443 A KR 1020110007443A KR 20110007443 A KR20110007443 A KR 20110007443A KR 101188173 B1 KR101188173 B1 KR 101188173B1
Authority
KR
South Korea
Prior art keywords
vertices
shell structure
simulation
plane
line segments
Prior art date
Application number
KR1020110007443A
Other languages
English (en)
Other versions
KR20120086162A (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 KR1020110007443A priority Critical patent/KR101188173B1/ko
Publication of KR20120086162A publication Critical patent/KR20120086162A/ko
Application granted granted Critical
Publication of KR101188173B1 publication Critical patent/KR101188173B1/ko

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/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
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Graphics (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Processing Or Creating Images (AREA)

Abstract

복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법이 개시된다. 본 발명에 따른 시뮬레이션 장치는 얇은 두께의 시뮬레이션 객체에 가해지는 외력에 의한 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 것이다. 쉘 생성부는 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 제1평면과 제2평면을 서로 연결하는 복수의 선분을 포함한다. 정점 이동부는 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 정점들에 대하여 제1선분 내지 제4선분의 길이가 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 단계적으로 적용하여 각각의 정점의 위치를 이동시킨다. 본 발명에 따르면, 얇은 두께의 시뮬레이션 객체를 컴퓨터 그래픽으로 표현하기 위하여 두께를 가지는 3차원의 쉘 구조를 사용함으로써 시뮬레이션 객체의 두께에 따른 형태 변화를 모두 고려하여 보다 사실적인 시뮬레이션이 가능하다.

Description

복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법{Apparatus and method for simulation based on double-layer shell configuration}
본 발명은 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법에 관한 것으로, 보다 상세하게는, 직물과 같이 얇은 두께의 쉘 구조를 시뮬레이션하기 위해 이중으로 된 프레임을 사용하는 장치 및 방법에 관한 것이다.
직물(cloth)의 시뮬레이션에 관한 연구는 비신장성(inextensible)의 쉘 구조에 초점을 맞추어 이루어져 왔으며, 따라서 평면에서 쉘 구조를 늘이거나 압축시키는 동작이 용이하지 않았다. 그러나 종이, 플라스틱 또는 금속과 같이 뻣뻣한 물질로 구성된 실제 쉘 구조는 평면 내에서의 강성(stiffness)뿐 아니라 구부러짐에 대한 높은 저항성을 가진다. 따라서 이러한 뻣뻣한 쉘에 대한 시뮬레이션은 원래의 형태 유지 및 외부 힘에 대한 탄력적인 반응을 포함한다.
얇은 쉘 구조의 구부러짐은 물질의 특성뿐 아니라 그 모양에 의존한다. 즉, 전체 크기에 대한 쉘 두께의 비는 평면 내 및 평면 외에서의 저항력을 결정한다. 쉘 구조는 보통 얇은 것으로 가정하기 때문에, 간소화를 위하여 쉘 구조의 시뮬레이션은 대부분 3차원 부피 모델보다 2차원의 다양체(manifold)를 기반으로 한다.
2차원 모델을 기반으로 한 기존의 쉘 시뮬레이션에서는 쉘의 두께를 고려하지 않기 때문에 쉘 구조의 구부러짐을 제어하기 위한 추가적인 힘 모델을 필요로 하였다. 또한 그에 의한 쉘의 구부러짐은 쉘 구조를 형성하는 각각의 에지(edge) 간의 각도를 조절함으로써 시뮬레이션되었다. 그러나 이와 같이 각도 기반의 추가적인 힘 모델을 사용하면 이를 계산하기 위한 수식이 필요하게 되고, 수식의 복잡도에 따라 연산량이 증가할 수 있다는 문제가 있다.
본 발명이 이루고자 하는 기술적 과제는, 두께를 가지는 쉘 구조를 구성하는 각각의 에지의 길이를 조절함으로써 외력에 대응하는 쉘 구조의 형태 변화를 시뮬레이션할 수 있는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법을 제공하는 데 있다.
본 발명이 이루고자 하는 다른 기술적 과제는, 두께를 가지는 쉘 구조를 구성하는 각각의 에지의 길이를 조절함으로써 외력에 대응하는 쉘 구조의 형태 변화를 시뮬레이션할 수 있는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는 데 있다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치는, 구부러지는 성질을 가지는 시뮬레이션 객체에 가해지는 외력에 의한 상기 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 것으로, 상기 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분을 포함하도록 하는 쉘 생성부; 및 상기 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 상기 정점들에 대하여 상기 제1평면 및 상기 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분의 길이가 상기 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 단계적으로 적용하여 상기 각각의 정점의 위치를 이동시키는 정점 이동부;를 구비한다.
상기의 기술적 과제를 달성하기 위한, 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법은, 구부러지는 성질을 가지는 시뮬레이션 객체에 가해지는 외력에 의한 상기 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 것으로, (a) 상기 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분을 포함하도록 하는 단계; 및 (b) 상기 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 상기 정점들에 대하여 상기 제1평면 및 상기 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분의 길이가 상기 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 적용하여 상기 각각의 정점의 위치를 이동시키는 단계;를 가지며, 상기 (b) 단계는 상기 정점들에 대하여 단계적으로 적용된다.
본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법에 의하면, 얇은 두께의 시뮬레이션 객체를 컴퓨터 그래픽으로 표현하기 위하여 두께를 가지는 3차원의 쉘 구조를 사용함으로써 시뮬레이션 객체의 두께에 따른 형태 변화를 모두 고려하여 보다 사실적인 시뮬레이션이 가능하다. 또한 쉘 구조를 구성하는 선분의 길이 조절만으로 시뮬레이션 객체의 구부러짐까지 표현할 수 있으므로 각도 조절을 위한 추가적인 연산을 필요로 하지 않는다.
도 1은 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치에 대한 바람직한 실시예의 구성을 도시한 블록도,
도 2는 2차원 다양체 형태의 쉘 구조를 도시한 도면,
도 3은 쉘 생성부에 의해 생성되는 3차원 쉘 구조를 도시한 도면,
도 4는 체심 입방 구조의 형태를 도시한 도면,
도 5는 서로 다른 쉘 구조를 사용하여 동일한 시뮬레이션 객체를 시뮬레이션한 결과를 나타낸 도면,
도 6은 구형 물체 위에 올려진 종이의 가장자리로부터 서서히 수분이 확산되는 과정을 시뮬레이션한 결과를 나타낸 도면,
도 7은 쉘 구조의 두께에 따른 시뮬레이션 객체의 형태 변화를 나타낸 도면,
도 8은 서로 다른 두께를 가지는 시뮬레이션 객체의 뒤틀림 현상을 시뮬레이션한 결과를 나타낸 도면, 그리고,
도 9는 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.
이하에서 첨부된 도면들을 참조하여 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법의 바람직한 실시예에 대해 상세하게 설명한다.
도 1은 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치에 대한 바람직한 실시예의 구성을 도시한 블록도이다.
도 1을 참조하면, 본 발명에 따른 시뮬레이션 장치는 직물 및 종이 등과 같은 얇은 두께의 시뮬레이션 객체에 가해지는 외력에 의한 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 것으로, 쉘 생성부(110), 정점 이동부(120) 및 제어부(130)를 구비한다. 쉘 생성부(110)는 시뮬레이션 객체의 움직임을 표현하기 위한 기반이 되는 3차원 쉘 구조를 생성하며, 정점 이동부(120)는 외력에 의한 시뮬레이션 객체의 형태 변화 및 이후 쉘 구조를 구성하는 각각의 선분의 길이가 정지 상태일 때의 길이로 되돌아가는 움직임을 시뮬레이션하기 위해 3차원 쉘 구조의 각 정점들을 이동시킨다.
구체적으로, 쉘 생성부(110)는 상기 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 제1평면과 제2평면을 서로 연결하는 복수의 선분을 포함한다.
직물 및 종이와 같은 얇은 시뮬레이션 객체의 움직임을 표현하기 위하여 다양체 형태의 쉘 구조가 사용됨을 앞에서 설명한 바 있다. 쉘 구조를 사용하는 기존의 시뮬레이션 방식에서는 쉘 구조의 두께를 고려함 없이 2차원의 쉘 구조를 구성하는 각 선분의 길이 및 각도를 조절함으로써 시뮬레이션을 수행하는 것이 일반적이었다. 도 2는 2차원 다양체 형태의 쉘 구조를 도시한 도면으로, 쉘 구조를 구성하는 각각의 사각형의 꼭지점과 중점이 복수의 선분에 의해 서로 연결되어 있다. 도 2에 도시된 것과 같은 쉘 구조를 사용하여 시뮬레이션 객체의 구부러짐을 표현하기 위해서는 평면 내에서의 각 선분의 길이 조절만으로는 한계가 있으며, 각도 조절을 위한 추가적인 연산에 의해 평면 외 움직임을 표현하게 된다.
그러나 본 발명에 다른 시뮬레이션 장치의 쉘 생성부(110)는 두께를 가진 쉘 구조를 생성함으로써 각각의 선분의 길이 조절만으로 시뮬레이션 객체의 모든 움직임을 표현할 수 있도록 하였다. 즉, 도 2에 도시된 것과 같은 2차원 쉘 구조가 놓인 평면에 평행하도록 격자 형태의 2차원 쉘 구조를 추가함으로써 복층의 쉘 구조를 형성하고, 두 층의 쉘 구조를 서로 연결하는 선분을 더 추가하여 하나의 3차원 쉘 구조가 되도록 한다.
도 3은 쉘 생성부(110)에 의해 생성되는 3차원 쉘 구조를 도시한 도면이다. 도 3의 (a)에 도시된 바와 같이 쉘 생성부(110)에 의해 생성되는 쉘 구조는 네 가지의 선분으로 이루어져 있으며, 각각의 선분들은 쉘 구조의 각 정점을 서로 연결한다. 도 3의 (a)에 도시된 각 선분들을 위로부터 차례로 제2선분, 제3선분, 제1선분 및 제4선분이라 한다.
도 3의 (b)는 제1선분 내지 제4선분에 의해 형성된 3차원 쉘 구조를 도시한 도면으로, 제1선분과 제4선분이 동일한 평면, 즉 제1평면에 배치되며, 제2선분은 제1평면과 평행한 제2평면에 배치되고, 제3선분은 제1평면과 제2평면을 서로 연결함으로써 쉘 구조의 두께에 대응하도록 배치된다. 여기서 제4선분은 제1선분들에 의해 형성된 사각형에서 대각 방향에 위치하는 정점들을 서로 연결하며, 시뮬레이션 과정에서 각각의 사각형의 형태가 일정하게 유지되도록 지탱하는 역할을 수행한다.
도 3의 (b)와 같이 쉘 생성부(110)에 의해 생성된 쉘 구조의 구부러짐은 이전에 사용되던 방법과 같이 선분들의 각도를 조절하는 대신 3차원 쉘 구조를 구성하는 선분들의 길이를 조절함으로써 표현될 수 있으며, 쉘 구조의 두께는 상하층을 서로 연결하는 제3선분의 길이에 의해 결정된다.
이러한 3차원 쉘 구조는 체심 입방 구조(body centered cubic : BCC)를 기반으로 하여 생성된 것으로, 도 4에 체심 입방 구조의 형태가 도시되어 있다. BCC 구조에서 각 육면체의 중심은 복수의 선분에 의해 8개의 꼭지점과 연결되며, 본 발명에 따른 시뮬레이션 장치에 의해 사용되는 3차원 쉘 구조는 BCC 구조의 한 층을 다시 두 층으로 분할함으로써 생성되는 것이다.
또한 도 3의 (c)는 쉘 생성부(110)에 의해 생성된 3차원 쉘 구조를 하나의 평면에 투영시킨 형태를 도시한 도면으로, 쉘 구조를 위에서 내려다본 형태이며, 도 2에 도시된 2차원 다양체 기반의 쉘 구조와 유사한 형태를 보인다. 즉, 본 발명에 따른 시뮬레이션 장치는 기존의 2차원 쉘 구조와 유사하면서도 두께를 가지는 3차원 쉘 구조를 사용하여 시뮬레이션 객체의 움직임을 표현함으로써 시뮬레이션 과정을 간소화할 수 있다.
정점 이동부(120)는 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 정점들에 대하여 제1선분 내지 제4선분의 길이가 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 단계적으로 적용하여 각각의 정점의 위치를 이동시킨다.
본 발명에 따른 시뮬레이션 장치에 의하여 시뮬레이션 객체의 평면 내 및 평면 외에서의 뻣뻣한 정도를 시뮬레이션하는 것은 앞에서 설명한 쉘 구조를 구성하는 각각의 선분에 대하여 발생하는 변형에 의존하기 때문에 적절한 변형 제약 기법을 도입하는 것이 중요하다. 이를 위해서 본 발명에 따른 시뮬레이션 장치는 제한된 라그랑지안 역학(constrained Lagrangian mechanics)을 기반으로 한 고속 프로젝션 기법(fast projection method)을 도입하여 3차원 쉘 구조를 구성하는 각각의 정점을 이동시킨다.
고속 프로젝션 기법은 2007년 'Efficient Simulation of Inextensible Cloth' 논문을 통하여 Goldenthal 등에 의해 제안된 기법으로, 이미 공지된 기법이므로 상세한 설명은 생략하며, 이하에서 고속 프로젝션 기법에 관하여 간략하게 설명하기로 한다.
쉘 생성부(110)에 의해 생성된 3차원 쉘 구조가 n개의 정점과 m개의 선분으로 이루어져 있다고 할 때, 각각의 정점의 위치, 이동 속도 및 질량에 관한 정보는 쉘 구조가 생성됨과 동시에 설정되며, n×1 벡터인 x, v 및 n×n 대각 행렬인 M에 각각 저장된다. 쉘 구조를 구성하는 제1선분 내지 제4선분은 각 선분의 양 끝점에 대응하는 두 개의 정점에 의해 정의되며, 각 선분의 초기 길이 l은 구속 동역학(contsraint dynamics)에 의해 보존된다.
쉘 구조를 구성하는 복수의 선분들 중 하나의 두 끝점을 xa 및 xb라 할 때, 제약조건 및 그의 그라디언트는 다음의 수학식 1 및 수학식 2와 같이 표현된다.
Figure 112011006114547-pat00001
Figure 112011006114547-pat00002
시뮬레이션 공간 내에서 시뮬레이션 객체의 움직임을 표현하기 위하여 먼저 쉘 구조를 구성하는 각각의 정점에 중력 및 위치 에너지 기반의 힘과 같은 외력을 도입한다. 또한 도입된 외력에 의해 변화된 정점들의 위치를 초기 위치 x0라 한다. 정점 이동부(120)는 정점들의 초기 위치 x0로부터 시작하여 쉘 구조를 구성하는 모든 선분에 대해 길이 보존을 강제하기 위한 구속 동역학을 풀어 정점들을 이동시키게 된다. 이때 앞에서 언급한 고속 프로젝션 기법이 사용된다.
정점 이동부(120)는 고속 프로젝션 기법에 의해 주어진 초기 위치 x0에 대응하는 정점들을 점진적으로 다양체 상의 인접한 위치에 투영시키며, 이러한 과정은 제약조건 C(x)=0을 만족하는 다양체 상의 위치와의 거리가 일정한 임계값 내에 도달할 때까지 단계적으로 수행된다.
프로젝션 단계 j에서 xj 위치의 정점들을 xj +1 위치로 이동시키기 위해 다음의 수학식 3과 같은 목적함수(objective function)를 최소화하는 자유변수인 위치 변위(positional displacement)와 라그랑지안 승수(Lagrangian Multiplier)를 탐색한다.
Figure 112011006114547-pat00003
여기서, δxj +1은 위치 변위, δλj+1은 라그랑지안 승수를 나타내며, h는 시간간격을 나타낸다.
뉴튼의 근사법에 의하여 수학식 3의 목적함수를 δxj +1 및 δλj+1에 대하여 미분하고 제약조건 C(xj +1)을 암시적 적분(implicit integration)하면, 다음의 수학식 4 및 수학식 5가 얻어진다.
Figure 112011006114547-pat00004
Figure 112011006114547-pat00005
위 수학식 4와 수학식 5는 다음 수학식 6의 선형 시스템을 구성한다.
Figure 112011006114547-pat00006
이러한 방정식은 복소 구배법(conjugate gradient method)에 의해 해결될 수 있다. 변위 δxj +1은 수학식 6과 수학식 4의 방정식을 차례로 풀어 얻어지고, 각각의 프로젝션 단계 j에서 위치 xj +1로 통합된다. 최종적으로, 쉘 구조를 구성하는 정점들의 위치는 제약조건을 만족하는 다양체를 형성하도록 수렴하게 된다.
정리하면, 쉘 생성부(110)에 의해 생성된 3차원 쉘 구조를 구성하는 정점들은 외력에 의해 제약조건에서 벗어난 초기위치 x0로 이동하며, 정점 이동부(120)는 이러한 초기위치로부터 반복적인 고속 프로젝션 기법을 적용하여 제약조건을 만족하는 위치로 정점들을 이동시킨다. 즉, 정점 이동부(120)는 단계 j에서의 정점들의 위치 xj를 xj +1로 이동시키기 위해 먼저 수학식 6의 선형 시스템을 δλj+1에 대하여 풀고, 다음으로 수학식 4를 풀어 변위량 δxj +1을 산출한다. xj +1은 이전 위치 xj에 변위량 δxj +1을 합산함으로써 얻어진다. 정점 이동부(120)는 정점들의 위치가 제약조건을 만족하는 위치로부터 떨어져 있는 정도가 임계값 이하가 될 때까지 정점들에 대한 고속 프로젝션 기법을 반복 수행한다.
한편, 쉘 생성부(110)에 의해 생성된 3차원 쉘 구조는 앞에서 설명한 바와 같이 제1선분 내지 제4선분으로 구성되어 있으며, 기존의 2차원 쉘 구조에 비하여 선분의 개수가 증가하였다. 따라서 외력에 의해 시뮬레이션 객체의 형태 변화를 일으킨 후 각각의 선분이 초기 상태의 길이로 수렴하도록 하기가 어려울 수 있다. 위 수학식 6의 해를 복소 구배법으로 구하기 위해서는 시스템의 행렬이 양확정(positive definite) 조건을 만족하여야 하지만, 정점에 비하여 선분을 지나치게 제약하게 되면 선형 시스템이 더 이상 조건을 만족하지 않아 해를 구할 수 없고, 시뮬레이션이 발산하게 된다.
정점 이동부(120)는 이를 보완하기 위하여 쉘 구조를 구성하는 선분들에 의해 연결된 정점들의 위치를 한꺼번에 이동시키는 대신 정점들을 복수의 그룹으로 분류하여 각각의 그룹에 대하여 순차적으로 고속 프로젝션 기법을 적용한다.
이하에서는 설명의 편의를 위하여 앞에서 설명한 고속 프로젝션 기법에 의하여 정점들의 위치를 제약조건을 만족시키는 위치로 이동시키는 프로젝션 함수를 정의하고, 프로젝션 함수에 의한 정점들의 위치 이동을 다음의 수학식 7과 같이 표현한다.
Figure 112011006114547-pat00007
정점 이동부(120)는 수학식 7과 같은 프로젝션 함수를 정점들에 대하여 반복적으로 적용함으로써 제약조건 C(x)=0을 만족시키는 지점을 향하여 정점들의 위치를 이동시킨다. 이때 앞에서 설명한 바와 같이 정점들을 연결하는 각 선분의 길이가 정상적으로 수렴할 수 있도록 제1선분 내지 제4선분에 의해 연결된 정점들을 각각 별도의 그룹으로 정의하여 다음의 수학식 8과 같이 순차적으로 프로젝션 함수를 적용한다.
Figure 112011006114547-pat00008
여기서, xj k는 j번째 고속 프로젝션 단계에서 k번째 그룹에 속하는 정점들의 위치를 나타낸 것이다. 또한 수학식 8에 나타난 바와 같이 서로 다른 그룹에 속하는 정점들에 대하여는 서로 다른 제약조건이 적용되며, 이전 그룹에 속하는 정점들에 대하여 산출된 위치 xj k는 다음 그룹에서 정점들의 위치를 이동시키기 위한 제약조건 Ck +1을 결정하는 데 반영된다.
수학식 8을 참조하면, 각각의 고속 프로젝션 단계마다 정점들이 분류된 그룹의 개수에 해당하는 k번의 고속 프로젝션이 수행된다. 바람직하게는, 정점들을 제1선분 내지 제4선분에 대응하는 네 개의 그룹으로 분류하고, 제1선분 내지 제4선분에 의해 각각 연결된 정점들에 대하여 순차적으로 고속 프로젝션을 수행할 수 있다. 이때 각각의 그룹에 대한 고속 프로젝션 순서는 쉘 생성부(110)에 의해 생성된 3차원 쉘 구조에서 가장 위쪽에 위치한 선분들로부터 차례로 결정될 수 있으며, 예를 들면, 제2평면에 위치하는 제2선분, 제2평면과 제1평면을 서로 연결하는 제3선분, 제1평면에 위치하는 제1선분, 그리고 제1선분에 의해 형성된 사각형들의 형태를 유지하는 제4선분의 순서로 고속 프로젝션이 수행될 수 있다.
이상에서 설명한 바와 같이 3차원 쉘 구조를 구성하는 정점들을 k개의 그룹으로 분류하여 각각의 고속 프로젝션 단계에서 각 그룹에 대한 프로젝션 과정을 순차적으로 수행하는 경우, 이는 다음의 수학식 9와 같이 k개의 개별 선형 시스템을 푸는 것과 동일하게 나타낼 수 있다.
Figure 112011006114547-pat00009
여기서, λ는 각각의 그룹에 대하여 산출되는 라그랑지안 승수이며, A0 및 b0는 j번째 고속 프로젝션 단계의 개시 시점에서 이미 그 값이 결정되어 있어 순차적으로 다음 그룹에 대한 고속 프로젝션 수행시에 반영된다.
한편, 신축성 있는 객체의 강성은 물질의 특성에 따라 달라지는데, 이상에서 설명한 고속 프로젝션 과정은 정점들의 위치에 의존하기 때문에 구속 동역학에 의해 물질의 뻣뻣한 정도를 제어하는 데에는 한계가 있다. 따라서 선택된 선분들의 제약조건을 완화함으로써 시뮬레이션 과정에 제어 가능성을 부여할 수 있다. 이를 위하여 본 발명에 따른 시뮬레이션 장치는 제어부(130)를 더 구비한다.
제어부(130)는 선택된 선분들에 대하여 설정된 변형률 제약을 완화하여 시뮬레이션 객체의 형태에 더욱 미세한 주름이 나타나도록 할 수도 있으며, 바람직하게는, 3차원 쉘 구조를 구성하는 복수의 선분들 중에서 선택된 선분들에 의해 연결된 정점들에 대하여 프로젝션 함수가 적용될 때의 제약조건에 가중치를 부여함으로써 정점들의 위치가 이동하는 정도, 즉 각 선분의 길이가 정지 상태의 길이로 수렴하는 속도를 제어할 수 있다. 가중치를 부여하는 데에는 물리 기반의 시뮬레이션이 사용될 수 있다.
쉘 구조를 구성하는 정점들에 대하여 수행되는 고속 프로젝션의 한 단계는 뉴튼의 근사법에서의 ∇C(x)δx=-C(x)에 대응한다. 정점들의 위치 x는 변형률이 0이며 제약조건 C(x)=0을 만족하는 위치를 향해 이동한다. 제어부(130)는 다음의 수학식 10과 같이 가중치를 사용함으로써 의도적으로 이러한 이동 속도를 감소시킬 수 있다.
Figure 112011006114547-pat00010
수학식 10에서, 가중치 w의 값이 1이면 수렴 속도에 어떠한 변화도 없는 것을 의미하며, 가중치 w의 값이 0에 근접할수록 수렴 속도는 점차 느려져 결과적으로 정점들의 이동이 멈추게 된다. 이러한 경우에는 제약 조건이 아무런 의미를 가지지 않는다. 반대로 가중치 w의 값이 1보다 크면 수렴 속도가 증가하게 되나, 이러한 경우 시뮬레이션이 의도한 방향에서 벗어날, 즉 발산할 위험이 있다.
제어부(130)는 이러한 가중치를 제1선분 내지 제4선분에 의해 연결된 정점들에 대하여 각각 다르게 설정할 수도 있으며, 쉘 구조를 구성하는 모든 정점들에 대하여 개별적으로 가중치를 설정할 수도 있다. 이러한 가중치 설정 방식은 시뮬레이션 객체가 비등방형인 경우에 유용하게 사용될 수 있다. 즉, 시뮬레이션 객체의 특정 부분이 쉽게 구부러지는 경우에는 해당 부분에 대응하는 쉘 구조의 선분들에 대하여 낮은 가중치를 할당함으로써 원하는 형태 변화를 시뮬레이션할 수 있다.
또한 각각의 정점들에 대하여 설정되는 가중치는 사용자로부터 직접 입력받을 수도 있다. 즉, 사용자는 시뮬레이션 객체의 각 부분에서 좀더 쉽게 구부러지는 부분과 뻣뻣하게 유지되는 부분을 설정하여 그에 대응하는 가중치의 값이 결정되도록 할 수 있다.
도 5는 서로 다른 쉘 구조를 사용하여 동일한 시뮬레이션 객체를 시뮬레이션한 결과를 나타낸 도면이다. 도 5의 (a)는 본 발명에 따른 쉘 생성부(110)에 의해 생성되는 3차원 쉘 구조를 사용하여 시뮬레이션 객체가 구형 물체 상에 걸쳐진 형태를 시뮬레이션한 결과이며, (b)는 단순한 2차원 격자 형태의 쉘 구조를 사용한 시뮬레이션 결과, (c)는 도 2에서 설명한 2차원 쉘 구조를 사용한 시뮬레이션 결과, 그리고 (d)는 시뮬레이션 객체가 비등방형인 경우를 시뮬레이션한 결과이다.
도 5의 (a) 내지 (c)를 서로 대비하여 보면, 본 발명에 의해 제안된 바에 따라 3차원 쉘 구조를 사용하여 시뮬레이션 객체의 형태 변화를 시뮬레이션하는 경우에 미세한 시뮬레이션 객체의 구부러짐이 잘 표현됨을 확인할 수 있다. 또한 시뮬레이션 객체의 각 부분이 외력에 대하여 서로 다른 정도의 구부러짐을 보이는 경우에는 앞에서 설명한 가중치를 사용함으로써 도 5의 (d)와 같은 결과를 달성할 수 있다.
종이가 물에 젖는 형태를 시뮬레이션하는 데에도 이상에서 설명한 가중치 할당 기법이 적용될 수 있다. 도 6은 구형 물체 위에 올려진 종이의 가장자리로부터 서서히 수분이 확산되는 과정을 시뮬레이션한 결과를 나타낸 도면이다. 도 6의 (a) 내지 (d)에서 사각형 내의 청색으로 표시된 영역이 종이의 젖은 부분을 나타낸다. 도 6의 (a)로부터 (d)의 순서로 순차적인 시뮬레이션이 수행되며, 제어부(130)는 종이가 젖어있는 부분에 대응하는 쉘 구조의 선분들에 부여되는 가중치를 지속적으로 변화시킴으로써 종이의 젖은 부분은 쉽게 구부러지고, 아직 젖지 않은 부분은 뻣뻣한 상태를 유지하도록 할 수 있다.
이상에서 설명한 바와 같이 시뮬레이션 객체의 형태 변화는 시뮬레이션 객체의 두께 및 물질의 특성에 영향을 받는다.
도 7은 쉘 구조의 두께에 따른 시뮬레이션 객체의 형태 변화를 나타낸 도면이다. 시뮬레이션 객체는 직물이며, 두 개의 모서리가 고정된 상태로 구(sphere) 상에 걸쳐진 형태를 시뮬레이션한 결과이다. 시뮬레이션 객체의 두께는 도 7의 (a)에서 (d)로 갈수록 점차 증가하며, 도 7의 (a) 내지 (d)의 각 시뮬레이션 결과를 통하여 시뮬레이션 객체의 두께가 형태 변화에 미치는 영향을 확인할 수 있다. 따라서 본 발명에서와 같이 두께를 가진 3차원 쉘 구조를 시뮬레이션에 사용함으로써 서로 다른 두께를 가지는 시뮬레이션 객체 간의 상이한 형태 변화를 사실적으로 시뮬레이션할 수 있다.
도 8은 서로 다른 두께를 가지는 시뮬레이션 객체의 뒤틀림 현상을 시뮬레이션한 결과를 나타낸 도면이다. 도 8에서 시뮬레이션 객체는 서로 다른 두께를 가지는 종이이며, (a)에서 (d)까지 순차적으로 시뮬레이션 객체의 두께는 너비의 0.01%, 0.02%, 0.05%, 그리고 0.1%이다. 도 8을 참조하면 시뮬레이션 객체가 얇을수록 미세한 주름이 많이 나타난다는 것을 확인할 수 있다.
도 9는 본 발명에 따른 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법에 대한 바람직한 실시예의 수행과정을 도시한 흐름도이다.
도 9를 참조하면, 쉘 생성부는 시뮬레이션 공간 내에 위치하는 시뮬레이션 객체에 대응하는 3차원 쉘 구조를 생성한다(S910). 이때 3차원 쉘 구조는 절반 두께의 BCC 구조에 대응하며, 네 가지 종류의 선분으로 이루어짐을 앞에서 설명한 방 있다.
시뮬레이션 객체에 작용하는 외력에 의하여 쉘 구조를 구성하는 정점들의 위치가 변화하면(S920), 정점 이동부(120)는 정점들의 위치를 제약조건 C(x)=0을 만족하는 위치로 이동시키기 위해 고속 프로젝션 기법을 사용한다(S930). 이때 고속 프로젝션 기법은 단계적으로 적용되며, 각 단계마다 정점들을 복수의 그룹으로 분류하여 각 그룹에 대하여 순차적으로 프로젝션 함수가 적용된다. 이러한 과정에 대하여는 앞에서 설명하였으므로 상세한 설명은 생략한다. 고속 프로젝션 기법의 적용은 현재 정점들의 위치와 제약조건을 만족하는 정점들의 위치 차이가 일정한 임계값보다 크게 유지되는 동안 반복적으로 수행된다(S940).
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
이상에서 본 발명의 바람직한 실시예에 대해 도시하고 설명하였으나, 본 발명은 상술한 특정의 바람직한 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 누구든지 다양한 변형 실시가 가능한 것은 물론이고, 그와 같은 변경은 청구범위 기재의 범위 내에 있게 된다.
110 - 쉘 생성부
120 - 정점 이동부
130 - 제어부

Claims (15)

  1. 구부러지는 성질을 가지는 시뮬레이션 객체에 가해지는 외력에 의한 상기 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 시뮬레이션 장치에 있어서,
    상기 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분을 포함하도록 하는 쉘 생성부; 및
    상기 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 상기 정점들에 대하여 상기 제1평면 및 상기 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분의 길이가 상기 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 단계적으로 적용하여 상기 각각의 정점의 위치를 이동시키는 정점 이동부;를 포함하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  2. 제 1항에 있어서,
    상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 제1평면에 배치되는 복수의 제1선분, 상기 제1선분들에 의해 형성되는 사각형들 각각의 중점에 대응하는 복수의 정점을 연결하며 상기 제2평면에 위치하는 복수의 제2선분, 상기 제1선분들에 의해 형성되는 각각의 사각형의 꼭지점에 대응하는 복수의 정점과 상기 제2선분들에 의해 형성되는 각각의 사각형의 꼭지점에 대응하는 복수의 정점을 연결하는 복수의 제3선분 및 상기 제1선분들에 의해 형성되는 각각의 사각형에서 대각 방향에 위치하는 정점들을 서로 연결하며 상기 제1평면에 위치하는 복수의 제4선분으로 구성된 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  3. 제 1항 또는 제 2항에 있어서,
    상기 정점 이동부는 상기 정점들을 복수의 그룹으로 분류하고, 상기 프로젝션 함수가 적용되는 각 단계마다 상기 복수의 그룹 각각에 속하는 정점들에 대하여 순차적으로 상기 프로젝션 함수를 적용하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  4. 제 3항에 있어서,
    상기 정점 이동부는 상기 정점들을 상기 제1선분 내지 상기 제4선분에 대응하는 네 개의 그룹으로 분류하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  5. 제 1항 또는 제 2항에 있어서,
    상기 각각의 정점에 적용되는 상기 프로젝션 함수에 상기 정점들의 위치가 이동하는 속도를 제어하기 위한 가중치를 부여하는 제어부를 더 포함하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  6. 제 5항에 있어서,
    상기 제어부는 상기 프로젝션 함수가 적용되는 각 단계마다 상기 가중치의 값을 다르게 설정하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  7. 제 5항에 있어서,
    상기 제어부는 상기 쉘 구조를 구성하는 각각의 선분에 대응하는 정점들에 대하여 개별적으로 상기 가중치의 값을 설정하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치.
  8. 구부러지는 성질을 가지는 시뮬레이션 객체에 가해지는 외력에 의한 상기 시뮬레이션 객체의 형태 변화를 3차원 시뮬레이션 공간에서 컴퓨터 그래픽으로 표현하기 위한 시뮬레이션 방법에 있어서,
    (a) 상기 시뮬레이션 객체에 대응하는 쉘 구조를 생성하되, 상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 시뮬레이션 공간에서 서로 평행한 제1평면 및 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분을 포함하도록 하는 단계; 및
    (b) 상기 시뮬레이션 객체에 작용하는 외력에 의해 위치가 변화된 상기 정점들에 대하여 상기 제1평면 및 상기 제2평면에 각각 배치되는 복수의 선분 및 상기 제1평면과 상기 제2평면을 서로 연결하는 복수의 선분의 길이가 상기 쉘 구조가 생성될 때의 길이로 수렴하도록 하는 프로젝션 함수를 적용하여 상기 각각의 정점의 위치를 이동시키는 단계;를 포함하며,
    상기 (b) 단계는 상기 정점들에 대하여 단계적으로 적용되는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  9. 제 8항에 있어서,
    상기 쉘 구조는 격자 형태로 배치된 복수의 정점을 연결하며 상기 제1평면에 배치되는 복수의 제1선분, 상기 제1선분들에 의해 형성되는 사각형들 각각의 중점에 대응하는 복수의 정점을 연결하며 상기 제2평면에 위치하는 복수의 제2선분, 상기 제1선분들에 의해 형성되는 각각의 사각형의 꼭지점에 대응하는 복수의 정점과 상기 제2선분들에 의해 형성되는 각각의 사각형의 꼭지점에 대응하는 복수의 정점을 연결하는 복수의 제3선분 및 상기 제1선분들에 의해 형성되는 각각의 사각형에서 대각 방향에 위치하는 정점들을 서로 연결하며 상기 제1평면에 위치하는 복수의 제4선분으로 구성된 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  10. 제 8항 또는 제 9항에 있어서,
    상기 정점들이 복수의 그룹으로 분류되며,
    상기 (b) 단계가 수행될 때마다 상기 복수의 그룹 각각에 속하는 정점들에 대하여 순차적으로 상기 프로젝션 함수가 적용되는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  11. 제 10항에 있어서,
    상기 정점들이 상기 제1선분 내지 상기 제4선분에 대응하는 네 개의 그룹으로 분류되는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  12. 제 8항 또는 제 9항에 있어서,
    (c) 상기 각각의 정점에 적용되는 상기 프로젝션 함수에 상기 정점들의 위치가 이동하는 속도를 제어하기 위한 가중치를 부여하는 단계를 더 포함하며,
    상기 (c) 단계는 상기 (b) 단계와 동시에 수행되는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  13. 제 12항에 있어서,
    상기 (c) 단계에서, 상기 프로젝션 함수가 적용되는 각 단계마다 상기 가중치의 값을 다르게 설정하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  14. 제 12항에 있어서,
    상기 (c) 단계에서, 상기 쉘 구조를 구성하는 각각의 선분에 대응하는 정점들에 대하여 개별적으로 상기 가중치의 값을 설정하는 것을 특징으로 하는 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법.
  15. 제 8항 또는 제 9항에 기재된 복층 쉘 구조를 기반으로 하는 시뮬레이션 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020110007443A 2011-01-25 2011-01-25 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법 KR101188173B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110007443A KR101188173B1 (ko) 2011-01-25 2011-01-25 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110007443A KR101188173B1 (ko) 2011-01-25 2011-01-25 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20120086162A KR20120086162A (ko) 2012-08-02
KR101188173B1 true KR101188173B1 (ko) 2012-10-05

Family

ID=46872077

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110007443A KR101188173B1 (ko) 2011-01-25 2011-01-25 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법

Country Status (1)

Country Link
KR (1) KR101188173B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102492696B1 (ko) * 2021-10-06 2023-01-31 주식회사 플럭시티 그리드 기반의 공간 속성 부여를 통한 가시화 디지털 트윈 에너지 관리 장치 및 방법

Also Published As

Publication number Publication date
KR20120086162A (ko) 2012-08-02

Similar Documents

Publication Publication Date Title
EP3381017B1 (en) Face reconstruction from a learned embedding
CN101473351B (zh) 肌肉与骨骼形状蒙皮
US9251618B2 (en) Skin and flesh simulation using finite elements, biphasic materials, and rest state retargeting
CN106575445B (zh) 毛皮虚拟化身动画
US20150242546A1 (en) Method of Cloth Simulation using Constrainable Multigrid
CN104504761B (zh) 一种控制3d模型旋转的方法及装置
JP7334125B2 (ja) 任意座標系のメッシュにおける物理的流体のコンピュータシミュレーション
US11461967B2 (en) Method and apparatus for simulating clothes
US20050197731A1 (en) Data structure for cloth animation, and apparatus and method for rendering three-dimensional graphics data using the data structure
Stanton et al. Self-refining games using player analytics
CN114241473A (zh) 估计织物物性参数的方法及装置
CN104463934B (zh) 一种“质点‑弹簧”系统驱动的点集模型动画自动生成方法
CN110176063B (zh) 一种基于人体拉普拉斯变形的服装变形方法
KR101188173B1 (ko) 복층 쉘 구조를 기반으로 하는 시뮬레이션 장치 및 방법
KR20130078102A (ko) 유체 시뮬레이션 방법
JP6297955B2 (ja) 設計支援装置、設計支援方法及びプログラム
TWI355619B (en) System, method and recording medium for multi-leve
KR20190028634A (ko) 디지털 크리쳐의 제작 방법 및 전자장치
CN110717297B (zh) 织物仿真模型的建立方法、系统、存储介质及电子设备
Chen et al. Cloth compression using local cylindrical coordinates
Choi et al. Estimating material properties of deformable objects by considering global object behavior in video streams
Tsiknis Better cloth through unbiased strain limiting and physics-aware subdivision
JP2001195606A (ja) 物体の荷重伝達変位を表示する方法
Taylor et al. Innovative potential of 3D software applications in fashion and textile design
JP4726355B2 (ja) 画像処理装置および画像処理プログラム

Legal Events

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

Payment date: 20151026

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160615

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee