KR102633553B1 - 의상 시뮬레이션 방법 및 장치 - Google Patents

의상 시뮬레이션 방법 및 장치 Download PDF

Info

Publication number
KR102633553B1
KR102633553B1 KR1020210061621A KR20210061621A KR102633553B1 KR 102633553 B1 KR102633553 B1 KR 102633553B1 KR 1020210061621 A KR1020210061621 A KR 1020210061621A KR 20210061621 A KR20210061621 A KR 20210061621A KR 102633553 B1 KR102633553 B1 KR 102633553B1
Authority
KR
South Korea
Prior art keywords
line
sewing
dimensional
pattern
input
Prior art date
Application number
KR1020210061621A
Other languages
English (en)
Other versions
KR20220153954A (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 KR1020210061621A priority Critical patent/KR102633553B1/ko
Priority to US17/668,726 priority patent/US20220361613A1/en
Priority to PCT/KR2022/002317 priority patent/WO2022239937A1/en
Priority to EP22172754.8A priority patent/EP4089562A1/en
Priority to CN202210510140.8A priority patent/CN115345985A/zh
Publication of KR20220153954A publication Critical patent/KR20220153954A/ko
Application granted granted Critical
Publication of KR102633553B1 publication Critical patent/KR102633553B1/ko

Links

Images

Classifications

    • AHUMAN NECESSITIES
    • A41WEARING APPAREL
    • A41HAPPLIANCES OR METHODS FOR MAKING CLOTHES, e.g. FOR DRESS-MAKING OR FOR TAILORING, NOT OTHERWISE PROVIDED FOR
    • A41H3/00Patterns for cutting-out; Methods of drafting or marking-out such patterns, e.g. on the cloth
    • A41H3/007Methods of drafting or marking-out patterns using computers
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • 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
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/80Creating or modifying a manually drawn or painted image using a manual input device, e.g. mouse, light pen, direction keys on keyboard
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/12Cloth
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Architecture (AREA)
  • Computer Graphics (AREA)
  • Human Computer Interaction (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Textile Engineering (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)

Abstract

일 실시예에 따른 의상 시뮬레이션 방법 및 장치는 3차원 의상을 표시하는 사용자 인터페이스를 통해, 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신하고, 3차원 의상에 대응하는 2차원 패턴에 포함된 복수의 라인들 중 스타일 라인에 대응하는 제1 라인을 식별하고, 입력에 기초하여 제1 라인을 변형하고, 제1 라인의 변형을 제1 라인과 연관된 후보 라인들에 전파함으로써, 2차원 패턴을 변형하며, 변형된 2차원 패턴에 기반한 시뮬레이션을 통해 스타일 라인이 변형된 3차원 의상을 사용자 인터페이스에 표시한다.

Description

의상 시뮬레이션 방법 및 장치{METHOD AND APPARATUS OF SIMULATING GARMENT}
실시예들은 의상 시뮬레이션 방법 및 장치에 관한 것이다.
의상(garment)은 사람이 착용한 경우에 3차원으로 보이지만, 실제로는 2차원의 패턴(pattern)에 따라 재단된 직물(fabric) 조각의 조합에 해당하므로 2차원에 가깝다. 의상의 재료가 되는 직물은 유연(flexible)하기 때문에 의상을 착용한 사람의 신체 모양이나 움직임에 따라 그 형태가 다양하게 변화될 수 있다.
예를 들어, 의상에 디자인적 요소를 반영하기 위해 다양한 형태의 절개선 및/또는 재봉선과 같은 스타일 라인들을 변형하고자 하는 경우, 변형된 라인들에 의해 영향을 받는 다른 패턴들의 라인들에도 변화가 반영되어야 한다. 하지만, 다른 패턴들의 라인들에 스타일 라인의 변화를 반영하는 것이 용이하지 않다.
전술한 배경기술은 발명자가 본원의 개시 내용을 도출하는 과정에서 보유하거나 습득한 것으로서, 반드시 본 출원 전에 일반 공중에 공개된 공지기술이라고 할 수는 없다.
일 실시예에 따르면, 의상의 3차원 형태를 유지하면서도 디자인적 요소를 변경하는 사용자 입력에 따라 2차원 패턴을 변형함으로써 스타일 라인이 변형된 3차원 의상을 표현할 수 있다.
일 실시예에 따르면, 3차원 의상이 표현되는 3차원 공간에서 사용자 인터페이스를 통해 입력된 스타일 라인의 변형을 전파하여 해당 의상을 구성하는 2차원 패턴들의 라인들을 변형함으로써 3차원 의상의 스타일 라인의 변형을 2차원 패턴들에 자연스럽게 반영할 수 있다.
일 실시예에 따르면, 의상에 대한 전문적인 지식이 없는 사용자라 하더라도 사용자 인터페이스를 통해 3차원 공간에 표현되는 3차원 의상의 스타일 라인을 변형시킴으로 용이하게 스타일 라인이 변형된 3차원 의상의 시뮬레이션 결과를 제공받을 수 있다.
일 실시예에 따르면, 의상 시뮬레이션 방법은 3차원 의상을 표시하는 사용자 인터페이스를 통해, 상기 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신하는 동작; 상기 3차원 의상에 대응하는 2차원 패턴에 포함된 복수의 라인들 중 상기 스타일 라인에 대응하는 제1 라인을 식별하는 동작; 상기 입력에 기초하여 상기 제1 라인을 변형하는 동작; 상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 2차원 패턴을 변형하는 동작; 및 상기 변형된 2차원 패턴 및 상기 변형된 2차원 패턴에 대응하여 상기 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력하는 동작을 포함한다.
상기 2차원 패턴을 변형하는 동작은 상기 3차원 의상의 형상이 실질적으로(substantially) 유지되도록, 상기 2차원 패턴을 변형하는 동작을 포함할 수 있다.
상기 후보 라인들은 상기 제1 라인을 포함하는 제1 패턴에 대칭되거나 또는 상기 제1 패턴이 복제된 제2 패턴에서 상기 제1 라인에 대응되는 제2 라인; 및 상기 제1 라인 및 상기 제2 라인 중 적어도 하나와 재봉에 의해 연결되는 적어도 하나의 제3 패턴의 재봉선 중 적어도 하나를 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 변형된 제1 라인 및 상기 제1 라인의 변형이 전파된 상기 후보 라인들을 포함하는 변형 라인 리스트를 생성하는 동작; 및 상기 변형 라인 리스트에 기초하여, 상기 2차원 패턴을 변형하는 동작을 포함할 수 있다.
상기 변형 라인 리스트를 생성하는 동작은 상기 변형된 제1 라인을 포함하는 변형 라인 리스트를 생성하는 동작; 상기 제1 라인의 변형을 전파하여 상기 후보 라인들을 변형하는 동작; 및 상기 변형된 후보 라인들에 대한 정보를 상기 변형 라인 리스트에 저장하는 동작을 포함할 수 있다.
상기 후보 라인들을 변형하는 동작은 상기 변형된 제1 라인과 연관하여 변형되는 상기 후보 라인들을 검색하는 동작을 포함할 수 있다.
상기 후보 라인들을 검색하는 동작은 상기 변형 라인 리스트에 저장된 라인들 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선을 검색하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 재봉선과 연결된 후보 라인들의 변형을 반영하여 상기 재봉선의 길이 또는 상기 재봉선을 포함하는 적어도 하나의 패턴의 면적을 변경하는 동작을 포함할 수 있다.
상기 후보 라인들을 검색하는 동작은 상기 제1 라인을 포함하는 제1 패턴에 대칭되거나 상기 제1 패턴이 복제된 제2 패턴에서 상기 제1 라인에 대응되는 제2 라인을 검색하는 동작을 포함할 수 있다.
상기 변형 라인 리스트를 생성하는 동작은 상기 입력에 의해 상기 제1 라인의 길이, 형태 및 곡률 중 적어도 하나가 변형되는지 여부를 기초로, 상기 변형 라인 리스트를 생성하는 동작을 포함할 수 있다.
상기 변형 라인 리스트를 생성하는 동작은 상기 입력이 상기 2차원 패턴들 중 적어도 하나의 제1 패턴의 꼭지점에 해당하는 경우, 상기 입력에 닿아 있는 두 개의 변형된 제1 라인들을 상기 변형 라인 리스트에 입력하는 동작; 및 상기 입력이 상기 꼭지점이 아닌 제1 라인 상의 일 지점에 해당하는 경우, 상기 변형된 제1 라인을 상기 변형 라인 리스트에 입력하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 변형 라인 리스트에 저장된 라인들 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선의 변경을 반영하여, 상기 변경된 재봉선을 포함하는 제3 패턴에 대칭되거나, 상기 제3 패턴이 복제된 제4 패턴에서 상기 재봉선에 대응되는 라인을 변경하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선의 끝과 연결되어 있고, 상기 입력이 상기 재봉선의 끝에 있는 재봉점과 재봉되는 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인 중 적어도 하나의 길이를 변경하는 동작을 포함할 수 있다.
상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인 중 적어도 하나의 길이를 변경하는 동작은 상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인이 상기 입력의 이동 방향과 나란한 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선의 길이 및 상기 재봉선과 연결된 적어도 하나의 라인의 길이를 변경하는 동작; 및 상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인이 상기 입력의 이동 방향과 서로 나란하지 않은 경우, 상기 재봉선의 길이를 변경하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선의 일단과 연결되어 있고, 상기 입력이 상기 재봉선의 양단 사이에 재봉된 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선의 끝에 있는 재봉점을 상기 재봉선 상에서 상기 재봉선의 길이 비율에 따라 일정 거리만큼 이동시키는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선이 아닌 다른 라인과 재봉되었거나, 상기 입력이 재봉되지 않았거나, 또는 상기 입력이 상기 재봉선의 양단 사이에서 움직이는 경우, 상기 재봉선의 길이를 변형하지 않고 그대로 유지하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선 상에 있는 재봉점이 상기 제1 라인과 재봉되고, 상기 재봉점과 연결된 적어도 하나의 라인이 상기 제1 라인 상의 점이 변화된 위치와 나란한 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉점과 연결된 적어도 하나의 라인의 길이를 변경하는 동작; 및 상기 재봉선 상에 있는 재봉점이 상기 제1 라인과 재봉되고, 상기 재봉점과 연결된 적어도 하나의 라인이 상기 제1 라인 상의 점의 변화된 위치와 나란하지 않은 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선을 포함하는 2차원 패턴 및 상기 재봉선과 연결된 적어도 하나의 라인을 포함하는 2차원 패턴 각각의 면적을 변경하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선 상의 끝점이 상기 제1 라인과 재봉되지 않는 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 제1 패턴 및 상기 제1 패턴과 재봉되는 패턴 각각의 내부 곡선을 변형하여 상기 제1 패턴 및 상기 제1 패턴과 재봉되는 패턴 각각의 면적을 변경하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력에 의해 상기 제1 라인의 길이가 변형되는 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형되는 경우, 상기 제1 라인을 포함하여 길이 변경이 발생하는 모든 라인들의 양 끝점들 중 움직이지 않는 끝점과 상기 라인들 상의 재봉점 간의 거리가 유지되도록 상기 재봉점의 위치를 변경하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력에 의해 상기 제1 라인의 길이가 감소되는 경우, 상기 입력에 가장 가까이 위치하는 재봉점을 상기 입력에 연결하는 동작을 포함할 수 있다.
상기 2차원 패턴을 변형하는 동작은 상기 입력에 의해 상기 제1 라인이 변형됨에 따라, 상기 후보 라인들과 재봉에 의해 연결되는 재봉선 상에 있는 재봉점이 이동되는 경우, 상기 재봉점을 상기 재봉점에 인접한 주변 재봉점 또는 직선점의 위치까지 이동시키는 동작을 포함할 수 있다.
상기 입력은 상기 제1 라인을 따라 이동되고, 상기 제1 라인에 직교하는 방향으로 변형되며, 상기 입력의 이동 거리는 미리 설정된 거리로 제한될 수 있다.
상기 제1 라인을 변형하는 동작은 상기 사용자 인터페이스를 통해 수신되는 상기 입력의 위치가 상기 2차원 패턴 중 어느 하나의 제1 패턴의 내부로 이동한 경우, 상기 이동된 상기 입력의 위치에 대응하는 2차원 좌표를 산출하는 동작; 상기 2차원 좌표를 기초로, 상기 입력의 2차원 위치 변화량을 산출하는 동작; 및 상기 2차원 위치 변화량만큼 상기 제1 패턴의 상기 제1 라인의 위치를 이동시키는 동작을 포함할 수 있다.
상기 제1 라인을 변형하는 동작은 상기 사용자 인터페이스를 통해 수신되는 상기 입력의 위치가 상기 2차원 패턴 중 어느 하나의 제1 패턴의 외부로 이동한 경우, 상기 이동된 상기 입력의 3차원 위치 이동값을 산출하는 동작; 상기 3차원 위치 이동값을 기초로, 상기 입력을 포함하는 메쉬의 다각형의 변환 매트릭스를 산출하는 동작; 상기 변환 매트릭스에 의해 상기 입력에 대응하는 2차원 위치량을 산출하는 동작; 및 상기 2차원 위치 변화량만큼 상기 제1 패턴의 상기 제1 라인의 위치를 이동시키는 동작을 포함할 수 있다.
상기 제1 라인을 변형하는 동작은 상기 사용자 인터페이스를 통해 상기 2차원 패턴 중 제1 패턴의 제1 라인 또는 제1 정점이 선택된 상태에서, 상기 사용자 인터페이스의 위치가 상기 제1 패턴과 재봉에 의해 연결된 제3 패턴으로 이동된 경우, 상기 선택된 제1 라인의 위치를 상기 제3 패턴에서 상기 제1 라인에 대응되는 제3 라인의 위치로 변경하는 동작; 또는 상기 선택된 제1 정점의 위치를 상기 제3 패턴에서 상기 제1 정점에 대응되는 제3 정점의 위치로 변경하는 동작을 포함할 수 있다.
상기 적어도 하나를 출력하는 동작은 상기 변형된 2차원 패턴에 기반한 시뮬레이션을 통해, 상기 스타일 라인이 변형된 3차원 의상을 상기 사용자 인터페이스에 표시하는 동작을 포함할 수 있다.
상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 2차원 패턴을 변형하는 동작은 상기 제1 라인을 변형 라인 리스트에 추가하는 단계; 상기 제1 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에 상기 제1 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 단계; 및 상기 변형 라인 리스트에 포함된 라인들 각각에 대응하여, 해당하는 라인을 획득하면서 상기 변형 라인 리스트에서 제거하는 S1 단계; 상기 해당하는 라인에 재봉으로 연결된 라인들 중 아직 변형되지 않은 재봉 라인에 상기 해당하는 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 S2 단계; 및 상기 재봉 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에 상기 해당하는 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 S3 단계를 포함할 수 있다.
상기 S1 단계, S2 단계 및 S3 단계는 상기 변형 라인 리스트에 남은 라인이 존재하지 않을 때까지 반복적으로 수행될 수 있다.
일 실시예에 따르면, 의상 시뮬레이션 장치는 3차원 의상을 표시하고, 상기 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신하는 사용자 인터페이스; 상기 3차원 의상에 대응하는 2차원 패턴에 포함된 복수의 라인들 중 상기 스타일 라인에 대응하는 제1 라인을 식별하고, 상기 입력에 기초하여 상기 제1 라인을 변형하고, 상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 2차원 패턴을 변형하는 프로세서; 및 상기 변형된 2차원 패턴 및 상기 변형된 2차원 패턴에 대응하여 상기 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력하는 디스플레이를 포함할 수 있다.
일 측에 따르면, 의상의 3차원 형태를 유지하면서도 디자인적 요소를 변경하는 사용자 입력에 따라 2차원 패턴을 변형함으로써 스타일 라인이 변형된 3차원 의상을 표현할 수 있다.
일 측에 따르면, 3차원 의상이 표현되는 3차원 공간에서 사용자 인터페이스를 통해 입력된 스타일 라인의 변형을 전파하여 해당 의상을 구성하는 2차원 패턴들의 라인들을 변형함으로써 3차원 의상의 스타일 라인의 변형을 2차원 패턴들에 자연스럽게 반영할 수 있다.
일 측에 따르면, 의상에 대한 전문적인 지식이 없는 사용자라 하더라도 사용자 인터페이스를 통해 3차원 공간에 표현되는 3차원 의상의 스타일 라인을 변형시킴으로 용이하게 스타일 라인이 변형된 3차원 의상의 시뮬레이션 결과를 제공받을 수 있다.
도 1은 일 실시예에 따른3차원 의상을 표시하는 사용자 인터페이스를 통해 3차원 공간에서 의상의 스타일 라인이 변형된 결과를 도시한 도면.
도 2는 일 실시예에 따라 3차원 의상에서의 스타일 라인의 변형이 2차원 패턴들에 미치는 영향을 설명하기 위한 도면.
도 3은 일 실시예에 따른 의상 시뮬레이션 방법을 나타낸 흐름도.
도 4는 일 실시예에 따른 3차원 의상에서 스타일 라인을 변형하는 입력이 2차원 패턴 상에 반영되는 경우에 발생하는 제한을 설명하기 위한 도면
도 5는 일 실시예에 따른 3차원 의상에서 발생한 스타일 라인의 변형이 의상의 2차원 패턴 상에 반영되는 변형 방식을 설명하기 위한 도면.
도 6은 일 실시예에 따른 스타일 라인을 변형하는 입력이 어느 하나의 2차원 패턴의 내, 외부로 이동하는 경우를 도시한 도면.
도 7은 일 실시예에 따른 스타일 라인을 변형하는 입력이 여러 개의 2차원 패턴들에 걸쳐 이동하는 경우를 도시한 도면.
도 8 내지 도 12는 실시예들에 따른 스타일 라인을 변형하는 입력으로 인해 스타일 라인에 대응하는 라인과 연관된 라인들에서 발생하는 길이 변경을 반영하는 방법을 설명하기 위한 도면들.
도 13 내지 도 14는 실시예들에 따른 스타일 라인을 변형하는 입력으로 인해 스타일 라인에 대응하는 라인을 포함하는 2차원 패턴에서 발생하는 면적 변경을 반영하는 방법을 설명하기 위한 도면들.
도 15는 일 실시예에 따른 스타일 라인을 변형하는 입력에 의한 2차원 패턴의 크기 변경이 제한되는 경우를 설명하기 위한 도면.
도 16은 일 실시 예에 따른 의상 시뮬레이션 장치의 블록도.
이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 동작, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 동작, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
또한, 실시 예의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
어느 하나의 실시 예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성요소는, 다른 실시 예에서 동일한 명칭을 사용하여 설명하기로 한다. 반대되는 기재가 없는 이상, 어느 하나의 실시 예에 기재한 설명은 다른 실시 예에도 적용될 수 있으며, 중복되는 범위에서 구체적인 설명은 생략하기로 한다.
도 1은 일 실시예에 따른3차원 의상을 표시하는 사용자 인터페이스를 통해 3차원 공간에서 의상의 스타일 라인이 변형된 결과를 도시한 도면이다. 도 1을 참조하면, 일 실시예에 따른 3차원 의상들(110, 130)이 도시된다.
3차원 의상(110)은 스타일 라인(115)이 변형되기 전의 의상에 해당할 수 있다. 3차원 의상(130)은 스타일 라인(115)이 스타일 라인(135)과 같이 변형된 3차원 의상(130)에 해당할 수 있다.
'스타일 라인(style line)'은 3차원 의상들(110, 130)에서 보여지는 라인들로서, 예를 들어, 3차원 의상들을 구성하는 2차원 패턴들 간의 재봉에 의해 3차원 의상에서 보여지는 재봉선, 3차원 의상들의 실루엣을 나타내는 외곽선, 3차원 의상의 스타일을 위해 추가한 절개선 등과 같이 3차원 의상들(110, 130)의 스타일 및/또는 실루엣을 나타내는 라인들에 해당할 수 있다.
이하, '스타일 라인'은 3차원 의상에서 보여지는 3차원 라인을 지칭하고, '라인' 또는 '재봉선'은 3차원 의상을 구성하는 2차원 패턴 상에 보이는 2차원 라인을 지칭하는데 사용하기로 한다.
예를 들어, 3차원 의상(110)의 스타일 라인(115)을 3차원 의상(130)의 스타일 라인(135)와 같이 변형했다고 하자. 이 경우, 스타일 라인(115) 중 어깨 라인을 아래로 변형하고, 암홀 라인의 위치 및 옆 라인의 위치를 앞으로 이동시켜 변형한 스타일 라인(135)을 통해 3차원 의상(130)이 3차원 의상(110)에 비해 더 스림(slim)해 보이도록 스타일링할 수 있다. 이와 같이 동일한 의상이라도 스타일 라인의 변형을 통해 의상의 스타일을 변경하거나, 또는 절개선 등의 추가, 삭제 등을 통해 의상에 다양한 디자인적 요소를 반영할 수 있다.
일 실시예에서는 3차원 의상(110)의 스타일 라인(115)을 변형하더라도 해당 의상의 3차원 형태(shape), 혹은 3차원 볼륨(volume)을 유지하도록 함으로써 의상 사이즈의 변경없이 다양한 스타일 변경이 가능하도록 할 수 있다.
3차원 의상(110)의 스타일 라인(115)을 변경하는 경우, 의상 시뮬레이션 장치는 스타일 라인(115)의 변형을 3차원 의상(110)을 구성하는 2차원 패턴들에 반영함으로써 3차원 의상(130)의 변경된 스타일 라인(135)이 표현되도록 할 수 있다. 3차원 의상(110)에서 발생하는 스타일 라인(115)의 변형이 3차원 의상(110)을 구성하는 2차원 패턴들에 미치는 영향은 아래의 도 2를 참고하여 보다 구체적으로 설명한다.
도면에 도시되지는 않았으나, 3차원 의상들(110, 130) 및 도 2에 도시된 2차원 패턴들(201, 203, 205, 207, 208, 209)은 복수의 다각형들을 포함하는 메쉬로 구성될 수 있다. 실시예들에 따라 메쉬는 다양하게 모델링 될 수 있다. 일례로, 메쉬에 포함되는 다각형의 꼭지점들은 질량을 가지고 있는 점(point mass)이며, 다각형의 변들은 그 질량을 연결하는 탄성을 가지고 있는 스프링들로 표현될 수 있다. 이에 따라, 일 실시예에서 따른 3차원 의상은 예를 들어, 질량-스프링 모델(Mass-Spring Model)에 의해 모델링될 수 있다. 스프링들은 사용되는 천(fabric)의 물성에 따라, 예를 들어, 신축(stretch), 비틀림(shear), 및 굽힘(bending)에 대한 각 저항값(resist)을 가질 수 있다.
또는, 메쉬는 스트레인(strain) 모델로 모델링될 수 있다. 메쉬에 포함되는 다각형은 예를 들어, 삼각형으로 모델링되거나, 혹은 사각형 이상의 다각형으로 모델링될 수도 있다. 경우에 따라, 3차원 볼륨(volume)을 모델링해야 하는 경우, 메쉬는 3차원 다면체로 모델링될 수 있다.
메쉬에 포함된 다각형(들)의 꼭지점들은 예를 들어, 중력 등과 같은 외력(external force) 및 신축(stretch), 비틀림(shear), 및 굽힘(bending) 등과 같은 내력(internal force)에 의해 이동할 수 있다. 외력 및 내력을 계산하여 각 꼭지점에 가해지는 힘을 구하면 각 꼭지점의 변위 속도와 운동을 구할 수 있다. 의상의 움직임은 각 시간 동작에서 메쉬를 구성하는 다각형(들)의 꼭지점들의 움직임을 통해 시뮬레이션 될 수 있다. 예를 들어, 다각형 메쉬로 구성된 의상이 3차원 아바타 위에 착장되면, 물리 법칙에 기반한 자연스러운 3차원의 가상 의상을 구현될 수 있다. 메쉬에 포함된 다각형(들)의 꼭지점들은 중력 등과 같은 외부적인 힘(external force)과 신축, 비틀림, 및 굽힘의 내부적인 힘(internal force)의 작용에 따라 움직일 수 있다. 외부적인 힘과 내부적인 힘을 계산하여 각 꼭지점에 가해지는 힘을 구하면, 각 꼭지점의 변위 및 움직임의 속도를 구할 수 있다. 그리고 각 시점(time step)에서의 메쉬의 다각형의 꼭지점들의 움직임을 통하여 가상 의상의 움직임을 시뮬레이션할 수 있다. 다각형 메쉬로 이루어진 2차원 패턴을 3차원의 아바타에 착장시키면 물리 법칙에 기반한 자연스러운 모습의3차원 가상 의상을 구현할 수 있다.
일 실시예에 따른 3차원 의상들(110, 130)은 예를 들어, 사용자의 신체 치수에 맞는 가상 의상, 3차원 가상 캐릭터를 위한 가상 의상 및 3차원 가상 아바타를 위한 가상 의상 중 적어도 하나를 포함할 수 있다.
도 2는 일 실시예에 따라 3차원 의상에서의 스타일 라인의 변형이 2차원 패턴들에 미치는 영향을 설명하기 위한 도면이다. 도 2를 참조하면, 일 실시예에 따른 3차원 의상('반팔 상의')을 구성하는 2차원 패턴들(201, 203, 205, 207, 208, 209)이 도시된다.
2차원 패턴들(201, 203, 205, 207, 208, 209)은 3차원 가상 의상을 구성하는 각 신체 부위에 대응할 수 있다. 2차원 패턴들(201, 203, 205, 207, 208, 209)은 3차원 가상 의상의 시뮬레이션을 위하여 복수의 다각형들의 집합으로 모델링되는 가상의 2차원 패턴일 수 있다. 2 차원 패턴들(201, 203, 205, 207, 208, 209)은 복수의 패턴 조각들을 포함하고, 복수의 패턴 조각들 각각은 예를 들어, 3차원 아바타의 체형에 기초한 다각형 메쉬로 모델링될 수 있다. 이때, 다각형 메쉬는 복수의 다각형들(예를 들어, 삼각형 또는 사각형 등)을 포함할 수 있다.
도2에 도시된 2차원 패턴(201)은 상의 앞판에 해당하고, 2차원 패턴(203)은 상의 뒷판에 해당할 수 있다. 2차원 패턴들(205, 207)은 소매에 해당하고, 2차원 패턴들(208, 209)은 목 칼라에 해당할 수 있다.
예를 들어, 사용자가 상의 앞판에 해당하는 2차원 패턴(201)의 오른쪽 목에 해당하는 한 점을 선택하여 제1 위치(210)에서 제2 위치(215)로 이동시킴으로써 3차원 의상의 오른쪽 어깨선의 위치를 변경했다고 하자. 이 경우, 오른쪽 어깨선의 위치 변경이 왼쪽 어깨선에도 동일하게 적용되도록 하기 위해서는 해당 의상을 구성하는 2차원 패턴들에서는 다음과 같은 변형이 수행되어야 한다.
우선, 3차원 의상의 오른쪽 어깨선의 위치를 변경된 경우, 상의 앞판에 해당하는 2차원 패턴(201)에서 오른쪽 어깨선의 위치에 대응되는 왼쪽 어깨선의 위치 또한 제1 위치(230)에서 제2 위치(235)로 변경되어야 한다. 이때, 2차원 패턴(201)의 좌우 목 부분의 위치가 변경됨에 따라 2차원 패턴(201)에 재봉되는 칼라인 2차원 패턴(209)의 양 목 부분의 위치 또한 변경될 수 있다.
일 실시예에서 3차원 의상의 스타일 라인이 변경되더라도 의상의 3차원 형태가 실질적으로 유지되도록 하기 위해서는 해당 의상의 상의 앞판에 결합되는 상의 뒷판에도 어깨선의 위치 변경이 반영되어야 한다. 다시 말해, 상의 앞판에서 어깨선의 위치가 앞으로 이동됨에 따라 상의 앞판과 재봉되는 상의 뒷판의 어깨선의 위치가 그만큼 앞으로 이동되어야 한다. 이를 위해, 상의 뒷판에 해당하는 2차원 패턴(203)의 양 어깨선의 위치들이 제1 위치(240, 250)에서 제2 위치(245, 255)로 변경될 수 있다. 이와 함께, 2차원 패턴(203)의 좌우 목 부분에 재봉되는 2차원 패턴(208)의 위치 또한 예를 들어, 제1 위치(260, 270)에서 제2 위치(265, 275)로 변경될 수 있다.
이 밖에도, 사용자가 2차원 패턴(201)에서 중심선 상의 한 점의 위치를 아래로 이동시키는 경우, 2차원 패턴(201)에 결합되는 목 칼라에 해당하는 2차원 패턴(209)에서 중심선과 결합되는 부분의 위치 및 2차원 패턴(209)의 면적이 점의 위치가 이동되는 만큼 변형될 수 있다.
일 실시예에 따른 의상 시뮬레이션 장치는 사용자가 3차원의 스타일 라인 상의 한 점을 이동시키거나, 라인의 곡률을 변경하는 경우, 해당 점 또는 해당 라인을 포함하는 2차원 패턴에 재봉된 다른 2차원 패턴 상의 점 또는 라인을 동시에 변형시킴으로써 3차원 의상의 스타일 라인의 변형이 2차원 패턴들에 자연스럽게 반영되도록 할 수 있다. 또한, 의상 시뮬레이션 장치는 변형 전의 2차원 패턴들의 영역의 총합이 스타일 라인의 변형 후에도 동일하게 보존되도록 함으로써 의상의 3차원 형태가 최대한 유지되도록 할 수 있다.
전술한 바와 같이, 사용자가 3차원 의상의 스타일 라인 또는 스타일 라인 상의 한 점을 이동시킨 경우, 의상 시뮬레이션 장치는 해당 3차원 의상을 구성하는 2차원 패턴들 각각에서 사용자에 의해 선택된 스타일 라인에 대응되는 2차원 라인(예를 들어, 제1 라인)과 연관된 라인들의 위치, 또는 곡률 등을 변경함으로써 3차원 의상의 스타일 라인 변형이 2차원 패턴들에도 반영되도록 할 수 있다.
여기서, 제1 라인에 '연관된' 라인들은 제1 라인을 변형하는 경우에 제1 라인의 변형에 영향을 받아 제1 라인과 함께 변형되는 라인들을 모두 포함하는 의미로 이해될 수 있다. 제1 라인에 연관된 라인들은 예를 들어, 제1 라인을 포함하는 제1 패턴에 대칭(symmetry)되거나 또는 제1 패턴이 복제(copy)된 제2 패턴에서 제1 라인에 대응되는 제2 라인, 및/또는 제1 라인 및 제2 라인 중 적어도 하나와 재봉에 의해 연결되는 적어도 하나의 제3 패턴의 재봉선을 포함할 수 있으며, 반드시 이에 한정되지는 않는다. 제1 패턴, 제2 패턴 및 제3 패턴은 모두 2차원 패턴들에 해당할 수 있다.
의상 시뮬레이션 장치가 스타일 라인에 대응되는 라인과 연관된 라인들을 검색하여 변경하는 방법은 아래의 도 3 내지 도 15를 통해 보다 구체적으로 설명한다.
도 3은 일 실시예에 따른 의상 시뮬레이션 방법을 나타낸 흐름도이다. 도 3을 참조하면, 일 실시예에 따른 의상 시뮬레이션 장치가 동작(310) 내지 동작(350)을 통해 스타일 라인이 변형된 3차원 의상을 표시하는 과정이 도시된다. 이하, 실시예에서 각 동작들은 순차적으로 수행될 수도 있으나, 반드시 순차적으로 수행되는 것은 아니다. 예를 들어, 각 동작들의 순서가 변경될 수도 있으며, 적어도 두 동작들이 병렬적으로 수행될 수도 있다.
동작(310)에서, 의상 시뮬레이션 장치는 3차원 의상을 표시하는(expressing) 사용자 인터페이스를 통해, 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신할 수 있다. 이때, 스타일 라인을 변형하는 입력은 사용자가 스타일 라인 상의 한 점을 선택하고, 선택된 점의 위치를 스타일 라인의 상, 하, 좌, 우 등의 위치로 이동시킴으로써 발생할 수 있다. 이하, 스타일 라인을 변형하는 입력은 사용자의 입력에 의해 변형되는 라인(Current Deform Line; CDL) 상의 점의 변형에 의해 발생한다는 점에서 스타일 라인을 변형하는 입력(점)을 'CDP(Current Deform Point)'라고 칭할 수 있다. 이하, '스타일 라인을 변형하는 입력'과 'CDP'는 서로 혼용될 수 있다.
동작(320)에서, 의상 시뮬레이션 장치는 3차원 의상에 대응하는 2차원 패턴에 포함된 복수의 라인들 중 동작(310)을 통해 변형되는 스타일 라인에 대응하는 제1 라인을 식별할 수 있다. 제1 라인은 사용자의 입력에 의해 변형되는 3차원 의상의 스타일 라인의 위치에 대응하는 2차원 패턴 상의 2차원 라인에 해당할 수 있다.
동작(330)에서, 의상 시뮬레이션 장치는 동작(310)의 스타일 라인을 변형하는 입력에 기초하여 제1 라인을 변형할 수 있다. 의상 시뮬레이션 장치는 3차원 의상의 형상(shape) 및/또는 볼륨(volume)이 실질적으로 유지되도록, 3차원 의상을 구성하는 2차원 패턴(들)을 변형할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 3차원 의상의 형상이 실질적으로 유지되도록, 2차원 패턴에서 제1 라인과 함께 재봉 되는 재봉선의 길이 또는 재봉선을 포함하는 적어도 하나의 2차원 패턴의 면적을 변경할 수 있다. 이때, 변형되는 제1 라인은 3차원 의상에서 스타일 라인을 변형하는 입력에 의해 현재 변형되는 라인(Current Deform Line; CDL)이라는 점에서 'CDL'이라고 간략하게 표현할 수도 있다. 이하, 변경된 제1 라인과 'CDL'은 서로 혼용될 수 있다. 의상 시뮬레이션 장치가 변형되는 스타일 라인에 대응하여 제1 라인을 변형하는 방법은 아래의 도 6 내지 도 7을 참조하여 보다 구체적으로 설명한다.
동작(340)에서, 의상 시뮬레이션 장치는 제1 라인의 변형을 제1 라인과 연관된 후보 라인들에 전파(propagation) 함으로써, 2차원 패턴을 변형할 수 있다. 제1 라인과 연관된 '후보 라인들'은 예를 들어, 제1 라인을 포함하는 제1 패턴에 대칭되거나 또는 제1 패턴이 복제된 제2 패턴에서 제1 라인에 대응되는 제2 라인, 및 제1 라인 및 제2 라인 중 적어도 하나와 재봉에 의해 연결되는 적어도 하나의 제3 패턴의 재봉선 중 적어도 하나를 포함할 수 있다. 여기서, 제1 라인에 대응되는 제2 라인은 제2 패턴에서, 제1 패턴의 제1 라인의 위치와 동일한 위치 또는 대칭되는 위치에 있는 제2 라인에 해당할 수 있다.
동작(340)에서, 의상 시뮬레이션 장치는 변형된 제1 라인 및 제1 라인의 변형이 전파된 후보 라인들을 포함하는 변형 라인 리스트(Deforming line list; DLL)를 생성할 수 있다. 변형 라인 리스트는 후보 라인들에 대한 정보를 예를 들어, 선입선출(first-in first-out) 구조의 큐(Queue) 형태로 저장할 수 있으며, 반드시 이에 한정되는 것은 아니다.
의상 시뮬레이션 장치가 변형 라인 리스트를 생성하는 방법은 다음과 같다. 의상 시뮬레이션 장치는 변형된 제1 라인을 포함하는 변형 라인 리스트를 생성할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 입력에 의해 제1 라인의 길이, 형태 및 곡률 중 적어도 하나가 변형되는지 여부를 기초로, 변형 라인 리스트를 생성할 수 있다. 입력에 의해 제1 라인의 길이, 형태 및 곡률 중 적어도 하나가 변형되는 경우, 의상 시뮬레이션 장치는 변형된 제1 라인을 포함하는 변형 라인 리스트를 생성할 수 있다.
의상 시뮬레이션 장치는 제1 라인의 변형을 전파하여 후보 라인들을 변형할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 아래의 [표 1]과 같은 변형 전파(Deformation Propagation) 알고리즘을 통해 제1 라인의 변형을 전파하여 후보 라인들을 변형할 수 있다.
예를 들어, 의상 시뮬레이션 장치는 사용자의 입력에 의한 변형에 기초하여 대상 라인을 변형한 뒤, 변형된 대상 라인을 변형 라인 리스트에 추가할 수 있다. 대상 라인은 사용자의 입력에 의한 변형의 대상이 되는 라인을 포함할 수 있다. 의상 시뮬레이션 장치는 대상 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에도 사용자의 입력에 의한 변형을 실질적으로 동일하게 적용하고, 변형된 라인을 변형 라인 리스트에 추가할 수 있다. 여기서, 특정 라인이나 패턴의 '인스턴스'는 해당 라인이나 패턴이 복제된 복제 라인이나 복제 패턴을 지시할 수 있다.
의상 시뮬레이션 장치는 변형 라인 리스트에 포함된 라인들 각각에 대응하여, i) 해당하는 라인을 획득하면서 변형 라인 리스트에서 제거하는 단계; ii) 해당하는 라인에 재봉으로 연결된 라인들 중 아직 변형되지 않은 재봉 라인에 해당하는 라인의 변형을 적용하여 변형 라인 리스트에 추가하는 단계; 및 iii) 재봉 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에 해당하는 라인의 변형을 적용하여 변형 라인 리스트에 추가하는 단계를 수행할 수 있다. 의상 시뮬레이션 장치는 변형 라인 리스트에 남은 라인이 존재하지 않을 때까지 위 단계들을 반복적으로 수행할 수 있다.
의상 시뮬레이션 장치는 예를 들어, 스타일 라인을 변형하는 입력이 2차원 패턴들 중 적어도 하나의 제1 패턴의 꼭지점의 위치에 해당하는 경우, 해당 입력에 닿아 있는 두 개의 변형된 제1 라인들을 변형 라인 리스트에 입력할 수 있다. 또한, 의상 시뮬레이션 장치는 입력이 제1 패턴의 꼭지점이 아닌 제1 라인 상의 일 지점에 해당하는 경우, 변형된 제1 라인을 변형 라인 리스트에 입력할 수 있다.
의상 시뮬레이션 장치는 변형된 제1 라인과 연관하여 변형되는 후보 라인들을 검색할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 제1 라인을 포함하는 제1 패턴에 대칭되거나 또는 제1 패턴이 복제된 제2 패턴에서 제1 라인에 대응되는 제2 라인을 검색할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 변형 라인 리스트에 저장된 라인들(예를 들어, 제1 라인, 제2 라인 등) 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선을 검색할 수 있다. 또한, 의상 시뮬레이션 장치는 제1 라인 및/또는 제2 라인과 재봉에 의해 연결되는 재봉선 또한 변형 라인 리스트에 입력할 수 있다. 의상 시뮬레이션 장치는 검색한 후보 라인들을 변형한 후, 변형된 후보 라인들에 대한 정보를 변형 라인 리스트에 저장할 수 있다.
의상 시뮬레이션 장치는 변형 라인 리스트에 기초하여, 2차원 패턴을 변형할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 재봉선과 연결된 후보 라인이 변형되며, 변형된 후보 라인들을 변형 라인 리스트에서 삭제할 수 있다. 의상 시뮬레이션 장치는 재봉선과 연결된 후보 라인들의 변형을 반영하여 재봉선의 길이 또는 재봉선을 포함하는 적어도 하나의 패턴의 면적을 변경할 수 있다.
의상 시뮬레이션 장치는 변형 라인 리스트에 저장된 라인들 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선(Sewn Line; 이하, SL)의 변경을 반영하여, 변경된 재봉선을 포함하는 제3 패턴에 대칭되거나, 제3 패턴이 복제된 제4 패턴에서 재봉선에 대응되는 라인을 변경할 수 있다.
의상 시뮬레이션 장치는 현재 변형되는 라인(CDL) 상에서 스타일 라인을 변형하는 입력(CDP)이 발생한 2차원 패턴에 대응되는 다른 2차원 패턴 상의 입력(CDP)에 대응되는 위치에 있는 점 또는 2차원 패턴과 재봉되는 다른 2차원 패턴 상의 재봉점의 위치를 변경할 수 있다.
예를 들어, 입력(CDP)에 의해 제1 라인(CDL)의 길이가 변형되는 경우, 의상 시뮬레이션 장치는 제1 라인(CDL)을 포함하여 길이 변경이 발생하는 모든 라인들의 양 끝점들 중 움직이지 않는 끝점, 다시 말해 움직이는 끝점의 반대편 끝점과 라인들 상의 재봉점 간의 거리가 실질적으로 유지되도록 재봉점의 위치를 변경할 수 있다. 다시 말해, 의상 시뮬레이션 장치는 제1 패턴의 제1 라인(CDL) 상에서 변형되는 점(CDP)의 반대편 끝점과 재봉선 상의 재봉점들 간의 거리가 실질적으로 유지되도록 재봉점들의 위치를 변경할 수 있다.
의상 시뮬레이션 장치는 재봉선의 비율이 실질적으로 유지되도록 재봉점의 위치를 변경할 수 있다. 여기서, '재봉점(seam point)'은 해당 패턴이 다른 패턴과 재봉되는 재봉선 상의 일 지점으로 이해될 수 있다. '재봉점'은 '재봉선 점(seamline point)'이라고도 불릴 수 있으며, 'SLP'로 간략화하여 표시할 수 있다. 이하, '재봉점'과 'SLP'는 서로 혼용될 수 있다.
예를 들어, 스타일 라인을 변형하는 입력에 의해 2차원 패턴의 제1 라인의 길이가 줄어들었을 때에는 스타일 라인을 변형하는 입력(CDP)을 가장 가까운 재봉점까지만 이동될 수 있으므로, 이 경우, 의상 시뮬레이션 장치는 스타일 라인을 변형하는 입력(CDP)과 해당 입력(CDP)에 가장 가까이 위치하는 재봉점을 서로 연결할 수 있다. 또는, 입력(CDP)에 의해 제1 라인이 변형됨에 따라 후보 라인들과 재봉에 의해 연결되는 제3 패턴의 재봉선(SL) 상의 재봉점(SLP)이 이동되는 경우, 의상 시뮬레이션 장치는 제3 패턴의 재봉점(SLP)을 해당 재봉점에 인접한 주변 재봉점 또는 직선점의 위치까지 이동시킬 수 있다. 입력에 의해 제1 라인을 포함하는 2차원 패턴의 면적이 변경된 경우, 의상 시뮬레이션 장치는 재봉점의 위치를 거리 비율이 실질적으로 유지되도록 계산하여 이동시킬 수 있다. 다시 말해, 입력에 의해 2차원 패턴의 면적이 변경되는 경우, 의상 시뮬레이션 장치는 면적 변경이 되는 라인 상의 재봉점의 위치를 거리 비율(예를 들어, 라인의 한 끝점에서 재봉점까지의 거리/라인 길이)가 실질적으로 유지되도록 계산할 수 있다.
의상 시뮬레이션 장치가 2차원 패턴을 변형하는 방법은 아래의 도 8 내지 도 15를 참조하여 보다 구체적으로 설명한다.
동작(350)에서, 의상 시뮬레이션 장치는 동작(340)을 통해 변형된 2차원 패턴 및 동작(340)을 통해 변형된 2차원 패턴에 대응하여 상기 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력을 출력한다. 의상 시뮬레이션 장치는 변형된 2차원 패턴을 화면에 표시할 수도 있고, 또는 변형된 2차원 패턴을 데이터 형태로 의상 시뮬레이션 장치의 외부로 출력할 수도 있다. 또한, 의상 시뮬레이션 장치는 동작(340)을 통해 변형된 2차원 패턴에 기반한 시뮬레이션을 통해, 스타일 라인이 변형된 3차원 의상을 사용자 인터페이스에 표시할 수 있다.
도 4는 일 실시예에 따른 3차원 의상에서 스타일 라인을 변형하는 입력이 2차원 패턴 상에 반영되는 경우에 발생하는 제한을 설명하기 위한 도면이다. 도 4를 참조하면, 일 실시예에 따른 3차원 의상의 소매에 해당하는 2차원 패턴(400)이 도시된다.
실제 의상 시뮬레이션 시에는 사용자가 사용자 인터페이스를 통해 표시된 3차원 의상 상의 스타일 라인 상의 한 점 또는 선분을 이동시킴으로써 바로 3차원 의상의 스타일 라인이 변형되지만, 이하, 설명의 편의를 위하여, 3차원 의상의 스타일 라인 변형을 2차원 패턴의 라인들의 이동 또는 변형 관점에서 설명하기로 한다.
예를 들어, 사용자가 3차원 의상의 소매 라인에 해당하는 2차원 패턴(400)의 외곽선 상의 한 점(401) 또는 소매 패턴의 모서리의 한 점(403)을 클릭하여 좌, 우 또는 상, 하의 위치들(402, 404, 405, 406, 407)로 자유롭게 이동시킨다고 하자. 이 경우, 의상에 대한 전문적인 지식이 없는 사용자가 스타일 라인의 변경을 통해 마음대로 의상을 편집할 수 있게 한다면, 의상 제작 시에 최소한으로 요구되는 2차원 패턴의 기본 형태조차 무시될 수 있다. 이 경우, 2차원 패턴들이 망가질뿐만 아니라, 사용자가 제작하고자 하는 의상에 대한 시뮬레이션 또한 불가능해질 수 있다.
일 실시예에서는 스타일 라인을 변형하는 입력의 유형을 선분의 길이 변경과 면적 변경으로 제한하여 사용자가 3차원 의상 상에서 점 또는 선분을 이동시키더라도 2차원 패턴이 망가지지 않고, 3차원 의상의 시뮬레이션이 가능하게 할 수 있다.
의상 시뮬레이션 장치는 예를 들어, 사용자가 스타일 라인을 변형하기 위해 선택한 점(401)이 2차원 패턴(400)의 외곽선을 따라 좌, 우로 이동되거나, 또는 2차원 패턴(400)의 외곽선에 직교하는 방향에 해당하는 위치(402)로 변형되도록 입력의 이동을 제한할 수 있다. 또는 의상 시뮬레이션 장치는 사용자가 선택한 점(403)을 소매 라인에 해당하는 2차원 패턴의 외곽선을 따라 좌, 우 방향, 또는 외곽선에 직교하는 상, 하 방향의 위치들(402, 404, 405, 406, 407)로 이동시킴으로써 2차원 패턴(400)에 의해 구현되는 소매 또는 소매산의 크기가 변경되도록 할 수 있다. 이때, 스타일 라인을 변형하는 입력(예를 들어, 401, 403)의 이동 거리는 미리 설정된 거리(예를 들어, 해당 패턴의 최대 변형 가능 거리)로 제한될 수 있다.
사용자가 선택한 점(403)이 소매 라인에 해당하는 2차원 패턴의 외곽선을 따라 좌 우 방향에 해당하는 위치(404, 405)로 이동되는 경우, 의상 시뮬레이션 장치는 3차원 의상의 소매 라인의 길이를 변경할 수 있다. 또한, 사용자가 선택한 점(401, 403)이 외곽선에 직교하는 상하 방향에 해당하는 위치(402, 406, 407)으로 이동되는 경우, 의상 시뮬레이션 장치는 3차원 의상의 소매 영역의 면적을 변경할 수 있다.
도 5는 일 실시예에 따른 3차원 의상에서 발생한 스타일 라인의 변형이 의상의 2차원 패턴 상에 반영되는 변형 방식을 설명하기 위한 도면이다. 도 5를 참조하면, 일 실시예에 따른 사용자가 3차원 의상 상의 한 지점을 선택했다고 하자.
의상 시뮬레이션 장치는 3차원 의상의 한 지점의 위치에 대응하는 2차원 패턴의 지점(510)에 연결된 양쪽 라인(501, 502), 양쪽 라인(501, 502)에 연결된 두 개의 접선(503, 504), 및 양쪽 라인(501, 502)을 중앙에서 가로지르는 법선(505) 중 지점(510)의 변경 방향에 가장 가까운 라인을 검색할 수 있다. 아래에서 상세하게 설명하겠으나, 지점(510)의 변경 방향은 사용자의 스타일 변경 입력에 의하여 결정될 수 있고, 혹은 연관된 라인의 변경이 전파(propagation)됨에 따라 결정될 수도 있다.
이때, 검색된 라인이 지점(510)에 연결된 양쪽 라인(501, 502) 중 어느 하나에 가깝다면, 의상 시뮬레이션 장치는 해당 라인(예를 들어 501)에 길이 변경을 적용할 수 있다. 그리고, 의상 시뮬레이션 장치는 해당 라인과 연결된 라인(예를 들어 502)에 면적 변경을 적용할 수 있다.
또는 검색된 라인이 두 개의 접선(503, 504) 중 어느 하나에 가깝다면, 의상 시뮬레이션 장치는 해당 접선(예를 들어 503)의 라인(예를 들어 502)에 길이 변경을 적용할 수 있다. 그리고, 의상 시뮬레이션 장치는 해당 라인과 연결된 라인(예를 들어, 501)에 면적 변경을 적용할 수 있다.
이와 달리, 검색된 라인이 법선(505)에 가깝다면, 의상 시뮬레이션 장치는 양쪽 라인(501, 502)에 모두 면적 변경을 적용할 수 있다. 이때, 사용자 입력에 의해 지점(510)의 곡률(curvature)이 일정 각도보다 크게 변경되는 경우, 의상 시뮬레이션 장치는 더 이상의 면적 변경이 불가능하게 차단할 수 있다.
이하에서, 지점(510)의 변경 방향이 라인의 방향과 일정 각도 이내를 이루는 경우 '변경 방향과 라인이 나란하다'고 지칭하며, 해당 라인에 길이 변경이 적용될 수 있다. 또한, 지점(510)의 변경 방향이 라인의 방향과 일정 각도 초과를 이루는 경우 '변경 방향과 라인이 나란하지 않다'고 지칭하며, 해당 라인에 면적 변경이 적용될 수 있다.
길이 변경은 라인의 방향을 유지한 채로 길이를 늘리거나 줄이는 동작을 의미할 수 있고, 면적 변경은 연관된 패턴(들)의 면적의 합이 실질적으로 유지되도록 라인을 변경하는 동작을 의미할 수 있다.
도 6은 일 실시예에 따른 스타일 라인을 변형하는 입력이 어느 하나의 2차원 패턴의 내, 외부로 이동하는 경우를 도시한 도면이다.
도 6의 (a)를 참조하면, 3차원 의상의 스타일 라인을 변형하는 입력의 위치가 대응되는 2차원 패턴(610)의 내부로 이동한 상황이 도시된다.
사용자 인터페이스를 통해 표시된 3차원 의상에서 수신된 입력의 위치가 도 6의 (a)와 같이 2차원 패턴(610)의 외곽선 상의 제1 위치(611)에서 2차원 패턴(610) 내부의 제2 위치(613)로 이동했다고 하자.
이 경우, 의상 시뮬레이션 장치는 이동된 입력의 위치(613)에 대응하는 2차원 좌표를 산출할 수 있다. 의상 시뮬레이션 장치는 2차원 좌표를 기초로, 입력의 2차원 위치 변화량(dv)을 산출할 수 있다. 2차원 위치 변화량은 3차원 의상의 스타일 라인 변경에 따라 대응되는 2차원 패턴에서 발생하는 위치 변화량에 해당할 수 있다. 의상 시뮬레이션 장치는 2차원 위치 변화량만큼 3차원 의상의 스타일 라인에 대응하는 2차원 패턴의 라인의 위치를 이동시킬 수 있다.
예를 들어, 사용자가 마우스 포인터로 3차원 의상 상의 한 점 또는 하나의 라인을 클릭한 후, 마우스를 드래그(drag)하여 클릭한 점 또는 라인의 위치를 3차원 의상의 내부, 다시 말해 3차원 의상을 구성하는 2차원 패턴의 내부에 해당하는 위치로 이동시켰다고 하자. 이 경우, 의상 시뮬레이션 장치는 이동된 마우스 포인터가 위치하는 3차원 지점에 대응하는 2차원 좌표를 산출함으로써 이동된 입력의 위치에 대응하는 2차원 위치 변화량을 산출할 수 있다.
의상 시뮬레이션 장치는 예를 들어, 현재 화면 상에 표시되는 3차원 공간에서 마우스 포인터가 위치하는 스타일 라인 상의 한 지점 또는 선분에 대응하는 2차원 패턴의 2차원 좌표로부터 마우스 포인터에 의해 처음 클릭된 지점 또는 라인에 대응하는 2차원 패턴의 2차원 좌표('초기 위치')를 뺌으로써 2차원 위치 변화량을 산출할 수 있다. 이때, 현재 마우스 포인트가 위치하는 지점은 마우스 포인트가 초기 위치로부터 변경된 위치에 해당할 수 있다. 마우스 포인터의 변경된 위치는 예를 들어, 마우스 포인트가 위치하는 지점에 해당하는 2차원 패턴을 구성하는 메쉬의 삼각형과 해당 삼각형의 무게 중심(barycentric) 좌표를 계산하고, 메쉬의 삼각형과 해당 삼각형의 무게 중심 좌표를 이용하여 산출될 수 있다. 보다 구체적으로, 의상 시뮬레이션 장치는 마우스 포인터가 위치하는 3차원 상의 메쉬의 삼각형의 인덱스를 이용하여 모든 메쉬의 삼각형들에 대해 광선-삼각형 교차(ray-triangle intersection)를 검사할 수 있다. 의상 시뮬레이션 장치는 교차가 발생한 삼각형 중 카메라에서 가장 가까운 삼각형을 찾고, 해당 삼각형과 교차된 지점의 무게 중심 좌표 또한 구할 수 있다. 이때, 3차원 삼각형의 인덱스와 2차원 삼각형의 인덱스는 동일하므로 2차원 삼각형의 세 꼭지점 위치 x0, x1, x2를 구할 수 있다. 따라서, 의상 시뮬레이션 장치는 무게 중심 좌표가 a, b, c 로 주어지면 변경된 2차원 위치를 a * x0 + b * x1 + c * x2 과 같이 계산할 수 있다.
의상 시뮬레이션 장치는 2차원 위치 변화량만큼 2차원 패턴의 점 또는 라인의 위치를 이동시켜 줌으로서 변형된 스타일 라인에 대응하는 2차원 패턴의 라인을 변형할 수 있다.
도 6의 (b)를 참조하면, 3차원 의상의 스타일 라인을 변형하는 입력의 위치가 2차원 패턴(610)의 외부로 이동한 상황이 도시된다.
사용자 인터페이스를 통해 수신되는 3차원 의상 상의 입력의 위치가 도 6의 (b)와 같이 3차원 의상의 외부, 다시 말해, 2차원 패턴(610)의 외곽선 상의 제1 위치(611)에서 2차원 패턴 외부의 제3 위치(615)로 이동했다고 하자.
이 경우, 의상 시뮬레이션 장치는 이동된 입력의 3차원 위치 이동값(3D dv)을 산출할 수 있다. 의상 시뮬레이션 장치는 예를 들어, 3차원 의상이 표시되는 3차원 공간에서 마우스 포인터가 현재 가리키는 점 또는 라인의 3차원 위치로부터 마우스 포인터에 의해 처음 클릭된 점 또는 선분의 3차원 위치를 뺌으로써 3차원 위치 이동값을 산출할 수 있다.
의상 시뮬레이션 장치는 3차원 위치 이동값을 기초로, 입력을 포함하는 메쉬의 다각형의 변환 매트릭스(transformation matrix; T)를 산출할 수 있다. 이때, 변환 매트릭스는 3차원을 2차원으로 변환하는 매트릭스에 해당할 수 있다. 의상 시뮬레이션 장치는 변환 매트릭스에 의해 3차원 상의 입력에 대응하는 2차원 위치 변화량을 산출할 수 있다.
의상 시뮬레이션 장치는 예를 들어, 변환 매트릭스(T) x 3차원 위치 이동값(3D dv)에 의해 2차원 위치 변화량(2D dv)을 산출할 수 있다. 의상 시뮬레이션 장치는 2차원 위치 변화량만큼 2차원 패턴의 라인의 위치를 이동시킴으로써 스타일 라인의 변형을 2차원 패턴에 반영할 수 있다.
도 7은 일 실시예에 따른 스타일 라인을 변형하는 입력이 여러 개의 2차원 패턴들에 걸쳐 이동하는 경우를 도시한 도면이다. 도 7을 참조하면, 3차원 의상(710)의 스타일 라인의 한 점을 제1 위치(711)에서 제2 위치(713)로 변형함으로써 앞판, 상의 뒷판 및 소매에 해당하는 3개의 패턴들의 라인들이 이동되는 상황이 도시된다.
예를 들어, 스타일 라인을 변형하는 입력이 여러 개의 2차원 패턴들을 거쳐 처음 마우스를 클릭한 위치에 해당하는 2차원 패턴으로 이동했거나, 마우스를 처음 클릭한 2차원 패턴과 서로 재봉 연결이 안된 2차원 패턴의 위치로 이동했거나, 또는 3차원 의상(710)(또는 3차원 의상에 대응되는 2차원 패턴)이 아닌 배경 영역으로 이동했다고 하자. 의상 시뮬레이션 장치는 3차원 의상(710)의 스타일 라인을 변형하는 입력의 위치가 어느 하나의 2차원 패턴의 내부에서 이동하는 경우와 동일하게 처리할 수 있다.
이와 달리, 사용자가 3차원 의상(710) 상에서 마우스를 클릭한 후 이동시킨 점 또는 선분이 마우스를 처음 클릭한 2차원 패턴과 서로 재봉에 의해 연결된 다른 2차원 패턴으로 이동했다고 하자. 의상 시뮬레이션 장치는3차원 의상의 스타일 라인을 변형하는 입력의 위치를, 마우스를 처음 클릭한 2차원 패턴과 서로 재봉에 의해 연결된 다른 2차원 패턴 상의 위치로 변경해 줄 수 있다.
예를 들어, 사용자가 사용자 인터페이스(ex. 마우스)를 통해 2차원 패턴 중 제1 패턴의 제1 라인 또는 제1 정점을 선택한 상태에서 마우스의 위치를 제1 패턴과 재봉에 의해 연결된 제3 패턴으로 이동했다고 하자. 이 경우, 의상 시뮬레이션 장치는 마우스에 의해 선택된 제1 라인의 위치를 제3 패턴에서 제1 라인에 대응되는 제3 라인의 위치로 변경하거나, 또는 마우스에 의해 선택된 제1 정점의 위치를 제3 패턴에서 제1 정점에 대응되는 제3 정점의 위치로 변경할 수 있다.
이때, 시뮬레이션 장치는 도 6의 (a)를 통해 전술한 것과 같이, 이동된 입력의 위치에 대응하는 2차원 좌표를 산출하고, 2차원 좌표를 기초로 산출된 2차원 위치 변화량만큼 점 또는 라인의 위치를 이동시킴으로써 변형된 스타일 라인에 대응하는 2차원 패턴의 라인을 변형할 수 있다.
도 8 내지 도 12는 실시예들에 따른 스타일 라인을 변형하는 입력으로 인해 스타일 라인에 대응하는 라인과 연관된 라인들에서 발생하는 길이 변경을 반영하는 방법을 설명하기 위한 도면들이다.
도 8을 참조하면, 일 실시예에 따른 현재 변경되는 라인(CDL)(811, 821, 831) 상에서 움직이는 점(CDP)이 재봉선(SL)(812, 822, 832)의 끝과 연결되어 있고, 해당 재봉선(SL)(812, 822, 832) 상의 재봉점(SLP)에 재봉되는 상황을 나타낸 도면들(810, 820, 830)이 도시된다.
입력(예를 들어, 점(CDP))이 현재 변경되는 라인(CDL)(811, 821, 831)과 재봉에 의해 연결되는 적어도 하나의 재봉선(SL)(812, 822, 832)의 끝과 연결되어 있고, 입력(점(CDP))이 재봉선(SL)(812, 822, 832)의 끝에 있는 재봉점(SLP)에 재봉되는 경우, 의상 시뮬레이션 장치는 입력(CDP)에 의해 라인(CDL)(811, 821, 831)의 길이가 변형됨에 따라 재봉선(SL)(812, 822, 832)과 재봉선(SL)(812, 822, 832)에 연결된 적어도 하나의 라인(Seamline Connected Line; SCL)(813, 814, 823, 824, 833, 834) 중 적어도 하나의 길이를 변경할 수 있다.
의상 시뮬레이션 장치는 재봉선(SL)(812, 822, 832)과 재봉선(SL)(812, 822, 832)에 연결된 적어도 하나의 라인(SCL)(813, 814, 823, 824, 833, 834)이 서로 나란한 지 여부에 따라 길이를 변경할 라인을 결정할 수 있다.
예를 들어, 도면들(810, 820, 830)의 i) 방향과 같이, 재봉선(SL)(812, 822, 832) 및 재봉선(SL)(812, 822, 832)에 연결된 라인(SCL)(813, 823, 833)이 라인(CDL)(811, 821, 831) 상의 점(CDP)의 이동 방향(예를 들어, '수평 방향')과 서로 나란한 경우, 의상 시뮬레이션 장치는 2차원 패턴의 재봉선(SL)(812, 822, 832)과 나란하게 연결된 라인(SCL)(813, 823, 833)이 붕괴(collapse)되지 않도록 재봉선(SL)(812, 822, 832)의 길이 및 연결된 라인(SCL)(813, 823, 833)의 길이를 변경할 수 있다.
이와 달리, 도면들(810, 820, 830)의 ii) 방향과 같이, 재봉선(SL)(812, 822, 832) 및 재봉선(SL)(812, 822, 832)에 연결된 라인(SCL)(814, 824, 834)이 라인(CDL)(811, 821, 831) 상의 점(CDP)의 이동 방향('수평 방향')과 서로 나란하지 않은 경우(예를 들어, 수직한 경우), 의상 시뮬레이션 장치는 재봉선(812, 822, 832)의 길이만을 변경할 수 있다.
예를 들어, 사용자가 도면(840)에 도시된 2차원 패턴(841)의 라인 끝에 위치하는 한 점(842)를 선택하고, 해당 점(842)의 위치를 수평하게 제2 위치(844)로 이동시켰다고 하자. 이 때, 점(842)이 2차원 패턴(841)과 서로 재봉에 의해 연결되는 2차원 패턴(845)의 재봉선의 끝에 위치하는 점(847)은 위치(848)로 이동되고, 점(847)의 이동 위치가 점(842)가 이동되는 위치와 나란하다고 하자. 이 경우, 의상 시뮬레이션 장치는 점(842)의 이동에 의해 2차원 패턴(841)의 라인의 길이가 변경되는 만큼(예를 들어, 길어지는 만큼), 2차원 패턴(841)과 함께 재봉되는 2차원 패턴(845)의 재봉선 및 재봉선에 연결되는 라인의 길이를 변경할 수 있다.
또는, 사용자가 도면(850)에 도시된 2차원 패턴(851)의 재봉선 끝 점(853)을 선택하고, 해당 점(853)의 위치를 수평하게 제2 위치(854)로 이동시켰다고 하자. 이때, 2차원 패턴(851)과 서로 재봉에 의해 연결되는 2차원 패턴(855)의 재봉선의 끝 점(856)의 위치가 점(853)이 이동되는 위치와 나란하지 않다고 하자. 이 경우, 의상 시뮬레이션 장치는 점(853)의 이동에 따라 2차원 패턴(851)과 함께 재봉되는2차원 패턴(855)의 재봉선의 길이만 변경할 뿐, 재봉선에 연결되는 라인의 길이는 변경하지 않을 수 있다.
도 9를 참조하면, 일 실시예에 따라 현재 변경되는 라인(CDL) 상에서 움직이는 점(CDP)에 해당하는 입력이 재봉선(SL)의 끝과 연결되어 있고, 해당 재봉선의 중간에 재봉되는 상황을 나타낸 도면들(910, 920, 930, 940)이 도시된다.
예를 들어, 도면들(910, 920, 930, 940)과 같이, 입력(CDP)이 함께 재봉되는 다른 2차원 패턴의 재봉선(SL)의 양단 사이에 위치하는 일 지점에 재봉된다고 하자. 이 경우, 의상 시뮬레이션 장치는 입력(CDP)에 의해 라인(CDL)의 길이가 변형됨에 따라 재봉선(SL)의 끝에 있는 재봉점을 재봉선을 따라 이동시킬 수 있으며, 재봉점이 재봉선(SL)을 벗어나도록 이동시킬 수는 없다.
재봉점의 이동 시에 2차원 패턴 상의 다른 점을 만나는 경우, 의상 시뮬레이션 장치는 재봉선이 붕괴되지 않도록 재봉점의 위치를 다른 점의 위치까지만 이동되도록 할 수 있다.
입력(CDP)에 의해 라인(CDL)의 길이가 변형됨에 따라 라인(CDL)과 재봉을 통해 연결되는 재봉선(SL)의 끝에 있는 재봉점을 재봉선 상에서 이동시키는 경우, 의상 시뮬레이션 장치는 재봉선(SL)의 길이 비율에 따라 일정 거리만큼 이동시킬 수 있다. 이때, 일정 거리는 예를 들어, (norm(입력에 의한 변형된 라인(CDL)의 길이(dv) * 재봉선(SL)의 길이 비율)와 같이 산출할 수 있다.
예를 들어, 도면(950)에서 입력(951)이 재봉에 의해 함께 연결되는 2차원 소매 패턴(957)의 적어도 하나의 재봉선(955)의 일단과 연결되어 있고, 입력(951)이 재봉선(955)의 양단 사이에 있는 재봉점(955-4)에 재봉된다고 하자. 이 경우, 의상 시뮬레이션 장치는 입력(951)이 제2 위치(953)로 이동되어 앞판 패턴(954)의 소매 라인의 길이가 변형됨에 따라, 재봉점(955-4)의 위치를 재봉선의 길이 비율에 따라 일정 거리만큼 이동된 다른 위치들(955-1, 955-2, 955-3, 955-5, 955-6, 또는 955-7)으로 이동시킬 수 있다.
도 10을 참조하면, 일 실시예에 따라 현재 변경되는 라인(CDL)이 재봉에 의해 서로 연결되는 2차원 패턴의 재봉선(SL)이 아닌 다른 라인 또는 다른 재봉선에 재봉된 상황을 나타낸 도면들(1010, 1020, 1030)이 도시된다.
예를 들어, 입력(CDP)이 도면(1010)과 같이 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선(SL)이 아닌 다른 라인과 재봉되었거나, 도면(1020)과 같이 어떤 라인과도 재봉되지 않았거나, 또는 도면(1030)과 같이 재봉선(SL)의 양단 사이에서 이동하는 경우, 의상 시뮬레이션 장치는 재봉선(SL)의 길이를 변형하지 않고 그대로 유지할 수 있다.
이는 전술한 상황들에서 재봉선(SL)의 길이를 변형하지 않더라도 차후 재봉선(SL)에 연결된 라인을 처리하는 과정에서 재봉선에 연결된 라인의 길이를 변형함으로써 해결될 수 있기 때문이다.
마찬가지로, 의상 시뮬레이션 장치는 도 11의 도면들(1110, 1120, 1130, 1140)과 같이 입력(CDP)이 재봉선(SL) 또는 재봉점(SLP)과 재봉되지 않는 경우에도 재봉선의 길이를 변형하지 않고 그대로 유지할 수 있다.
이 밖에도, 의상 시뮬레이션 장치는 도 12의 도면들(1210, 1220, 1230, 1240)와 같이 입력(CDP)이 재봉선(SL)의 양단 사이에서 움직이거나, 또는 도면(1250)과 같이 현재 변경되는 라인(CDL)의 한 점과 재봉선(SL)이 아닌 다른 라인의 점이 재봉을 통해 연결되는 경우, 재봉선을 길이를 변형하지 않고 그대로 유지할 수 있다.
도 13 내지 도 14는 실시예들에 따른 스타일 라인을 변형하는 입력으로 인해 스타일 라인에 대응하는 라인을 포함하는 2차원 패턴에서 발생하는 면적 변경을 반영하는 방법을 설명하기 위한 도면들이다.
도 13을 참조하면, 일 실시예에 따라 입력에 의해 현재 변경되는 라인(CDL)(1311, 1321, 1331, 1341)이 재봉에 의해 연결되는 2차원 패턴의 재봉선(SL)(1313, 1323, 1333, 1343) 상의 재봉점(들)(SLP)과 재봉된 경우를 나타낸 도면들(1310, 1320, 1330, 1340)이 도시된다.
도면들(1310, 1320, 1330, 1340)에서 라인(CDL)(1311, 1321, 1331, 1341)의 변화량(dv)은 재봉선(SL)(1313, 1323, 1333, 1343)으로 전파된다. 변화량(dv)은 재봉선(SL)(1313, 1323, 1333, 1343)과 나란하지 않으므로, 재봉선(SL)(1313, 1323, 1333, 1343)에 면적 변경이 적용된다. 예를 들어, 재봉선(SL)(1313, 1323, 1333, 1343)의 변형으로 인하여 발생하는 면적 변화량이 라인(CDL)(1311, 1321, 1331, 1341)의 변형으로 인하여 발생하는 면적 변화량과 실질적으로 동일해지도록, 재봉선(SL)(1313, 1323, 1333, 1343)의 변형이 결정될 수 있다.
또한, 의상 시뮬레이션 장치는 재봉선(SL)(1313, 1323, 1333, 1343)과 연결된 적어도 하나의 라인(1315, 1325, 1335, 1345)은 길이 변경으로 추가할 수 있다.
예를 들어, 도면(1350)과 같이, 2차원 패턴(1351) 상에서 한 점(1352)의 위치를 제2 위치(1353)로 이동시킴으로써 라인(CDL)(1354)이 변형되고, 점(1352)이 다른 2차원 패턴(1355)의 재봉선(SL) 상에 있는 재봉점(SLP)(1356)과 재봉된다고 하자. 이때, 재봉선(SL)은 제1 끝점(1356)과 노치(1357) 사이의 제1 재봉선, 노치(1357)와 재봉점(SLP)(1356) 사이의 제2 재봉선, 및 재봉점(SLP)(1356)과 제2 끝점 사이의 제3 재봉선(1359)을 포함할 수 있다.
라인(CDL)(1354)의 변경 방향(1352->1353의 방향)은 재봉선(SL)으로 전파되고, 제1 재봉선 내지 제3 재봉선에 면적 변경이 적용될 수 있다. 이 때, 제1 재봉선 내지 제3 재봉선의 변형으로 인하여 발생하는 면적 변화량의 합이 라인(CDL)(1354)의 변형으로 인하여 발생하는 면적 변화량과 실질적으로 동일해지도록, 제1 재봉선 내지 제3 재봉선의 변형이 결정될 수 있다.
또는, 예를 들어, 도면(1360)과 같이, 재봉에 의해 제1 패턴(1364)과 서로 연결되는 제2 패턴(1365)의 적어도 하나의 재봉선(1366) 상에 있는 재봉점(1367)이 제1 패턴(1361)의 변형되는 라인(1364)에 재봉된다고 하자. 이때, 재봉점(1367)과 연결되는 라인(SCL)은 라인(1368) 및 라인(1369)을 포함할 수 있다. 재봉점(1367)과 연결된 라인(SCL)(1369)은 변형되는 라인(1363)의 변형 방향과 나란한 반면, 라인(SCL)(1368)은 변형되는 라인(1363)이 변화되는 위치와 나란하지 않을 수 있다.
이 경우, 의상 시뮬레이션 장치는 입력에 의해 라인(1364)의 지점(1362)가 지점(1363)으로 변형됨에 따라 재봉점(1367)과 연결된 라인(1369)에 길이 변경을 적용하고, 라인(1368)에 변경 변경을 적용할 수 있다.
도 14를 참조하면, 일 실시예에 따라 재봉에 의해 연결되는 2차원 패턴의 재봉선(SL)(1413, 1423) 상의 끝 점이 입력에 의해 현재 변경되는 라인(CDL)(1411, 1421)과 재봉되지 않는 상황을 나타낸 도면들(1410, 1420)이 도시된다.
도면들(1410, 1420)에서 재봉선(SL)(1413, 1423) 상의 끝 점이 라인(CDL)(1411, 1421)과 재봉되지 않는 경우, 의상 시뮬레이션 장치는 라인(CDL)(1411, 1421) 및 재봉선(SL)(1413, 1423) 각각을 포함하는 2차원 패턴의 내부 곡선을 변형할 수 있다.
의상 시뮬레이션 장치는 입력에 의해 라인(CDL)(1411, 1421)이 변형됨에 따라 현재 변경되는 라인(CDL)(1411, 1421)을 포함하는 2차원 패턴 및 해당 패턴과 재봉되는 2차원 패턴 각각의 내부 곡선을 변형하여 라인(CDL)(1411, 1421)을 포함하는 2차원 패턴 및 해당 패턴과 재봉되는 다른 2차원 패턴 각각의 면적을 변경할 수 있다.
예를 들어, 도면(1430)에서 입력에 의해 변형되는 라인(CDL)(1432)을 포함하는2차원 패턴(1431)과 서로 재봉에 의해 연결되는 2차원 패턴(1435)의 재봉선(SL)(1436) 상의 끝 점들(1438)이 라인(CDL)(1432)과 재봉되지 않는다고 하자. 이 경우, 의상 시뮬레이션 장치는 입력에 의해 라인(CDL)(1432)의 위치가 변형됨에 따라 현재 변경되는 라인(CDL)(1432)을 포함하는 2차원 패턴(1431) 및 2차원 패턴(1431)과 함께 재봉되는 2차원 패턴(1435) 각각의 내부 곡선(1433, 1437)을 변형함으로써 라인(CDL)(1411, 1421)을 포함하는 2차원 패턴 및 해당 패턴과 재봉되는 다른 2차원 패턴 각각의 면적을 변경할 수 있다.
도 15는 일 실시예에 따른 스타일 라인을 변형하는 입력에 의한 2차원 패턴의 크기 변경이 제한되는 경우를 설명하기 위한 도면이다. 도 15를 참조하면, 일 실시예에 따라 재봉에 의해 서로 연결되는 제1패턴(1510)과 제2 패턴(1515)이 도시된다. 제1 패턴(1510)과 제2 패턴(1530)은 2차원 패턴에 해당할 수 있다.
예를 들어, 사용자가 3차원 의상의 스타일 라인에 대응하는 제1 패턴(1510)의 한 점(1511)을 클릭하여 제1 위치(1513) 또는 제2 위치(1515)로 이동시킨다고 하자. 이때, 의상 시뮬레이션 장치는 점(1511)이, 함께 재봉되는 제2 패턴(1530)의 끝점(1531)의 위치에 대응되는 제1 위치(1513)까지 이동되도록 할 수 있다. 반면, 의상 시뮬레이션 장치는 점(1511)이, 제2 패턴(1530)의 끝점(1531)에 대응되는 제1 위치(1513)를 초과하는 제2 위치(1515)까지는 이동되지 않도록 할 수 있다.
의상 시뮬레이션 장치는 사용자 입력에 의해 스타일 라인 상의 직선점을 이동시키다가 직선점이 위치하는 2차원 패턴과 함께 연결되는 다른 2차원 패턴 상의 재봉점이 끊어지게(snapping) 되는 경우, 재봉점을 이동시키다가 재봉점이 위치하는 2차원 패턴과 함께 연결되는 다른 2차원 패턴 상의 직선점이 끊어지게 하는 경우, 스타일 라인을 변형하는 입력에 의해 라인이 붕괴되거나, 또는 직선점이 끊어지게 되는 경우에는 입력에 의한 위치 변화, 또는 이동 거리 등을 제한할 수 있다.
도 16은 일 실시 예에 따른 의상 시뮬레이션 장치의 블록도이다. 도 16을 참조하면, 일 실시예에 따른 의상 시뮬레이션 장치(1600)는 사용자 인터페이스(1610), 프로세서(1630), 디스플레이(1650), 및 메모리(1670)를 포함할 수 있다. 사용자 인터페이스(1610), 프로세서(1630), 디스플레이(1650), 및 메모리(1670)는 통신 버스(1605)를 통해 서로 연결될 수 있다.
사용자 인터페이스(1610)는 3차원 의상을 표시한다. 사용자 인터페이스(1610)는 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신한다. 사용자 인터페이스(1610)는 예를 들어, 스타일러스 펜 또는 마우스 클릭 등을 통해 3차원 공간에 표시된 3차원 의상에 대한 사용자 입력을 수신할 수 있다.
프로세서(1630)는 사용자 인터페이스(1610)를 통해 표시되는 3차원 의상에 대응하는 2차원 패턴에 포함된 복수의 라인들 중 스타일 라인에 대응하는 제1 라인을 식별한다. 프로세서(1630)는 사용자 인터페이스(1610)를 통해 수신된 입력에 기초하여 제1 라인을 변형한다. 프로세서(1630)는 제1 라인의 변형을 제1 라인과 연관된 후보 라인들에 전파함으로써 3차원 의상에 대응하는 2차원 패턴을 변형한다. 프로세서(1630)는 변형된 2차원 패턴에 기반한 시뮬레이션을 수행할 수 있다.
디스플레이(1650)는 프로세서(1630)에 의해 변형된 2차원 패턴 및 프로세서(1630)에 의해 변형된 2차원 패턴에 대응하여 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력할 수 있다. 디스플레이(1650)는 프로세서(1630)의 시뮬레이션을 통해 스타일 라인이 변형된 3차원 의상을 사용자 인터페이스에 표시할 수 있다.
메모리(1670)는 사용자 인터페이스(1610)를 통해 수신된 스타일 라인을 변형하는 입력의 이동되는 위치를 저장할 수 있다. 메모리(1670)는 제1 라인과 연관된 후보 라인들을 포함하는 변형 라인 리스트를 저장할 수 있다. 메모리(1670)는 스타일 라인이 변형된 3차원 의상에 대응하여 변형된 2차원 패턴을 저장할 수 있다.
이 밖에도, 메모리(1670)는 상술한 프로세서(1630)의 처리 과정에서 생성되는 다양한 정보들을 저장할 수 있다. 이 밖에도, 메모리(1670)는 각종 데이터와 프로그램 등을 저장할 수 있다. 메모리(1670)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다. 메모리(1670)는 하드 디스크 등과 같은 대용량 저장 매체를 구비하여 각종 데이터를 저장할 수 있다.
또한, 프로세서(1630)는 도 1 내지 도 15를 통해 전술한 적어도 하나의 방법 또는 적어도 하나의 방법에 대응되는 알고리즘을 수행할 수 있다. 프로세서(1630)는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다. 프로세서(1630)는 예를 들어, CPU(Central Processing Unit), GPU(Graphics Processing Unit), 또는 NPU(Neural network Processing Unit)으로 구성될 수 있다. 예를 들어, 하드웨어로 구현된 의상 시뮬레이션 장치(1600)는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.
프로세서(1630)는 프로그램을 실행하고, 의상 시뮬레이션 장치(1600)를 제어할 수 있다. 프로세서(1630)에 의하여 실행되는 프로그램 코드는 메모리(1670)에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
1600: 의상 시뮬레이션 장치
1605: 통신 버스
1610: 사용자 인터페이스
1630: 프로세서
1650: 디스플레이
1670: 메모리

Claims (30)

  1. 의상 시뮬레이션 장치의 의상 시뮬레이션 방법에 있어서,
    3차원 의상을 표시하는 사용자 인터페이스를 통해, 상기 3차원 의상에서 보여지는 상기 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신하는 동작;
    상기 3차원 의상에 대응하는 하나 또는 그 이상의 2차원 패턴에 포함된 복수의 라인들 중 상기 스타일 라인에 대응하는 제1 라인을 식별하는 동작;
    상기 입력에 기초하여 상기 제1 라인을 변형하는 동작;
    상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 3차원 의상의 상기 스타일 라인이 변형되더라도 상기 3차원 의상에서 상기 스타일 라인의 변형에 따라 영향을 받는 적어도 하나의 2차원 패턴의 면적 변화량의 합이 상기 스타일 라인의 상기 변형 전과 후에 실질적으로 동일하게 유지되도록 상기 2차원 패턴을 변형하는 동작; 및
    상기 변형된 2차원 패턴 및 상기 변형된 2차원 패턴에 대응하여 상기 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력하는 동작
    을 포함하는, 의상 시뮬레이션 방법.
  2. 삭제
  3. 제1항에 있어서,
    상기 후보 라인들은
    상기 제1 라인을 포함하는 제1 패턴에 대칭되거나 또는 상기 제1 패턴이 복제된 제2 패턴에서 상기 제1 라인에 대응되는 제2 라인; 및
    상기 제1 라인 및 상기 제2 라인 중 적어도 하나와 재봉에 의해 연결되는 적어도 하나의 제3 패턴의 재봉선
    중 적어도 하나를 포함하는,
    의상 시뮬레이션 방법.
  4. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 변형된 제1 라인 및 상기 제1 라인의 변형이 전파된 상기 후보 라인들을 포함하는 변형 라인 리스트를 생성하는 동작; 및
    상기 변형 라인 리스트에 기초하여, 상기 2차원 패턴을 변형하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  5. 제4항에 있어서,
    상기 변형 라인 리스트를 생성하는 동작은
    상기 변형된 제1 라인을 포함하는 변형 라인 리스트를 생성하는 동작;
    상기 제1 라인의 변형을 전파하여 상기 후보 라인들을 변형하는 동작; 및
    상기 변형된 후보 라인들에 대한 정보를 상기 변형 라인 리스트에 저장하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  6. 제5항에 있어서,
    상기 후보 라인들을 변형하는 동작은
    상기 변형된 제1 라인과 연관하여 변형되는 상기 후보 라인들을 검색하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  7. 제6항에 있어서,
    상기 후보 라인들을 검색하는 동작은
    상기 변형 라인 리스트에 저장된 라인들 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선을 검색하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  8. 제7항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 재봉선과 연결된 후보 라인들의 변형을 반영하여 상기 재봉선의 길이 또는 상기 재봉선을 포함하는 적어도 하나의 패턴의 면적을 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  9. 제6항에 있어서,
    상기 후보 라인들을 검색하는 동작은
    상기 제1 라인을 포함하는 제1 패턴에 대칭되거나 상기 제1 패턴이 복제된 제2 패턴에서 상기 제1 라인에 대응되는 제2 라인을 검색하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  10. 제4항에 있어서,
    상기 변형 라인 리스트를 생성하는 동작은
    상기 입력에 의해 상기 제1 라인의 길이, 형태 및 곡률 중 적어도 하나가 변형되는지 여부를 기초로, 상기 변형 라인 리스트를 생성하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  11. 제4항에 있어서,
    상기 변형 라인 리스트를 생성하는 동작은
    상기 입력이 상기 2차원 패턴들 중 적어도 하나의 제1 패턴의 꼭지점에 해당하는 경우, 상기 입력에 닿아 있는 두 개의 변형된 제1 라인들을 상기 변형 라인 리스트에 입력하는 동작; 및
    상기 입력이 상기 꼭지점이 아닌 제1 라인 상의 일 지점에 해당하는 경우, 상기 변형된 제1 라인을 상기 변형 라인 리스트에 입력하는 동작
    을 포함하는, 의상 시뮬레이션 방법.
  12. 제4항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 변형 라인 리스트에 저장된 라인들 각각과 재봉에 의해 연결되는 적어도 하나의 재봉선의 변경을 반영하여, 상기 변경된 재봉선을 포함하는 제3 패턴에 대칭되거나, 상기 제3 패턴이 복제된 제4 패턴에서 상기 재봉선에 대응되는 라인을 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  13. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선의 끝과 연결되어 있고, 상기 입력이 상기 재봉선의 끝에 있는 재봉점과 재봉되는 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인 중 적어도 하나의 길이를 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  14. 제13항에 있어서,
    상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인 중 적어도 하나의 길이를 변경하는 동작은
    상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인이 상기 입력의 이동 방향과 나란한 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선의 길이 및 상기 재봉선과 연결된 적어도 하나의 라인의 길이를 변경하는 동작; 및
    상기 재봉선과 상기 재봉선에 연결된 적어도 하나의 라인이 상기 입력의 이동 방향과 서로 나란하지 않은 경우, 상기 재봉선의 길이를 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  15. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선의 일단과 연결되어 있고, 상기 입력이 상기 재봉선의 양단 사이에 재봉된 경우,
    상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선의 끝에 있는 재봉점을 상기 재봉선 상에서 상기 제1 라인의 상기 변형된 길이에 대비되는 상기 재봉선의 길이 비율에 따라 일정 거리만큼 이동시키는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  16. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력이 상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선이 아닌 다른 라인과 재봉되었거나, 상기 입력이 재봉되지 않았거나, 또는 상기 입력이 상기 재봉선의 양단 사이에서 움직이는 경우, 상기 재봉선의 길이를 변형하지 않고 그대로 유지하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  17. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선 상에 있는 재봉점이 상기 제1 라인과 재봉되고, 상기 재봉점과 연결된 적어도 하나의 라인이 상기 제1 라인 상의 점이 변화된 위치와 나란한 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉점과 연결된 적어도 하나의 라인의 길이를 변경하는 동작; 및
    상기 재봉선 상에 있는 재봉점이 상기 제1 라인과 재봉되고, 상기 재봉점과 연결된 적어도 하나의 라인이 상기 제1 라인 상의 점의 변화된 위치와 나란하지 않은 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 재봉선을 포함하는 2차원 패턴 및 상기 재봉선과 연결된 적어도 하나의 라인을 포함하는 2차원 패턴 각각의 면적을 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  18. 제3항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 후보 라인들 중 재봉에 의해 연결되는 적어도 하나의 재봉선 상의 끝점이 상기 제1 라인과 재봉되지 않는 경우, 상기 입력에 의해 상기 제1 라인의 길이가 변형됨에 따라 상기 제1 패턴 및 상기 제1 패턴과 재봉되는 패턴 각각의 내부 곡선을 변형하여 상기 제1 패턴 및 상기 제1 패턴과 재봉되는 패턴 각각의 면적을 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  19. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력에 의해 상기 제1 라인의 길이가 변형되는 경우, 상기 제1 라인을 포함하여 길이 변경이 발생하는 모든 라인들의 양 끝점들 중 움직이지 않는 끝점과 상기 라인들 상의 재봉점 간의 거리가 상기 제1 라인의 길이 변형과 무관하게 동일하게 유지되도록 상기 재봉점의 위치를 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  20. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력에 의해 상기 제1 라인의 길이가 감소되는 경우, 상기 입력에 가장 가까이 위치하는 재봉점을 상기 입력에 연결하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  21. 제1항에 있어서,
    상기 2차원 패턴을 변형하는 동작은
    상기 입력에 의해 상기 제1 라인이 변형됨에 따라, 상기 후보 라인들과 재봉에 의해 연결되는 재봉선 상에 있는 재봉점이 이동되는 경우, 상기 재봉점을 상기 재봉점에 인접한 주변 재봉점 또는 상기 재봉점이 위치하는 2차원 패턴과 함께 연결되는 다른 2차원 패턴의 직선 상의 직선점의 위치까지 이동시키는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  22. 제1항에 있어서,
    상기 입력은 상기 제1 라인을 따라 이동되고, 상기 제1 라인에 직교하는 방향으로 변형되며,
    상기 입력의 이동 거리는 미리 설정된 거리로 제한되는,
    의상 시뮬레이션 방법.
  23. 제1항에 있어서,
    상기 제1 라인을 변형하는 동작은
    상기 사용자 인터페이스를 통해 수신되는 상기 입력의 위치가 상기 2차원 패턴 중 어느 하나의 제1 패턴의 내부로 이동한 경우,
    상기 이동된 상기 입력의 위치에 대응하는 2차원 좌표를 산출하는 동작;
    상기 2차원 좌표를 기초로, 상기 입력의 2차원 위치 변화량을 산출하는 동작; 및
    상기 2차원 위치 변화량만큼 상기 제1 패턴의 상기 제1 라인의 위치를 이동시키는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  24. 제1항에 있어서,
    상기 제1 라인을 변형하는 동작은
    상기 사용자 인터페이스를 통해 수신되는 상기 입력의 위치가 상기 2차원 패턴 중 어느 하나의 제1 패턴의 외부로 이동한 경우,
    상기 이동된 상기 입력의 3차원 위치 이동값을 산출하는 동작;
    상기 3차원 위치 이동값을 기초로, 상기 입력을 포함하는 메쉬의 다각형의 변환 매트릭스를 산출하는 동작;
    상기 변환 매트릭스에 의해 상기 입력에 대응하는 2차원 위치량을 산출하는 동작; 및
    상기 2차원 위치 변화량만큼 상기 제1 패턴의 상기 제1 라인의 위치를 이동시키는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  25. 제1항에 있어서,
    상기 제1 라인을 변형하는 동작은
    상기 사용자 인터페이스를 통해 상기 2차원 패턴 중 제1 패턴의 제1 라인 또는 제1 정점이 선택된 상태에서, 상기 사용자 인터페이스의 위치가 상기 제1 패턴과 재봉에 의해 연결된 제3 패턴으로 이동된 경우,
    상기 선택된 제1 라인의 위치를 상기 제3 패턴에서 상기 제1 라인에 대응되는 제3 라인의 위치로 변경하는 동작; 또는
    상기 선택된 제1 정점의 위치를 상기 제3 패턴에서 상기 제1 정점에 대응되는 제3 정점의 위치로 변경하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  26. 제1항에 있어서,
    상기 적어도 하나를 출력하는 동작은
    상기 변형된 2차원 패턴에 기반한 시뮬레이션을 통해, 상기 스타일 라인이 변형된 3차원 의상을 상기 사용자 인터페이스에 표시하는 동작
    을 포함하는,
    의상 시뮬레이션 방법.
  27. 제1항에 있어서,
    상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 2차원 패턴을 변형하는 동작은
    상기 제1 라인을 변형 라인 리스트에 추가하는 단계;
    상기 제1 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에 상기 제1 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 단계; 및
    상기 변형 라인 리스트에 포함된 라인들 각각에 대응하여,
    상기 변형 라인 리스트에 포함된 라인들 중 어느 하나의 해당하는 라인을 획득하면서 상기 변형 라인 리스트에서 상기 해당하는 라인을 제거하는 S1 단계;
    상기 해당하는 라인에 재봉으로 연결된 라인들 중 아직 변형되지 않은 재봉 라인에 상기 해당하는 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 S2 단계; 및
    상기 재봉 라인과 대칭 관계 혹은 인스턴스 관계에 있는 라인에 상기 해당하는 라인의 변형을 적용하여 상기 변형 라인 리스트에 추가하는 S3 단계
    를 포함하는, 의상 시뮬레이션 방법.
  28. 제27항에 있어서,
    상기 S1 단계, S2 단계 및 S3 단계는 상기 변형 라인 리스트에 남은 라인이 존재하지 않을 때까지 반복적으로 수행되는, 의상 시뮬레이션 방법.
  29. 하드웨어와 결합되어 제1항, 제3항 내지 제28항 중 어느 한 항의 방법을 실행시키기 위하여 컴퓨터로 판독 가능한 기록 매체에 저장된 컴퓨터 프로그램.
  30. 3차원 의상을 표시하고, 상기 3차원 의상에서 보여지는 상기 3차원 의상의 스타일을 나타내는 복수의 스타일 라인들 중 적어도 하나의 스타일 라인을 변형하는 입력을 수신하는 사용자 인터페이스;
    상기 3차원 의상에 대응하는 하나 또는 그 이상의 2차원 패턴에 포함된 복수의 라인들 중 상기 스타일 라인에 대응하는 제1 라인을 식별하고, 상기 입력에 기초하여 상기 제1 라인을 변형하고, 상기 제1 라인의 변형을 상기 제1 라인과 연관된 후보 라인들에 전파함으로써, 상기 3차원 의상의 상기 스타일 라인이 변형되더라도 상기 3차원 의상에서 상기 스타일 라인의 변형에 따라 영향을 받는 적어도 하나의 2차원 패턴의 면적 변화량의 합이 상기 스타일 라인의 상기 변형 전과 후에 실질적으로 동일하게 유지되도록 상기 2차원 패턴을 변형하는 프로세서; 및
    상기 변형된 2차원 패턴 및 상기 변형된 2차원 패턴에 대응하여 상기 스타일라인이 변형된 3차원 의상 중 적어도 하나를 출력하는 디스플레이
    를 포함하는,
    의상 시뮬레이션 장치.
KR1020210061621A 2021-05-12 2021-05-12 의상 시뮬레이션 방법 및 장치 KR102633553B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020210061621A KR102633553B1 (ko) 2021-05-12 2021-05-12 의상 시뮬레이션 방법 및 장치
US17/668,726 US20220361613A1 (en) 2021-05-12 2022-02-10 Designing garment using style line
PCT/KR2022/002317 WO2022239937A1 (en) 2021-05-12 2022-02-17 Designing garment using style line
EP22172754.8A EP4089562A1 (en) 2021-05-12 2022-05-11 Designing garment using style line
CN202210510140.8A CN115345985A (zh) 2021-05-12 2022-05-11 模拟服装的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210061621A KR102633553B1 (ko) 2021-05-12 2021-05-12 의상 시뮬레이션 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20220153954A KR20220153954A (ko) 2022-11-21
KR102633553B1 true KR102633553B1 (ko) 2024-02-06

Family

ID=81603415

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210061621A KR102633553B1 (ko) 2021-05-12 2021-05-12 의상 시뮬레이션 방법 및 장치

Country Status (5)

Country Link
US (1) US20220361613A1 (ko)
EP (1) EP4089562A1 (ko)
KR (1) KR102633553B1 (ko)
CN (1) CN115345985A (ko)
WO (1) WO2022239937A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102608906B1 (ko) * 2021-08-23 2023-12-01 주식회사 코코파 패턴블록 구조물을 적용하는 의류 디자인 장치

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100999348B1 (ko) 2005-10-24 2010-12-09 강기용 3차원 텍스타일 디자인 방법, 및 텍스타일 디자인프로그램을 기록한 컴퓨터-판독가능 저장매체
JP2017058918A (ja) * 2015-09-16 2017-03-23 株式会社島精機製作所 アパレル製品のデザイン装置

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10134095A (ja) * 1996-10-28 1998-05-22 Toray Ind Inc 組立構造体の組立状態解析方法、衣服の着用状態解析方法ならびに衣服の製造方法および製造支援装置
US7149665B2 (en) * 2000-04-03 2006-12-12 Browzwear International Ltd System and method for simulation of virtual wear articles on virtual models
JP2003336119A (ja) * 2002-05-21 2003-11-28 Digital Fashion Ltd 仮想型紙表示装置、仮想型紙表示プログラム
US7657340B2 (en) * 2006-01-31 2010-02-02 Dragon & Phoenix Software, Inc. System, apparatus and method for facilitating pattern-based clothing design activities
JP4966003B2 (ja) * 2006-12-28 2012-07-04 株式会社島精機製作所 布帛パターンの作成装置と作成方法、作成プログラム
ES2363963B1 (es) * 2009-07-23 2012-03-30 Universidad De Sevilla Metodo para bocetar y modelar prendas de vestir en tres dimensiones.
WO2012061834A1 (en) * 2010-11-07 2012-05-10 The Trustees Of Columbia University In The City Of New York Methods, systems, and media for interactive garment modeling and editing

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100999348B1 (ko) 2005-10-24 2010-12-09 강기용 3차원 텍스타일 디자인 방법, 및 텍스타일 디자인프로그램을 기록한 컴퓨터-판독가능 저장매체
JP2017058918A (ja) * 2015-09-16 2017-03-23 株式会社島精機製作所 アパレル製品のデザイン装置

Also Published As

Publication number Publication date
US20220361613A1 (en) 2022-11-17
KR20220153954A (ko) 2022-11-21
WO2022239937A1 (en) 2022-11-17
EP4089562A1 (en) 2022-11-16
CN115345985A (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
Sander Graph layout through the VCG tool: Extended abstract and system demonstration
CN103135982B (zh) 在图形显示中实现焦点更改不变性的方法和系统
US8154544B1 (en) User specified contact deformations for computer graphics
JP6266873B2 (ja) 素材をシミュレートするための装置、システム及び方法
KR20140141499A (ko) 직물편들의 어셈블리의 시뮬레이션
US20230044445A1 (en) Method and apparatus for simulating clothes
US11922577B2 (en) Method and apparatus for online fitting
US20210350619A1 (en) Generating clothing patterns of garment using bounding volumes of body parts
KR102633553B1 (ko) 의상 시뮬레이션 방법 및 장치
KR102228098B1 (ko) 3차원 가상 의상에 대응하는 2차원 패턴의 치수를 측정하는 방법 및 장치
US20230290100A1 (en) Method And Apparatus For Providing Guide For Combining Pattern Pieces Of Clothing
US11961199B2 (en) Method and apparatus for partial simulation of pinching to form wrinkles on a garment
KR20220145203A (ko) 시뮬레이션 방법 및 장치
US20240185550A1 (en) Generation of exploded view of garment with selected displaying of guide lines connecting sewing lines
KR20220154022A (ko) 의상 시뮬레이션 방법 및 장치
US20240070805A1 (en) Modifying Garment Design Using Style Line
KR20230026291A (ko) 재봉 시뮬레이션 방법 및 장치
US20240135615A1 (en) Simulating garment using vertices fixed with different intensities
KR20240073762A (ko) 롤-업을 시뮬레이션하는 방법 및 장치
US20230102069A1 (en) Simulating and editing of garment of hierarchical structure
EP4371438A1 (en) Automatic arrangement of patterns for garment simulation using neural network model
US20230306699A1 (en) Virtual garment wrapping for draping simulation
KR20220137527A (ko) 의상 시뮬레이션 방법 및 장치
RAJAGOPALAN Real Time Simulation of Game Character Clothing
KR20230148554A (ko) 3d 아바타의 의상 착장 시뮬레이션 방법

Legal Events

Date Code Title Description
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant