연결 입력 요소 선택 및 그룹화

구조 데이터, 그룹화 및 정렬 노드를 사용하여 Dynamo 연결 입력 요소를 선택하고 그룹화하는 방법을 알아봅니다.

주: Dynamo를 사용하여 철골 연결을 배치할 강철 프레임 요소를 선택할 때 선택한 요소의 끝에 관계없이 프레임 요소 리스트가 선택 노드에서 출력됩니다.

구조 데이터 노드

Dynamo 철골 연결 스크립트의 첫 번째 Dynamo 노드는 Model.GetStructureData입니다. 이 노드에는 입력이 없습니다. Dynamo 노드의 출력은 구조 데이터 요소 리스트(보 및 기둥)입니다. 이 예에서는 출력은 [B1, B2, B3, B4]입니다.

주: Model.GetStructureData 노드를 사용하는 경우 Dynamo에서 스크립트를 작성하거나 편집할 때 각 선택 항목을 변경하려면 노드를 삭제한 후 다시 추가하여 구조 데이터 요소 리스트를 새로 고쳐야 합니다. Input.SelectStructureData 노드를 사용하는 경우에는 선택 항목과 함께 Dynamo 스크립트를 저장하지 않는 것이 좋습니다.


그룹화 노드

스크립트의 두 번째 Dynamo 노드는 ConnectionNode.FromStructure입니다. 이 노드는 구조 데이터 요소를 입력으로 사용합니다. Dynamo 노드의 출력은 그룹화 알고리즘을 사용하여 결정된 연결 노드 리스트입니다. 연결은 연결 노드에서만 설정할 수 있습니다. 이 예에서 요소 B1, B2, B3, B4를 선택하면 [B1, B2, B3, B4]가 포함되고 각 구조 데이터 요소에 구역의 끝 유형이 있는 연결 노드가 출력됩니다.



배열 노드

스크립트에 추가할 다음 Dynamo 노드는 ConnectionNode.SubNodesOfSize입니다. 이 노드는 그룹화 노드로 작성된 연결 노드 리스트 및 원하는 구역 수를 입력으로 사용합니다.

이 예에서는 헌치로 볼트 연결된 프레임의 무릎에서 구조 데이터 요소를 입력으로 사용하므로 둘 이상의 구역이 있는 연결 노드가 있어야 합니다. 이 Dynamo 노드의 출력은 연결 하위 노드 리스트(연결 노드 리스트의 리스트)입니다. 연결 하위 노드는 연결 노드에 구조 데이터 요소를 noOfZones회(이 예의 경우 2) 사용하여 배열한 것입니다.



주: 일부 스크립트(예: Apex 헌치 또는 기타 대칭 연결)의 경우 이 Dynamo 노드에 의해 생성된 배열로 인해 알고리즘이 [Beam1, Beam2] 및 [Beam 2, Beam1] 연결 하위 노드 모두를 유효한 상황으로 식별합니다. 따라서 스크립트는 첫 번째 연결 하위 노드에 연결을 추가하므로 식별된 두 번째 하위 노드가 "Existing" 출력에 추가되며, 이로 인해 연결을 배치하는 Dynamo 노드에 수신된 입력보다 많은 연결 노드가 출력으로 있게 됩니다. 이를 해결하려면 "ConnectionNode.RemoveDuplicates"를 사용하여 중복된 연결 하위 노드(동일한 요소가 포함된 연결 노드)를 제거합니다. 이 Dynamo 노드를 사용하는 방법에 대한 자세한 내용은 Apex 헌치 샘플 스크립트를 참고하십시오.
이 예에서 입력은 [B1, B2, B3, B4] 및 숫자 2를 포함하는 연결 노드입니다. 출력은 두 구조 데이터 요소의 모든 하위 세트에 대한 연결 노드가 됩니다.
입력 출력

[B1, B2, B3, B4]

2



4개의 요소가 있는 이 연결 노드에서 두 요소의 연결을 설정할 때 가능한 하위 세트는 위와 같습니다.

다음 단계: 연결 입력 요소 필터링