54 GLSC と GLSC3D

久しぶりに(複数の場面で)使う必要が生じたため、やることになった。

Intel Mac

Ventura でも、GLSC はこれまで通り インストールできた。 C でも Fortran (gfortran) でもテストはパスした。 “Intel Mac では、gfortran でも GLSC が使える” と言って良い。

GLSC3D も普通にインストールできた (デモも実行できた)。

「GLSC3Dを久しぶりにインストールしてみた」

M1 Mac

やはり Ventura でも Monterey のときと同じだ。 GLSC はライブラリィの make は出来る。 Cからの利用は問題ない。 Fortran からの利用は、 g_sformat() を使うと segmentation violation が発生するが、 それ以外は問題ない。 GLSC に限らず、Fortran と C の相互利用で文字列の扱いをどうするかは、 昔から問題が生じやすいところ。 私自身は Fortran で g_sformat() を使うプログラムを作ってないので、 頑張って解決策を探す動機が弱い (va_list は難しそう)。

(2024/8/3追記) 続きを書きました。「Apple Silicon Mac で GLSC をコンパイルする」

メモ     久しぶりなので GLSC3D の使い方を忘れている。 自分のメモやドキュメントを見る。

線の色を RGB で指定することになっている。まあ、何となく分かるけれど、 従来の仕方を残して欲しかった (人間に覚えさせるのは反対。 上山パッチみたいに rgb_color() というのを別に作れば良かったにと思う。)。

  1. 黒 0,0,0
  2. 赤 1,0,0
  3. 緑 0,1,0
  4. 青 0,0,1
  5. マゼンタ 1,0,1
  6. 黄色 1,1,0
  7. シアン 0,1,1
  8. 白 1,1,1
不透明度 $ a$ $ 0\le a\le 1$ の範囲であるが、$ a=1$ だと従来と同じ。

線の太さは、0から$ 8$までの整数で、大きいほど太い。 基準が良く分からない (というのは GLSC と同じか)。

線の種類は、0 から $ 8$ までの整数で指定できるが、説明はない。 GLSC を真似ているのかな? (少なくとも 0 は実線で、 1 は点線である) GLSC の glsc.h には、 次のように定義されている (今度チェックしてみよう)。
#define G_LINE_SOLID            (0)
#define G_LINE_DOTS             (1)
#define G_LINE_DASHED           (2)
#define G_LINE_LONG_DASHED      (3)
#define G_LINE_THIN_DOTS        (4)
#define G_LINE_DOT_DASHED       (5)
#define G_LINE_D_DOT_DASHED     (6)
#define G_LINE_RESERVED         (7)



桂田 祐史