영역 채우기와 빗금 패턴
주석과 스타일링 / 영역 채우기와 빗금 패턴
3.4 영역 채우기와 빗금 패턴
시험지는 대다수 흑백으로 인쇄되므로 면을 구분할 때 색상 대신 빗금 패턴을 필수적으로 사용합니다. shade: 지시어는 단색 면 채우기뿐만 아니라 정밀한 선형 빗금과 교차 빗금을 생성합니다.
단색 반투명 면 채우기
가장 기초적인 영역 강조 방식으로, 도형의 내부를 연한 단색조로 채웁니다.
shade: poly(A--B--C), fill=#black/1010퍼센트 명도의 검은색으로 삼각형 내부를 칠합니다. 컬러 교재를 편집할 때는 fill=#blue/15처럼 옅은 색조를 부여합니다.
선형 빗금 패턴
특정 각도로 기울어진 평행선들을 일정한 간격으로 채워 넣습니다.
shade: poly(A--B--C), hatch=(45deg, step=2mm), stroke=0.8pthatch 속성에 빗금의 각도와 간격을 순서대로 묶어 전달합니다. 45deg는 빗선이 기울어질 각도이며, step=2mm는 선과 선 사이의 물리적 거리입니다. stroke=0.8pt는 빗금을 이루는 선들의 굵기를 뜻합니다.
수학 시험지의 기본 빗금은 45도 각도에 간격 1.5mm에서 2mm 사이가 시각적으로 가장 안정적입니다.
격자 교차 빗금
두 방향의 빗선이 서로 교차하는 그물망 형태의 패턴을 만듭니다.
shade: poly(A--B--C--D), pattern=crosshatch(step=3mm), stroke=0.5pt, color=#graypattern=crosshatch 속성을 사용하면 45도와 135도로 교차하는 미세 선망이 생성됩니다. 두 개 이상의 조건 영역이 중첩되는 부분을 명확히 구분할 때 활용합니다.
두 곡선 사이의 영역 빗금 채우기
해석학 문항에서 두 곡선으로 둘러싸인 영역의 넓이를 시각화할 때 사용합니다. 다각형 객체를 수동으로 따낼 필요 없이 곡선 식과 적분 구간을 넘기면 영역을 자동으로 계산해 빗금을 칩니다.
f = -x^2 + 4
g = x + 2
shade: between(f..g, x in -2..1), hatch=(60deg, 1.5mm), stroke=0.6pt이 코드는 위쪽 곡선 f와 아래쪽 곡선 g 사이의 영역 중 좌표가 부터 까지인 구간을 정확히 오려내어 60도 기울기의 빗금으로 채웁니다. 경계선이 직선이 아닌 복잡한 3차 곡선이나 초월함수 곡선이어도 정확한 수치 적분 경계를 찾아내어 빗금을 채워 넣습니다.
---
예제
배운 모든 주석 요소를 결합하여 직각삼각형과 그 내부 수선의 발, 각도, 변의 길이를 나타내는 완벽한 문제지 도판을 구성합니다.
@canvas: width=90mm, height=70mm, dpi=300
@view: [-1, 6], [-1, 5]
// 꼭짓점 정의
A = (0, 0)
B = (5, 0)
C = (0, 3.75)
H = proj(A, B--C)
// 삼각형 본체 및 수선
poly: A--B--C, stroke=1.5pt
line: A--H, stroke=1pt, dash=(3pt, 2pt)
// 수학 기호 주석
right_ang: B--A--C, size=8pt
right_ang: A--H--B, size=7pt
ang: C--B--A, "$\theta$", r=18pt
// 치수선
dim: A--B, "5", off=-14pt, arrow=both
dim: C--A, "$h$", off=-14pt, arrow=both
// 밑변 부분 빗금 영역 강조
shade: poly(A--B--H), hatch=(45deg, 1.8mm), stroke=0.5pt
// 꼭짓점 라벨
dot: A"A"(sw), B"B"(se), C"C"(nw), H"H"(ne)이 코드는 실제 인쇄물에 바로 들어갈 수 있도록 외곽선, 점선 보조선, 직각 마크 두 개, 각도 라벨, 두 개의 치수선, 내부 빗금, 8방위 꼭짓점 라벨이 한 치의 오차나 겹침 없이 렌더링됩니다.