Asymptoteを使って図形をきれいに描こう

整数論とTeXに関するページ    Last UpDate: 2022/09/23

Asymptote を使って描いた空間図形の例

円錐(の側面)Sと円錐の頂点を通らない平面Hがある.SとHに接する球をダンドランの球という. ダンドランの球を用いることにより円錐と平面の交線が楕円,双曲線,放物線になることがわかる.

ダンドラン球 (切口が楕円になる場合)
ダンドラン球 (切口が楕円になる場合)
新規タブで開く(自由に回転できます)
ダンドラン球 (切口が双曲線になる場合)
ダンドラン球 (切口が双曲線になる場合)
新規タブで開く(自由に回転できます)
ダンドラン球 (切口が放物線になる場合)
ダンドラン球 (切口が放物線になる場合)
新規タブで開く(自由に回転できます)

Asymptoteとは何か

AsymptoteはAndy Hammerlindl, John Bowman, Tom Princeが開発した強力なベクトルグラフィック記述言語です。 それは技術的な作図のために自然な座標系にもとづくフレームワークを提供します。 ラベルや等式はLaTeXでタイプセットされます。 AsymptoteはTeXLiveに標準で含まれています。

バージョン4.10以降のEasyTeXでは、Windows 10でAsymptoteを使うために便利なようにAsymptoteの命令をメニューから入力でき、 作成したasyファイルをAsymptoteで処理して、生成されたpdfファイル等を見ることができます。

TeXLiveではなくW32TeXの場合は、https://sourceforge.net/projects/asymptote/files/から最新のもの(現時点ではasymptote-2.70-setup.exe)をダウンロードしてインストールします。 この場合はさらにAsymptoteを使う前の準備として、次のような内容のテキストファイルを作成してホームディレクトリー(C:\Users\ユーザー名)の.asyというフォルダーの中にconfig.asyというファイル名で保存します。 ただしW32TeX(64ビット版)をc:\w32texへ、ghostscript(64ビット版)をC:\gs\gs9.55.0にインストールしてあるとしています。

import settings;
tex="latex";
texpath="c:/w32tex/bin64";
texcommand="platex";
dvips="dvips";
gs="C:/gs/gs9.55.0/bin/gswin64c.exe";
psviewer="c:/Program Files/SumatraPDF/SumatraPDF.exe";
pdfviewer="c:/Program Files/SumatraPDF/SumatraPDF.exe";

Asymptoteの基本

Asymptoteのソースファイルは拡張子asyをもつテキストファイルです。これをAsymptoteで処理するとpdfファイルやpngファイルが生成されます。 Asymptoteで文字列'Hello!'を表示させるには次のように書きます。1行目は出力ファイルをpdfファイルにするという命令です。"pdf"を"png"に変えればpngファイルを、"html"に変えればhtmlファイルを生成します。 settings.outformatで指定できる出力形式は、pdf、png、eps、html、svgの5種類です。


Hello!の表示1

settings.outformat = "pdf";
defaultpen(fontsize(12pt));
label("Hello!");

単位の長さを指定すること、基本となる文字の大きさを変えることもできます。文字列を表示させる位置を指定することもできます。


Hello!の表示2

settings.outformat = "pdf";
unitsize(1cm);
defaultpen(fontsize(16pt));
label("Hello!",(0,1));
label("Hello!",(2,0));