3200을 3으로 나누면 1066.666… — 창호 입면도 자동 작도 리습 (WC)

작성자

카테고리:

평면에 그어 둔 창호 폭 선 하나를 고르면, 칸이 나뉘고 세로 프레임이 서고 고정창 F까지 찍힌 입면이 한 번에 올라온다. 창호일람표에 들어갈 입면을 채우려고 만든 창호 입면도 자동 작도 리습, WC 이야기다.

캐드 창호일람표 입면을 손으로 계산해 그리던 방식과 리습으로 한 번에 자동 작도한 결과 비교

창호일람표는 한 프로젝트에서 몇 장씩 나오고, 그 안에 들어가는 창호 입면은 몇 십 짝씩 된다. 그런데 한 짝 한 짝이 어렵지는 않다. 어렵지 않은데 오래 걸린다. 그게 제일 지치는 종류의 일이더라.

창호 입면도, 뭐가 그렇게 오래 걸렸나

창호일람표 한 칸을 채우는 절차를 뜯어 보면 이렇다. 평면에서 창호 폭을 재고, 그걸 몇 칸으로 나눌지 정하고, 나눈 폭을 계산하고, 세로 프레임을 세우고, 위아래 가로대를 걸고, 각 칸 안쪽에 유리 라인을 넣고, 고정창에는 F를 적는다.

문제는 계산이다. 3200mm를 세 칸으로 나누면 1066.666…이 나온다. 도면에 그대로 쓸 수 없는 숫자다. 그러니 1070으로 올리고, 세 칸을 다 1070으로 하면 3210이 되어 10mm가 삐져나오니, 마지막 칸만 1060으로 줄여서 맞춘다. 이 조정을 창호 하나마다 손으로 한다. 계산기를 켜고, 옮겨 적고, 옮겨 적은 숫자를 다시 의심한다.

문이 섞이면 한 번 더 복잡해진다. 문 폭 1100은 고정이니 전체에서 빼고 남은 길이를 창문 칸으로 다시 나눠야 한다. 그리고 문틀 두께를 어느 쪽으로 붙일지가 남는다. 문 폭 1100이라고 적으면 그건 문틀 바깥에서 바깥까지를 말하는데, 창문 칸의 세로 프레임은 보통 중심을 기준으로 잡는다. 기준이 다른 두 규칙이 한 도면 안에서 만나는 것이다. 이걸 매번 머리로 다시 정리하다 보면 어느 순간 한 짝이 어긋나 있다.

어떻게 풀었나 — 선 하나에서 나머지를 세운다

시작점을 평면에 이미 그어 둔 선으로 잡았다. 창호 폭은 어차피 평면에 있으니, 그 선을 고르면 길이는 물어볼 필요가 없다. 레이어도 그 선에서 그대로 따온다. 기준 객체에서 속성을 물려받는 방식은 스타일 복제 리습을 만들면서 재미를 봤던 방법인데, 여기서도 같은 손을 썼다.

계산은 두 가지 규칙으로 정리했다.

10mm 단위로 올리고, 마지막 칸이 자투리를 먹는다. 창문 한 칸의 폭을 10 단위로 올림 처리하고, 그렇게 해서 넘친 만큼을 마지막 칸에서 뺐다. 앞쪽 칸들은 전부 깔끔한 숫자가 되고, 오차는 한 칸에 몰린다. 내가 손으로 하던 방식 그대로다. 다만 이제는 틀리지 않는다.

문은 바깥에서 바깥, 창문은 중심에서 중심. 앞에서 말한 기준 충돌은 프레임을 세울 때 좌우를 보고 결정하게 했다. 왼쪽이 문이고 오른쪽이 창문이면 프레임 두께를 문 쪽으로 붙이고, 반대면 반대로 붙이고, 양쪽이 같은 종류면 중심에 걸친다. 그래야 문 폭에 적은 숫자와 도면에 그려진 문틀 바깥 치수가 일치한다.

그리고 하나 더 넣은 게 있다. 문 위치를 물어보기 전에 총 몇 칸이 되는지를 먼저 알려 준다. 전에 만든 버전은 칸 번호부터 물어봤는데, 나조차도 “지금 총 몇 칸이지?”를 세고 있더라. 지금은 이렇게 뜬다.

▶ 총 5칸 (문 1칸, 창문 4칸)으로 분할 예정입니다.

그 다음에 문이 몇 번째 칸에 들어가는지 묻는다. 순서만 바꿨을 뿐인데 헷갈릴 일이 없어졌다.

창호 입면도 자동 작도, 뭐가 달라졌나

한 짝에 몇 분씩 걸리던 게 클릭 몇 번으로 끝난다. 다만 시간보다 크게 느껴진 건 다른 쪽이었다.

계산을 안 하게 되니 검산도 안 하게 됐다. 예전에는 그려 놓고 나서 치수를 하나씩 짚어 가며 합이 맞나 확인했다. 그 확인 작업이 통째로 사라졌다. 마지막 칸 자투리도, 문틀 두께 방향도, 규칙을 코드에 한 번 박아 두니 매번 같은 답이 나온다.

세로 프레임과 가로대, 유리 라인, 고정창 F 문자까지 한 번에 나오니 창호일람표를 채우는 감각이 달라졌다. 그리는 일이 아니라 확인하는 일이 됐다.

사용 환경

  • ZWCAD 2023 기준으로 개발하고 실전에서 검증했다. AutoCAD 호환은 확인해 보지 않았다.
  • 도면 단위는 mm 기준이다.
  • 고정창 문자(F)는 itxt 레이어에 들어간다. 이 레이어가 없으면 자동으로 만든다.
  • 문자 스타일은 Standard로 되어 있다. 사무실 전용 스타일을 쓴다면 파일 안의 (7 . "Standard") 두 줄만 바꾸면 된다.
  • 리습 파일을 캐드로 불러오는 방법은 리습 불러오는 네 가지 방법에 정리해 두었다.

어떻게 쓰나

명령어는 WC다.

  1. 평면의 창호 폭 선을 선택한다. 미리 골라 두고 명령을 쳐도 되고, 명령을 친 뒤에 골라도 된다. 선(LINE) 또는 폴리선을 받는다.
  2. 전체 분할 칸 수를 입력한다. 그냥 엔터를 치면 한 칸이 1200mm를 넘지 않는 선에서 알아서 나눈다.
  3. 문 개수를 입력한다. 없으면 0 또는 엔터다.
  4. 문이 있으면 문의 폭과 높이를 묻는다. 기본값은 1100 × 2100이고, 한 번 바꾸면 그 도면 작업 내내 기억한다.
  5. 총 칸 수 브리핑이 뜬다. 문이 들어갈 칸 번호를 띄어쓰기로 입력한다. 왼쪽부터 1번이고, 두 개면 1 3처럼 쓴다.
  6. 전체 입면 높이(H)와 프레임 두께를 입력한다. 기본값은 2400과 45이며 역시 기억한다.
  7. 입면 바닥 왼쪽 아래 기준점을 클릭하면 그 자리에 입면이 올라간다.

문이 들어간 칸에는 문짝 상단 가로대와 개폐 방향 대각선이 같이 그려지고, 문 높이 위로 남는 공간이 있으면 상부 고정창이 자동으로 만들어진다.

아직 안 되는 것

  • 창호 스타일이 하나로 고정되어 있다. 세로 프레임으로 칸을 나누고 각 칸에 유리 라인을 넣는 방식, 딱 그 형태만 나온다. 커튼월처럼 분할 규칙이 다르거나 프레임 구성이 다른 창호를 그리려면 이 도구로는 어렵다.
  • 2단·3단 창문은 아직 안 된다. 지금은 좌우 분할만 한다. 위아래로 단이 나뉘는 창호는 별도로 개발할 생각이다.
  • 고정창 F가 모든 창문 칸에 들어간다. 여닫이인지 미서기인지 구분하지 않는다. 여는 창이 있는 칸은 F를 지우고 따로 표기해야 한다.
  • 창문 칸의 개폐 방향 표기는 직접 넣어야 한다. 문 칸의 대각선은 자동으로 그려지지만, 창문 쪽 개폐선은 그리지 않는다.
  • 꺾인 폴리선은 폭이 아니라 길이 합으로 잡힌다. 반드시 직선 하나를 고른다. 꺾임이 있는 폴리선을 고르면 전체 세그먼트 길이가 더해져 엉뚱한 폭이 나온다. 어차피 창호선이 꺾이는 지점에서는 대개 프레임으로 창호가 나뉘어야 하니, 하나씩 골라서 그리는 편이 합리적이다.
  • 문 위치 번호를 총 칸 수보다 크게 넣으면 폭 합이 어긋난다. 브리핑에 뜬 칸 수 안에서 고른다.
  • 문 폭은 한 번만 입력받는다. 문이 여러 칸이어도 전부 같은 폭으로 들어가므로, 칸마다 다른 폭을 주는 건 안 된다.
  • 한 칸에 문 두 짝(양개)은 그리지 않는다. 한 칸에 문 하나가 원칙이다.
  • 입면은 항상 수평으로 그려진다. 평면의 선이 비스듬해도 입면은 기준점에서 오른쪽으로 반듯하게 선다. 폭만 가져오기 때문이다.

받아 가기

쓰다가 막히거나 이상하게 동작하는 부분이 있으면 댓글로 남겨 주시면 좋겠다.

짧은 회고

이 도구를 만들면서 제일 오래 붙잡고 있었던 건 그리는 코드가 아니라 문틀 두께를 어느 쪽으로 붙이느냐였다. 손으로 그릴 때는 아무 생각 없이 하던 판단이었는데, 막상 말로 옮기려니 내가 어떤 규칙을 쓰고 있었는지 설명이 안 됐다. 한참 도면을 들여다보고 나서야 “문은 바깥 기준, 창문은 중심 기준”이라는 문장이 나왔다.

자동화한다는 게 결국 이런 일인 것 같다. 컴퓨터한테 시키려면 내가 뭘 하고 있었는지 먼저 알아야 한다. 몰라도 손은 알아서 움직였는데, 코드는 봐주는 게 없다.

한 가지 더. 처음 버전은 문 위치부터 물어봤다. 내가 만들고 내가 헷갈렸다. 총 칸 수를 먼저 알려 주는 줄 한 줄 넣는 데 몇 분 걸리지 않았는데, 그 몇 분이 이 도구를 쓸 만하게 만들었다. 결국 도구의 질은 알고리즘보다 물어보는 순서에서 갈리는 경우가 많더라.


이 리습은 개인·비영리 목적으로 자유롭게 쓸 수 있고, 출처(Talkative Archi)를 표기하면 수정도 가능하다. 무단 재배포와 상업적 판매는 금지하며, 사용에 따른 책임은 사용자 본인에게 있다. 자세히

코멘트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

acaddoc (2) APPLOAD (2) AutoLISP (32) BRS (1) QT (16) RRAV (2) TRA (2) TRB (2) ZWCAD (32) 거리 측정 (1) 건축실무 (4) 기준점 (1) 단축키 (2) 도곽 (3) 도면 검수 (2) 도면 편집 (2) 러브소나타 (1) 리습 (32) 멀티플롯 (2) 블록 (3) 시편 (6) 에스겔 (10) 워크플로우자동화 (3) 일본선교 (1) 창호도 (2) 창호일람표 (2) 캐드 자동화 (31) 평행선 (2) 폴리라인 (1) 히브리서 (1)