CAD 프로그램 작성은 CAD에서 제공하는 API 함수를 프로그램 언어에 포함하여 CAD 작성이나 사용 과정을 자동화하는 활동이다. CAD 프로그램의 한 방법으로 매크로는 주로 CAD 활동을 기록한 후 이를 입력에 따라 반복적으로 실행하는 프로그램이다. FreeCAD는 파이썬 기반 CAD 프로그램과 매크로 프로그래밍 환경을 제공한다.
FreeCAD가 제공하는 파이썬 환경은 CAD 시스템 내부에 파이썬 셀과 개발환경인 IDEL을 내재했다고 생각하면 이해하기 쉽다(실제 IDEL과 셀을 내재해서 구현했다). FreeCAD는 사용자가 CAD 환경에서 내리는 모든 명령을 파이썬 셀에서 동작하는 파이썬 명령으로 실행한다(만약 CAD에서 파이썬 패널을 열어놓으면 명령이 실행되는 것을 확인할 수 있다- 즉, 파이썬 패널이 파이썬 셀 화면이다). 그러므로 만일 사용자가 CAD 명령을 파이썬 패널(파이썬 셀) 화면에 직접 Typing 하면 역시 실행된다.
결국 FreeCAD의 마크로는 파이썬 명령을 모아놓은 파일, 즉 파이썬 프로그램 파일이다. FreeCAD 마크로는 파이썬 명령어 형태로 실행되는 CAD 명령어를 파이썬 프로그램에 끼워 넣어 개발할 수 있는 프로그램 파일이다. 제공하는 파이썬 셀과 개발환경이 표준 파이썬을 사용하므로 기존 파이썬에서 사용했던 다양한 모듈을 사용할 수 있다. 예로 추가 사용자 입력을 받기 위해 Qt 환경을 사용할 수 있고, pymysql을 이용하여 데이터베이스에 연결할 수도 있다. 그러므로 파이썬 셀과 개발환경을 내재하여 API와 매크로를 제공하는 FreeCAD의 CAD 응용 프로그램 개발 환경은 매우 유연하고 강력하다.
다음으로 위의 내용을 보여주는 간단한 파이썬 CAD 응용 프로그램 개발 과정을 설명한다. 예는 사용자로부터 이름을 입력받아 이름이 포함된 인사 CAD 화면의 Message로써 출력하는 파이썬 프로그램이다. 우선 파이썬 쉘(파이썬 패널)에서 상호작용식 명령어 형식(Interpreter)으로 명령을 실행하고, 그 결과를 파이썬 프로그램 파일(매크로)로 실행시키는 예를 보여준다.
FreeCAD를 실행하면 사용자 환경이 나타난다.
우선 주 메뉴의 "보기 > Panels"에서 결과를 출력하는 "보고서 보기"와 파이썬 쉘인 "파이썬 콘솔"을 메인 화면에 출력되게 한다.
파이썬 콘솔이 파이썬 쉘임을 알수 있는 프롬프트가 출력되며, 사용자가 실행한 FreeCAD 명령이 파이썬 명령어로 실행된 것이 확인된다. 예로 Gui.runCommand('Std_ViewStatusBar',1) 명령이 실행되었다.
이제 파이썬 프로그램 파일을 작성할 수 있는(파이썬 IDLE 역할)을 하는 매크로 파일 작성을 위해 "매크로 > 매크로..."를 선택한다.
매크로 목록이 나타나고 새로 매크로 파일(파이썬 프로그램)을 만들기 위해 "만들기"를 선택한다.
파일 이름을 입력한다.
주 화면에 새로운 매크로 편집화면이 출력된다.
매크로 파일(파이썬 프로그램)을 작성하기 전에 파이썬 콘솔(파이썬 쉘)에서 프로그램할 명령어들을 테스트한다. 사용자 입력을 받을 Qt 패키지를 사용하기 위하여 아래 프로그램을 입력한다. 입력할 때 .을 찍으면 객체나 프로퍼티가 안내된다.
import PySide
prompt = PySide.QtGui.QInputDialog.getText(None,"Input","What is your name")[0]
output = "Hello "+prompt
FreeCAD.Console.PrintMessage(output)
파이썬 쉘에서 입력하는 명려어이므로 하나씩 실행된다. Qt GUI가 실행되는 화면이다.
마지막 FreeCAD의 메시지 창에 출력하는 명령까지 실행되었다.
이제 쉘에서 실행했던 명령을 매크로 편집 창에서 파이썬 프로그램으로 작성한다. 파이썬 쉘과 IDEL이 내재되었으므로 매크로 파일 저장(Ctr+S) 등을 그대로 사용할 수 있다.
파이썬 프로그램을 실행하면 입력 창에서 이름을 입력 받는다.
입력받은 이름에 Hello를 붙인 인사를 CAD 시스템에 Message 창에 출력한다.
저장된 매크로(파이썬 프로그램)를 실행시키고 싶으면, "매크로 > 매크로..." 메뉴로 가용 매크로 목록 화면으로 이동한다.
저장된 매크로를 더블클릭하거나 "실행"을 누르면 프로그램이 실행된다. 내용을 변경하고 싶으면 "편집"을 누르면 된다.
2023 EDBLab
'3D CAD' 카테고리의 다른 글
FreeCAD 파이썬 프로그램에서 사용자 Gui 만들기 (0) | 2023.05.02 |
---|---|
매크로로 작성한 3D CAD 모델 조립 과정 test (0) | 2023.05.02 |
FreeCAD에서 두가지 방법으로 부품 만들기 (0) | 2023.05.02 |
무료로 사용할 수 있는 전문가급 3D CAD, FreeCAD (0) | 2023.04.24 |