発言者: tDB
発言日: 2009 06/19 17:07
発言元: ntchba244017.chba.nt.ftth.ppp.infoweb.ne.jp
お示しの例と,私が Wiki に書いた例との違いがポイントです。
すなわち
\unitlength=5mm
ではなく
\setunitlength{5mm}
の違いです。
perl を用いる場合は,この違いは譲れません。
理由です。
1) \unitlength=5mm の場合は,
この時点で pt 換算による丸めが行われますから,有効数字は6桁となります。
2) \setunitlength{5mm} の場合は,"5mm" という文字列そのものが perl に渡され,
単位換算も perl が行います。有効数字は perl の桁数です。
折角 perl で高精度の計算が行われても ul が6桁で渡されたのでは意味がありません。
面倒でも \setunitlength コマンドをご利用ください。
((ps)zahyou(*)環境を用いて [ul=...] オプションを与えた場合は,
その右辺値がそのまま perl に渡されるようになりますから,
\setunitlength コマンドを持ち出すには及びません。
ただし,[ul=..] オプションを使わずに \unitlength を設定する場合は
\setunitlength コマンドを使用しなければなりません。)
Pxy46sty.zip に同梱した emathpl.sty では,\setunitlength コマンドを用いずに
\perlAddvec* を呼び出した場合は,エラー終了するようにしました。メッセージは:
perl を用いて単位換算を行う場合は,setunitlength コマンドをお使いください
▼関連発言
│
└◆8214:\perlAddvec* [石原 守] 06/19 14:08
└◆8216:Re:\perlAddvec* [tDB] 06/19 17:07
└◆8217:Re[2]:\perlAddvec* [石原 守] 06/19 17:40<-last