코딩 공부를 하기로 마음먹고 어떻게 공부를 하는 게 효율적 일지 검색을 해보면 많은 사람들이 하나같이 입을 모아 하는 소리가 바로 "뭐라도 하나 만들어봐!"이다.
개인적으로도 3년 전에 1000페이지가 넘는 두꺼운 C# 책을 호기롭게 샀다가 몇 장 읽고 바로 포기했던 기억이 있는데... 다시 처음부터 끝까지 볼 자신이 없어서 사람들의 조언대로 뭐라도 하나씩 만들어 가면서 몸으로 체득하기로 했다.
그래서 먼저 무엇을 만들면 좋을지 찾아봤는데 나 같은 초보자들에게 추천하는 첫 번째 뭐라도? 는 바로 계산기였다. 사실 계산기는 Revit API라기보다는 기본 사칙연산인 더하기 빼기 곱하기 나누기만 사용하면 만들 수 있었는데....
그래도 나는 건축업에 종사하고 있으니 일반 계산기보다는 주차 경사로의 길이나 높이를 계산할 수 있는 기능을 만들어 보기로 했다. (물론 이걸 만들어도 큰 도움은 안 되겠지만... 아주 조금이나마 업무에 도움이 되기를 희망하며....)
먼저 위 이미지처럼 Excel로 대충 어떤 UI를 만들고 어떤 기능이 필요할지 대략 구상을 했다. 타깃 단면 높이와 구배조건(완화, 직선, 곡선)을 입력하고 길이나 높이값을 입력해가며 조건 충족 여부를 계산하는 방식이다.
인터페이스는 WinForm과 WPF 중에서 고민하다가 WPF가 더 최신 방식이라고 해서 WPF로 만들었고 1차적으로 완성한 계산기의 형태는 아래 이미지와 같다. (WPF 코드와 구현 코드는 정리해서 다시 업로드하겠습니다)
사실 코드를 뜯어보면 많이 지저분하지만 내가 구현하고 싶은 기능들을 시행착오를 거쳐가면서 만들었기 때문에 이해하는데 훨씬 도움이 많이 된 것 같다. 추가적으로 나중에는 주차 경사로 패밀리와 연동해서 패밀리 타입이 생성되는? 기능이 있으면 좋을 것 같다는 생각이 들었는데... 다음에 계산기를 업데이트하게 되면 한번 도전해봐야겠다.
<아래 영상은 간단한 사용 예시 입니다>
'Revit API' 카테고리의 다른 글
[Revit API] FindCAD Imported CAD? or Linked CA (0) | 2022.12.09 |
---|---|
[Revit API] MultiCopy 뷰 다중으로 복사하기 (1) | 2022.12.08 |
[Revit API] Revision 관리 플러그인 (0) | 2022.09.01 |
[Revit API] 일람표 Excel로 내보내기 (0) | 2022.08.22 |
[Revit API] A1스케일 A3스케일 병기하기 (0) | 2022.07.26 |