TeXに直接作図しよう!3

前回までに具体的に分かっている点の座標を指定することができるようになったので,今回はいよいよ図形を描画していきます。LaTeXのコンパイルにはdvipdfmxを使うものと仮定しますと,実際にTikZを試してみるときは,以下のようなコードのtikzpicture環境内にTikZのコマンドを記述してください。各コマンド行の最後にはセミコロン「;」をつけるのを忘れないように気をつけてください。(しばしば意味不明なエラーメッセージの原因となります。)

はじめに

TikZでは図形を扱うときはいつも\pathコマンドが使えて次のように書けます。

《パスオプション》には,線を描画したいときはdraw,塗りを描画したいときはfillなどと記述します。線と塗りの両方が欲しいときは,二つをコンマ区切りでdraw, fillとします。逆に,≪パスオプション≫を指定しなければデフォルトでは何も描画されません。ただし,領域は確保されるので,見えないパスが作られていると考えればよいかもしれません。《パスの定義》とは,例えば直線(線分)なら(0,0)--(1,2)のようなものです(それが今回のメインテーマです)。

もちろん\pathコマンドでもいいんだけど

いちいち\path\path,……と書いていたらしまいにゲシュタルト崩壊してしまうので,親切にもこれらの構文にはシンタックスシュガーというか省略形が用意されています。今回使うのは次のものです。

これらのコマンドにもオプションを指定できますが,今回は線の太さも色も塗りもデフォルトで行きます。

《パスの定義》の書き方

《パスの定義》は一般的に次のように書きます。

ちょっと見にくいですが,《座標と座標の繋ぎ方》の具体例を見てからもう一度上の一般化を見れば分かるはずです。

《座標と座標の繋ぎ方》について

「繋ぎ方」とはつまり,二つの点を直線で結んだり,ベジェ曲線で結んだり,あるいはそれを対角の頂点とする長方形を描いたりすることです。

直線(正確にいえば線分)と折れ線

一番良く使うのはやはり直線(線分)でしょうね。二点間の線分は次のように表します。

例えば

とすると,下の図の太い線の形になります。

Rendered by QuickLaTeX.com

これに「塗り」をつけようとする人は少ないかもしれませんが,一応やっておくと

としますと,

Rendered by QuickLaTeX.com

が得られます。Adobe Illustratorと同じふるまいで,閉じていないパスに「塗り」をつけると,「パスの開始点と終了点を結んだ線分」と「パス」に囲まれた領域が塗りつぶされます。(オプションについてはまた別の場所で詳しく説明します。)

閉じたパス

先ほど「閉じていないパス」と言いました。では閉じたパスを作るには?これはどうでしょうか?

おお,いいんじゃないですか!

Rendered by QuickLaTeX.com

でも,(0,1)付近を拡大してみると……

Rendered by QuickLaTeX.com

ああ,これでは残念。クソーッ!ちゃんと閉じたパスにするにはいったいどうしたらいいんと言うんだ!?

ごめんなさい茶番でした。閉じたパスにするには

と書きます。--cycleの間にはスペースが入っても構いませんが,--cycleはセットです。cycleだけでは使えません。上のコードを修正すると,

となり,これを描画すると

Rendered by QuickLaTeX.com

(0,1)で無事パスが閉じましたね。

それでは極座標と閉じたパスを使って星マークを書いてみましょう。

Rendered by QuickLaTeX.com

長方形とグリッド

長方形のパスを作るには,

と書きます。ただし,《座標1》と座標《座標2》は長方形の対角の頂点の座標です。「右上と左下」の組でも,「右下と左上」の組でも構いません。例えば

とすれば,

Rendered by QuickLaTeX.com

の太線の形に描画されます。

長方形と同様にしてグリッドが描けます。

グリッドとは,方眼紙みたいな格子状の線で,作図の補助線として使うことが多いです。次のようなサンプルです。

とすれば,

Rendered by QuickLaTeX.com

となります。
gridはしばしばオプションにhelp linesを指定します。

そうすると線の色と細さが補助線用になります。

Rendered by QuickLaTeX.com

さらに,オプションでstep=***と指定すると,グリッドの間隔が変更できます。

Rendered by QuickLaTeX.com

簡単な曲線

曲線を描くための一番簡単な方法はtoとそのオプションのin, outを使う方法です。

の形で書き,≪角度α≫は≪座標1≫から出る線の≪座標1≫における傾きをx軸の正の向きから反時計回りに計った角度(単位:°)で表し,≪角度β≫は≪座標2≫に入る線の≪座標2≫における傾きをx軸の正の向きから反時計回りに計った角度で表したものです。例えば,

と書くと,

Rendered by QuickLaTeX.com

の太い線の部分の形が得られます。

また,オプションにrelativeを指定することができます。

この場合は≪角度α≫≪角度β≫を,x軸の正の向きからではなく,≪座標1≫から≪座標2≫に向かうベクトルを基準として,そのベクトルから反時計回りに計った角度で表すことができます。
先ほどの例にオプションrelativeをつけたらどうなるか見てみましょう。

とすると,

Rendered by QuickLaTeX.com

上の図の太い線の部分の形が得られます。

直線(--)とtoパス(to[out=*,in=*])を組み合わせるだけで,結構自由に作図できるようになります。例えば,

とすれば,

Rendered by QuickLaTeX.com

上の図の線が得られます。

ベジェ曲線

toパスを使った曲線は簡単に書けますが,あまり自由な曲線が描けません。そこでベジェ曲線を使います。ベジェ曲線はAdobe IllustratorやオープンソースのInkscapeのようなベクター画像ソフトで広く採用されていて,慣れるまではなかなかうまく書けませんが,慣れたら目をつむっていても思った通りの曲線が描けるようになります多分。ベジェ曲線についての説明は,TTEditやOTEditの販売をする武蔵システムのサイトがわかりよいです。

ベジェ曲線は次の形式で表します。

これによって表される曲線は,≪座標1≫と≪座標2≫を結ぶ線で,≪座標1≫付近で≪座標1≫と≪制御点1≫を結ぶ直線に接し,≪座標2≫付近で≪座標2≫と≪制御点2≫を結ぶ直線に接する。また,数学的意味を無視して直観的な話をすれば,≪制御点1≫が≪座標1≫から遠ければ遠いほど,曲線の≪座標1≫側は≪座標1≫と≪制御点1≫を結ぶ直線に引き寄せられ,≪制御点2≫が≪座標2≫から遠ければ遠いほど,曲線の≪座標2≫側は≪座標2≫と≪制御点2≫を結ぶ直線に引き寄せられる感じになる。以下の図では黒丸が≪座標n≫に当たり,白丸が≪制御点n≫を示す。サンプルを示すのでいろいろ値を変えて実験しながら慣れていってください。

Rendered by QuickLaTeX.com

ベジェ曲線と相対座標

ベジェ曲線で線を描くときは,前回説明した相対座標で制御点を表すと便利かもしれません。

この時,≪座標1≫から見た≪相対座標1≫が≪制御点1≫になり,≪座標2≫から見た≪相対座標2≫が≪制御点2≫になります。特に極座標の相対座標を用いるのが分かりやすく,次のような感じになります。

Rendered by QuickLaTeX.com

相対座標で制御点を指定すると,≪座標1≫≪座標2≫を移動させても曲線の形が変わらないので,同じ図形を複数回ずらして使う場合などに便利です。(scope環境でくくってxshift,yshiftしてもいいですが)

ベジェ曲線の練習ではしばしばハートマークを書かせる本が多いので,ここでもハートマークを書いてみましょう。

Rendered by QuickLaTeX.com

円弧・楕円弧

円弧の表し方は

または

です。上のほうが読みやすいかもしれませんが,慣れたら下のほうが便利だと思います。これによって表される円弧は,半径がrの円の,角度αからβに対応する部分(ただし,α,βは単位°)で,開始角αに対応する点が≪座標P≫に一致します。そして,≪現在の座標≫は≪終了角β≫に対応する点に移ります。例えば

とすれば,

Rendered by QuickLaTeX.com

の太線の部分の図形が得られます。なお,α < βなら,円弧は反時計回りに描かれ,β < αなら,円弧が時計回りに描かれるということは明らかでしょう。

また,楕円弧,つまり楕円の一部分も同様に表すことができます。その場合は

または

とします。ただし,楕円の上の角α,βに対応する点は,≪x軸半径rx≫または≪y軸半径ry≫を拡大・縮小して正円にし,そこで角α,βに対応する点を取り,それ再び元の楕円に戻すと得られる点,になります。言葉で説明するのは難しいので次の例を見て理解してください。ただし,xscale, yscaleオプションは,それぞれx軸方向,y軸方向に図形を拡大・縮小します。

Rendered by QuickLaTeX.com

放物線

放物線はオプションの指定などがいろいろ複雑なので,順番に見ていきましょう。まずはオプションも何もつけない一番簡単な形。

≪座標1≫を頂点とし,≪座標2≫を通る,上または下に凸な放物線の,≪座標1≫から≪座標2≫の間の部分です。上または下に凸な放物線はy=a(x-p)^2+qの形で表せるので,頂点ともう一点を与えれば,一意に定まります。

Rendered by QuickLaTeX.com

まずbend at startと,bend at endオプションがあります。

オプションにbend at startを指定するとデフォルトと同じで≪座標1≫が放物線の頂点に,bend at endを指定すると≪座標2≫が放物線の頂点になります。

Rendered by QuickLaTeX.com

今までは放物線を軸で切って半分になったものでしたが,次に完全な放物線を描きましょう。

これが表すのは≪座標2≫を頂点とし,≪座標1≫と≪座標3≫を通る放物線です。ただし,これは,

の二つを合わせたものなので,≪座標1≫と≪座標3≫をうまくとれば,

Rendered by QuickLaTeX.com

のように一続きの放物線になりますが,変な取り方をすれば

Rendered by QuickLaTeX.com

変なことになります。逆にうまくとれば,≪座標1≫と≪座標3≫のy座標は必ずしも同じである必要はありません。

Rendered by QuickLaTeX.com

頂点の座標を計算せずに放物線の高さを指定することもできます。

≪座標1≫と≪座標2≫を通り,高さが≪高さh≫の放物線です。≪座標1≫と≪座標2≫のx座標の平均に頂点がきます。ですので,基本的には,≪座標1≫と≪座標2≫のy座標が同じになるようにしてください。

Rendered by QuickLaTeX.com

≪高さh≫と言いましたが,≪高さh≫はベクトル量(?)です。プラスの値を入れると放物線が上に凸に,マイナスの値を入れると下に凸になります。

Rendered by QuickLaTeX.com

なお,≪座標1≫と≪座標2≫のy座標が異なる場合,≪座標1≫と≪座標2≫のy座標の平均から≪高さh≫分上に行ったとところに頂点が来ます。

Rendered by QuickLaTeX.com

サインカーブ

サインカーブは放物線と見た目も使い方も似ています。

y=sinΘ型のグラフとy=cosΘ型のグラフの,0≦Θπ/2の範囲をそれぞれ,≪座標1≫と≪座標2≫,≪座標3≫と≪座標4≫を通るように描きます。ただし≪座標2≫のy座標が≪座標1≫y座標より小さい場合は,y=-sinΘの形に,≪座標4≫のy座標が≪座標3≫y座標より小さい場合は,y=-cosΘの形になります。

Rendered by QuickLaTeX.com

連続したサインカーブを作りたいときは,sincosを交互に使えばよいでしょう。(plotを使う方法もあります)

Rendered by QuickLaTeX.com

2点をx軸,y軸に平行な線で結ぶ

え?なにを言っているかわからない?俺も使い道があまり見いだせないんだが,書いておかないと知らないみたいに思われるといけないから,まず書き方。

上は,≪座標1≫の点から出たx軸に平行な線と,≪座標2≫の点から出たy軸に平行な線の作る,途中で90°折れ曲がる線。下は,≪座標3≫の点から出たy軸に平行な線と,≪座標4≫の点から出たx軸に平行な線の作る,途中で90°折れ曲がる線。例を見たらわかると思います。

Rendered by QuickLaTeX.com

なお,「|」は「パーティカルバー」とか「パイプ」とか「縦線」とか呼ばれる記号で,[Shift]キーを押しながらバックスペースキーの隣の[¥]キー(ただし一般的な日本語106/109キーボードの場合)を押すと入力できます。

円と楕円

円と楕円は≪座標と座標のつなぎ方≫ではないですがここにまとめておきます。
円と楕円は次のように記述します。

丸括弧を使うと座標と紛らわしいので,オプションとして半径を指定したほうがいいかもしれません。

Rendered by QuickLaTeX.com

circleellipserectangleと違って≪現在の座標≫を変更しません。ですので,例えば円に続いて線を引くと次のようになります。

Rendered by QuickLaTeX.com

次回は,内分点や二つのパスの交点をはじめとした応用的な点の指定方法の説明をする予定です。

Windows 8にTeXをインストールして使うまでの手順

先日新しくUltrabookを買いました。実は初めてのWindows 8なんですよ。だから「あれ???スタートボタンがない?????」みたいなテンプレのリアクションを(独りで)して,とりあえずソフト何かソフトで開きたかったら[Win]+[Q]を押せばいいのかと悟ってようやく安心できました。

そういうわけで,新しくWindows 8機にTeX環境を作ることになりました。ちょうど理工系の学部の大学に進学なさった知り合いも多いので,この機会にメモを作っておけば需要ありそう,というのがこの記事を書こうと思った動機です。ついでに(将来の自分のためにも)フォント周りのめんどくさい設定を済ませて,dvipdfmxでフォントを埋め込みのPDFを出力できるTeX環境を構築しちゃおう」,というところまでがこの記事の内容です。

一番楽な方法で行きましょう

TeXをインストールするにあたって,皆さんは特にこだわりがありません(断言)。そこで,あべのり先生の「TeX インストーラー」を使わせていただくことにしましょう。
ダウンロード画面
TeX インストーラー」のページにアクセスして,最新版をダウンロードします。
ダウンロードしたzipファイル
ダウンロードしたzipファイルを展開してください。

さっそくインストールを始める

展開したら次のようのフォルダーができると思います。
zipファイルを展開した図
この中の「abtexinst.exe」を実行します。UACが出たら許可してください。
installer1
「Change Language」は必要に応じてどうぞ。「次へ」進みます。
installer2
インストール先を聞かれますが,特にこだわりのない皆さんは普通はデフォルトのままでいいです。しかし,この記事を書いているときの一時的な問題だったのかもしれませんが,そのまま先に進むと,
installer6
こういうエラーが出ました。ログファイルを見てみると,
installer7
とってもシンプルなエラーメッセージで一見何が言いたいのかさっぱりですが,大学受験勉強で培った行間を読む力を駆使すれば,「W32TeXのファイルのダウンロードに失敗したんだな」と分かりますね,分かりません。とりあえずいろいろ試行錯誤してみたら原因はそれでした。そこで,
installer9
インストーラーがW32TeXをダウンロードしに行くURLをこう変えたらうまく行きました。同じ理由で,
installer10
次のページのGhostscriptのURLも別のものに変えます。このURLのエラーは一時的なものなのか恒久的なものなのかはわかりませんが,インストーラーのこの画面でこういうエラーが出る可能性があって,その場合はこうすればいい,ということは覚えておいてください。

気を取り直して進みましょう

installer4
ダブルクリックでTeXworksのフォント設定の画面が出ますが,後で正しく設定し直すので今はそのまま進んで大丈夫です。(ちなみにさっきのエラーが出るとしたらこの後です。)
installer11
続いてインストールする内容を選択する画面です。が,例によって特にこだわりのない皆さんはデフォルトのままでいいでしょう。
installer12
その他のインストールする内容の確認です。(といってもTeXworksしかありませんが)TeXworksはこの先の説明でガッツリ使うので,あまのじゃくじゃなければ絶対にチェックを外さないでください。次に進むと,
installer13
勝手にダウンロードが進み
installer14
そのままインストールも勝手に進めてくれるので,このまま最後まで自動かと思いきや,
installer15
Ghostscriptのインストーラーは手動で進めなければなりません。ですが例によって特にこだわりのない皆さんは,「Next>」
installer16
「I Agree」
installer17
「Install」
installer18
暇なら「Show details」を眺めましょう。
installer19
今は別にReadmeとか読みたくないのでチェックを外します。そしてFinish!

続いてGSviewのインストールが始まります。
installer20
「Setup」
installer21
インストールに使う言語を選択します。「やっぱりロシア人がいいかな♡」とかそういう話じゃないですよ!別にわざわざ第二外国語選ばなくていいです!おとなしく「English」を選びましょう。
installer22
「Next>」
installer23
「Next>」
installer24
ファイルの関連付けについて聞かれます。上にだけチェックが入っている状態でいいと思います。Adobeの高いソフトを持っている人はチェックをつけないほうがいいかもしれません。
installer25
インストール場所は,例によってアレなので「Next>」
installer26
「Next>」
installer27
例によってry,「Finish>」
installer28
インストールが始まります。
installer29
終わりました。「Exit」

installer30
最後にdvioutのインストール先を指定します。
installer31
インストールが完了しました。
installer32
素直に再起動しましょう。

これでインストールは完了しました。しかしやるべきことはまだまだあります。

TeXworksをスタート画面(いわゆるMetro)のタイルに表示させよう

せっかくWindows 8なので,デスクトップだけでなくスタート画面にもTeXworksを表示させましょう(インストールしただけではTeXworksを表示してくれません)。

まずTeXworks本体のある場所を開きましょう。デフォルトの設定でインストールしたなら,[Win]+[E]のショートカットキーを押すなどして「コンピューター」を開き,「OS(C:)」>「w32tex」>「share」>「texworks」を開きます。
pin1
texworksフォルダーの中に「TeXworks.exe」(.exeは設定によっては表示されません)があるはずですので,それを[Shift]キーを押しながら右クリックすると図のようなメニューが出てきます。そして,「スタートにピン留め(P)」します。

pin2
スタート画面を開いてみると無事登録されていますね。(図の右下)

いよいよフォントの設定です

日本人がTeXを使おうとして何が一番躓くって,間違いなくフォントの設定です。ちゃんと設定しないと,TeXworksで,文字が表示できなかったり,コンパイルできなかったり,と,もうそれはそれは「TeXマジクソ」と言う大学生が増える原因に違いありません。ですが,これからいう手順でちゃんと設定すれば間違いなく動くのでご安心ください。

ネットの他のサイトではフォントのライセンスの問題から生成するPDFにフォントを埋め込まない設定の説明が多いですが,ここでは正規のWindowsを使っている限りライセンス上の問題のない「MS 明朝」と「MS ゴシック」をPDFを埋め込みます(PDFにフォントを埋め込むというこは,そのフォントをインストールしていないパソコンでそのPDFを見てもちゃんとそのフォントで表示してくれます)。なお,モリサワやFONTWORKSのライセンス,あるいはヒラギノ・小塚などのライセンスを持っている人は,適宜以下の説明をそれらのフォントに読み替えればそういう高級なフォントを埋め込んだPDFが作れます。

フォントをコピーする

残念ながら,我々が使うTeXのコンパイラーはWindowsにインストールしてあるフォントを認識してくれません。ですので「MS 明朝」と「MS ゴシック」のフォントファイルをコピーして,コンパイラーが認識できる場所にペーストします。(ネットによくある解説ではしばしば「シンボリックリンク」という機能を使うことでコピーペーストによるライセンス違反の可能性を排除していますが,そんなことがスラスラできる人はこのページなど見ていないということで,安易なコピーペーストで話を進めます。)

font1
[Win]+[E]などで「コンピューター」を開き,「OS(C:)」>「Windows」>「Fonts」と進むとフォントがずらりと並んだ画面になります。「MS 明朝」と「MS ゴシック」の二つを選んで,コピーします。

font2
TeXのインストール先がデフォルトであれば,再び「コンピューター」を開き,「OS(C:)」>「w32tex」>「share」>「texmf」>「fonts」>「opentype」と進んでいきます。そして,その「opentype」フォルダーに先ほどコピーした二つのフォントファイルを貼り付けます。「msmincho.ttc」と「msgothic.ttc」は「MS 明朝」と「MS ゴシック」の本当のファイル名ですのでびっくりしないでください。

fontx
もう一度,[Win]+[E]で「コンピューター」を開き,「OS(C:)」>「w32tex」>「share」>「texmf」>「fonts」>「map」>「dvipdfmx」>「base」進んでいけば,(デフォルトのインストール先なら)その「base」フォルダーの中に「cid-x.map」というファイルがあるはずです。それをバックアップのためにコピーして貼り付けておきます。
fonty
デスクトップやスタート画面から「TeXworks」を起動します。そして,「cid-x.map」をTeXworksのウィンドウにドラッグ&ドロップします。(「cid-x.map」は必ずしもTeXworksで開く必要はなく,「秀丸」などを使っているならそっちでもかまいませんが,Winodws付属の「メモ帳」では改行コードの関係で開かないほうがいいです。)

font4
「cid-x.map」の内容を全消しして,以下の内容コードをコピーペーストして保存してください。

各行に3つの塊がありますが,「MS 明朝」「MS ゴシック」以外の別のフォントを使う場合は一番右を変更します。「msmincho.ttc」や「msgothic.ttc」の前についている「:0:」は使うフォントの形式が「.ttc」の時だけ必要で,もし「.ttf」や「.otf」の形式のフォントファイルを使うなら要らないものです。例えば「msmincho.ttc」の代わりに「A-OTF-RyuminPro-Light.otf」を使いたかったら,「:0:msmincho.ttc」を「A-OTF-RyuminPro-Light.otf」に変更し,「msgothic.ttc」の代わりに「FOT-NewCezannePro-DB.otf」が使いたかったら,「:0:msgothic.ttc」を「FOT-NewCezannePro-DB.otf」とします。その場合は結局さっきのコードの代わりに次のようになります。

もちろん,この場合は「A-OTF-RyuminPro-Light.otf」と「FOT-NewCezannePro-DB.otf」のファイルを「msmincho.ttc」と「msgothic.ttc」の代わりにC:\w32tex\share\texmf\fonts\opentype(デフォルトでインストールした場合)にコピーして貼り付けておく必要があります。

TeX環境構築完了!

長い作業工程お疲れ様でした。これであなたのパソコンには無事TeX環境が出来上がったはずです。最後にサンプルを示すので,TeXworksの画面から「ファイル」>「新規作成」をして,以下のコードをコピーペーストしてください。そして右上のプルダウンメニューが「pdfpLaTeX」になっていることを確認してから,緑色の再生ボタンみたいものを押します。適当にファイルを保存して,そのまま進んでください。そうして下のスクリーンショットのような出力が得られれば成功です。また.texファイルを保存したフォルダーに.pdfファイルが生成されています。AdobeReaderなどで確認してみてください。


end

TeXに直接作図しよう!2

すでにTikZがインストールされていて,TeX文書ののコンパイルにはdvipdfmxを使うものと仮定して話を進めていきます。

パッケージを読み込もう

TikZをLaTeXで使うには,プリアンブルに次のように書く必要があります。

これでよさそうなのですが,これだけではdvipdfmxではうまく表示できません。画像関係の扱いはソフト固有の処理があるらしく,TikZに「dvipdfmxを使いますよ」と教えてあげなければなりません。そこで次の一行を加えます。

あるいは,次のようにgraphicxパッケージを読み込むのであれば上の一行は不要になります。

結局,

または

とプリアンブルに書くことで,TikZを使う準備が整いました。

必要に応じてTikZのライブラリーも読み込もう

\usepackage{tikz}だけではすべてのTikZの機能が使えません。この記事では必要に応じてまた説明しますが,例えば「calc」というTikZのライブラリーに含まれている機能が使いたければ,

のようにプリアンブルに書く必要があります。

TikZコマンドの書き方

TikZのコマンド(\pathや\drawなど)はtikzpicture環境の中に記述します。tikzpicture環境の外に書くとエラーが出ます。

\tikz{…}という書き方もあるのですが,基本的には,TikZのコマンドは必ずtikzpicture環境の中に記述するものだと思っておいてください。また,各行の最後にはセミコロン「;」を打ってください。ただし,行の最後というのは,改行の位置ではなく,ひとつのコマンドの最後という意味です。

点の座標(coordinate)のプリミティブな定め方を知る

TikZでは直線・曲線を引いたり,円を描いたりするときに,点の座標を指定します。点を指定するだけではまだ画面に何も表示させられませんが,最初が肝心ですので辛抱強く耐えてください。その指定方法には次のものがあります。

直交座標系(デカルト座標系:Cartesian coordinates)

Rendered by QuickLaTeX.com

中学・高校の数学でもよく使う座標系なのでなじみがあるでしょう。右向きの上向きが正の向きです。スクリーン座標系(下向きが正)ではありません。x座標がay座標がbなら,

と書きます。単位は付けても付けなくてもかまいません。付けなければ多分[cm]になります。

極座標(Polar coordinates)

Rendered by QuickLaTeX.com

高校数学の最後のあたりで習い,しかも文系なら習わないかもしれない,でも大学入試でサッと使えるとたまに便利な,あの極座標です。原点Oからの距離がrで,x軸の正の向きとのなす角がθとなる点を

と書きます。高校で習う極座標の書き方は(r, θ)ですが,それとは違うので,注意しておいてください。また別の書き方として,

と書くこともできます。ただし,上の二つのいずれの場合もrには単位(px, cm など)をつける必要があります。(付けなくてもコンパイルは通りますが,直交座標に単位を明示しなかったときとは違う単位になります。)

直交座標で単位を明示しないときと同じ単位を使う場合は,

とでき,rに単位をつける必要はありません。(逆に単位を付けるとコンパイルが通りません)

ある座標に名前をつける

数学でも「三角形ABCの重心をGとおく。」のように,点に名前をつけることがありますが,TikZでも点の座標に名前をつけると便利なことがあります。名前を付けたい座標を「(座標)」,名前を「name」とすると,

というコマンドを書きます。この省略形の

と書くこともできます。「(座標)」の部分には,直交座標(a,b)でも極座標(θ:r) or (xy polar cs:angle=θ, radius=r)でも,どんな指定方法の座標でも入ります。「name」は何文字でも構わないのですが,数学の慣習的に大文字のアルファベット一文字にすることが多いでしょうか。例を挙げますと,

というコマンドを書いておけば,後ろの場所で「(0, 0)」の代わりに「(O)」と書くことができます。

プリミティブな相対座標

相対的な座標を用いる方法は他にもありますが,まずはtikzパッケージを読み込んだだけで使える相対座標を説明します。相対座標は《現在の座標》からの変位を,

で表します。例えば,点Pがすでに与えられているとき,点Pからx軸方向にa, y軸方向にbだけ移動した点にQという名前を付けたければ,

と書けます。直交座標に限らす,極座標でも大丈夫です。これは,\pathコマンドの後ろが左から順番に解釈されるときに,まず(P)で《現在の座標》が点Pになり,次に++(a, b)で《現在の座標》を(a, b)分変位させ,最後にcoordinate(Q)で《現在の座標》にQという名前をつけているのだと考えることが出来ます。ですので,そのように解釈できない次のコードは不正です。

\coordinate (Q) at(P) ++(a, b);

++(変位)」は《現在の座標》に《現在の座標》を変位させた後の座標を代入しますが,

とすると《現在の座標》は変更されません。

例えば,「++(変位)」の場合,《現在の座標》が次々に移っていくので,

と同じ図形を相対座標を用いずに書くなら,

Rendered by QuickLaTeX.com

となりますが,「+(変位)」だと,

と同じ図形を相対座標を用いずに書けば,

Rendered by QuickLaTeX.com

となります。これは《現在の座標》がずっと(1,1)のまま変わらないので,「+(変位)」では(1,1)から変位させたものが計算されるためです。

いずれまた,もっと複雑な点の指定方法を説明しますが,とりあえず次回は図形の描画から説明を始めましょう。

1 2 3