発言者: 田中徹
発言日: 2008 11/30 01:30
発言元: p0230a5.nigtnt01.ap.so-net.ne.jp
皆様いかがお過ごしですか。
私は、中学をメインに授業をしております。
11月になり中学2年、高校1年数A、高校2年演習に
「方べきの定理」が現れ、同僚に「良い作図方法は??」と問われ
何年か前に円内のものだけは作成した覚えがあり
これを契機に他の 2パターンも作成しました。
円周内=>HoubekiI
円周外=>HoubekiO
接する=>HoubekiT
と安直な名前で
*なしで座標計算のみ描画なし
*1つで円と線分の描画
*2つでさらにラベルと \HenKo の描画
(多分**は気に入らない場合が多いと思います)
変数はコマンド発行後参照できますので
*1つで不足の部分を補っていただけます。
名前は漢字が混じっているのでバッティングはしないと思います。
入力の補助になれば幸いです。
# チェバとメネラウスも手がけたいとは思っているのですが...
% Houbeki.sty
\def\HoubekiI{\@ifstar{\let\if@描画\iftrue{}\@HoubekiI}{\let\if@描画\iffalse\@HoubekiI}}%
\def\@HoubekiI{\@ifstar{\let\if@ラベル\iftrue{}\@@HoubekiI}{\let\if@ラベル\iffalse\@@HoubekiI}}%
\def\@@HoubekiI#1#2#3#4#5#6{%
%---------------------------------
% #1 :円の中心
% #2 :円の半径
% #3 :基準点からの距離1
% #4 :基準点からの距離2(1とペア)
% #5 :基準点からの距離3
% #6 :距離1の点が円の中心となす偏角
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% 使用変数名 %%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \点A
% \点B
% \点C
% \点D
% \点P
% \距離PA
% \距離PB
% \距離PC
% \距離PD
% \中心
% \半径
% \偏角
%---------------------------------
\def\中心{#1}%
\def\半径{#2}%
\def\距離PA{#3}%
\def\距離PB{#4}%
\def\距離PC{#5}%
\def\偏角{#6}%
%-----------------------------------------
\rtenretu*[\中心]{点A(\半径,\偏角)}%
\calcval{\距離PA+\距離PB}\距離AB%
\calcval{\距離PA*\距離PB/\距離PC}\距離PD%
\calcval{sqrt((\半径)**2-(\距離AB/2)**2)}\小半径%
\enniSessen\中心\小半径\点A\接点i\接点ii%
\Kaiten\接点ii\点A{180}\点B%
\Bunten\点A\点B{\距離PA}{\距離PB}\点P%
\CandC\中心\半径\点P\距離PC\作業点C\点C%
\calcval{\距離PC+\距離PD}\距離CD%
\Kaiten[\距離PD]\点P\点C{180}\点D%
\if@ラベル%
\HenKo\点A\点P{$\距離PA$}%
\HenKo\点P\点B{$\距離PB$}%
\HenKo\点P\点C{$\距離PC$}%
%\HenKo\点D\点P{$\距離PD$}%
\Bunten\中心\点P{8}{-1}\@TempP%
\Put\@TempP[c]{P}%
\Bunten\中心\点A{10}{-1}\@TempP%
\Put\@TempP[c]{A}%
\Bunten\中心\点B{10}{-1}\@TempP%
\Put\@TempP[c]{B}%
\Bunten\中心\点C{10}{-1}\@TempP%
\Put\@TempP[c]{C}%
\Bunten\中心\点D{10}{-1}\@TempP%
\Put\@TempP[c]{D}%
\fi%
\if@描画%
\En\中心\半径%
\Drawlines{\点A\点B}%
\Drawlines{\点C\点D}%
\fi%
}%
\def\HoubekiO{\@ifstar{\let\if@描画\iftrue{}\@HoubekiO}{\let\if@描画\iffalse\@HoubekiO}}%
\def\@HoubekiO{\@ifstar{\let\if@ラベル\iftrue{}\@@HoubekiO}{\let\if@ラベル\iffalse\@@HoubekiO}}%
\def\@@HoubekiO#1#2#3#4#5#6{%
%---------------------------------
% #1 :円の中心
% #2 :円の半径
% #3 :基準点からの距離1
% #4 :基準点からの距離2(1とペア)
% #5 :基準点からの距離3
% #6 :距離1の点が円の中心となす偏角
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% 使用変数名 %%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \点A
% \点B
% \点C
% \点D
% \点P
% \距離PA
% \距離PB
% \距離PC
% \距離PD
% \中心
% \半径
% \偏角
%---------------------------------
\def\中心{#1}%
\def\半径{#2}%
\def\距離PA{#3}%
\def\距離PB{#4}%
\def\距離PC{#5}%
\def\偏角{#6}%
%---------------------------------
\rtenretu*[\中心]{点A(\半径,\偏角)}%
\calcval{\距離PB-\距離PA}\距離AB%
\calcval{\距離PA*\距離PB/\距離PC}\距離PD%
\calcval{sqrt(\距離PA*\距離PB+(\半径)**2)}\作業半径
\CandC\中心\作業半径\点A\距離PA\点P\作業点%
\Bunten\点P\点A{\距離PB}{-\距離AB}\点B%
\CandC*\点P\距離PD\中心\半径\点D\作業点%
\CandL*\中心\半径\点P\点D\点C\作業点%
\if@ラベル%
\HenKo\点A\点P{$\距離PA$}%
\HenKo\点P\点B{$\距離PB$}%
\HenKo\点P\点C{$\距離PC$}%
%\HenKo\点D\点P{$\距離PD$}%
\Bunten\中心\点P{15}{-1}\@TempP%
\Put\@TempP[c]{P}%
\Bunten\中心\点A{10}{-1}\@TempP%
\Put\@TempP[c]{A}%
\Bunten\中心\点B{10}{-1}\@TempP%
\Put\@TempP[c]{B}%
\Bunten\中心\点C{10}{-1}\@TempP%
\Put\@TempP[c]{C}%
\Bunten\中心\点D{10}{-1}\@TempP%
\Put\@TempP[c]{D}%
\fi%
\if@描画%
\En\中心\半径%
\Drawlines{\点P\点B}%
\Drawlines{\点P\点D}%
\fi%
}%
\def\HoubekiT{\@ifstar{\let\if@描画\iftrue{}\@HoubekiT}{\let\if@描画\iffalse\@HoubekiT}}%
\def\@HoubekiT{\@ifstar{\let\if@ラベル\iftrue{}\@@HoubekiT}{\let\if@ラベル\iffalse\@@HoubekiT}}%
\def\@@HoubekiT#1#2#3#4#5{%
%---------------------------------
% #1 :円の中心
% #2 :円の半径
% #3 :基準点からの距離1
% #4 :基準点からの距離2(1とペア)
% #5 :距離1の点が円の中心となす偏角
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% 使用変数名 %%%%%%%%%%%%%%%%%%%%%%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% \点A
% \点B
% \点T
% \点P
% \距離PA
% \距離PB
% \距離PT
% \中心
% \半径
% \偏角
%---------------------------------
\def\中心{#1}%
\def\半径{#2}%
\def\距離PA{#3}%
\def\距離PB{#4}%
\def\偏角{#5}%
%---------------------------------
\rtenretu*[\中心]{点A(\半径,\偏角)}%
\calcval{\距離PB-\距離PA}\距離AB%
\calcval{sqrt(\距離PA*\距離PB)}\距離PT%
\calcval{sqrt(\距離PA*\距離PB+(\半径)**2)}\作業半径
\CandC\中心\作業半径\点A\距離PA\点P\作業点%
\Bunten\点P\点A{\距離PB}{-\距離AB}\点B%
\enniSessen\中心\半径\点P\点T\作業点%
\Kyori\点P\点T\距離PT%
\if@ラベル%
\HenKo\点A\点P{$\距離PA$}%
\HenKo\点P\点B{$\距離PB$}%
\Bunten\中心\点P{15}{-1}\@TempP%
\Put\@TempP[c]{P}%
\Bunten\中心\点A{10}{-1}\@TempP%
\Put\@TempP[c]{A}%
\Bunten\中心\点B{10}{-1}\@TempP%
\Put\@TempP[c]{B}%
\Bunten\中心\点T{10}{-1}\@TempP%
\Put\@TempP[c]{T}%
\fi%
\if@描画%
\En\中心\半径%
\Drawlines{\点P\点B}%
\Drawlines{\点P\点T}%
\fi%
}%
%------------------------------------------------------------------
% houbeki.tex
\documentclass{jarticle}
\usepackage[papersize]{emathP}
\usepackage{Houbeki}
\begin{document}
\begin{zahyou*}[ul=5mm](-5,5)(-5,5)%
\HoubekiI**{(0,0)}{4.5}{2}{6}{3}{80}%
\end{zahyou*}%
\begin{zahyou*}[ul=5mm](-5,5)(-5,5)%
\HoubekiO**{(0,0)}{4}{4}{8}{3}{35}%
\end{zahyou*}%
\begin{zahyou*}[ul=5mm](-5,5)(-5,5)%
\HoubekiT**{(0,0)}{3}{4}{9}{20}%
\end{zahyou*}%
\end{document}
▼関連発言
│
└◆7711:方べきの定理の問題図 [田中徹] 11/30 01:30<-last