JP2000276339A - 画面データの処理システムおよび処理方法 - Google Patents

画面データの処理システムおよび処理方法

Info

Publication number
JP2000276339A
JP2000276339A JP11081954A JP8195499A JP2000276339A JP 2000276339 A JP2000276339 A JP 2000276339A JP 11081954 A JP11081954 A JP 11081954A JP 8195499 A JP8195499 A JP 8195499A JP 2000276339 A JP2000276339 A JP 2000276339A
Authority
JP
Japan
Prior art keywords
screen
data
processing
source code
screen data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP11081954A
Other languages
English (en)
Inventor
Ryuichi Ono
隆一 尾野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Schneider Electric Japan Holdings Ltd
Original Assignee
Digital Electronics Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Digital Electronics Corp filed Critical Digital Electronics Corp
Priority to JP11081954A priority Critical patent/JP2000276339A/ja
Publication of JP2000276339A publication Critical patent/JP2000276339A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 画面データを表示する装置側でも、画面デー
タを画面の表示のさせ方(処理手続)を併せて変更す
る。 【解決手段】 コンピュータ装置2で画面エディタ21
にJavaコンバータ21aを設け、画面エディタ21で作
成された画面データをJavaソースコードに変換する。プ
ログラマブル表示器1側では、Javaソースコードをテキ
ストエディタ18で必要に応じて変更することによって
画面における図形のデータ等を変更する。また、Javaソ
ースコードは、Javaコンパイラ19でバイトコードに変
換され、さらにJava仮想機械(VM)20でOS12に
適した機械語に翻訳されることによって実行される。こ
の結果、画面データが表示部16に表示される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、プログラマブル表
示器等の表示装置において、1画面毎に基本図形を含む
画面データを処理する画面データの処理方法および処理
システムに関するものである。
【0002】
【従来の技術】プログラマブル表示器は、ドット表示画
面、操作用入力スイッチ、ホストコントローラ(PL
C)とのインタフェース、画面上での操作入力のような
制御のためのプログラムメモリなどを備えた操作用表示
器である。一般に、プログラマブル表示器は、グラフィ
ック表示を行うので、操作盤、スイッチ、表示灯などの
機能を備えることができる他、制御対象機器の稼働状況
や作業指示のような管理のための各種のモニタ、機器に
対する設定値を入力する端末としての機能を備えてい
る。
【0003】このようなプログラマブル表示器で表示さ
れる制御画面は、画面作成ソフトウェア(作画ソフト)
を用いてユーザ独自で作成できるようになっている。画
面作成に際しては、ユーザが、パーソナルコンピュータ
等において作画ソフトによって提供されるスイッチ、テ
ンキー、メータ表示器、グラフ表示器等の部品、描画機
能等を用いて所望の制御画面を構成する。
【0004】作成された制御画面は、画面データとして
プログラマブル表示器に転送されて記憶される。そし
て、ホストコントローラの稼働時には、ホストコントロ
ーラとの間でやりとりされるデータに基づいてプログラ
マブル表示器の表示部に表示される制御画面上の各部品
や図形を表示させる。
【0005】また、PLCに蓄えられる制御対象機器に
関するデータを作画ソフトで作成された画面のどこに表
示させるかを設定するための設定データも、作画ソフト
に予め用意されている。その設定データは、制御画面の
データ(画面データ)の一部としてプログラマブル表示
器のメモリに記憶される。
【0006】
【発明が解決しようとする課題】ところが、上記のよう
な制御画面のデータ(画面データ)を変更しようとする
場合、作画ソフトによってコンピュータ装置でのみ変更
が可能であって、プログラマブル表示器で変更すること
ができない。具体的には、制御画面に基本図形を表示さ
せるような場合、プログラマブル表示器側で基本図形の
表示パラメータ(色、サイズ等)を変更しようとして
も、作画ソフトでその画面データを編集するといった作
業が必要になる。
【0007】また、設定データを変更しようとする場合
は、予め用意された設定データしか用いることができな
いため、設定データ間で互換性があることから、別の設
定データで転用することになる。この場合でも、設定デ
ータの転用は、作画ソフトによってコンピュータでのみ
変更が可能であって、プログラマブル表示器で変更する
ことができない。また、設定データとして新たな機能を
追加しようとする場合は、設定データの転用でも対応で
きないことがある。
【0008】このため、画面データの処理における柔軟
性に欠け、プログラマブル表示器が設置された現場での
制御画面の修正等を行うことができないという不都合が
ある。
【0009】本発明は、上記の事情に鑑みてなされたも
のであって、プログラマブル表示器のような画面データ
を表示する装置側でも、画面データを画面の表示のさせ
方(処理手続)を併せて変更することを目的としてい
る。
【0010】
【課題を解決するための手段】本発明の画面データ処理
システムは、請求項1に記載のように、表示画面上に基
本図形を表示する画面データを作成する画面データ作成
装置で作成された上記画面データを1画面単位で処理す
る処理装置において上記画面データを処理するシステム
であって、上記の課題を解決するために、上記画面をオ
ブジェクトとして扱うとともに、このオブジェクトが上
記基本図形のデータと上記図形を処理するための処理手
続とを含むように上記画面データをソースコードに変換
する第1変換手段と、上記ソースコードを編集する編集
手段と、編集された上記ソースコードを中間言語に変換
する第2変換手段と、上記中間言語を上記処理装置に適
した形態の機械語に翻訳することによって上記基本図形
のデータに対して上記処理手続を実行する実行手段とを
備え、少なくとも、上記処理装置が、上記書替手段と、
上記第2変換手段と、上記実行手段とを含んでいること
を特徴としている。
【0011】上記のシステムでは、画面データが、第1
変換手段によってソースコードに変換される。このソー
スコードでは、画面がオブジェクトとして扱われ、かつ
このオブジェクトが基本図形のデータと上記基本図形を
処理するための処理手続とを含むように上記画面データ
が扱われる。このようなソースコードとしては、例え
ば、Java(登録商標)ソースコードが好適である。次い
で、ソースコードは、例えばテキストエディタ等によっ
て実現される編集手段で編集された後、第2変換手段に
よって中間言語に変換され、さらに実行手段によって処
理装置に適した形態の機械語に翻訳される。これによっ
て、基本図形のデータに対して処理手続が実行される。
【0012】上記の処理のうち、少なくとも、ソースコ
ード編集以降の処理が、処理装置で行われるので、ソー
スコードを画面データ作成装置側だけではなく処理装置
側でも書き替えることができる。
【0013】また、本発明の画面データ処理方法は、請
求項2に記載のように、表示画面上に基本図形を表示す
る画面データを作成する画面データ作成装置で作成され
た上記画面データを1画面単位で処理する処理装置にお
いて上記画面データを処理する方法であって、上記の課
題を解決するために、上記画面をオブジェクトとして扱
うとともに、このオブジェクトが上記基本図形のデータ
と上記図形を処理するための処理手続とを含むように上
記画面データをソースコードに変換し、上記処理装置に
おいて、少なくとも、上記データ変換手段によって変換
された画面データを書き替え、上記データ変換手段によ
って変換されるか、あるいは上記書替手段によって書き
替えられた上記ソースコードを中間言語に変換し、上記
中間言語を上記処理装置に適した形態の機械語に翻訳す
ることによって上記基本図形のデータに対して上記処理
手続を実行することを特徴としている。
【0014】上記の方法でも、前述の画面データ処理シ
ステムと同様の手順で、画面データがソースコードを経
て中間言語に変換され、最終的には機械語に変換され
て、基本図形のデータに対して処理手続が実行される。
また、処理装置においてソースコードを編集するので、
ソースコードを画面データ作成装置側だけではなく処理
装置側でも書き替えることができる。
【0015】
【発明の実施の形態】本発明の実施の一形態について図
1ないし図10に基づいて説明すれば、以下の通りであ
る。なお、以下の説明におけるJavaは登録商標である。
【0016】本実施の形態に係る画面データ処理システ
ムは、図1に示すように、プログラマブル表示器1に適
用されている。このプログラマブル表示器1は、コンピ
ュータ装置2およびPLC(プログラマブルロジックコ
ントローラ)3と通信可能に接続されている。
【0017】画面データ作成装置としてのコンピュータ
装置2は、パーソナルコンピュータ等によって構成され
ており、作画ソフトをインストールすることによって作
画機能を備える画面エディタ21を含んでいる。この画
面エディタ21は、スイッチ、テンキー、メータ表示
器、グラフ表示器等の部品、描画機能等をユーザに提供
する。画面エディタ21によって作成された制御画面
は、パネルデータ(画面データ)としてプログラマブル
表示器1に転送され、メモリ部13に格納される。上記
の画面エディタ21は、後述するように、制御画面の作
成または更新時に基本図形のリスト化を行う機能も備え
ている。
【0018】また、画面エディタ21は、ユーティリテ
ィプログラムとしてJavaコンバータ21aを含んでい
る。第1変換手段としてのJavaコンバータ21aは、画
面エディタ21で作成されたパネルデータのデータフォ
ーマットしか受け入れず、このパネルデータを基本図形
を描かせるためのJavaソースコードに変換するようにな
っている。このようなJavaソースコードには、“.java
”の拡張子が付与される。
【0019】上記のJavaコンバータ21aは、具体的に
は、制御画面に含まれる基本図形を表現するための基本
データ、例えば、四角形であれば1つの角の座標、横方
向の長さおよび縦方向の長さ、円(楕円)であれば中心
の座標、横方向の径および縦方向の径を後述するような
Javaソースコードに置き替えていくといったプログラム
ジェネレータのような機能を備えている。
【0020】PLC3は、内蔵するCPU部によって、
制御プログラムにしたがい、図示しないI/O部を介し
て入出力機器4から入力されるデータに基づいて入出力
機器4に与える制御データの演算処理を行う。I/O部
は、入出力機器4に接続されるインタフェース機能を有
する部分であって、入出力機器4との間で入出力される
デジタル信号またはアナログ信号を上記のCPU部とや
り取りするようになっている。
【0021】入出力機器4は、製造ラインや各種施設の
監視、制御等を行うための入力機器および出力機器であ
る。入力機器としてはセンサやスイッチが挙げられ、出
力機器としてはアクチュエータ、リレー、電磁弁、表示
器などが挙げられる。
【0022】PLC3のCPU部に設けられた入出力管
理用のメモリには、入出力機器4のデータをストアする
ためのデバイスアドレスDMが確保されている。例え
ば、DM 100(100番地)にバルブが割り当てら
れたり、DM 200にセンサが割り当てられたりす
る。
【0023】PLC3に蓄えられる入出力機器4に関す
るデータを画面エディタ21で作成された制御画面のど
こに表示させるかは、タグによって設定される。タグの
設定は画面エディタ21のタグ設定機能を用いて行わ
れ、設定されたタグは画面データとともに後述のメモリ
部13に記憶される。タグとしては、タッチスイッチ、
数値表示、グラフ表示、設定値入力、図形表示等の画面
に表示される各種の機能に応じて用意されている。
【0024】処理装置としてのプログラマブル表示器1
は、CPU11、オペレーティングシステム(以降、O
Sと称する)12、メモリ部13、メンテナンスポート
14、入力部15、表示部16、インタフェース部(以
降、I/Fと称する)17、テキストエディタ18、Ja
vaコンパイラ19およびJava仮想機械(以降、JavaVM
と称する)20を備えている。プログラマブル表示器1
は、OS12を備えることによって汎用のパーソナルコ
ンピュータと同様な機能を備えることから、むしろパネ
ルコンピータと称する方が望ましいが、ここでは、プロ
グラマブル表示器1を表示機能を主にした表示器として
説明する。
【0025】CPU11は、OS12にしたがって、プ
ログラマブル表示器1の各部の動作を制御したり、各種
のアプリケーションプログラムを実行する。上記のOS
12は、パーソナルコンピュータに用いられる汎用のO
Sが好適に用いられ、図示しないハードディスクドライ
ブ等にインストールされている。
【0026】メモリ部13は、フォントなどを記憶する
ROM、上記の画面データを格納するためのユーザメモ
リ(画像メモリ、フラッシュメモリ)、表示部16に表
示させるパネルデータを一時的に蓄える専用メモリであ
るVRAM等を含んでいる。VRAMは、後述するアニ
メーション描画を実行する際の作業エリアとしても利用
される。
【0027】メンテナンスポート14は、コンピュータ
装置2との間の通信を行うための通信ポートである。こ
の通信で前記のようなパネルデータの転送等が行われ
る。入力部15は、表示部16の表示画面上で入力を行
うためにタッチパネルのような入力装置によって構成さ
れている。このため、表示部16は、液晶パネルやEL
パネルのような平板型表示素子によって構成されてい
る。
【0028】I/F17は、通信ケーブル9(例えば、
RS−232C)を介してPLC3との間で入出力機器
4…の制御や監視に関するデータの転送を行うようにな
っている。
【0029】編集手段としてのテキストエディタ18
は、画面エディタ21のJavaコンバータ21aから与え
られるJavaソースコードをスクリプト言語によって編集
することを可能にしている。
【0030】第2変換手段としてのJavaコンパイラ19
は、Javaコンバータ21aからのJavaソースコードまた
はテキストエディタ18で書き替えられたJavaソースコ
ードを、コンピュータ装置2やOS12の機種のタイプ
(プラットフォーム)に依存しない中間言語であるバイ
トコードに変換するようになっている。このバイトコー
ドには、“.class”の拡張子が付与される。
【0031】実行手段としてのJavaVM20は、上記の
バイトコードをOS12に適した機械語に翻訳するイン
タプリタと、機械語を実行する実行環境としてのJavaラ
ンタイムとを有している。
【0032】続いて、画面上でのアニメーション描画に
ついて説明する。ここでは、図2に示すように、表示部
16の表示画面16a(図中左側)に表示された図形を
図中右側の表示画面16aのように属性を変えて再描画
する場合を例示する。
【0033】まず、Javaソースコードでは、次のように
クラスが定義される。ここでは、スーパークラスである
基本的なパネルデータのCgpPanelを継承したサブクラス
であるPanel4というパネルデータについて表している。 public class Panel4 extends CgpPanel {
【0034】上記の表示画面16aには、青(B)の円
31と、緑(G)の四角形32と、緑(G)の三角形3
3と、黄(Y)の円34とが表示されている。なお、こ
こでは表示されるのは基本図形のみであるが、テキスト
も基本図形と同様にして表示され、テキストも基本図形
と同様にして扱われる。
【0035】これらの図形のデータは、パネルデータに
おいて、Javaコンバータ21aで生成されるJavaソース
コードにおいて次のように表される。なお、以下の例で
は、円31をオブジェクトであるC1として表してい
る。 CgpEllipse C1 = new CgpEllipse ( (short)160, //x1 (short)260, //y1 (short)300, //x2 (short)340, //y2 CgpColor,GetColor( CgpColor,BRUE, (char)0 ), //borderFgpColor CgpColor,GetColor( CgpColor,BRUE, (char)0 ), //bg CgpColor,GetColor( CgpColor,BRUE, (char)0 ), //fg (byte)0, //lineWidth CgpLinePattern.SOLID, CgpFillPattern.NONE, false, true, myContext );
【0036】上記のソースコードにおいて、x1,y1 は画
面の左上隅を原点としたときの円の中心の座標を表し、
x2,y2 はそれぞれ横方向および縦方向の直径を表してい
る。また、CgpLinePatternは図形の外形線の種類を表し
ており、SOLID は実線を意味し、CgpFillPatternは図形
内の着色パターンを表しており、NONEは着色パターンな
しを意味している。例えば、この着色パターンをCROSS
とした場合は、格子模様が設定される。さらに、border
FgpColorは図形の外形線の色を表し、bgは上記の着色パ
ターンにおける背景色を表し、fgは外形線内の表示色を
表している。
【0037】さらに、図形のデータは、図3に示すよう
に、表示画面16aに描画された順(z-order) に連結す
るリスト構造で表現されている。このリスト構造は、Ja
vaソースコードにおいて次のように表される。なお、以
下のソースコードでは、円31をC1、四角形32をR
1、三角形33をT1、円34をC2で表しており、こ
れらはオブジェクトとして扱われる。 // build the master list. Every object on the panel must be here. m_zOrderList = new CgpGraphics[4]; m_zOrderList[0]=C1; m_zOrderList[1]=T1; m_zOrderList[2]=R1; m_zOrderList[3]=C2;
【0038】なお、図形のデータ構造としては、リスト
に限らず、配列等の他の構造であってもよい。
【0039】また、各図形のデータには、図形を囲む矩
形のクリッピングエリアCA(矩形領域)が設定されて
いる。このクリッピングエリアCAは、アニメーション
描画で再描画を行う領域を定めており、クリッピングエ
リアCAに対して設定された各種のアニメーションに応
じて、クリッピングエリアCA内で再描画処理が行われ
る。アニメーションとしては、位置(移動)、色(色変
更)、サイズ(サイズ変更)、回転等が用意されてい
る。
【0040】図3に示す場合は、円31のクリッピング
エリアCAに位置アニメーションおよび色アニメーショ
ンが設定され、四角形32のクリッピングエリアCAに
サイズアニメーションが設定されている。アニメーショ
ンの設定は、例えば、Javaソースコードにおいて次のよ
うに表される。
【0041】 // build and attach the animations. new CgpSizeAnimation(R1, I100, (short) 0, 0, 400, 0, 100, CgpSizeAnimation.ANCHOR_BOTTOM ); new CgpSizeAnimation(R1, I100, (short) 0, 0, 300, 0, 100, CgpSizeAnimation.ANCHOR_LEFT ); // Holizontal position animations on BRUE Circle new CgpPositionAnimation(C1, I100, (short)0, (short) 0, (short)500, 0, 100, CgpPositionAnimation.HOLIZONTAL ); // Virtical position animations on BRUE Circle new CgpPositionAnimation(C1, I100, (short)0, (short) 0, (short)500, 0, 100, CgpPositionAnimation.VERTICAL );
【0042】上記のソースコードにおいて、2および3
行は、底辺を固定した場合の縦方向のサイズ変更を表し
ており、4および5行は、左側の縦方向の辺を固定した
場合の横方向のサイズ変更を表している。また、6ない
し8行は、水平方向の移動を表しており、9ないし11
行は、垂直方向の移動を表している。また、上記のソー
スコードでは、サイズアニメーションおよび位置アニメ
ーションをメソッドとして持つことを表している。
【0043】また、図4に示すように、各アニメーショ
ンの設定は、前述のデバイスアドレス(例えば、DM
100〜300)とタグを介して対応付けられている。
これによって、制御画面上に配置された入出力機器4に
対応する部品等(例えばグラフ)を表現する図形を、入
出力機器4のデータに基づいてアニメーション処理が行
われる。つまり、タグとアニメーション設定との関連付
けによって、目的の基本図形に対してユーザの所望する
アニメーション描画を行うことができる。例えば、図2
の四角形32を棒グラフとして用いる場合、入出力機器
4のデータ(値)に応じて四角形32の大きさを変え
て、棒グラフの長さを変化させることができる。
【0044】上記のような図形のデータのリスト化や各
アニメーションの設定は、予め画面エディタ21による
制御画面の作成または更新時に併せて行われる。
【0045】ここで、画面エディタ21で作成されたパ
ネルデータに基づいてプログラマブル表示器1の表示部
16に制御画面を表示させるまでの手順を説明する。
【0046】まず、図5に示すように、上記のパネルデ
ータは、Javaコンバータ21aでJavaソースコードに変
換されてコンピュータ装置2からプログラマブル表示器
1に転送される。プログラマブル表示器1において、Ja
vaソースコードは、テキストエディタ18によって必要
に応じて書き替えられる。ここで、基本図形のデータや
タグのデータを書き替えることによって、それらのデー
タを変更することができる。
【0047】次いで、Javaソースコードは、Javaコンパ
イラ19でバイトコードに変換され、さらにこのバイト
コードは、JavaVM20のインタプリタによってOS1
2に適した機械語に翻訳される。そして、OS12の管
理下で、機械語に翻訳されたプログラムがCPU11に
よって実行されて、パネルデータの画面が描画されてい
く。
【0048】前記のJavaソースコードでは、円、四角形
などの基本図形および基本図形を含むパネルデータをオ
ブジェクトとして扱い、基本図形の個々をクラスという
形態で定義している。また、全てのクラスについてそれ
ぞれ、基本図形のデータ(座標、色等のデータ)と、関
数の形態で用意されるドローメソッド(処理手続)とを
持っている。また、Javaソースコードは、プログラマブ
ル表示器1において、Javaコンパイラ19でバイトコー
ドに変換されると、obj.draw ( ); という形式になる。
また、obj.draw ( ); の前にobj.color ( );が挿入され
ている場合、このバイトコードがJavaVM20のランタ
イムで実行される際に、括弧内に表された色でその図形
がデータに基づいて描かれる。
【0049】ここで、図2に示すように、円31が位置
アニメーションによって表示画面16aにおいて右側に
移動する場合、アニメーションが設定された円31がク
リッピングエリアCA1 とともにメモリ部13における
VRAMの作業エリアに取り込まれ、かつその作業エリ
アには円31の移動先のクリッピングエリアCA2 が設
定されて、図形の属性(位置)が変更される。このと
き、リストを検索することによって、そのクリッピング
エリアCA2 に入る三角形33の一部も作業エリアに取
り込まれる。作業エリアでは、円31が色アニメーショ
ンによってクリッピングエリアCA2 にR(赤)のデー
タで作成され、図形の属性(位置および色)が変更され
る。
【0050】次いで、クリッピングエリアCA2 内に存
在する三角形33の一部を円31とともに作成する。そ
して、クリッピングエリアCA2 に作成された赤い円3
1および三角形33の一部のデータを表示部16に出力
することによって、図2の右側の表示画面16aに上記
のクリッピングエリアCA2 内の図形のみが描画され
る。
【0051】一方、四角形32は、縦方向のサイズを変
更するサイズアニメーションが設定されている。図示は
しないが、サイズアニメーションの場合もVRAMの作
業エリアで四角形32のサイズがクリッピングエリアC
A内で変更され、図2の右側の表示画面16aにサイズ
が変更された四角形32のみが描画される。
【0052】このように、アニメーション管理タスク
は、オブジェクト(図形)において指定されたアニメー
ション処理のすべてが完了した後にオブジェクトを再描
画する。1つのオブジェクトは、複数タイプのアニメー
ション設定が可能であり、オブジェクト画像は、すべて
のアニメーション機能が完了した後に新たな属性に更新
される。例えば、上記のように、円31に位置および色
の2つのアニメーションが設定されている場合、円31
は、位置アニメーションのみが完了した後に描画される
のではなく、円31の再描画のために色アニメーション
がさらに完了した後に描画される。
【0053】色アニメーションが円31を赤で再構成し
た後、円31は表示画面16a上で再描画される。この
とき、赤い円31だけではなく、同じクリッピングエリ
アCA内で描画される他の図形もまたVRAMの作業エ
リア上、すなわちテンポラリVRAM領域で再構成(形
成)され、その後、アニメーションが設定されたクリッ
ピングエリアCA内のすべての図形が表示画面16a上
に描画される。このプロセスによって、重なり合う図形
を動的に変化させることができる。
【0054】また、クリッピングエリアCA内で再構成
された図形を再描画(上書き)するので、表示画面16
aに表示されている再描画の位置にある図形を消去する
必要がない。それゆえ、消去による表示画面16a上の
ちらつきをなくすことができる。
【0055】続いて、アニメーション処理の手順を図6
のフローチャートにしたがって説明する。
【0056】まず、アニメーションが設定された図形に
対して指定されたレジスタからアニメーションに応じた
属性データが読み取られ(S1)、その属性データに基
づき、アニメーションの設定にしたがって図形の属性を
更新する(S2)。図形に対する1つの属性が更新され
ると、さらにその図形に対するアニメーションが設定さ
れているか否かが判定される(S3)。ここで、設定さ
れている場合は、同じ図形に対し設定された他のアニメ
ーションを実行する(S4)。
【0057】そして、S3において、処理すべきアニメ
ーションがないと判定された場合は、前述の表示画面1
6a上にアニメーション処理された図形を再描画する
(S5)。さらに、他にアニメーション処理すべき図形
があるか否かが判定され(S6)、ある場合はS1以降
の処理が繰り返される一方、ない場合はアニメーション
処理を終える。
【0058】ところで、上記のアニメーション描画で
は、クリッピングエリアCA内の図形を再描画するため
に、表示画面16aに描画された図形の情報を全てVR
AMに保持しておく必要がある。このため、比較的大き
いサイズのメモリ容量を確保しなければならず、またV
RAM内でアニメーションが設定された図形のクリッピ
ングエリアCAに含まれる他の図形の検索に要する時間
が長くなる。
【0059】そこで、アニメーション設定されたクリッ
ピングエリアCA内に含まれる可能性のある図形のみを
予めリスト化して、検索すべき図形を制限することが考
えられる。以下に、この手法について詳細に説明する。
【0060】まず、リスト化の具体例について説明す
る。ここでは、図7に示すように、表示画面16aに表
示された図形を移動および拡大させて再描画する場合を
例示する。
【0061】上記の表示画面16aには、それぞれ水色
(LB)、黄(Y)、赤(R)の四角形41〜43と、
それぞれ赤(R)、緑(G)、水色(LB)の円44〜
46と、それぞれ赤(R)、緑(G)の三角形47・4
8とが表示されている。また、表示画面16aにおいて
は、上記の各図形のうち、四角形41を位置アニメーシ
ョンによって水平方向(図中、右側)に移動し、四角形
42をサイズアニメーションによってX方向(横方向)
に2倍し、かつY方向(縦方向)に4倍するようにサイ
ズ変更する。この場合、同図に示すように、四角形41
は、位置アニメーションによって移動して四角形41′
として描画されて、四角形43の下に重なる。一方、四
角形42は、サイズアニメーションによって拡大されて
四角形42′として描画され、円46の上と三角形47
の下に重なる。
【0062】上記のアニメーションは、Javaソースコー
ドでは四角形41・42をそれぞれR1・R2として次
のように表される。 // build and attach the animations. // Holizontal position animations on BRUE Circle new CgpPositionAnimation(R1, I100, (short)0, (short) 0, (short)500, 0, 100, CgpPositionAnimation.HOLIZONTAL ); new CgpSizeAnimation(R2, 1100, (short) 0, 0, 400, 0, 100, CgpSizeAnimation.ANCHOR_BOTTOM ); new CgpSizeAnimation(R2, 1100, (short) 0, 0, 200, 0, 100, CgpSizeAnimation.ANCHOR_LEFT );
【0063】上記のアニメーション描画を実現するため
に、図8(a)に示すように、四角形41が移動する範
囲(図7中、100%の範囲)に重なる可能性のある円
46、四角形42、円45および四角形43を表示画面
16aに描画された順にリスト化する。また、同図
(b)に示すように、四角形42が拡大される範囲に重
なる可能性のある円46、三角形47および四角形41
も同様に描画された順にリスト化する。そして、これら
のリストに挙げられた図形の論理和をとることによっ
て、同図(c)に示すように、再描画に必要な図形情報
のリストを作成する。
【0064】上記のリスト構造は、例えば、Javaソース
コードでは次のように表される。なお、以下のソースコ
ードでは、四角形41〜43をそれぞれR1〜R3、円
45・46をそれぞれC2・C3、三角形47をT1で
表している。また、水平移動するR1に関する図形のリ
ストをdepList1とし、サイズ変更されるR2に関するリ
ストをdepList2としている。 // build the dependency-lists. This list must be walked each time // one of the objects in it changes. // These lists determine the relative depList1 = new CgpGraphics[5]; // for R1 depList1[0]= C3; depList1[1]= R2; depList1[2]= C2; depList1[3]= R3; depList2 = new CgpGraphics[4]; // for R2 depList2[0]= C3; depList2[1]= T1; depList2[2]= R1;
【0065】上記のようなリスト化は、前述のアニメー
ション描画の場合と同様、予めエディタとしての画面エ
ディタ21による制御画面の作成または更新時に併せて
行われる。また、リストは、画面エディタ21によって
作成されたユーザプログラムのコンパイル時に生成され
る。さらに、リストは、現在の表示範囲(左上、右下
等)や描画情報(描画される図形のデータ等)の存在場
所を示すポインタによって構成されている。
【0066】続いて、本アニメーション描画の処理につ
いて説明する。
【0067】このアニメーション描画で設定されたアニ
メーションは、図形に関するプロパティー(情報)を変
更するために用いられる。例えば、後述するような水平
方向の位置アニメーションは、移動させる図形を表す点
の位置を変更するが、この段階では表示画面16a上に
新たな図形を描画しない。アニメーションが図形のプロ
パティーを変更する場合、図形がその描画フラグをセッ
トする。この描画フラグは、後の描画処理時に用いられ
る。
【0068】アニメーション化される図形(以降、アニ
メ化図形と称する)と関連するのは、アニメーションに
よる変化領域と重なる図形に関する前記のようなリスト
である。このリストは、図形が最初に描画された順にし
たがって構成され、またアニメ化図形をも含む。
【0069】描画処理は、描画スレッドまたは表示タス
クによって実行される。描画スレッドは、アニメ化図形
を含むリストを参照して、アニメ化図形の描画フラグが
セットされると、アニメ化図形を図9に示すフローチャ
ートの手順にしたがって呼び出し、描画する。
【0070】まず、リストにおいてアニメ化図形を抽出
し(S11)、リストにおいてアニメ化図形に重なる図
形があるか否かを判定する(S12)。ここで、重なる
図形があれば、その図形についてのクリッピングエリア
を抽出する(S13)。
【0071】次いで、再描画に先立って、クリッピング
エリアがアニメ化図形に重なっているか否かを判定する
(S14)。ここで、クリッピングエリアが重なってい
ない場合は、そのクリッピングエリア内の図形を再描画
する必要がないので、S12にて再度重なりの図形の有
無を判定する。
【0072】クリッピングエリアが重なっている場合
は、アニメ化図形とともにリストの図形をすべて再描画
し(S15)、処理を終える。一方、S12でアニメ化
図形に重なる図形がなければ、アニメ化図形のみを描画
して処理を終える。
【0073】以上のように、アニメーション設定で変化
する図形の変化領域に位置する可能性のある図形のみを
リスト化することによって、アニメーション描画を実行
する際には、その図形のみを検索すればよい。これによ
り、表示画面16aに描画された図形をすべて検索する
必要がなくなるので、検索に要する時間を短縮すること
ができるとともに、メモリ容量を節約することができ
る。
【0074】また、再描画のための図形の情報は、図8
(c)に示すように、各アニメ化図形についてのリスト
における各図形の論理和で構成されるので、リストに要
するメモリサイズを小さくすることができる。
【0075】さらに、上記のアニメーション描画では、
アニメーション化する図形が多くなるほど、その図形に
ついてのリストが増加するので、それらのリストに要す
るメモリサイズが増大することが懸念される。しかしな
がら、実際には、各リストは、図形の位置、すなわちク
リッピングエリアを特定する2点(対角の2点)の座標
と、描画情報へのポインタとによってのみ構成されるの
で、メモリサイズはリストが増加してもわずかに増大す
るだけである。
【0076】以上に述べたように、本実施の形態では、
Javaコンバータ21aによってパネルデータをオブジェ
クト指向のJava言語の形態に書き替えることによって、
上記のようなアニメーション描画を含む各処理を実現し
ている。つまり、個々の制御画面だけでなく制御画面に
含まれる基本図形をもオブジェクトとして扱い、そのパ
ネルデータおよび基本図形のデータの処理手続すなわち
描画処理(着色処理も含む)とを併せ持つクラスを定義
することで、スーパークラスとして共通するパネルデー
タが、その下位に定義されたクラスのパネルデータで継
承され、そのクラスの処理手続でアニメーション描画等
が実行される。
【0077】また、本実施の形態では、Javaコンバータ
21aで生成されたJavaソースコードをテキストエディ
タ18で書き替えることによって、プログラマブル表示
器1において基本図形のデータ(タグのデータを含む)
の変更が可能である。それゆえ、プログラマブル表示器
1が配置された現場において、制御画面における図形の
描画の態様を容易に変更することができる。併せて、タ
グの機能拡張やカスタマイズもプログラマブル表示器1
側で容易に実現することができる。
【0078】なお、本実施の形態では、プログラマブル
表示器1に本発明を適用した例について説明したが、本
発明はこのような構成に限らず、一般のパーソナルコン
ピュータ等において汎用のOSを用いて図形を描画する
ような場合にも適用されるのは勿論である。
【0079】
【発明の効果】以上のように、本発明の画面データ処理
システムは、表示画面上に基本図形を表示する画面デー
タを作成する画面データ作成装置で作成された上記画面
データを1画面単位で処理する処理装置において上記画
面データを処理するシステムであって、上記画面をオブ
ジェクトとして扱うとともに、このオブジェクトが上記
基本図形のデータと上記基本図形を処理するための処理
手続とを含むように上記画面データをソースコードに変
換する第1変換手段と、上記ソースコードを編集する編
集手段と、編集された上記ソースコードを中間言語に変
換する第2変換手段と、上記中間言語を上記処理装置に
適した形態の機械語に翻訳することによって上記基本図
形のデータに対して上記処理手続を実行する実行手段と
を備え、少なくとも、上記処理装置が、上記書替手段
と、上記第2変換手段と、上記実行手段とを含んでいる
構成である。
【0080】また、本発明の画面データ処理方法は、表
示画面上に基本図形を表示する画面データを作成する画
面データ作成装置で作成された上記画面データを1画面
単位で処理する処理装置において上記画面データを処理
する方法であって、上記画面をオブジェクトとして扱う
とともに、このオブジェクトが上記基本図形のデータと
上記基本図形を処理するための処理手続とを含むように
上記画面データをソースコードに変換し、上記処理装置
において、少なくとも、上記ソースコードを編集し、編
集された上記ソースコードを中間言語に変換し、上記中
間言語を上記処理装置に適した形態の機械語に翻訳する
ことによって上記基本図形のデータに対して上記処理手
続を実行する方法である。
【0081】上記のシステムおよび方法により、上記の
処理のうち、少なくとも、ソースコード編集以降の処理
が処理装置で行われるので、ソースコードを画面データ
作成装置側だけではなく処理装置側でも書き替えること
ができる。したがって、単純な変更を行う際にも、わざ
わざ画面データ作成装置で画面データを編集し直す必要
がなくなり、作業効率を向上させることができるという
効果を奏する。また、処理装置側で画面データの変更の
必要が生じた場合に即時に対応でき、画面の機能拡張や
カスタマイズを容易にすることができるという効果を併
せて奏する。
【図面の簡単な説明】
【図1】プログラマブル表示器を中心とする本発明の実
施の一形態に係るシステムの構成を示すブロック図であ
る。
【図2】上記システムによって実現されるアニメーショ
ン描画の具体例を示すモデル図である。
【図3】図2のアニメーション描画が実行される表示画
面上に表示される図形のデータ構造を示す概念図であ
る。
【図4】上記データ構造をアニメーション設定とPLC
のデバイスアドレスとの関係について示す概念図であ
る。
【図5】上記システムにおけるデータの流れを上記シス
テムの要部を用いて示すブロック図である。
【図6】上記システムによるアニメーション描画の処理
手順を示すフローチャートである。
【図7】上記システムによる他のアニメーション描画の
具体例を示すモデル図である。
【図8】(a)ないし(c)は図7のアニメーション描
画が実行される表示画面上に表示される図形のデータ構
造を示す概念図である。
【図9】上記他のアニメーション描画の処理手順を示す
フローチャートである。
【符号の説明】
1 プログラマブル表示器(処理装置) 2 コンピュータ装置(画面データ作成装置) 12 OS 16a 表示画面 18 テキストエディタ(編集手段) 19 Javaコンパイラ(第2変換手段) 20 JavaVM(実行手段) 21 画面エディタ 21a Javaコンバータ(第1変換手段)

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】表示画面上に基本図形を表示する画面デー
    タを作成する画面データ作成装置で作成された上記画面
    データを1画面単位で処理する処理装置において上記画
    面データを処理するシステムであって、 上記画面をオブジェクトとして扱うとともに、このオブ
    ジェクトが上記基本図形のデータと上記基本図形を処理
    するための処理手続とを含むように上記画面データをソ
    ースコードに変換する第1変換手段と、 上記ソースコードを編集する編集手段と、 編集された上記ソースコードを中間言語に変換する第2
    変換手段と、 上記中間言語を上記処理装置に適した形態の機械語に翻
    訳することによって上記基本図形のデータに対して上記
    処理手続を実行する実行手段とを備え、 少なくとも、上記処理装置が、上記書替手段と、上記第
    2変換手段と、上記実行手段とを含んでいることを特徴
    とする画面データ処理システム。
  2. 【請求項2】表示画面上に基本図形を表示する画面デー
    タを作成する画面データ作成装置で作成された上記画面
    データを1画面単位で処理する処理装置において上記画
    面データを処理する方法であって、 上記画面をオブジェクトとして扱うとともに、このオブ
    ジェクトが上記基本図形のデータと上記基本図形を処理
    するための処理手続とを含むように上記画面データをソ
    ースコードに変換し、 上記処理装置において、少なくとも、上記ソースコード
    を編集し、編集された上記ソースコードを中間言語に変
    換し、上記中間言語を上記処理装置に適した形態の機械
    語に翻訳することによって上記基本図形のデータに対し
    て上記処理手続を実行することを特徴とする画面データ
    処理方法。
JP11081954A 1999-03-25 1999-03-25 画面データの処理システムおよび処理方法 Pending JP2000276339A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11081954A JP2000276339A (ja) 1999-03-25 1999-03-25 画面データの処理システムおよび処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11081954A JP2000276339A (ja) 1999-03-25 1999-03-25 画面データの処理システムおよび処理方法

Publications (1)

Publication Number Publication Date
JP2000276339A true JP2000276339A (ja) 2000-10-06

Family

ID=13760904

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11081954A Pending JP2000276339A (ja) 1999-03-25 1999-03-25 画面データの処理システムおよび処理方法

Country Status (1)

Country Link
JP (1) JP2000276339A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169693A (ja) * 2000-11-30 2002-06-14 Digital Electronics Corp 制御用表示装置、および、そのプログラムが記録された記録媒体
WO2004023294A1 (ja) * 2002-09-06 2004-03-18 Sony Corporation Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム
KR100459759B1 (ko) * 2002-08-19 2004-12-03 주식회사 디지털퓨전 텔레비전수상기용 문자발생 시스템 및 문자발생 방법
US7251667B2 (en) 2002-03-21 2007-07-31 International Business Machines Corporation Unicode input method editor
US7542157B2 (en) 2002-06-18 2009-06-02 Samsung Electronics Co., Ltd. Method and apparatus for printing accessed data over a network using a virtual machine applet
US8074174B2 (en) 2002-09-06 2011-12-06 Sony Corporation GUI application development supporting apparatus, method, and computer program
WO2015136607A1 (ja) * 2014-03-10 2015-09-17 株式会社アイ・エル・シー ソフトウェア開発支援システム、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
JPWO2015136606A1 (ja) * 2014-03-10 2017-04-06 株式会社アイ・エル・シー ソフトウェア開発支援装置、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
WO2020157918A1 (ja) * 2019-01-31 2020-08-06 三菱電機株式会社 作画支援装置、表示装置、作画支援方法およびコンピュータプログラム

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002169693A (ja) * 2000-11-30 2002-06-14 Digital Electronics Corp 制御用表示装置、および、そのプログラムが記録された記録媒体
US7251667B2 (en) 2002-03-21 2007-07-31 International Business Machines Corporation Unicode input method editor
US7542157B2 (en) 2002-06-18 2009-06-02 Samsung Electronics Co., Ltd. Method and apparatus for printing accessed data over a network using a virtual machine applet
USRE43591E1 (en) 2002-06-18 2012-08-21 Samsung Electronics Co., Ltd. Method and apparatus for printing accessed data over a network using a virtual machine applet
KR100459759B1 (ko) * 2002-08-19 2004-12-03 주식회사 디지털퓨전 텔레비전수상기용 문자발생 시스템 및 문자발생 방법
CN1307540C (zh) * 2002-09-06 2007-03-28 索尼株式会社 图形用户界面应用开发支持设备、显示设备和方法
KR100975457B1 (ko) * 2002-09-06 2010-08-11 소니 주식회사 Gui 어플리케이션 개발 지원 장치, gui 어플리케이션 프로그램 생성 방법 및 컴퓨터 판독가능한 기록매체
US7823075B2 (en) 2002-09-06 2010-10-26 Sony Corporation GUI application development support device, GUI display device, and method, and computer program
US8074174B2 (en) 2002-09-06 2011-12-06 Sony Corporation GUI application development supporting apparatus, method, and computer program
WO2004023294A1 (ja) * 2002-09-06 2004-03-18 Sony Corporation Guiアプリケーション開発支援装置、gui表示装置、および方法、並びにコンピュータ・プログラム
WO2015136607A1 (ja) * 2014-03-10 2015-09-17 株式会社アイ・エル・シー ソフトウェア開発支援システム、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
JPWO2015136607A1 (ja) * 2014-03-10 2017-04-06 株式会社アイ・エル・シー ソフトウェア開発支援システム、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
JPWO2015136606A1 (ja) * 2014-03-10 2017-04-06 株式会社アイ・エル・シー ソフトウェア開発支援装置、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
WO2020157918A1 (ja) * 2019-01-31 2020-08-06 三菱電機株式会社 作画支援装置、表示装置、作画支援方法およびコンピュータプログラム
US11625212B2 (en) 2019-01-31 2023-04-11 Mitsubishi Electric Corporation Screen creation assistance device, display device, and computer readable storage medium

Similar Documents

Publication Publication Date Title
US5515081A (en) System and methods for improved storage and processing of BITMAP images
US5459832A (en) Method and apparatus for editing groups of graphic images
JPH0844547A (ja) オブジェクト指向ソフトウェアの視覚化
JP3170279B2 (ja) グラフィックスシステムにおけるイメージ位置の解釈
JP2000276339A (ja) 画面データの処理システムおよび処理方法
Jamro et al. IEC 61131-3 programmable human machine interfaces for control devices
CN111724462A (zh) 在Chrome浏览器中三维渲染的方法
CN103345402A (zh) 基于中间代码的显示模组图形化组态方法
JPH11509948A (ja) ネットワーク管理システムにおけるグラフィック制御操作プロセスおよび制御装置
CN107357576A (zh) 一种Windows应用程序多窗口并行绘图的方法及系统
Wampler The V C++ Gui framework
KR19990013904A (ko) 빌딩자동화시스템의 실시간정보 관측 및 제어방법과 그 장치
JP2000231643A (ja) 動的描画方法および動的描画システム
CN115167949B (zh) 高版本OpenGL函数适配低版本应用程序的方法、装置及介质
JP2000231480A (ja) ソフトウェアの自動生成装置および方法、画面生成装置、記録媒体
CN103092596B (zh) 低级界面开发自动实现界面反转的方法及装置
JP3376950B2 (ja) 画面生成装置
Myers et al. The Amulet reference manuals
Cowell Essential Java 2 fast: How to develop applications and applets with Java 2
JP2002229613A (ja) ラダー図作成方法及び装置並びにラダー作成支援プログラム及びこれを記録した記録媒体
Biddle Using the Tk Canvas Facility
Smith Android recipes: a problem-solution approach for Android 5.0
CN115292403A (zh) 知识图谱的可视化展示方法
Hudson et al. SubArctic UI Toolkit user’s manual st. Paul release (beta version 0.8 e)
CN103955550A (zh) 用于人机接口动画图形元素的计算机辅助设计的方法及装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051018

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051222

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20051222

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060124

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060323

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060411

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060607

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20060712

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20060915