2021年1月26日火曜日

geany for Windowsで半角英数に切り替えても半角カナ入力になってしまう件

 geany for Windowsで半角英数に切り替えても半角カナ入力になってしまうのをどうにかできないか悩んでいたけど一応の解決を見た。

Windowsの設定で、言語の設定から英語を追加する。
英語キーボードを何か追加する。私は 米国 International Qwerty キーボードを追加した。

Geany を起動する。

窓+スペース で、日本語と英語を切り替えることができる。

半角英数を入力するときは、英語で入力する。

かな漢字、全角英数は日本語で入力する。

英語入れておくと、日本語モードで半角/全角キーをたたいたときに半角英数に戻ることができるようになったりする。

WindowsとGTKとgeanyの間で一体何をやっているのだろう? 



2021年1月5日火曜日

定義されているシンボルをテキストファイルとして書き出す

AutoLISP (他、AutoCAD 互換CADのLISP)で、定義されているシンボルをテキストファイルとして書き出します。 


(defun list-all-symbols ( / file fd ls )

  (setq file (getstring T "filename: "))

  (setq fd (open file "w"))

  (foreach it (atoms-family 0)

    (princ it fd) (princ "\n" fd) 

  )

  (close fd)

  (terpri)

)

実行

コマンド: (list-all-symbols )

filename: c:\temp\ijcad.lst

テキストファイルは1行1関数(変数、オートメーションの定数、etc.)になります。

 用途

シンボルの衝突(コンフリクト)がおきていないかチェックするとか

隠し機能を探すとか

関数の説明

atoms-family によって、現在登録されているすべてのシンボルのリストを返します。

type 引数が 0 のときはシンボルのリスト、1のときは文字列のリストになります。

open princ close は、データをテキストファイルとして出力する方法です。

open 関数がファイルをオープンし、戻り値の ファイル識別子を、princ 関数や close 関数に渡すと、開いたファイルへの操作になります。


2021年1月2日土曜日

HYPER-V に OpenSUSE をインストールしたら解像度が1024x768固定になって困った

 HYPER-V に OpenSUSE をインストールしたら解像度が1024x768固定になって困った。パソコン本体に合わせて、1920x1080ピクセルにしたいぞ。

どんぴしゃりの説明がありました。

Hyper-VでopenSUSE Leap 15.0 - おぼえがき (hatenablog.com)

  1. sudo vim /etc/default/grub
  2. GRUB_CMDLINE_LINUX="" の行を探し、GRUB_CMDLINE_LINUX="video=hyperv_fb:1920x1080" に変更して保存、終了。
  3. sudo grub2-mkconfig -o /boot/efi/EFI/opensuse/grub.cfg
  4. sudo grub2-mkconfig -o /boot/grub2/grub.cfg
  5. システム再起動後に、変更が反映される。
ああ、よかった。 

2020年12月24日木曜日

IJCAD 2020 .Net サンプル、初歩も初歩

 IJCAD 2020 .Net サンプルの作り方。

  1. Visual Studio 2019 とか使います。
  2. ファイル→新規作成→プロジェクトから、クラスライブラリ(.NET Framework)を選択します。C#とVB.Netはお好みで選んでください。


  3. 参照設定を行います。次の2つのファイルを参照します。
    C:\Program Files\ITJP\IJCAD 2020 PRO\gmap.dll
    C:\Program Files\ITJP\IJCAD 2020 PRO\gmdb.dll
    追加したら、ローカルにコピーしない設定に変更します。
  4. ソースコードは次のようになります。
  5. ビルドしてください。.Net Framework のバージョンは、4.8 にする必要があります。
  6. NETLOADコマンドでロードすれば、コマンドを実行できるようになります。
ソースコードは次のようになります。
using GrxCAD.ApplicationServices;
using GrxCAD.DatabaseServices;
using GrxCAD.EditorInput;
using GrxCAD.Geometry;
using GrxCAD.Runtime;
using GrxCAD.Windows;
using CADApplication = GrxCAD.ApplicationServices.Application;
using CADException = GrxCAD.Runtime.Exception;
namespace CSSample1
{
    public class Class1
    {
        [CommandMethod("CSHELLO")]
        public void cmdCSHello()
        {
            CADApplication.ShowAlertDialog("Hello");
        }
    }
}

 ポイントは、

  • コマンドを定義するクラスは public クラスにしないと、IJCADから呼び出すことができません。
  • コマンドは CommandMethod 属性でコマンド名と実行フラグを与えます。引数、戻り値のない public な変数にする必要があります。
  • 名前空間は、GrxCAD.ApplicationServices などになります。AutoCADの場合は、Autodesk.AutoCAD.ApplicationServices などです。
  • ApplicationクラスとExceptionクラスが名前の衝突を起こすのを避けるために、CADApplication、CADException と再定義するのはおすすめです。
  • ApplicationクラスのShowAlertDialogは警告メッセージボックスを表示する関数です。

 

2020年11月9日月曜日

JW_CADの822a

 JW_CADの822aが公開されていましたが、描かれた図面を読み込んだら、範囲外に怪しい文字図形データが埋め込まれていました。

まだアルファ版なんですかね。

ということなので、JW_CADの8.x対応はもう少し後にしたいと思います。

2020年10月30日金曜日

バッチファイルでビルドする

Visual Studio 2015 を使っている人なら、アプリケーションメニューの中に「VS2015用 MSBuild のコマンドプロンプト」というショートカットがあって、それを使うと MSBuild というツールでコマンドウィンドウを使ったプロジェクトやソリューションのビルドが可能である。

ということは、これを使ってバッチファイルを作ることもできるはず。

こんな風になりました。


@ECHO ON

CALL "C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools\VsMSBuildCmd.bat"

cd C:\Dev\SomeSolution

MSBUILD /t:Clean /p:Configuration=Release;Platform=Win32 SomeSolution.sln

MSBUILD /t:Clean /p:Configuration=Release;Platform=x64 SomeSolution.sln

MSBUILD /t:Build /p:Configuration=Release;Platform=Win32 SomeSolution.sln

MSBUILD /t:Build /p:Configuration=Release;Platform=x64 SomeSolution.sln


/t:Clean のところは、/t:Rebuild でも /t:Clean;Build でも構わない。

slnファイルを指定するか、プロジェクトファイルを使用するかはお好みで。

今だと AZure で自動ビルドさせちゃうとかもあるんでしょうけど、ちまちまやるならこういうのもありかと思います。



2020年10月27日火曜日

DIMSTYLE 寸法スタイルの説明がないコード

 AutoCAD 2025 の DXFリファレンスの DIMSTYLE の説明

にないものを以下に列挙します。


49 DIMFXL[寸法補助線長さ] 長さを指定

50 DIMJOGANG[半径寸法線折り曲げ角度] 角度をラジアンで指定

69 DIMTFILL[寸法値背景] 0=いいえ 1=透過 2=色指定

70 DIMTFILLCLR[寸法値背景色] ACIで指定

290 DIMFXLON[寸法補助線長さ固定] 0=いいえ 1=はい

294 DIMTXTDIRECTION[寸法値方向] 0=左から右 1=右から左

295 DIMALTMZF [併記サブ単位係数]  実は使えない?

296 DIMALTMZS [併記サブ単位接尾表記] 実は使えない?

297 DIMMZF [サブ単位係数] サブ単位の係数を指定 (既定値 100)

298 DIMMZS [サブ単位接尾表記] "cm"などサブ単位を明示するために単位を記す

345 DIMLTYPE[寸法線線種] (参照されている LTYPE のハンドル)

346 DIMLTEX1[補助線1線種] (参照されている LTYPE のハンドル)

347 DIMLTEX2[補助線2線種] (参照されている LTYPE のハンドル)

以下はDIMSTYLEの拡張データとして保存される
388 DIMJAG[折り曲げ高さ係数] ACAD_DSTYLE_DIMJAG 既定値 1.5

392 DIMTALN[文字位置合わせ] ACAD_DSTYLE_DIMTALN (0/1) 既定値 0 

折り曲げ半径寸法の拡張データ ACAD_DSTYLE_DIMRADIAL_EXTENSION の追加データ
387   EXTARC [円弧の延長] 1=あり 3=なし 寸法補助線 あり/なし で切り替え
388   STARTANG [開始角度] 0.0 
390   ENDANG [終了角度] 0.0

VSCode で ARES の C# クラスライブラリを作成(1)

はじめにVSCodeにC#開発環境を追加しましょう。 VSCodeを実行し機能拡張から C# Dev Kit をインストールします。 関連する C# や .NET Install Tool もインストールされます。 以下の作業で、空のフォルダを作り、.Net が利用可能かどうかを...