[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Java3Djp:00197] Re: Java3D と Swingについて



◆『世界各国経済情報ファイル』「The World 98 CD-ROM」◆=========
      
     ★ 世界各国の経済・地理・社会の様々なデータを収録!
         ★ コピー&ペースト、ダウンロード機能でとっても便利!!
 
 <<節分特別セール 定価 6,800円 → 4,800円(税、送料込み)>>
   お問い合わせ先:日本データベース開発(株) kanzaki@xxxxxxxxxx 
============== http://www.ndk.co.jp/06SUBM/saisin.html ==============

>はじめまして、池田といいます。よろしくおねがいします。
いらっしゃいませ。

>現在、Swing上でJava3Dの表示を行っているのですが表示がおかしくなって困っています。
>具体的には、JDesktopPane上にJava3Dを表示するJInternalFrameをいく枚か表示させる
>アプリケーションなのですが、JInternalFrame同士が重なると重なった部分のフレームの
>枠が表示されません。また、フレームを移動するとJava3Dのパネルが遅れて移動します。

Java2(JDK1.2)、Java3D1.1(OpenGL版)、Windows95 (OpenGL1.1) で
現象を確認しました。こちらでも同様です。

>これはもしかして、Lightweight ComponentとHeavyweight Component の混在という問題
>なのでしょうか。もしそうだとしたら、回避方法は存在するのでしょうか。

Swing には詳しくないのですが、
Heavyweigt というより OpenGL の描画領域の問題ではないかと思います。

OpenGL の描画領域は、いちおうはウインドウの枠内に表示されますが、
Swing のフレームとは別個のコンテキストに存在するために、
Swing のフレームに遅れて移動するように見えます。

また、重なり判定も OpenGL の描画領域どうしでは成功していますが、
Swing のフレームを含めた重なり判定はしないようです。

私も Swing 環境での Java3D には興味があるのでもう少し調べてみます。

# とりあえず回避するには AWT を使うしかないかもしれません。
------------------------------------------------------------------
遠藤靖之 (えんどう やすゆき) <yasuyuki@xxxxxxxxxx>
http://www.freepage.total.co.jp/jfriends/ (Java互助会ホームページ)
株式会社タイムインターメディア 情報通信サービス部 TEL 03-5362-9009
〒162-0065 新宿区住吉町3-11 新宿スパイアビル      FAX 03-5362-9008