つれづれなる備忘録

日々の発見をあるがままに綴る

CES2022

f:id:ATATAT:20220119201634p:plain:w500

昨年はオンラインのみだったが、今年のCESは2年ぶりに展示会として開催された。

atatat.hatenablog.com

今年も注目の技術・製品について取り上げていきたい。

BMWが発表した車体の色(モノクロ)が変化する車。

car.watch.impress.co.jp

Kindleなどで使われている電子ペーパー:E inkを使ってモノクロの階調が変化する。三角のメッシュ状の素子により曲面やホイールの形状でもディスプレイとして機能する。 コンセプトモデルなので、もちろん購入することはできない。(自動運転にも支障がありそう。)

VRゴーグルMeganeX

panora.tokyo

日本のスタートアップ企業(現在はパナソニック傘下)が発表したVR改めメタバース用のゴーグル。SF映画に出てきそうな外観。

Samsung, ポータブルプロジェクター

www.phileweb.com

小型プロジェクターFreeStyleはスマートスピーカー機能やAmazon Primeビデオをはじめストリーミングサービスを投影できる。また照明としても利用できる。 これだけいろいろな機能があって価格は$899.99。

かつてソニーXperia touchが16万円程度の価格と比較すると手ごろな価格なのかもしれない。

xperia.sony.jp

Texによる文書作成30 ~円、座標、円弧の作図

今回はTikzを用いた円、座標、円弧の作図の例を紹介したい。

atatat.hatenablog.com

1. 座標と図形

Tikzを利用するにはプリアンブル領域に\usepackage{tikz}としてパッケージをロードしておく。

XY座標軸は\draw (始点) -- (終点)として直線を描画する。また円は\draw (中心点) circle (半径);とすると描画できる。

\begin{tikzpicture}
\draw (-1.5,0) --(1.5,0); \draw (0,-1.5) --(0,1.5); 
\draw (0,0) circle (1cm); 
\end{tikzpicture}

実行すると以下のように十字線と円が描画される。

"円と十字線"
円と十字線

次にグリッドを追加する。\draw[step=グリッド幅] (左下) grid (右上);とすることで、左下から右上の範囲でstep幅ごとに直線が追加される。またオプションで\draw[step=.5cm,gray,very thin]とすれば灰色、細い線でグリッドを描画する。very thinのところをdashedなどとすると破線に変更できる。

\begin{tikzpicture} 
\draw (-1.5,0) --(1.5,0); \draw (0,-1.5) --(0,1.5);
\draw (0,0) circle (1cm);
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4); 
\end{tikzpicture}

実行すると以下のように十字線と円にグリッドを追加することができる。

"グリッド追加"
グリッド追加

2. 円弧の描画

円弧の描画は\draw (円弧開始点) arc (開始角:終点角:半径);とする。以下は座標点(3mm,0mm)から0°から30°まで、半径3mmの円弧を描画する。

\begin{tikzpicture} 
\draw (0,0) circle (1cm); 
\draw (3mm,0) arc (0:30:3mm);
\end{tikzpicture}

"円弧の描画"
円弧の描画

円弧の開始座標点を横にずらしたい場合は、例えば\draw (4mm,0) arc (0:30:3mm);とすると円弧の形はそのままで、横に位置をずらすことができる。

次に円弧部分を扇状に塗りつぶす場合は\filldrawコマンドを使用する。\filldraw[fill=塗りつぶし色,draw=線色](扇中心点)--(円弧開始点) arc (開始角:終点角:半径)--cycle;とすると扇状の図形を塗りつぶすことができる。 塗りつぶし色は、例えばgreen!20!whiteとすると緑20%、白80%の混色を指定することができる。\filldrawのdrawオプションを指定すると輪郭線を描画することができる。

\begin{tikzpicture} 
\draw (0,0) circle (1cm); 
\filldraw[fill=green!20!white,draw=green!50!black](0,0)--(3mm,0mm) arc (0:30:3mm)--cycle;
\end{tikzpicture}

"扇塗りつぶし"
扇塗りつぶし

3. 垂線などの追加

円上の1点から垂線を引く。円上の点は極座標的に指定するには (30:1cm)とすると1cmの円上、角度30°を指すことになる。次に+(0,-0.5)とすると直前に指定した点 (30:1cm)からx方向に0, y方向に-0.5移動した点を指定することができる。このように座標点を直接指定する以外に、直前の座標からの相対座標を用いて点を指定することができる。 1cmの円上、角度30°の点から垂線を下すには、2点の座標を用いて\draw (30:1cm) -- +(0,-0.5);とする。以下は、垂線を赤太線にするため\drawコマンドのオプションにred, very thickを追加している。

\begin{tikzpicture} 
\draw (0,0) circle (1cm);
\filldraw[fill=green!20!white,draw=green!50!black](0,0)--(3mm,0mm) arc(0:30:3mm)--cycle;
\draw[red,very thick](30:1cm)--+(0,-0.5);
\end{tikzpicture}

"垂線追加"
垂線追加

さらに垂線を下した点から原点に向かって線を引く。(30:1cm)++(0,-0.5)とすると1cmの円上、角度30°から相対座標(0,-0.5)を移動した点を座標点として設定することができる。さらに相対座標の移動を加えたい場合は++を加えて、例えば(30:1cm)++(0,-0.5)++(0,-0.5)とする。垂線を下した点から原点に向かって線を青太線として、さらに円上の点から原点に向かって線を引いて垂線と合わせて3角形を描画する。

\begin{tikzpicture} 
\draw (0,0) circle (1cm); 
\filldraw[fill=green!20!white,draw=green!50!black](0,0)--(3mm,0mm)arc(0:30:3mm)--cycle;
\draw[red,very thick](30:1cm)--+(0,-0.5);
\draw[blue,very thick](30:1cm)++(0,-0.5)--(0,0);
\draw (30:1cm) -- (0,0);
\end{tikzpicture}

"垂線追加2"
垂線追加2

4. ラベル追加

線などオブジェクトに近くにラベルを配置するにはnode[オプション]{テキスト}とする。テキストはtexコードでもよく-- node[left=1pt] {$\sin\alpha$}とすると線の1pt分左側にsin αを表示することができる。

\begin{tikzpicture} 
\draw (0,0) circle (1cm); 
\filldraw[fill=green!20!white,draw=green!50!black](0,0)--(3mm,0mm)arc(0:30:3mm)--cycle;
\draw[red,very thick](30:1cm)-- node[left=1pt]{$\sin\alpha$} +(0,-0.5);
\draw[blue,very thick](30:1cm)++(0,-0.5) -- node[below=2pt]{$\cos\alpha$} (0,0);
\draw (30:1cm) -- (0,0);
\end{tikzpicture}

"ラベル追加"
ラベル追加

5. スケール調整

 ラベル追加したところでほぼ完成だが、ラベルに対して図形が小さいのでtikzpictureのscaleオプションでサイズ調整する。あわせてグリッドの部分を十字の終端を矢印に変更して、最終的には以下のようなコードを実行する。

\begin{tikzpicture}[scale=2] 
\draw[-Stealth] (-1.5,0) --(1.5,0); \draw[-Stealth] (0,-1.5) --(0,1.5); 
\draw (0,0) circle (1cm); 
\draw[step=.5cm,gray,very thin] (-1.4,-1.4) grid (1.4,1.4);
\filldraw[fill=green!20!white,draw=green!50!black](0,0)--(3mm,0mm)arc(0:30:3mm)--cycle;
\draw[red,very thick](30:1cm)-- node[left=1pt] {$\sin\alpha$} +(0,-0.5);
\draw[blue,very thick](30:1cm)++(0,-0.5) -- node[below=2pt]{$\cos\alpha$} (0,0);
\draw (30:1cm) -- (0,0);
\end{tikzpicture}

"完成図"
完成図

6. まとめ

 Tikzを用いた作図として円、グリッド、円弧、塗りつぶし、ラベル追加する方法について紹介した。

今週のお題「手帳」

f:id:ATATAT:20220115094039p:plain:w500

今週のお題「手帳」

今週のお題「手帳」ということだが、ここ2年で在宅やオンライン会議での仕事が増えたため、スケジューラーやPC上でメモをとる機会が多く、手帳どころかノートに手書きメモを取ることが少なくなってきた。

オンラインのスケジューラーやメモの大きなメリットは、共有することができるので、日程調整や会議の記録などが圧倒的に効率的になったということが実感できる。

「手帳」も使うことはあるが、今は共有のためオンラインのスケジューラーに転記する必要があり、ひと昔前と明らかに「手帳」の使い方が変わってきている。