11 Live link (라이브 링크)
11 Live link (라이브 링크)

Live linke (라이브 링크)

현재 플러그인 버전은 Grasshopper 스크립트 내 LUSAS 모델과 실행 중인 LUSAS 인스턴스 간 지속적인 업데이트를 지원하여 Grasshopper와 LUSAS 간의 워크플로우를 크게 향상시킵니다. Grasshopper를 소스, LUSAS를 대상으로 하는 단방향 연결이 설정되며, 이를 통해 Grasshopper 내 구성 요소에 대한 모든 수정 사항이 LUSAS 자체로 전송되어 미리 볼 수 있습니다.

라이브 링크를 설정하고 Grasshopper의 수정 사항을 LUSAS 모델에 실시간으로 업데이트하려면 ‘라이브 링크’ 컴포넌트를 사용합니다. 링크 프로세스에 대한 세부 사항과 Grasshopper와 LUSAS 간 문제 없는 업데이트를 보장하기 위한 LUSAS 컴포넌트의 올바른 사용법은 다음에서 설명합니다.

LUSAS 연결

현재 버전에서는 활성 모델 파일이 실행 중인 LUSAS 인스턴스가 하나만 열려 있을 때만 라이브 링크가 작동합니다. 따라서 라이브 링크 프로세스 시작 시 실행 중인 LUSAS 인스턴스가 없으면 ‘라이브 링크’ 컴포넌트가 두 가지 옵션을 제시합니다:

  • 새 모델: 빈 모델로 LUSAS를 자동으로 시작합니다.
  • 기존 모델 열기: LUSAS 모델 파일을 찾아 선택하면 LUSAS가 자동으로 시작되고 선택한 모델이 열립니다.

현재 플러그인 버전에서는 최신 LUSAS 버전만 자동으로 시작할 수 있습니다. 특정 LUSAS 버전이 필요한 경우 수동으로 시작하고 모델을 생성/열어 라이브 링크 프로세스를 실행하는 것이 좋습니다.

프로세스 개요

Grasshopper 컴포넌트의 특성상, 모든 데이터는 컴포넌트 솔루션이 실행될 때마다 재평가되므로 Grasshopper의 개별 개체를 LUSAS의 모델 개체에 매핑하는 것은 불가능합니다. 해결책으로, 플러그인은 Grasshopper 스크립트 내의 모든 ‘Line/ Surface’ 또는 ‘Rigid Link’ 컴포넌트에 대해 LUSAS에 그룹을 생성하며, 각 컴포넌트가 생성한 모든 LUSAS 객체가 포함됩니다.

이 그룹들은 자동으로 이름이 지정되며, 사용자가 수정, 이름 변경 또는 삭제해서는 안 됩니다.

선택된 링크 모드에 따라 플러그인은 링크된 LUSAS 모델에서 업데이트할 객체를 결정합니다. LUSAS에서는 업데이트 대상으로 선택된 객체가 먼저 그룹별로 삭제됩니다. 다음 단계에서 링크 작업은 업데이트된 객체 그룹과 그 속성 및 할당을 생성합니다. 따라서 Grasshopper 모델에서의 수정은 LUSAS에서 전체 개체 그룹(또는 여러 그룹)이 업데이트되도록 합니다.

모든 링크 작업에 대해 LUSAS에 실행 취소 작업이 기록되므로 모델을 마지막 업데이트 직전의 정확한 상태로 쉽게 되돌릴 수 있습니다.

링크 모드

사용 가능한 두 가지 링크 모드는 다음과 같습니다:

  • ‘Whole model’은 각 링크 작업마다 전체 모델을 업데이트합니다.
  • ‘Modifications only’은 각 링크 작업 시 수정된 객체만 업데이트합니다.

‘Whole model’ 링크 모드는 LUSAS와 Grasshopper 간의 링크를 “Reset(재설정)”하는 데 권장됩니다. 각 링크 작업 시 전체 모델을 업데이트하므로 모든 객체와 속성이 최신 상태로 유지됩니다. 소규모 모델의 경우 이 모드가 ‘Modification only’ 모드보다 현저히 느리지는 않을 수 있습니다.

‘Modification only’ 모드는 Grasshopper에서 수정된 객체만 확인하여 LUSAS의 모든 객체와 속성을 업데이트하지 않습니다. 이 모드는 대규모 모델에서 링크 작업 속도를 현저히 높일 수 있습니다. 그러나 LUSAS 모델 내 자동 생성된 객체 그룹 및 기타 정보에 의존하며, 극단적인 경우 이러한 정보가 손상될 수 있습니다. 예상치 못한 동작이 발생할 경우 ‘Whole model’ 모드를 사용할 수 있습니다.

구조 부재 업데이트

Grasshopper의 구조 부재는 ‘Point/Line/Surface/Volume 부재’ 컴포넌트로 생성되며, LUSAS의 객체(즉, 형상)와 해당 속성에 대응합니다. 링크 작업은 각 컴포넌트를 LUSAS의 그룹에 매핑하고, Grasshopper에서 컴포넌트 변경 사항을 반영하기 위해 해당 그룹의 모든 객체를 업데이트합니다.

‘Whole model’ 링크 모드가 선택된 경우 모든 객체 그룹이 업데이트됩니다. ‘Modification only’ 모드가 선택된 경우 플러그인은 수정된 컴포넌트를 식별하여 LUSAS에서 해당 컴포넌트에 속한 그룹만 업데이트하려 시도하므로 프로세스가 더 빠르고 효율적입니다. 그러나 한 컴포넌트의 구조적 구성 요소가 다른 컴포넌트의 구성 요소와 연관될 수 있습니다. 예를 들어, Line 부재가 동시에 Surface 부재의 가장자리를 형성하는 경우입니다. 이 경우 LUSAS에서 모든 관련 그룹이 업데이트됩니다.

속성 업데이트

속성은 재료, 단면, 메쉬와 같은 구조 부재 매개변수와 할당된 하중 및 지지대에 대해 LUSAS에서 생성됩니다. 속성 이름 매개변수는 일반적으로 전용 LUSAS 속성 구성 요소에 대해 선택 사항이지만, 링크 작업에는 필수입니다.

속성은 LUSAS 모델에서 이름과 유형으로 식별됩니다. 속성 이름이 수정되지 않은 경우 속성 매개변수(예: 재료 값)의 수정은 LUSAS에서 업데이트됩니다. 속성 이름이 수정되면 새 이름의 새 속성이 생성되고 이전 속성은 삭제되지 않습니다. 속성 구성 요소가 스크립트에서 완전히 제거된 경우에도 LUSAS 모델에서 삭제되지 않습니다.

이름이 변경된 속성이 LUSAS 모델에 이미 존재하는 속성과 충돌할 가능성이 있습니다. ‘Live link’ 컴포넌트는 이 검사를 수행하며, 기존 속성과의 충돌로 인해 생성할 수 없는 속성에 대해 오류를 보고합니다.

하중 및 경계조건 속성에 대한 고려 사항도 있습니다. 이들은 각각 ‘하중’ 및 ‘Support’ 컴포넌트를 사용하여 Grasshopper에서 정의되며, 다중 할당 컴포넌트의 입력으로 사용될 수 있습니다. 그러나 Point에 할당된 하중이 Line이나 Surface에 할당된 하중과 LUSAS에서 서로 다른 속성을 생성한다는 점은 명확하지 않습니다. 마찬가지로, 스프링이 있는 지지(Support)는 Point, Line, Surface에 할당될 때 LUSAS에서 서로 다른 속성을 생성합니다. 이러한 경우 서로 다른 속성명을 가진 별도의 ‘Load’ 및 ‘Support’ 컴포넌트를 사용해야 합니다.

해석 및 하중 케이스 업데이트

LUSAS의 해석 및 하중케이스에는 대부분의 속성 할당 정보가 포함됩니다. 따라서 플러그인은 할당 정보가 손실되지 않도록 주의하여, 링크 작업 시마다 해석 및 하중 사례의 자동 업데이트에 제약을 가합니다.

Grasshopper 스크립트 내 각 ‘Analysis’ 구성요소에 대해 LUSAS에서 해당 Loadcase와 함께 해석이 생성됩니다. Grasshopper에서 Analysis 명이 수정될 경우, 동일한 이름의 다른 Analysis가 존재하지 않으면 플러그인이 LUSAS 내 분석 이름 변경을 시도합니다. Grasshopper에서 Analysis가 완전히 제거되더라도 LUSAS에서는 삭제되지 않습니다.

Loadcase는 이름과 상위 해석으로만 식별되므로, LUSAS 모델에 동일한 이름의 Loadcase가 이미 존재하지 않는 경우에만 ‘Analysis’ 구성요소에 정의된 해당 해석 아래에 생성됩니다.

Loadcase의 이름 변경 또는 삭제는 LUSAS 내 Loadcase에 영향을 미치지 않습니다.

사용자 정의 기능과의 상호작용

LUSAS에서 라이브 링크 프로세스를 통해 자동 생성되는 객체(즉, 지오메트리)는 항상 병합 가능한 지오메트리로 생성됩니다. 이는 LUSAS의 ‘Model Properties’ 대화 상자에 정의된 지오메트리 병합 규칙에 따라 모델 내 사용자 정의 병합 가능 객체와 자동으로 병합됨을 의미합니다.

병합 ‘Action’ 및 ‘Tolerance’ 설정을 지정함으로써 병합 동작을 원하는 효과에 맞게 미세 조정할 수 있습니다. 이를 통해 사용자 정의 형상이 Grasshopper에서 링크된 형상과 원활하게 통합될 수 있습니다.

Grasshopper

01 Grasshopper 개요 및 LUSAS 플러그인

image

02 모델 단위

Grasshopper

03 표준 작업 흐름

Grasshopper

04 LUSAS의 형상 및 속성

image

05 스크립트 예시

image

06 구성 요소 입력 매개변수

image

07 구조 부재

image

08 하중 및 경계조건 적용

Grasshopper

09 NURBS 면 호환성

image

10 예제 스크립트

image

11 Live link (라이브 링크)

image

12 해석 결과

image

13 성능 팁

image

14 LUSAS 구성 요소 그룹

image

15 Member (구성 요소)

image

16 Attribute (속성)

image

17 Assignment (할당)

image

18 유틸리티

image

19 모델

image

20 결과 검토

image