Site Tools


Differences

This shows you the differences between two versions of the page.

Link to this comparison view

ko:labs:explicithistory:datastreammatchingalgorithms [2015/09/14] (current)
Line 1: Line 1:
 +====== Grasshopper 데이터 스트림 매칭 ======
 +
 +| {{:​legacy:​en:​ExplicitHistoryBanner.png}} |  //​**Grasshopper 플러그인 Wiki 페이지**//​ |
 +|  [[http://​www.mcneel.com|//​Robert McNeel & Associates//​]] |
 +
 +----
 +
 +> **Summary:​** //데이터 스트림 매칭 알고리즘에 대한 설명//
 +
 +\\
 +
 +===== 데이터 매칭=====
 +
 +데이터 매칭은 명확한 해결책이 없는 문제입니다. 이 문제는 다른 크기의 입력(input)에 구성요소가 액세스할 때 발생합니다. 점 사이에 선 세그먼트를 만드는 구성요소를 생각해 보십시오. 점 좌표를 지원하는 두 개의 입력 매개변수가 있게 됩니다(A 스트림과 B 스트림). 구성요소가 입력/​출력 매개변수 너머를 볼 수 없으므로,​ 이 매개변수가 어디에서 데이터를 수집하는지는 상관이 없습니다.:​
 +
 +\\
 +
 +{{:​legacy:​en:​StreamComparisonProblem.png}}
 +
 +\\
 +\\
 +
 +여러분이 보시는 것처럼, 여러 점 사이에 선을 그리는 방법은 다양합니다. Grasshopper 플러그인은 현재 이러한 매칭 알고리즘을 지원하지만,​ 더욱 많은 방법을 사용하실 수 있습니다. 가장 간단한 방법은 스트림 중 하나가 없어질 때까지 입력 개체를 일대일로 연결하는 방법입니다. 이것을 "​최단 리스트 Shortest List" 알고리즘이라고 합니다:
 +
 +\\
 +
 +{{:​legacy:​en:​StreamComparisonShortestList.png}}
 +
 +\\
 +\\
 +
 +"​최장 리스트 Longest List" 알고리즘은 모든 스트림이 없어질 때까지 입력 개체를 연결합니다. ​ 이것은 구성요소에 기본적으로 설정된 동작입니다:​
 +
 +\\
 +
 +{{:​legacy:​en:​StreamComparisonLongestList.png}}
 +
 +\\
 +\\
 +
 +마지막으로,​ "​교차 참조 Cross Reference"​ 방식은 모든 가능한 방법을 동원하여 연결합니다:​
 +
 +\\
 +
 +{{:​legacy:​en:​StreamComparisonCrossReference.png}}
 +
 +\\
 +\\
 +
 +이 방식은 출력된 결과의 수가 엄청날 수 있으므로,​ 잠재적으로 위험합니다. 더 많은 매개변수가 포함될수록 문제는 더욱 복잡해지며,​함될수록 문제는 더욱 복잡하게 얽힐 수 있으며, 휘발성 데이터 상속의 수가 늘어나게 되더라도 로직은 그대로 남게 됩니다.
 +
 +다음과 같은 데이터가 포함된 원격 매개변수에서 x, y, z 값을 상속하는 점 구성요소가 있다고 생각해 봅시다.
 +
 +\\
 +
 +X coordinate: {0.0, 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0}
 +
 +Y coordinate: {0.0, 1.0, 2.0, 3.0, 4.0}
 +
 +Z coordinate: {0.0, 1.0}
 +
 +\\
 +
 +{{:​legacy:​en:​DataCombinationSetup.jpg}}
 +
 +\\
 +\\
 +
 +이러한 데이터를 "​최단 리스트 Shortest List" 식에 병합하면,​ "Z coordinate"​ 에 오직 두 개의 값만 존재하므로 두 개을 점을 얻게 됩니다. 이것은 최단 리스트이므로,​ 솔루션의 범위를 정의합니다.:​
 +
 +\\
 +
 +| {{:​legacy:​en:​ShortestListViewport.jpg}} |
 +
 +\\
 +\\
 +
 +"​최장 리스트 Longest List" 알고리즘은 Y 와 Z 스트림에 있을 수 있는 가장 높은 값을 재활용하여,​ 열 개의 점을 만들어냅니다.:​
 +
 +\\
 +
 +| {{:​legacy:​en:​LongestListViewport.jpg}} |
 +
 +\\
 +\\
 +
 +"​교차 참조 Cross Reference"​ 는 X 의 모든 값을 Y 와 Z 의 모든 값과 연결하므로,​ 결과적으로 10×5×2 = 100 개의 점이 생깁니다:​
 +
 +\\
 +
 +| {{:​legacy:​en:​CrossReferenceViewport.jpg}} |
 +
 +\\
 +\\
 +
 +모든 구성요소가 이러한 세 가지 규칙 중 하나를 따르게 설정할 수 있습니다. (설정은 메뉴에 있습니다).
 +
 +\\
 +
 +이러한 규칙에 한 가지 큰 예외 사항이 있습니다. 일부 구성요소는 하나 이상의 입력 필드에 데이터 리스트가 있으리라고 기대합니다. 예를 들어, 폴리라인 구성요소는 입력된 점의 배열을 통해 폴리라인 커브를 만듭니다. 입력 매개변수에 점이 많을수록,​ 더 많은 수의 폴리라인이 생성되는 것이 아니라, 폴리라인의 길이가 길어지게 됩니다. 두 개 이상의 값 생성이 예측되는 입력 매개변수를 리스트 매개변수( List Parameters )라고 하며, 이들은 데이터 매칭 과정 중에 무시됩니다.
 +
 +
  
ko/labs/explicithistory/datastreammatchingalgorithms.txt · Last modified: 2015/09/14 (external edit)