/
(KR) MIDAS Civil with Python

(KR) MIDAS Civil with Python

1. Python 개발환경 설정

1.1 설치파일

설치파일은 파이썬 공식 웹사이트에서 내려받습니다.

Welcome to Python.org

Python 공식 웹사이트

* 윈도우 이외에 OS 환경을 위한 여러 설치파일을 확인할 수 있습니다.

 

1.2 파이썬 설치

Python을 설치합니다.

Python 설치화면

아래 편집기는 더 편리한 Python 개발환경을 제공합니다.

Recommended Code Editors for Python

(본 설명서는 Visual Studio Code를 사용하여 작성되었습니다.)

 

1.3 추가 모듈 설치

Python에 Request 모듈을 설치 해야, MIDAS/Civil API를 제어할 수 있습니다.

Request 모듈은 다음과 같이 설치가 가능합니다.

 

프로그램 하단의 터미널 창이 보이지 않는다면, Menu-Terminal-New Terminal 을 이용하여, Terminal 창을 실행합니다. 아래 텍스트를 터미널 창에 붙여 넣은 후, Enter를 눌러줍니다.

 

py -3 -m pip install requests

 

 

2. Python을 이용하여 MIDAS/Civil API 작동해보기

간단한 예제를 통해 동작 방식을 살펴봅니다.

2.1 MIDAS/Civil API 실행하기

API와 통신하기 위한 Civil은 다음과 같이 실행 가능합니다.

 

  • Python Code

import subprocess import time p = subprocess.Popen([r"C:\\CivilBuild-API\\CVLw.exe", "/API"]) ## wait until civil api process ready time.sleep(10)

MIDAS/Civil 실행 파일의 경로는 각자 사용자에 맞게 수정하여 사용합니다.

 

2.2 MIDAS/Civil API 문서 열기

MIDAS/Civil을 실행 시킨 후 이미 작성된 문서를 여는 동작을 실행해보겠습니다.

 

  • Python Code

import requests CIVIL_API_URL = "http://127.0.0.1:10024" ## DOC.OPEN requests.post(CIVIL_API_URL + "/doc/open", json={"Argument":"C:\\FSM 1Cells Box.mcb"})

MIDAS/Civil 파일의 경로는 각자 사용자에 맞게 수정하여 사용합니다.

URL 주소는 API 를 통한 MIDAS/Civil 실행시 동작하는 APIServer.exe에서 확인할 수 있습니다.

 

2.3 MIDAS/Civil API 해석 실행 및 프로그램 종료

불러온 MIDAS/Civil 파일의 해석을 실행하고 프로그램을 종료해보겠습니다.

 

  • Python Code

 

3. 작동 가능한 명령어

3.1 DOC 명령어

DOC 명령어는 document 관련 명령어로 주로 문서를 생성/열기/닫기 등의 동작을 제어합니다.

 

  • 문서 열기 : “/doc/open”

 

  • 새 문서 열기 : “/doc/new”

 

  • 문서 닫기 : “/doc/close”

 

  • 해석 실행 : “/doc/anal”

 

  • 문서 저장 : “/doc/save”

 

  • 새 이름으로 저장 : “/doc/saveas”

 

  • Json 데이터 Import : “/doc/import”

 

  • Json 데이터 Export : “/doc/export”

 

3.2 DB 명령어

DB 명령어는 데이터 이름에 대한 요청입니다. 각각의 데이터 이름에 대하여 GET/POST/PUT/DELETE 메소드가 구현되어 있습니다.

 

  • GET DB Method : 열려진 문서의 데이터를 조회합니다.

 

예제1: 다음 예제 코드는 열어진 문서로부터 모든 Node 정보를 불러와 , 특정한 Node 정보를 출력합니다.

 

 

예제2: 다음 예제 코드는 열어진 문서로부터 특정한 Node 번호의 정보만 불러옵니다.

 

  • Post DB Method : 열려진 문서의 데이터를 추가합니다. 이미 Key가 있을 경우 실패합니다.

 

다음 예제는 열어진 문서에 특정 Node를 추가하고, Node 정보를 불러와 출력하는 예제입니다.

 

  • Put DB Method : 열려진 문서의 데이터를 변경합니다. 존재하지 않는 key에 대한 요청 시 실패합니다.

 

다음 예제는 특정 노드의 좌표를 변경하는 예제입니다.

 

  • Delete DB Method : 열려진 문서의 데이터를 삭제합니다. 존재하지 않는 Key에 대한 요청 시 실패합니다.

 

예제1 : 특정 Node를 삭제하고, 삭제된 Node의 정보를 출력합니다.

 

예제2 : 전체 Node를 삭제합니다.

 

3.3 POST 명령어

Post는 명령어는 해석 실행 후 후처리 관련한 명령어입니다.

 

  • 결과 테이블 요청 : “/post/table”

예제1 : 다음 예제는 열려진 문서에서 해석 결과를 가져와 Json 포맷으로 저장하는 예제입니다.

 

 

예제2 : 열려진 문서에서 해석 결과를 불러오고, 1번째 결과를 출력하는 예제입니다.

 

3.4 VIEW 명령어

View 명령어는 이미지에 관련한 명령어입니다.

 

  • Diagram 요청 : “/view/capture”

Diagram을 요청하고, 원하는 경로에 저장하는 예제입니다.

 

Related content

(KR) MIDAS Civil with VBA
(KR) MIDAS Civil with VBA
More like this
Midas Open API (Application Programming Interface)
Midas Open API (Application Programming Interface)
More like this
Civil API Build Installation Instructions
Civil API Build Installation Instructions
Read with this
MIDAS Gen API with Python
MIDAS Gen API with Python
More like this
(KR)MIDAS Civil with VBA
(KR)MIDAS Civil with VBA
Read with this
(EN) MIDAS Civil with Python
(EN) MIDAS Civil with Python
More like this