\iffalse
Copyright 2022 Jiro Senju

This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
any later version.

This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this package.  If not, see <http://www.gnu.org/licenses/>.
\fi

\section{�ƻҴط��������� (\texttt{ft-gens.dtx})}

\DescribeMacro{\pcdef}
\cmd{\pcdef
  \marg{new box name}
  \marg{parent box name}
  \marg{child box name}
}
\medskip

�ƻҴط���parent-child relationship�ˤ�������롣

���ꤵ�줿\meta{parent box}��\meta{child box}���������������box��
\meta{new box name}��������롣

\meta{parent box}�˻���Ǥ���Τϡ��ҤؤĤʤ����������ܤ�����box�˸¤�
��롣�㤨�С�|\maleline|�������ˤ�°����Ϳ��
|\indvdldef|�Ǻ�������box�Ǥ��롣
�ޤ�\meta{child box}�˻���Ǥ���ΤϿƤؤĤʤ����������box�˸¤��롣
�㤨�С�child mark��|\biological|����ꤷ��|\indvdldef|�Ǻ�������box�Ǥ��롣

|\pcdef|�ϼ��˵󤲤�|\gensdef|�δʰ��ǤǤ��롣
\bigskip

\DescribeMacro{\gensdef}
\cmd{\gensdef
  \marg{new box name}
  \marg{parent box name}
  \marg{list of connection-pair}
}
\smallskip

\cmd{connection-pair :=\\
\hspace{4em}\marg{individual box name in the parent box}\\
\hspace{4em}\marg{child box name}
}
\medskip

������δط���generations�ˤ�������롣

\meta{connection-pair}�Ȥϡ��ʲ��Τ�Τ��Ȥˤ�����ΤǤ��롣

\begin{enumerate}
\item
  \marg{parant box}��ο�ʪbox̾
\item
  \marg{child box}̾
\end{enumerate}

������Ĥ�box��\meta{box name}|nameCY|Ʊ�Τ�������롣
\smallskip

\meta{child box}�ˤϡ����Ҥ�|\pcdef|Ʊ�ͤˡ��ƤؤĤʤ�������ʰ��ܡ˻�
��box��������Ǥ��ʤ�����\meta{parent box}�ˤϻҤؤĤʤ�������ʣ��
���Ĥ�ΤǤ����Ǥ��롣�ɤ����Ȥɤ�\meta{child box}��Ĥʤ�������ꤹ
��Τ�\meta{connection-pair}�Ǥ��롣

��������box��child mark�Ͽ�box�Τ���˰��פ��롣

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\clearpage
\subsection{��}

\begin{enumerate}
\itemsep=\bigskipamount
\item
\srcfig{fig3Hidetada}

\clearpage
\item
\srcfig{fig3Ietsuna}

\clearpage
\item
������Ĥ�Ĥʤ�����Ҳ𤷤Ƥ�����
\begin{enumerate}
\item
�Ҥ��������Ĥ�é��ʤ���������롣���ʤ��������2�θ��1��������롣

\item
����2���ѹ������פǤ��롣

\item
����1��

\begin{lstlisting}[xleftmargin=1em]
\pcdef{����ƻ�}{����}{����λ�}
\end{lstlisting}

��

\begin{lstlisting}[xleftmargin=1em]
\gensdef{�ȸ��ȹ�}{����λ�}{%
  {�ȸ�}{�ȹ˹˵�}%
}
\pcdef{����ȸ�}{����}{�ȸ��ȹ�}
\end{lstlisting}

���ѹ����롣
\medskip

���ʤ��
\textgt{\texttt{\textbackslash\kern0pt ����λ�}}box
��ο�ʪbox
\textgt{\texttt{\textbackslash\kern0pt �ȸ�}}
�ȡ�����2������Ѥߤ�
\textgt{\texttt{\textbackslash\kern0pt �ȹ˹˵�}}box
��Ĥʤ��������
\textgt{\texttt{\textbackslash\kern0pt �ȸ��ȹ�}}box
�Ȥ��롣

\textgt{\texttt{\textbackslash\kern0pt ����}}box
�ȿƻҴط����֤ΤϤ���
\textgt{\texttt{\textbackslash\kern0pt �ȸ��ȹ�}}box
�Ǥ��롣

\item
�������������
\textgt{\texttt{\textbackslash\kern0pt ����ȸ�}}
�����褹�롣
\end{enumerate}

���̤��Թ�塢���񤭤η�̤Τ��󼨤��롣
\end{enumerate}
\smallskip

\noindent\includegraphics[scale=.95]{fig3IemitsuY.pdf}
\medskip

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\subsection{ʣ��box��������������}
\label{sec:Lily1}

�������box�Ȥ�ʣ���ο�ʪbox��Ʊ����¤٤��ΤȤȤ館��ʤ�С�
�����ľ�򤹤��������¤٤�Τ��ƻ�box����
Ʊ����¤��������夽�줾�줬�Ҥ���Ĥʤ�С��ƻҴط���ʣ���ˤʤ�Τ�
ñ��˿ƻҴط��ܥå����ȤϸƤӤŤ餯��������box�ȸƤ������դ��路����

���Τ褦�ʿޤκ�����ˡ�����̤�ͤ����롣�ƻҴط���ʣ�����������Ʊ�Τ�
�������box�ǤĤʤ���ˡ�ȡ��դ˿�����η������box�����������Ƥ��顢���줾
��˻Ҥ�Ĥʤ���ˡ����
������Ĥ���ˡ����Ӥ��ʤ��顢�ޤθ��䤹����ͤ��롣�ޤ����޼����롣

\begin{enumerate}
\needspace{2\baselineskip}
\item
���ȤοƻҴط�������塢������λ���ط���������롣

\srcfig{fig3Lily1}

\needspace{3\baselineskip}
\item
����ط�������塢���줾��οƻҴط���������롣

\srcfig{fig3Lily2}
\end{enumerate}

����ʬ�����̤ꡢ1����ˡ�ǤϻҤ�Ĥʤ�����Ĺ�����ۤʤꡢ���˻�����ΰ�
�֤�·��ʤ��ʤ뤿�ᡢ���ˤ����ޤȤʤ롣
����ϻҤؤĤʤ������Ϥ�äȤ�Ĺ����Τ�·����Ȥ���|\sblngdef|��
��ǽ��Ư���ʤ��ä��������|\sblngdef|�ΰ������Ϥ��줿�����Ǵ���
�ƻҴط����������Ƥ�����֤Ǥ��ꡢ������ˤϿ�ʪbox���Ĥʤ���Ƥ��롣
���ξ��֤�|\sblngdef|�������������Ф��ΤϤ�������ʤ���

������2����ˡ�Ǥ�|\sblngdef|�ΰ�����|\indvdldef|���줿������¾�ˤϤĤʤ���Ƥ��ʤ�
box�Ǥ��롣���Τ��ᡢ�夫��Ĺ����������­���ƤⳲ��̵���������box�����
���ʤ��ޤޡ��������box���Ĥ����ϰϤ�Ʊ���⤵�������񤭤��Ƥ��롣

1����ˡ��Τä����Ǥ�����Ĺ����·������ˡ�Ϥ��롣
|\indvdldef|��������Ĺ��������ǽ�����Ѥ���
��ޤ�Lily������|\femaleline|��|\matrilineal|�ˤ�Ĺ����Petunia�Τ����Ʊ
���ˤ�����ɤ���
Petunia��Lily��̾����Ĺ���κ����ᡢ�����|\indvdldef|�˥��ץ����Ȥ�
���ɲä��롣
�����̤Ͼ���2��Ʊ���Ǥ��롣
\smallskip

\srcfig{fig3Lily3}
\medskip

|\nameboxcfg|�ˤϻҤ�Ĥʤ�����Ĺ�����ѹ����뵡ǽ������Τǡ������Ȥ�
�Ƥ�Ʊ�ͤη�̤����뤳�Ȥ��Ǥ��롣��������|\indvdldef|�����٤�
|\nameboxcfg|����Τ������ǤϤʤ���������|\nameboxcfg|�Ϥ�äȹ��ϰϤ�
Ŭ�Ѥ����ͤ��ѹ�������������β����︺���뤳�Ȥ���Ū�Ȥ��Ƥ��ꡢ
|\indvdldef|���٤��ѹ����뤳�Ȥ����ꤷ�Ƥ��ʤ��ʤǤ��ʤ��Ϥʤ����ˡ�
���̤˻��Ѥ����ͤ�|\indvdldef|�Υ��ץ�����������Ѥ����������ؤ�������
\bigskip

�⤦��Ĥ���ˡ�Ȥ���Lily��̾����Ĺ����Petunia�Τ����·������ˡ�⤢�롣
������ˡ�Ǥ�Lily��̾�������δ֤�����������Ĺ����·����
\smallskip

\srcfig{fig3Lily4}
\medskip

Lily�οƻ�box��Petunia�ƻ�box�Ȥϰ㤦���̤ǻ��Ѥ���ȡ�̾���θ������
�����˶������������������뤳�Ȥ⤢�뤫�⤷��ʤ������ξ��ϡ��������
���Ѳ�������Lily box��ʣ��������Ȥ�ʬ���뤳�Ȥˤʤ��������
\bigskip

box�������������������������\jslash ��������ˤ����դ�ɬ�פ���
�ܥѥå������Ǥ�box����Ȥ�Ϳ����줿ʣ����box���¤����ǤĤʤ���Τ�����
���κݤ�Ϳ����줿box���礭�����θ���롣�㤨�з������box���������ݡ�
���˻�¹�ȤĤʤ���box��Ϳ��������box�����ʤޤ��Ϲ⤵�ˤ����ä��Ƥ���С�
�������δֳ֤�Ȥ��롣���ʤ��interval box�ˤ��ֳ�������ɬ�פˤʤ�
�Τ���ü�δط������
���ˤʤ롣���������������box�����������ǻҤȤĤʤ�����ϡ�����
�ֳ�Ĵ����ǽ��ȯ������ʤ����٤�礦��box�����ʤޤ��Ϲ⤵�ˤ�������С�
�ŤʤäƤ��ޤ������������ξ��ϼ�ư��interval box����������������ʤ���

��³�ݥ���Ȥ�\meta{box name}\meta{brabra}|nameCY|�ʤɤ�̾�����������
����ɸ��
���롣���ϤޤǤ����������褦��|\sblngdef|�Ϸ�����夽�줾���̾������
����ɽ��Y��ɸ��������뤬��nest��������nest�����ޤǤ�������ʤ�����
�ʤ���ƻ�box�����֤��줿��ʪbox������Ĥʤ���Τϡʤۤܡ˼�ưŪ�ˤǤ�
�뤬���ƻ�box��η������box�����֤��줿��ʪbox������Ĥʤ���ˤϡ��桼
������ʬ�Ǻ�ɸ�򻻽Ф��ʤ���Фʤ�ʤ����Բ�ǽ�ǤϤʤ�������֤Ϥ����롣
���μ�֤���򤹤뤿�ᡢ����ϲ����������\jslash �������Ƥ����Τ��ɤ��ȹͤ��롣
\iffalse
\bigskip

�ǽ�Ū�ˡ�
�桼�����ɤΤ褦�ʿޤ��ߤ���ˤ�ꡢ�ɤν����box����������Ĥʤ��뤫��
�ޤ�Ĵ����ɤ��ä��뤫����ꤹ��Τ��ɤ���
\fi

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\iffalse
% \subsubsection{������box --- core}
%
% \iffalse
% \parag{�������ޥ���}
%
% \DescribeMacro{\ftgescfg}
% \NoDescription
%    \begin{macrocode}
% \newcommand{\ftgenscfg}[1]{%
% }
%    \end{macrocode}
% \fi
%
% \parag{connection pair}
%
% \DescribeMacro{\ft@getpair}
% ��������connection-pair����Ф���
% ��box�����³����|\ft@cpoint|�Ȥ��ơ��ޤ���box̾��|\ft@kids|�Ȥ���������롣
% ��³����Ϳ����줿��Τ���box���nest�������֤��줿���ˤ��б����롣
% ������nest�ϰ��ʤޤǤ����б����ʤ���
%
% \parag{��;��}
%
% \DescribeMacro{\def@calc@xtop}
% ��box��ɬ�פʾ�;��򻻽Ф������ꤵ�줿global��̾����������롣
%
% \parag{��;��}
%
% \DescribeMacro{\ft@calc@xbottom}
% ��box��ɬ�פʲ�;��򻻽Ф������ꤵ�줿global��̾����������롣
% Ʊ����|\ft@depth|��������롣
%
% \parag{box size����}
%
% \DescribeMacro{\ft@gens@size}
% box size�򻻽Ф��롣
%
% \parag{����}
%
% \DescribeMacro{\ft@gens@layout}
% ��box�Ȼ�box�����֤��롣
% ���֤�����box��|nameCY|��ɸ��\meta{box name}|nameCY|�Ȥ��롣
% ���֤�����box�θ����ʺ������Ľ񤭤ʤ�������ˤ�\meta{box
% name}\meta{\kern0pt ��box name}|Y|�Ȥ���������롣
% ��package���ȤǤ����פκ�ɸ�������桼����ɬ�פȤ��뤫�⤷��ʤ��Τǡ�
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \subsubsection{������box --- interface}
%
% \DescribeMacro{\ftgensdef}
% box��child mark�Ͽ�box�Τ���˰��פ��롣
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \subsubsection{�ƻ�box --- interface}
%
% \DescribeMacro{\ftpcdef}
% �ƻҴط�box��������롣
% |\gensdef|�δʰ��ǡ�
% ��box����box���줾���\meta{box name}|nameCY|Ʊ�Τ�������롣
\fi
