座標系
ワークスペース、ジョブ、絶対座標、画面。各コントロールが使用する座標系と、その変換方法。
Beam Benchでは4つの座標系を使い分けます。どの座標系を見ているかを把握すると、混乱を大幅に減らせます。
4つの座標系
1. ワークスペース(マシン)座標
マシンのベッド上における実世界のミリメートル単位の座標です。(0, 0)は、ホーミングによって設定されるワークスペース原点です。ほとんどのダイオードレーザーおよびガントリーマシンではベッドの左下に配置されますが、一部のCO2レーザーでは左上に配置されます。デバイスの設定 → マシン → 原点フィールドで、Beam Benchがどちらを使用するかを指定します。
使用箇所:マシン本体(GRBL座標)、移動画面の位置表示、ジョギング。
2. ジョブ座標
ジョブのアンカーを基準にした座標です。開始位置とLaser Controlのジョブ原点によって制御されます。
開始位置が絶対座標の場合、ジョブ座標とワークスペース座標は同じです。開始位置が現在の位置またはユーザー原点の場合、ジョブ座標はヘッド位置またはユーザー原点を基準にオフセットされ、デザインのアンカーが選択した基準点に配置されます。
使用箇所:G-codeプランナー。
3. キャンバス(プロジェクト)座標
キャンバス上でmm単位で表示される座標です。(0, 0)は、マシンプロファイルの原点に応じて、プロジェクトのベッド領域の左下または左上になります。
使用箇所:位置を表示するすべてのUIコントロール、図形プロパティ、プロパティツールバー、ルーラー。
4. 画面(ビューポート)座標
キャンバスウィジェット上のピクセル座標です。パンとズームによって、キャンバス座標から変換されます。
使用箇所:マウスイベント、ヒットテスト、内部レンダリング。これらを直接見ることはほとんどありません。
変換
screen ←→ canvas: pan, zoom (via viewport transform)
canvas ←→ workspace: identity (same coords, same units, sometimes flipped Y for top-left-origin machines)
canvas ←→ job: depends on Start From + Job Origin (see Laser Control)
job ←→ workspace: depends on Start From (User Origin offset, Current Position offset, or identity)よくある混同
「カットが間違った場所に配置された」
デザインはキャンバスの(50, 50)に配置したのに、カットは別の場所で実行されました。ほぼ必ず、開始位置とジョブ原点の不一致が原因です。ジョブ原点とワークスペース原点を参照してください。
「Y軸が上下逆になっている」
マシンによって、ワークスペース原点が左下の場合と左上の場合があります。Beam Benchは、マシンプロファイルの設定に従います。プロジェクトを別のマシン用に作成し、左上原点のマシンで開くと、ジョブが鏡像に見えます。マシンプロファイルで修正してください。
「インチとmm」
表示単位は表示だけを変更します。Beam Benchの内部座標は常にmmです。単位を切り替えても、基になるデータは変わりません。
座標系を分ける理由
座標系を分けることで、まずデザインをマシン座標に合わせて細かく移動しなくても、マシンに対するキャンバス上の任意の場所に配置できます。キャンバスの(0,0)、つまりプロジェクトの左下でデザインを作成し、ジョブ原点によって実際に実行したい場所へ移動させます。