[Face-Wizard] 
 
 [Inkscape] 
 
 [Potrace] 

 [Tablet_Renew] 
 
 [MY_CGs] 
J デュアルモニタでマッピング


ワイドモニタと廃品回収寸前だった17インチCRTを繋げてみました。
nVIDIA.のドライバでは、異なる画素数のモニタをデュアルにする場合は水平スパンでなくデュアルビューを使用します。
仮想デスクトップを作成した場合は、特定の仮想デスクトップに切り換えたときのみデュアルモニタが有効になるようにする事もできます。


デュアルモニタでも、表示エリアが「最大」だった場合はタブレットは下図のように2つのモニタを1つとして認識します。


上図は24.1インチワイドと17インチCRTを正の向きで2台横に並べた状態です。17インチのモニタは1024*768 dotに設定してあり、このように2台のモニタの縦横比が合わない場合は、表示エリアの1辺の長さが画素数の大きい方に合わせられます(でないと大きい方の画面下にポインタが届かなくなるので)。

ごらんの通りA4タブレットでは、操作エリアが上図のようにほぼ半分、実際にはデッドスペースがあるので2/3弱、使えなくなってしまいます。デュアルモニタで操作エリアを出来るだけ大きく使いたい方は、タブレットもデュアルにした方がどうやら良さそうです。

参考までに、1920*1200 dot + 1600*1200 dotを横に並べてデュアルモニタにした場合、A4タブレット+表示エリアを最大として計算すると、モニタ1枚当たりの操作エリアは官製はがきと大体同じくらいの大きさになります。
またA4タブレットで同じ画素数の4:3のモニタを正の向きで横に2つ並べる場合、モニタ1枚当たりの操作エリアはモニタ1台のときの1/4になります。これを2台とも縦向きで横に2つ並べる場合は、全体としての横縦比が3:2になりますから、モニタ1枚当たりの操作エリアは横方向で半分になり、縦方向には余りの領域が発生します。この余りの長さ(y)はA4タブレットでは25.4 mmになります。
228.6-(304.8*2*3r) = 25.4 mm


上図の表示エリアを見ると、小さい方(つまり17インチ側)の下にデッドスペースが発生しているのが分かります(真っ黒の長方形)。前述した下寄せマッピングと今度は逆に、モニタ上のデッドスペースでは、操作エリア内にペンがあっても、既にポインタはセカンダリの画面端に届いている状態になります(画面外にポインタが出ることは通常はありません)。

操作エリアは、イメージ的にはちょうど、グラフィックスエディタで1920*1200 pixelsの画像のキャンバスサイズを横方向にのみ1024 pixels広げて、1024*768 pixelsの画像をそこにペーストしてレイヤーを統合したような感じになります。

↓実際の操作エリアはこうなります。


要するに操作エリア内にデッドスペースが発生すると言うことは、図の×の範囲にペン先があるときに□を描こうが○を描こうがポインタは画面端にくっ付いているので、もしそこにキャンバスが有っても"―"のようにブラシ幅の線にしかならないという事です(当然それは下寄せマッピングをしたときの余りの領域でペンを動かしたときも同じですが、実際には手元を見ながら描かないので気にはなりません)。

―ところが。
2つのモニタを跨いでキャンバスを配置(普通はそんな事して描かないと思いますが)してみると、少し様子が変わってきます。
下図は赤い破線がモニタの境界で、タブレットに定規を置いて左から右にモニタを跨いで線を引いた図です。



マウス(PS/2)では1つ上の図のように大きいモニタ→小のデッドスペースへのポインタ移動は出来ないのですが、タブレットペンのポインタは、そこにキャンバスがあれば(モニタを跨いでキャンバスが有れば)、デッドスペースの中に飛び込んで行きます。その結果、アプリケーションによっては上図のように、きっちり1200-768=432ピクセル分の段差になって描画されてしまいます。

これはMS PaintでもPhotoshopでも同じでしたが、環境固有の現象かもしれません(おそらくモニタのスパンを水平スパンにすれば解決すると思われます)。

SaiやGimpではこの現象が発生せず、つまりデッドスペースの中にも平常どおり線が引けます(下図)。かといって縦横比保持が無効になるのでもなく、つまり1点目のクリック座標からの角度や座標を2点目にも正確に反映させて拾っている事になります。



試しにPhotoshopで[Shift+鉛筆]でドラッグしてみると、同じように直線ならデッドスペース内でも線が描画されます。

なぜ段差が鉛直にならないのかは僕には分からなかったのですが、ペンの速度に拠るものではなさそうです。これはまた時間が出来たらもう少しいろいろ試してみようと思います。
また2台のモニタが同じ画素数なら当然このような事は起こらないはずです(アプリケーションがデュアルモニタに対応していれば). でもSaiもGimpも確かデュアルには未対応だったような。。




またデュアルモニタにすると、タブレットの設定で表示エリアのメニュー項目に「モニタ1」「モニタ2」が追加されます。


タブレットの原点座標は左上なので、プライマリモニタがモニタ1、セカンダリモニタがモニタ2になります。

表示エリアをモニタ1にすると、上図のように表示エリア(= ポインタを動かせる範囲)がプライマリモニタに限定されます。このとき、操作エリアのマッピングを既に行っていた場合は、マッピング情報は上書きされずに残っているのですぐに元に戻ります。

ただしこの設定は表示エリアを限定する事になるので、セカンダリモニタにポインタを持って行きたいときには、一旦マウスに持ち替えなければなりません。
クイックポイントモードでも、前述した通りあくまで指定した表示エリア内でのクイック操作になります。
おそらくデュアルタブレットを想定した設定項目と思われますが、セカンダリモニタをサムネイル表示やプレビュウィンドウのみといったサブ的な用途に限定して使うようにすれば、操作エリアを無駄にせずに今まで通りのマッピングで操作できます。

表示エリア外にポインタが届かなくなると言うより、正確には、ポインタはセカンダリのx座標0まで届きます。セカンダリの画面左端にポインタは見えているけれど、それより右には動かせないという事です。
つまり表示エリアをモニタ1で限定せず、「一部領域」でプライマリ+30ピクセル程度(縦横比保持になる値を割り出して)増やしてやれば、セカンダリにあるウィンドウのタイトルバーを掴んだり、例えばレイヤーの表示/非表示を切り替えたりといった操作は出来るようになります。


ここまでは実際の机上のモニタ配置が左=プライマリ、右=セカンダリでしたが、これを逆にするにはWindowsの画面のプロパティから設定を行います。


「1」「2」と数字が描かれている図をドラッグすれば、上下左右、あるいは斜め右下でも左上でも、また図のようなモニタ画素数の異なる組み合わせではセンター合わせにも出来ます。

例えばセカンダリをプライマリより左に配置すると、「2」を左にドラッグしたときにモニタの座標がバルーン表示され、x座標がマイナスの値になるのが分かります。これはプライマリの左上を原点としたときのセカンダリ左上の座標になります。

画面のプロパティで配置を逆に入れ替えてからタブレットの設定を開くと


このように設定が反映されるのが分かります。あくまでモニタ1はプライマリモニタになります。

ただし一旦システムを再起動しないと反映されない場合もあるようです。それでも反映されない場合はタブレットドライバのクリーンインストールが必要かもしれません。

ちなみに机上の配置と設定上の配置が逆になっていると、プライマリからセカンダリに向けて右にポインタを動かしても、実際には左からポインタが現れる、という事になってしまいます。


また、最近のビデオカードドライバのユーティリティはこんな事もできます。


CRTでこんな事しちゃ本当はいけないんですが(発火する恐れがあります)、モニタを90°寝かせてセカンダリだけを縦向きにしてみました。実はこうすると、家のモニタは24.1インチの表示部分の短辺が324 mm・17インチCRTの長辺が320 mmなので、見かけの長さがほぼ揃うのです(17インチ液晶では多分合わない)。



CRTは液晶と違って、メーカー推奨解像度以上のモニタ画素数を設定できるので、取りあえず1280*960 dotで設定してドライバユーティリティで90°(反時計回りで90°にする場合は270°)回転。このとき、並べ方の設定は水平スパンでなくデュアルビューでなければなりません。

セカンダリを回転してタブレットの設定を開いてみると、今度はセカンダリのモニタ画素数yがプライマリより大きくなるので、下図のようにモニタ1の方にデットスペースが発生していますが、この状態でも表示エリアをモニタ1にすればシングルモニタのときと全く同じマッピングになります。
あくまでもマッピングとは、現在の操作エリアに対して、ポインタを動かせる範囲をどのように設定するか、なのです。



この辺はビデオカードドライバでカスタム解像度を作成すれば解決できるはずです。ただし液晶モニタは構造上、メーカー推奨解像度以上の画素数には設定出来ないので、この場合セカンダリを1200*900 dot*タテにすれば両者のドット数yが揃います。



処分しようと思っていたCRTでやってみたのですが、プレビューウィンドウ用に使うとなかなかイイかもしれない。

ただし念を押しますが、CRTでこういう置き方をして長時間使用した場合、内部で熱がこもってブラウン管の破裂・最悪の場合火災を招きます。またそのような事態になっても一切関知しません、出来ませんのでどうかご注意を。





上記以外で操作エリアの一部をモニタの縦横比と等しくするには、たとえば縦横比4:3のモニタでマッピングを行う場合、x/yが常に1.333...になるので整数比を求めるにはちょっと計算が面倒です(というか僕が算数苦手なだけ_orz)。

なので、操作エリアのダイアログで原点を左上(0,0)にしてから適当なサイズに赤枠をリサイズして、とりあえずxを決めたら後は電卓を使って、例えば仮のxが11171みたいな明らかに4や3で割り切れない数でも

4*(x/4);=
3*(x/4);=

の式に仮のxを代入して電卓にペーストすると、必ず4:3の比と一致する整数比が出てきます。端数を切り捨てた数に4と3を掛算するので当たり前ですよね・・・。

この式は、ラスターグラフィックスエディタで4:3の矩形を縦横比保持で拡大/縮小するときにもよく使います。[Shift]+ドラッグなどで縦横比保持でリサイズしたつもりでも、比が合わない事の方がたぶん多いはずです(これは縦横比を4:3固定で矩形選択して、コピー→新規にペーストして画像ピクセル数を確認するとすぐ分かります)。

もちろん、あらかじめグリッド間隔を4:3 pixelsにしておいて、矩形をグリッドにスナップすれば比は必ず一致します。641*481が4:3の比にならないように、グリッド間隔が4:3の整数倍でない限り、縦横比固定で変形などを行うと高確率で比が合わなくなるのです。縦横比1:√2の用紙をリサイズするときも当然そうなります。

前述のとおり、操作エリアを小さくしたところでクイックポイントエリアが広がったりはしないので、素早くポインティングしたいけどクイックポイントエリアじゃあまりにも狭すぎるって時くらいしか使わない設定かもしれません。
ということで役に立たないタブレット設定のツボはここまで。

 

 Next ⇒ 1:1の描画 


 PAGE TOP▲

Oct 15 2007