Q&A 마당은 텍 관련 질문/답변을 위해 만들었습니다.

  • 로그인 없이 자유롭게 글을 읽고 쓸 수 있는 철학은 처음과 같이 계속됩니다.
  • 질문 전에 아래를 읽어 보세요. 좋은 질문이 좋은 답을 받을 수 있는 좋은 방법입니다.
    • 질문에 맞는 제목을 붙이세요. 질문의 내용과 관련없는 "고수님", "긴급질문", "도와주세요"와 같은 제목은 답이 잘 올라오지 않습니다. 이 게시판에 올라오는 모든 글은 질문입니다. 굳이 [질문], [Q]를 적으실 필요도 없습니다.
    • 내용을 충실히 적어 주시고, 같은 상황을 재현할 수 있는 최소한의 예제가 같이 있어야 합니다.
    • 최소 예제는 "Minimal working example"을 읽어 보세요.
  • 파일을 첨부하실 때에는 가능한 압축하여 파일 크기를 줄여서 올려주시길 바랍니다.
  • 개인적으로 사용하신 글꼴이 들어 있는 경우, preparefont.sty에 관한 답변을 참조하세요.
  • 스팸 글을 막기 위하여 짧은 시간 내에 다시 글이 등록되는 IP를 막거나, 광고 글을 막기 위하여 금지어로 .com, .net 등을 설정하고 있습니다. 다소간의 불편함이 있으시더라도 양해 바랍니다.
    • 금지어에서 stackexchange, stackoverflow, ctan, overleaf, , github, google.com, gmail.com, .org, .io, sil.org, wiki.com, tistory.com등은 해제하였습니다.
  • MathJax를 이용한 수식조판을 사용하실 수 있습니다. 여기를 참조하세요.
  • 사용하는 편집기는 CKeditor입니다.
    • 편집기에서 [enter]를 누르면 <p> 태그가 들어가고, 문단으로 생각하고 한 줄을 비웁니다.
    • 글줄만 바꾸려면 [shift-enter]를 누르면 <BR> 태그가 들어가므로 용도에 맞게 나누어 쓸 수 있습니다.
    • 수식를 문서내에 삽입하시려면 에디터를 툴바에서 [소스]를 눌러 HTML로 입력할 수 있게 바꾸신 후 <pre> </pre> tag를 사용하셔서 <pre> 여러 줄의 수식 </pre>처럼 입력하시면 좋습니다.

tikz를 이용하여 3d gear/cog 그리기

2021.10.07 20:15

tt 조회 수:1149

Creating gears in TikZ - TeX - LaTeX Stack Exchange

2d 기어를 그리는 코드는 위 링크의 코드를 참고해서 아래처럼 했습니다. 아래의 t\i나 v\i, w\i는 노드를 표시하고 선을 이어주기 위해 제가 추가한 것입니다. 파란색 기어를 \gear 코드로 그린 다음 shift를 이용해서 갈색 기어를 뒤에 배치하고 각각의 노드를 빨간색으로 이은 것입니다. overleaf에서 아래 코드를 보면 

이렇게 표시됩니다. 그런데 최종적으로 제가 원하는 그림은 아래와 같이 레이어 개념이 적용되고 톱니 사이에 색이 들어간 것입니다. 그림판으로 해서 조잡하긴 한데 그건 양해를... 글자는 노드의 레이블 부분을 빈 칸으로 하면 지워지니 큰 문제가 아닌데, 색을 넣고 뒷부분을 가리는 법을 모르겠습니다. 좋은 방법이 있을까요? 정 안되면 Inkscape에서 색을 입힌 다음 tikz로 export 하는 방법도 생각은 합니다만 이렇게 하면 비슷한 기어가 수십개 나올때마다 같은 작업을 반복해야 해서 그다지 하고 싶지 않습니다.

 

 


\documentclass[a4paper]{oblivoir}
\usepackage{circuitikz}
\begin{document}
\begin{tikzpicture}
    % draw gear
    % #1 number of teeths
    % #2 radius intern
    % #3 radius extern
    % #4 angle from start to end of the first arc
    % #5 angle to decale the second arc from the first
    
    \newcommand{\gear}[5]{%
    \foreach \i in {1,...,#1} {%
        [rotate=(\i-3)*360/#1] (0:#2)
        arc(0:#4:#2) {[rounded corners=1.5pt] -- (#4+#5:#3) node[pos=1] (t\i) {t\i}
        arc(#4+#5:360/#1-#5:#3)} node[pos=0.5] {v\i} -- (360/#1:#2) node[pos=0] (w\i) {w\i}
        }%
    }
    \draw[blue] \gear{10}{2}{2.4}{18}{0};
    \foreach \i in {1,..., 6} {%
        \draw[red] (t\i.center) -- ++(30:2.5cm);
        \draw[red] (w\i.center) -- ++(30:2.5cm);
    }
    \begin{scope}[shift={(30:2.5cm)}]
    \draw[brown] \gear{10}{2}{2.4}{18}{0};
    \end{scope}
\end{tikzpicture}
\end{document}

번호 제목 글쓴이 날짜 조회 수
공지 Minimal Working Example을 첨부해주세요 [4] nanim 2015.06.23 229607
2722 R markdown - xelatex pdf compile 에러가 해결이 되지 않습니다. [6] file rlatex초보 2022.07.20 1181
2721 XeLaTeX에서 BibTex 관련하여 여쭙니다. [4] file 구름 2022.07.20 849
2720 visual studio code 의 latex editor 상 오류 [4] jack.p78928 2022.07.18 2257
2719 header에서 part, chapter, section을 전부 표현하려면?? [5] hwlee 2022.07.15 953
2718 tcolorbox 장절표제 - 한글과 같이 사용하면 botton align이 안맞습니다. [10] hwlee 2022.07.12 966
2717 Overleaf Rtex Rmarkdown 실행 시 명령어 및 출력 Layout 제어 안됨 [1] LATEX_RTEX 2022.07.01 1126
2716 Argument of � has an extra }. 에러 질문입니다. [2] file thesam 2022.06.23 1940
2715 texlive 2022 업데이트 후 oblivoir에 문제가 있는 듯 합니다. [4] file 강성찬 2022.06.21 1076
2714 overleaf에서 kotex를 쓰고 있는 사용자입니다 [2] 장승표 2022.06.19 1200
2713 tcolorbox 속 section 선언이 rightmark로 할당되지 않는 문제 [2] file bjorkii 2022.06.18 824
2712 신명조를 쓰려면 어떻게 해야 하나요? [3] 신명조는 왜 2022.06.17 10842
2711 여는 따옴표 뒤에서 줄 나눔 [2] file yihoze 2022.06.16 686
2710 포토샵 이미지 파일을 텍에서 쓰려면 [11] 판돌이 2022.06.06 774
2709 Reference입력 (.bib) 사용 [2] 보문동메아리 2022.06.06 684
2708 한 줄에 두 줄로 문장을 쓸 수 있도록 하려는데... [4] file teolsuk 2022.05.30 656
2707 "List of figures", "List of tables"의 Page numbering 문의 [5] 가좌 2022.05.26 622
2706 캡션 번호에서 점이 사라졌습니다. [2] 캡션 2022.05.24 616
2705 enumerate*에서 항목들의 수평 간격 일정하게 하기 (tabto) [3] file ksj 2022.05.10 646
2704 위아래 단위가 서로 영향을 주지 않게 하려면... [8] file 판돌이 2022.05.10 725
2703 tikzpicture사용시 "show background grid" 오류 [1] 버섯 2022.05.01 615



XE Login