하중을 여러 하중케이스에 일괄 복사

이 스크립트는 LUSAS Programmable Interface(LPI), Python 스크립트, 그리고 Visual Basic 스크립트가 LUSAS와 함께 어떻게 사용될 수 있는지를 보여주기 위한 용도로 제공됩니다.  LUSAS 소프트웨어의 구성 요소가 아니며, 자유롭게 편집하거나 수정해도 됩니다. 

스크립트들은 특정 버전의 소프트웨어 릴리스를 기준으로 작성된 것이며, 사용된 방식은 이후 버전의 소프트웨어에서도 여전히 유효할 수 있습니다.

작성연도 : 2011
LUSAS 에서 하중을 드래그-드롭으로 복사할 수 있지만, 모델이 큰 경우 속성 (예: 하중 적용 각 대상별 하중계수) 확인 시간이 소요됩니다. 많은 경우 구조 하중은 기본 할당 속성(예: 하중 계수 1.0 등)을 사용해 배정되는데, 이러한 경우 이 스크립트를 사용하여 시간을 단축합니다.

스크립트 내용

개요

LUSAS에서는 하중케이스(loadcase) 트리뷰에서 한 하중 또는 하중 폴더를 다른 하중케이스로 드래그하면서 ‘Ctrl’ 키를 누르면 하중 적용 상태를 다른 하중케이스로 복사할 수 있습니다.
그러나 각 하중 속성(load attribute)은 서로 다른 속성(예: 하중 계수 등)을 가진 개별 형상 요소(예: 선, 면 등)에 할당될 수 있으므로, 위 방식은 각 개별 할당 요소마다 속성을 확인해 가면서 복사하게 됩니다. 따라서, 많은 요소에 할당된 하중 속성(예: 모델의 모든 선, 면, 체적에 적용된 자중(gravity))의 경우, 이러한 복사 방법은 매우 많은 시간이 걸릴 수 있습니다.

많은 경우 구조 하중은 기본 할당 속성(예: 하중 계수 1.0 등)을 사용해 배정되므로, 개별 요소의 할당을 하나하나 반복할 필요는 없는데, 이러한 경우 이 스크립트를 사용할 수 있습니다.

이 스크립트는 선택된 하중들을 기본 하중 배정 속성을 사용하여 선택된 하중케이스들에 단순히 다시 배정(reassign)합니다.

순서

  • 복사하려는 하중을 포함하는 하중케이스를 활성화 상태로 지정합니다.
  • File → Script → Run Script 를 클릭한 후 스크립트 파일 “CopyLoads.vbs” 를 선택하고 OK를 누릅니다.
  • 다른 하중케이스에 배정하려는 하중들의 Load Attribute ID 번호(예: 1,2,4,7 등)를 입력합니다.
  • 또는 해당 하중케이스의 모든 하중을 선택하려면 ‘All’ 을 입력합니다. OK 클릭.
  • 하중을 배정하려는 첫 번째 하중케이스의 ID 번호를 입력하고 OK 클릭.
  • 하중을 배정하려는 마지막 하중케이스의 ID 번호를 입력하고 OK 클릭.
  • 지정된 범위 내에서 연속된 하중케이스 사이의 증가값(증분)을 입력합니다. (예: “2” 입력 시, 하나 건너서 배정됨) OK 클릭.

대화창

활용방법

모델러에서 File>Script>Run Script 를 실행하거나, 아래 그림에서 표시한 툴바를 사용하여 다운로드 받은 파일을 선택하여 실행합니다.

LPI 활용 기초 - 매크로 정의

LPI 란 ?

LUSAS Programmable Interfaace 를 의미하며,  반복적으로 수행하는 작업들에 대한 매크로를 정의하여 활용하는 것으로부터 LUSAS 를 플랫폼으로 하는 모델링, 해석, 설계검토, 도면작성 등의 전과정에 대한 자동화 프로그램 개발에도 활용할 수 있습니다.

작업 기록 개시

  • File > Script > Start Recording 

대화창에서 파일명을 지정하면, 이후 작업들이 VBS 혹은 JS 명령문 형태로 저장됩니다.

Line 1 개 정의

모델러에서 Line 1개을 정의해 봅니다.

작업 기록 종료

  • File > Script > Stop Recording 

기록을 종료합니다.

기록 내용 확인

아래와 같이 Line 을 정의하는 명령문 조합이 기록됩니다.

기록 내용 수정

아래와 같이 기록된 내용을 수정해 봅니다.
좌표를 변경시켜 가며, 총 10회 반복하도록 한 것입니다.

수정된 파일 실행

  • File > Script > Run Script 

수정된 파일을 실행시키면, 아래와 같이 10 개의 Line 이 작도 됩니다.