発言者: 田中徹
発言日: 2006 11/18 13:31
開始角や分割数、描画の中心など指定できるようループ処理しました。
(相変わらずの粘着質m(__)m)
今回はすべての三角形を描画しています。
時間的に余裕ができたらカイトとダーツに挑戦したいとも思いますが
いつのことになるやら...です。
\documentclass[a4j]{jarticle}
\usepackage[papersize]{emathP}
\usepackage{emathPa}
\pagestyle{empty}
\begin{document}
\def\UniLen{8mm}%
\makeatletter%
\def\DrawTri#1#2{%
\Add{#1}{1}\IncX%
\Sub{#1}{1}\DecX%
\Add{#2}{1}\IncY%
\Sub{#2}{1}\DecY%
\azNuritubusi[0]{(#1,#2)(\IncX,#2)(#1,\IncY)(#1,#2)}%
\azDrawline{(#1,#2)(\IncX,#2)(#1,\IncY)(#1,#2)}%
}%
\def\DrawTriRe#1#2{%
\Add{#1}{1}\IncX%
\Sub{#1}{1}\DecX%
\Add{#2}{1}\IncY%
\Sub{#2}{1}\DecY%
\azNuritubusi[0.2]{(#1,#2)(#1,\IncY)(\DecX,\IncY)(#1,#2)}%
\azDrawline{(#1,#2)(#1,\IncY)(\DecX,\IncY)(#1,#2)}%
}%
\makeatother%
\begin{zahyou*}[ul=\UniLen](-6,6)(-6,6){}%
%%%%%%%%%%%%%%%%%%%%%%%%
\def\開始角{0}%
\def\終了角{360}%
\def\分割数{14}%
\def\中心点{(0,0)}%
\def\環数{5}%
%%%%%%%%%%%%%%%%%%%%%%%%
\Sub\終了角\開始角\描画角%
\Div\描画角\分割数\頂角%
\Ifor\Cnt{0}{\分割数}\Do{%
\calcval{\開始角+(\頂角*\Cnt)}\方向x%
\Add\方向x\頂角\方向y%
\rtenretu*{Ex(1,\方向x);Ey(1,\方向y)}%
\begin{azahyou}[\中心点]\Ex\Ey{}%
\Ifor\Ring{0}\環数\Do{%
\Add\Ring{1}\IncRing
\Ifor\X{0}\IncRing\Do{%
\Sub\Ring\X\Y
%\azkousi{3}{3}
\DrawTri{\X}{\Y}%
\ifnum\X=0\relax\else%
\DrawTriRe{\X}{\Y}%
\fi%
}% end of X
}% end of Ring
\end{azahyou}%
}
\end{zahyou*}
\begin{zahyou*}[ul=\UniLen](-6,6)(-6,6){}%
%%%%%%%%%%%%%%%%%%%%%%%%
\def\開始角{0}%
\def\終了角{180}%
\def\分割数{6}%
\def\中心点{(0,0)}%
\def\環数{5}%
%%%%%%%%%%%%%%%%%%%%%%%%
\Sub\終了角\開始角\描画角%
\Div\描画角\分割数\頂角%
\Ifor\Cnt{0}{\分割数}\Do{%
\calcval{\開始角+(\頂角*\Cnt)}\方向x%
\Add\方向x\頂角\方向y%
\rtenretu*{Ex(1,\方向x);Ey(1,\方向y)}%
\begin{azahyou}[\中心点]\Ex\Ey{}%
\Ifor\Ring{0}\環数\Do{%
\Add\Ring{1}\IncRing
\Ifor\X{0}\IncRing\Do{%
\Sub\Ring\X\Y
%\azkousi{3}{3}
\DrawTri{\X}{\Y}%
\ifnum\X=0\relax\else%
\DrawTriRe{\X}{\Y}%
\fi%
}% end of X
}% end of Ring
\end{azahyou}%
}%
%%%%%%%%%%%%%%%%%%%%%%%%
\def\開始角{180}%
\def\終了角{360}%
\def\分割数{6}%
\def\中心点{(2,0)}%
\def\環数{5}%
%%%%%%%%%%%%%%%%%%%%%%%%
\Sub\終了角\開始角\描画角%
\Div\描画角\分割数\頂角%
\Ifor\Cnt{0}{\分割数}\Do{%
\calcval{\開始角+(\頂角*\Cnt)}\方向x%
\Add\方向x\頂角\方向y%
\rtenretu*{Ex(1,\方向x);Ey(1,\方向y)}%
\begin{azahyou}[\中心点]\Ex\Ey{}%
\Ifor\Ring{0}\環数\Do{%
\Add\Ring{1}\IncRing
\Ifor\X{0}\IncRing\Do{%
\Sub\Ring\X\Y
%\azkousi{3}{3}
\DrawTri{\X}{\Y}%
\ifnum\X=0\relax\else%
\DrawTriRe{\X}{\Y}%
\fi%
}% end of X
}% end of Ring
\end{azahyou}%
}%
\end{zahyou*}%
\end{document}
▼関連発言
│
└◆141:タイリング^^ [dualignited] 11/17 18:07
├◆142:Re:タイリング^^ [tDB] 11/17 20:54
└◆143:Re:タイリング^^ [田中徹] 11/17 21:09
├◆144:Re[2]:タイリング^^ [kaji] 11/18 01:21
├◆146:Re[2]:タイリング^^ [田中徹] 11/18 13:31
└◆147:Re[2]:タイリング^^ [dualignited] 11/18 14:49<-last