emath BBS

新規発言一覧最新記事過去一覧検索HOME

No.5064  Re:[追加] - PutStr の矢線を楕円弧にすることはできますか?
発言者: 田中徹
発言日: 2006 08/04 23:43
発言元: 218.110.30.213
> 説明不足でした。申し訳ありません。
> 説明を追加します。
No.5033 でもそうでしたが、後出しが多いとロスしたという気でドッと疲れますね。
以後よろしくお願いいたします。

> 神経質な性格のため、直線でない場合は、文字列からの線が
> →(0°)↑(90°)←(180°)↓(270°)で出ていないと、スッキリしません。
(*_*)  私も細かいとよく周囲から言われるが、
ここまで気に掛けたことはありませんでした。

> しかし、円弧(縦軸方向の半径=横軸方向の半径)は
> 楕円弧(縦軸方向の半径≠横軸方向の半径)に比べて使い勝手が悪いように感じます。
当然です。
楕円弧にしておけば円弧は描けますが、円弧指定ではどうやっても楕円弧は描けません!!!

(右 or 左)×(上 or 下)×(上凸 or 下凸) の 8通りのマクロを書きました。
本来方向や凸性を#5#6に並べて1つのマクロにすべきですが
私自身は用いる気がないので手抜きです。
終点に鏃を描きたい場合は \yaziri コマンドを適当に追加してください。> aka さん

\documentclass[a4j,fleqn]{jarticle}%
\usepackage{emathP}%

\def\NWDPutStr#1#2#3#4{% 左上がり下に凸楕円弧 PutStrもどき
% #1 : 終点位置
% #2 : 楕円弧の横軸の半分長(単位は無名数(強制でpt扱い) )
% #3 : 楕円弧の縦軸の半分長(単位は無名数(強制でpt扱い) )
% #4 : 始点に表示する文字列
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)% ps座標だとクリッピングのおそれあり
\Put{(#2,0)}{\Daenko{#2}{#3}{180}{270}}%
\Put{(#2,-#3)}[e]{#4}%
\end{zahyou*}%
}%
}% end of \NWDPutPtr
%-----------------------------------------------------------
\def\NWUPutStr#1#2#3#4{% 左上がり上に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(0,-#3)}{\Daenko{#2}{#3}{0}{90}}%
\Put{(#2,-#3)}[s]{#4}%
\end{zahyou*}%
}%
}% end of \NWUPutPtr
%-----------------------------------------------------------
\def\SWDPutStr#1#2#3#4{% 左下がり下に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(0,#3)}{\Daenko{#2}{#3}{270}{360}}%
\Put{(#2,#3)}[n]{#4}%
\end{zahyou*}%
}%
}% end of \SWDPutPtr
%-----------------------------------------------------------
\def\SWUPutStr#1#2#3#4{% 左下がり上に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(#2,0)}{\Daenko{#2}{#3}{90}{180}}%
\Put{(#2,#3)}[e]{#4}%
\end{zahyou*}%
}%
}% end of \SWUPutPtr
%-----------------------------------------------------------
\def\NEDPutStr#1#2#3#4{% 右上がり下に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(-#2,0)}{\Daenko{#2}{#3}{270}{360}}%
\Put{(-#2,-#3)}[w]{#4}%
\end{zahyou*}%
}%
}% end of \NEDPutPtr
%-----------------------------------------------------------
\def\NEUPutStr#1#2#3#4{% 右上がり上に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(0,-#3)}{\Daenko{#2}{#3}{90}{180}}%
\Put{(-#2,-#3)}[s]{#4}%
\end{zahyou*}%
}%
}% end of \NEUPutPtr
%-----------------------------------------------------------
\def\SEDPutStr#1#2#3#4{% 右下がり下に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(0,#3)}{\Daenko{#2}{#3}{180}{270}}%
\Put{(-#2,#3)}[n]{#4}%
\end{zahyou*}%
}%
}% end of \SEDPutPtr
%-----------------------------------------------------------
\def\SEUPutStr#1#2#3#4{% 右下がり上に凸楕円弧 PutStrもどき
\Put#1{%
\begin{zahyou*}[ul=1pt](0,0)(0,0)%
\Put{(-#2,0)}{\Daenko{#2}{#3}{0}{90}}%
\Put{(-#2,#3)}[w]{#4}%
\end{zahyou*}%
}%
}% end of \SEUPutPtr
%-----------------------------------------------------------
\begin{document}%
\noindent%
\begin{zahyou}[ul=10mm](0,6)(0,6)%
\tenretu*{%
 A(1,1);%
 B(5,2);%
 C(4,5);%
 D(2,3);%
}%
\Drawline{\A\B\C\D\A}%
% A
\NWDPutStr{\A}{20}{10}{$\A$}%
% B
\NEDPutStr{\B}{10}{20}{$\B$}%
% C
\SWDPutStr{\C}{10}{20}{$\C$}%
% D
\NWUPutStr{\D}{10}{20}{$\D$}%
\end{zahyou}%
\end{document}%


▼関連発言

5060:PutStr の矢線を楕円弧にすることはできますか? [aka] 08/04 20:04
 ├5061:Re:PutStr の矢線を楕円弧にすることはできますか? [石原 守] 08/04 20:39
 ├5062:Re:PutStr の矢線を楕円弧にすることはできますか? [田中徹] 08/04 20:49
 └5063:[追加] - PutStr の矢線を楕円弧にすることはできますか? [aka] 08/04 22:20
  ├5064:Re:[追加] - PutStr の矢線を楕円弧にすることはできますか?.. [田中徹] 08/04 23:43
  │└5066:Re[2]:[追加] - PutStr の矢線を楕円弧にすることはできま.. [aka] 08/05 20:27
  └5065:Re:[追加] - PutStr の矢線を楕円弧にすることはできますか?.. [tDB] 08/05 09:59
   └5067:Re[2]:[追加] - PutStr の矢線を楕円弧にすることはできま.. [aka] 08/05 20:37<-last

Pass 保存


CGIROOM