JP7219868B2 - モデリング支援方法、情報処理装置、及び、プログラム - Google Patents
モデリング支援方法、情報処理装置、及び、プログラム Download PDFInfo
- Publication number
- JP7219868B2 JP7219868B2 JP2020210086A JP2020210086A JP7219868B2 JP 7219868 B2 JP7219868 B2 JP 7219868B2 JP 2020210086 A JP2020210086 A JP 2020210086A JP 2020210086 A JP2020210086 A JP 2020210086A JP 7219868 B2 JP7219868 B2 JP 7219868B2
- Authority
- JP
- Japan
- Prior art keywords
- line
- display
- display device
- input operation
- control structure
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04842—Selection of displayed objects or displayed text elements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Software Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Stored Programmes (AREA)
Description
本明細書の開示は、モデリング支援方法、情報処理装置、及び、プログラムに関する。
論理的思考や課題解決力を養うことができるプログラミング教育の重要性は、現在、世界中で認識されている。近年では、日本でも小学校でプログラミング教育が必修化されるなど、若年層からのプログラミング教育の普及が推進されている。
一方で、プログラミングに用いられる従来のプログラミング言語は、プログラムコードを記述する必要があり、小学生などを含む初学者が初めてプログラミングを学習するにはハードルが高すぎる。
このため、初学者でも容易に学習可能なGUI(Graphical User Interface:グラフィカルユーザインターフェース)ベースの教育向けのプログラミング言語が様々に開発されている。このような教育向けのプログラミング言語は、一般にビジュアルプログラミング言語と呼ばれている。ビジュアルプログラミングでは、アルゴリズムが図形的に表現されるため、テキストでコードを記述する必要がなく、GUIを操作するだけでプログラミングが可能である。ビジュアルプログラミングに関連する技術は、例えば、特許文献1に記載されている。
ところで、分岐と反復は、順次と同様にプログラムの基本的な制御構造である。制御構造を図形的に表現する場合、分岐と反復の図形的表現は、順次のそれよりも複雑になる。従って、ビジュアルプログラミングにおいても、分岐、反復を実現するためのGUI操作は、順次のそれに比べて煩雑なものと成りがちである。
煩雑な操作は、操作自体に注意が行ってしまい、アルゴリズムを検討する思考の中断を招きやすい。このため、ビジュアルプログラミングにおいて、特に、分岐と反復について、思考の中断を招くことなく直感的な操作でプログラミングを可能とする技術的改善が求められている。
なお、以上では、ビジュアルプログラミング用のプログラミングツールを想定して説明したが、同様の課題は、プログラムの実装工程に限らず設計工程でも生じ得る。このため、上記の課題は、プログラミングツールを含むモデリングツール全般において共通した課題である。また、モデリングツールにおける上記の課題は、コンピュータ上で動作するプログラムの設計に限らず、例えば業務フローなどを含む、処理フロー全般の設計において生じ得る。
以上のような実情を踏まえ、本発明の一側面に係る目的は、処理フローの設計又はプログラミングに用いられるモデリングツールの操作性を改善する技術を提供することである。
本発明の一態様に係るモデリング支援方法は、コンピュータが行う、各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、を含む。
本発明の一態様に係る情報処理装置は、命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、前記命令を実行する1つ以上のプロセッサと、を含む。前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、前記動作は、各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む。
本発明の一態様に係るプログラムは、コンピュータに、各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理を実行させる。
上記の態様によれば、モデリングツールの操作性を改善することができる。
以下、モデリングツールによって提供されるGUIを具体的に例示しながら、本発明の実施形態に係るモデリング支援方法、情報処理装置、及び、プログラムについて説明する。なお、本明細書において、モデリングツールとは、利用者が行うモデリング作業を支援するアプリケーションプログラム、及び/又は、そのプログラムが動作するコンピュータのことを意味する。即ち、モデリングツールは、モデリング作業を支援するソフトウェア、ハードウェア、又は、それらの組み合わせのうちの少なくとも1つである。
本明細書では、モデリングツールが、デスクトップアプリケーションプログラム、又は、デスクトップアプリケーションプログラムがインストールされている利用者が直接操作する情報処理装置(以降、利用者端末とも記す。)である場合を例に説明する。ただし、モデリングツールは、ウェブアプリケーションプログラムであってもよく、ウェブアプリケーションプログラムがデプロイされた、利用者端末とは異なる情報処理装置であってもよい。即ち、モデリングツールは、利用者端末のウェブブラウザ上にGUIを提供してもよい。
また、本明細書では、モデリングツールが、図形などの要素(オブジェクト)を用いてグラフィカルに表現されたプログラムをテキスト形式のプログラムコード(ソースコード)に変換して実行するビジュアルプログラミングツールである場合を例に説明する。ただし、モデリングツールは、ソースコードを作成して実行するプログラミングツールに限らず、例えば、コンピュータで実行される処理のフローチャートなどを描く描画ツールであってもよい。また、モデリングツールは、業務フローを描く描画ツールとして用いられてもよい。
[第1の実施形態]
図1は、本実施形態に係る情報処理装置10の外観図である。図2は、本実施形態に係る情報処理装置10のハードウェア構成図である。情報処理装置10は、図1に示すように、例えば、タッチパネルディスプレイを備えたタブレット端末であり、ビジュアルプログラミングのためのプログラムがインストールされたコンピュータである。
図1は、本実施形態に係る情報処理装置10の外観図である。図2は、本実施形態に係る情報処理装置10のハードウェア構成図である。情報処理装置10は、図1に示すように、例えば、タッチパネルディスプレイを備えたタブレット端末であり、ビジュアルプログラミングのためのプログラムがインストールされたコンピュータである。
情報処理装置10は、タッチパネルディスプレイを有するタッチデバイスであればよく、タブレット端末に限らない。情報処理装置10は、例えば、ラップトップ型のコンピュータ、スマートフォン、電子辞書などであってもよい。また、モバイル端末に限らず、例えば、テーブルにタッチパネルディスプレイが埋め込まれたテーブル型のコンピュータなどであってもよい。
情報処理装置10は、図2に示すように、1つ以上のプロセッサ1と、1つ以上の記憶装置2と、入力装置3と、表示装置4と、通信装置5を備えている。また、情報処理装置10では、それらはバス6を通じて接続されている。入力装置3と表示装置4は、タッチパネルディスプレイを構成し、図1に示すように、互いに重なって配置されている。
1つ以上のプロセッサ1のそれぞれは、例えば、CPU(Central Processing Unit)などを含むハードウェアであり、記憶装置2に記憶されているプログラム2aを実行する。なお、CPUには、制御装置、演算装置、レジスタ、キャシュメモリなどが含まれ、さらに、他の装置とのインタフェースなどが含まれている。1つ以上のプロセッサ1には、GPU(Graphics processing unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、DSP(Digital Signal Processor)などが含まれてもよい。
1つ以上の記憶装置2のそれぞれは、非一時的なコンピュータ読取可能媒体であり、例えば、任意の半導体メモリである。1つ以上の記憶装置2は、RAM(Random Access Memory)などの揮発性メモリ、ROM(Read Only Memory)、フラッシュメモリなどの不揮発性メモリを含んでいる。また、記憶装置2は、磁気記憶装置、光学記憶装置、その他の種類の記憶装置を含んでもよい。
1つ以上の記憶装置2の少なくとも1つには、プログラム2aが含まれている。プログラム2aは、ビジュアルプログラミングツールであり、後述するプログラミング支援処理のための命令を含んでいる。また、プログラム2aに含まれる命令は、1つ以上のプロセッサ1に所定の動作を実行させるように構成されている。
入力装置3は、利用者が直接操作する装置である。具体的には、入力装置3は、タッチパネルディスプレイを構成するタッチセンサである。タッチセンサの検出方式は、特に限定しない。例えば、抵抗膜方式、静電容量方式、電磁誘導方式、超音波表面弾性波方式、赤外線方式などの任意の検出方式が採用し得る。
表示装置4は、例えば、液晶ディスプレイ、有機ELディスプレイなどであるが、他の種類のディスプレイであってもよい。通信装置5は、外部機器と通信するための装置である。通信装置5は、例えば、Wi-Fiモジュールなどの無線通信装置である。
以上のように構成された情報処理装置10を用いて利用者が行うビジュアルプログラミングは、プログラミングの制御構造を示す要素を画面上に並べることでプログラムを作成するというものである。そして、情報処理装置10が行うプログラミング支援処理は、ビジュアルプログラミングが行われている際に、利用者の入力操作に従って画面表示を制御するものである。
図3は、情報処理装置10が行うプログラミング支援処理の一例を示すフローチャートである。図4は、情報処理装置10に表示される画面の構成例を示した図である。以下、情報処理装置10を用いて実施されるプログラミング支援方法について、図3及び図4を参照しながら概説する。なお、図3に示すプログラミング支援処理は、モデリング支援処理の一例であり、1つ以上のプロセッサ1が記憶装置2に格納されているプログラム2aに含まれる命令を実行することによって開始される。
プロセッサ1は、まず、各々が順次、分岐、又は反復に分類される制御構造を示している1つ以上の要素が配置可能なラインを表示装置4に表示させる(ステップS1)。ステップS1では、例えば、利用者が領域12の“New”と記載されたソフトウェアボタンをタップすると、プロセッサ1は、図4に示す表示装置4の領域12にラインLを表示させる。領域12は、利用者によって設計されたプログラムが図形を用いて表現されるプログラミング領域である。領域12に表示されたラインLは、“START”と記載されたラインLの一端から“END”と記載されたラインLの他端に向かうプログラムの処理の流れを示している。ラインL上には、利用者の操作に応じて、領域11に表示されている制御構造を示す要素が選択的に配置可能である。なお、以降では、順次、分岐、又は反復に分類される制御構造を示す要素を、単に、制御要素とも記す。
その後、プロセッサ1は、入力装置3への入力操作を監視する。そして、入力操作が行われれると、プロセッサ1は、入力装置3からの出力に基づいて入力操作を検出する(ステップS2)。ステップS2では、利用者のタッチパネルディスプレイに対する入力操作に応じて入力装置3(タッチセンサ)が出力する操作信号に基づいて、プロセッサ1は、利用者の入力操作を検出する。
ステップS2で検出した入力操作が(1)ラインL又はラインL上の制御要素に対する操作であって、且つ、(2)ラインLに交差する方向の操作を含む、とステップS3において判定された場合、プロセッサ1は、ラインL上に分岐又は反復に分類される新たな制御要素を表示装置4に表示させる(ステップS4からステップS7、ステップS9)。換言すると、プロセッサ1は、ラインL又はラインL上の要素に対する入力操作を検出し、検出した入力操作がラインLに交差する方向の操作を含む場合、ラインL上に分岐又は反復に分類される新たな制御要素を表示装置4に表示させる。
具体的には、プロセッサ1は、ステップS2で検出した入力操作がラインLまたはライン上の要素に対するラインLに交差する方向の一方向操作である場合(ステップS4:一方向)、ラインL上に分岐に分類される新たな制御要素(分岐要素)を表示装置4に表示させる。さらに具体的には、プロセッサ1は、ラインLを分岐させるとともに(ステップS5)、分岐点に分岐要素を追加し(ステップS6)、画面表示を更新する(ステップS9)。なお、一方向操作は、例えば、フリック、スワイプ、スライドなどである。
また、プロセッサ1は、ステップS2で検出した入力操作がラインLまたはライン上の要素に対するラインLに交差する方向の双方向操作である場合(ステップS4:双方向)、ラインL上に反復に分類される新たな制御要素(反復要素)を表示装置4に表示させる。つまり、プロセッサ1は、反復要素を追加し(ステップS7)、画面表示を更新する(ステップS9)。なお、双方向操作は、例えば、互いに反対向きの1組のフリック、互いに反対向きの1組のスワイプ、途中で折り返して往復するような軌跡を描くスライドなどである。
また、プロセッサ1は、ステップS2で検出した入力操作の軌跡がラインLを跨る弧を描く場合も(ステップS4:ラインを跨る弧)、ラインL上に反復に分類される新たな制御要素(反復要素)を表示装置4に表示させる。つまり、プロセッサ1は、反復要素を追加し(ステップS7)、画面表示を更新する(ステップS9)。
一方、ステップS2で検出した入力操作が後述する(1)、(2)を満たす操作でないとステップS3において判定された場合、プロセッサ1は、その入力操作に応じた処理を行い(ステップS8)、その後、表示装置4の画面表示を更新する(ステップS9)。なお、ステップS8で対象とする入力操作については特に限定しないが、例えば、領域11又は領域12に対するタップ、ダブルタップ、ロングタップ、ピンチイン、ピンチアウト、フリック、スワイプ、スライドなどの操作が含まれ得る。これらの入力操作に応じた処理には、例えば、順次に分類される新たな制御要素をラインL上に表示させる処理が含まれ得る。
表示が更新されると、プロセッサ1は、終了指示が入力されたか判定し(ステップS10)、終了指示が入力された判定すると、プロセッサ1は、図3に示すプログラミング支援処理を終了する。一方、終了指示が入力されていないと判定すると、プロセッサ1は、終了指示が入力されるまでステップS2からステップS9の処理を繰り返す。
情報処理装置10は、上述した図3に示すプログラミング支援処理を実行することで、
直感的で且つシンプルな操作で分岐及び反復に分類される制御構造をプログラムに追加することができる。これにより、従来に比べてプログラミングツールの操作性が改善されるため、プログラミングツールの利用者は、思考の中断を招くことなくプログラミングに集中することが可能となり、効率よくプログラミング学習を行うことができる。また、プログラミングやプログラミングツールに不慣れな初学者であっても直感的に操作可能なため、従来のプログラミングツールに比べて、プログラミングツールの使い方がわからず戸惑うといったことも少なくなる。このため、プログラミングツールを使いこなすことが難しいことに起因して初期段階でプログラミング学習自体を断念してしまうといった事態を回避することができる。以上のように、情報処理装置10によれば、プログラミング学習の敷居を下げることが可能である。
直感的で且つシンプルな操作で分岐及び反復に分類される制御構造をプログラムに追加することができる。これにより、従来に比べてプログラミングツールの操作性が改善されるため、プログラミングツールの利用者は、思考の中断を招くことなくプログラミングに集中することが可能となり、効率よくプログラミング学習を行うことができる。また、プログラミングやプログラミングツールに不慣れな初学者であっても直感的に操作可能なため、従来のプログラミングツールに比べて、プログラミングツールの使い方がわからず戸惑うといったことも少なくなる。このため、プログラミングツールを使いこなすことが難しいことに起因して初期段階でプログラミング学習自体を断念してしまうといった事態を回避することができる。以上のように、情報処理装置10によれば、プログラミング学習の敷居を下げることが可能である。
以下、図5から図19を参照しながら、情報処理装置10を用いて実施されるプログラミング支援方法について、さらに具体的に説明する。図5は、制御構造を示す要素の追加方法の一例を説明するための図である。図6は、要素のパラメータの設定方法の一例を説明するための図である。図7は、制御構造を示す要素の並び順の変更方法の一例を説明するための図である。まず、図5から図7を参照しながら、領域12に制御要素を追加する方法について説明する。
制御要素を追加する場合、利用者は、図5に示すように、ラインL上をロングタップすればよく、新たな制御要素21は、ロングタップした位置に追加される。さらに、制御要素の種類は、ラインL上に追加された制御要素21を左右にフリックすることで、領域11に表示される任意の制御要素の中から自由に切り替えることができる。
制御要素を追加する処理を繰り返すことで、図6に示すように、ラインLに複数の制御要素を並べて表示することができる。これにより、全体的なプログラムの骨格を作ることができる。例えば、図6に示すプログラムの場合であれば、入力処理(“Input”)、表示処理(“Disp”)、移動処理(“Move”)、待機処理(“Wait”)、移動処理(“Move”)、待機処理(“Wait”)、移動処理(“Move”)といった処理フローが表されている。
なお、制御要素を追加する方法は、この方法に限らない。例えば、領域11に表示されている制御要素をラインL上までドラッグして、追加したい位置でドロップすることによって制御要素を追加してもよい。
各制御要素に対するパラメータ設定は、図6に示すように、ラインL上に追加された制御要素をロングタップすることで行うことができる。制御要素をロングタップすることでパラメータ設定のための設定ウィンドウ23が表示される。設定ウィンドウ23内の項目に情報を入力又は選択することで、制御要素に対してパラメータを設定することができる。
また、ラインL上に追加された制御要素の並び順は、後から変更することができる。例えば、図7に示すように、制御要素25をタップして移動対象として選択する。その後、移動対象として選択された制御要素25をドラッグし、所望の位置でドロップすることで、制御要素25を所望の位置へ移動させることができる。なお、例えば、制御要素が一定間隔で整列するように設定される場合であれば、制御要素25の移動に合わせて他の制御要素も移動することで、制御要素間の間隔を保ってもよい。図7に示す例では、制御要素25の後方への移動により、制御要素26から制御要素29のそれぞれが前方へ移動した様子が示されている。
図8は、分岐を示す要素の追加方法の一例を説明するための図である。図9は、分岐を示す要素のパラメータの設定方法の一例を説明するための図である。図10は、分岐に対する操作方法の一例を説明するための図である。図11は、分岐に対する操作方法の別の例を説明するための図である。以上では、任意の制御要素を追加する方法について説明したが、以降では、図8から図11を参照しながら、分岐に分類される制御要素(分岐要素)を追加する場合に特有の方法について説明する。
分岐要素を追加する場合、利用者は、図8に示すように、まず、特定の条件下でのみ実行させたい処理に対応する制御要素31をタップして選択する。その後、選択した制御要素31に対してラインLに交差する方向にドラッグ&ドロップ又はフリックすればよい。なお、制御要素31に対する操作は、ドラッグ&ドロップ、フリックに限らず、ラインLに交差する方向の一方向操作であればよい。具体的には、例えば、スワイプ、スライドなどであってもよい。
プロセッサ1は、制御要素31に対するラインLに交差する方向の一方向操作を検出すると、図8に示すように、ラインLから分岐した新たなラインL1を追加してラインL1上に制御要素31を表示するとともに、ラインLからラインL1へ分岐する分岐点に、新たな制御要素として分岐要素32を追加する。
分岐要素に対するパラメータ設定は、図9に示すように、ラインL上に追加された分岐要素32をロングタップすることで行うことができる。この点は、図6において上述したように、任意の制御要素に対してパラメータを設定する場合と同様である。なお、設定ウィンドウ33内では、分岐条件を設定可能である。
また、特定の条件下でのみ実行させたい処理が他にも存在する場合には、図10に示すように、その処理に対応する制御要素34をドラッグし、分岐したライン(ラインL、ラインL1)上の所望の位置でドロップすればよい。この場合、制御要素34の移動により、他の制御要素(制御要素35など)の位置が自動的に調整されてもよい。
また、特定の条件下でのみ実行させたい処理を配置するスペースが不足している場合には、図10に示すように、分岐したライン(ラインL、ラインL1)が合流する合流点をドラッグ&ドロップで移動させてスペースを確保してもよい。図10では、このような操作により確保されたスペースに新たな制御要素36を追加する様子が示されている。
また、合流点を“END”と記載されたラインLの終端に向けてフリックすることで、分岐したラインの合流位置を調整可能であってもよい。例えば、図11に示すように、フリックによって、処理フローの最後で分岐が合流するようにプログラムされてもよく、また、1回のフリック毎に1つの制御要素分だけ合流位置が後方に移動してもよい。また、合流点を“START”と記載されたラインLの始端に向けてフリックすることで、1回フリック毎に1つの制御要素分だけ合流位置が前方に移動してもよい。
図12は、分岐を示す要素の追加方法の別の例を説明するための図である。図13は、分岐を示す要素を入れ子状に追加する方法の一例を説明するための図である。以上では、制御要素を選択して処理を分岐させる方法を説明したが、以降では、図12及び図13を参照しながら、制御要素を選択することなく分岐に分類される制御要素(分岐要素)を追加する方法について説明する。
制御要素を選択することなく分岐要素を追加する場合、利用者は、利用者は、図12に示すように、まず、ラインLをタップして選択する。その後、ラインLをラインLに交差する方向にドラッグ&ドロップ又はフリックすればよい。なお、ラインLに対する操作は、ドラッグ&ドロップ、フリックに限らず、ラインLに交差する方向の一方向操作であればよい。具体的には、例えば、スワイプ、スライドなどであってもよい。また、ラインLに対する操作は、上記のようにラインLを選択してから行う一方向操作であってもよく、又は、ラインLを跨ぐように行われる一方向操作(例えば、ラインLよりも上側の領域から下側の領域までのスワイプ操作など)であってもよい。
プロセッサ1は、ラインLに対するラインLに交差する方向の一方向操作を検出すると、図12に示すように、ラインLから分岐した新たなラインL2を追加するとともに、ラインLからラインL2へ分岐する分岐点に、新たな制御要素として分岐要素38を追加する。
ラインL2から更に処理を分岐させた場合には、利用者は、ラインL2をラインL2に交差する方向にドラッグ&ドロップ又はフリックすればよい。これにより、図13に示すように、ラインL2から分岐した新たなラインL3が追加されるとともに、ラインL2からラインL3へ分岐する分岐点に、新たな制御要素として分岐要素39が追加される。このように、ラインの分岐を繰り返すことで、複雑な条件分岐を簡単な操作でプログラムすることができる。
このように、情報処理装置10では、利用者は、ラインに交差する方向の一方向操作を行うだけで分岐要素を追加することができる。ラインに交差する方向の一方向操作は、一連の処理からの分岐をイメージしたときに想起されやすい操作であり、処理を分岐するための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、分岐要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。
図14は、反復を示す要素の追加方法の一例を説明するための図である。図15は、反復を示す要素のパラメータの設定方法の一例を説明するための図である。図16は、反復を示す要素の追加方法の別の例を説明するための図である。以降では、図14から図16を参照しながら、反復に分類される制御要素(反復要素)を追加する場合に特有の方法について説明する。
反復要素を追加する場合、利用者は、図14に示すように、繰り返し実行させたい処理に対応する制御要素40を囲むように円弧を描けばよい。これにより、少なくとも1回はラインLを跨る弧が描かれることになる。
プロセッサ1は、利用者によって行われた入力操作の軌跡がラインLを跨る弧を描いていることを検出すると、図14に示すように、新たな制御要素として反復要素41、反復要素42をラインL上に追加する。反復要素41と反復要素42は、繰り返し対象の処理を示す制御要素40を挟むように、それぞれ制御要素40の前方、後方に追加される。
反復要素に対するパラメータ設定は、図15に示すように、ラインL上に追加された反復要素41をタップ又はロングタップすることで行うことができる。この点は、図6において上述したように、任意の制御要素に対してパラメータを設定する場合と同様である。なお、設定ウィンドウ43内では、反復回数を設定可能である。また、パラメータ“Block”をONに設定することで、図15に示すように、反復要素(反復要素41、反復要素42)と、繰り返し実行する処理に対応する制御要素40と、を1つの要素にブロック化することができる。
なお、円弧の始端と終端の位置は特に限定しない。例えば、図14に示すように、ラインLよりも上側の領域から下側の領域へ円弧を描いてもよく、図16に示すように、ラインLよりも下側の領域から上側の領域を通って下側の領域まで円弧を描いてもよい。また、図示しないが、ラインLよりも上側の領域から下側の領域を通って上側の領域まで円弧を描いてもよい。
このように、情報処理装置10では、利用者は、入力操作の軌跡がラインを跨る弧を描くように入力操作を行うだけで反復要素を追加することができる。軌跡がラインを跨る弧を描く操作は、処理が繰り返し行われる反復をイメージしたときに想起されやすい操作であり、反復処理のための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、反復要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。
図17及び図18は、反復を示す要素の追加方法の更に別の例を説明するための図である。以上では、検出した入力操作の軌跡がラインLを跨る弧を描いている場合に反復要素を追加する例を示したが、以下では、図17及び図18を参照しながら、検出した入力操作がラインLまたはラインL上の要素に対するラインLに交差する方向の双方向操作である場合に反復要素を追加する例について説明する。
反復要素を追加する場合、利用者は、図17に示すように、繰り返し実行させたい処理に対応する制御要素40の左右で、上下にフリックしてもよい。また、図18に示すように、ラインLに対して同じ位置で上下にフリックしてもよい。同じ位置で上下にフリックした場合には、図18に示すように、追加される反復要素(反復要素41、反復要素42)間に制御要素が存在しないため、反復要素が追加された後で、所望の制御要素(制御要素46)をドラッグ&ドロップで反復要素間に移動させてもよい。なお、1組のフリックは、上下の順に行われても、下上の順に行われてもよい。
このように、情報処理装置10では、利用者は、ラインに交差する方向の双方向操作を行うだけで反復要素を追加することができる。ラインに交差する方向の双方向操作は、処理が繰り返し行われる反復をイメージしたときに想起されやすい操作であり、反復処理のための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、反復要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。
図19は、入れ子状に作成された反復を示す要素に対する操作方法の一例を説明するための図である。図15では、反復要素と、繰り返し実行する処理に対応する制御要素と、を1つの要素にブロック化する例を示したが、図19に示すように、反復要素とともにブロック化される対象は、制御要素(制御要素52)であってもよく、制御要素と反復要素とがブロック化したもの(要素56)が含まれてもよい。また、要素51から要素53がブロック化した要素56には、任意の名称を付けて表示することが可能であり、要素49から要素55がブロック化した要素57にも、同様に、任意の名称を付けて表示することが可能である。ブロック化した要素の名称を、処理内容を示す適切な名称に変更することで、その要素で行われる処理内容を一目で認識することができる。
本実施形態では、タッチパネルディスプレイを内蔵した情報処理装置10を例示したが、上述したようなモデリング支援を実現するためにプログラムを実行する情報処理装置は、タッチパネルディスプレイと有線又は無線で接続される、例えば、デスクトップ型のコンピュータであってもよい。タッチパネルディスプレイを用いることで、キーボード操作に不慣れな利用者であっても容易にプログラミングを行うことが可能である。
[第2の実施形態]
第1の実施形態では、入力装置3がタッチパネルを構成するタッチセンサである場合を例に説明したが、入力装置3は、必ずしもタッチセンサでなくてもよい。本実施形態では、キーボードを入力装置として備える情報処理装置について説明する。
第1の実施形態では、入力装置3がタッチパネルを構成するタッチセンサである場合を例に説明したが、入力装置3は、必ずしもタッチセンサでなくてもよい。本実施形態では、キーボードを入力装置として備える情報処理装置について説明する。
図20は、本実施形態に係る情報処理装置60の外観図である。情報処理装置60は、図20に示すように、例えば、ラップトップ型のコンピュータであり、ビジュアルプログラミングのためのプログラムがインストールされている。
情報処理装置60は、表示装置61と、入力装置62を備えている。情報処理装置60は、表示装置61がタッチパネルディスプレイではなく、入力装置62がキーボードである点が、情報処理装置10とは異なっている。即ち、情報処理装置60では、キーボード操作によりビジュアルプログラミングが行われる点が、情報処理装置10とは異なるが、その他の構成は、例えば、1つ以上のプロセッサと1つ以上の記憶装置2などを備える点は、情報処理装置10と同様である。
図21は、分岐を示す要素の追加方法の一例を説明するための図である。図22は、反復を示す要素の追加方法の一例を説明するための図である。情報処理装置60でも、情報処理装置10と同様に、簡単な操作で分岐及び反復を含む任意の制御要素をプログラムに追加することができる。以下、図21及び図22を参照しながら、領域12に分岐要素と反復要素を追加する方法について説明する。
分岐要素を追加する場合、利用者は、図21に示すように、まず、特定の条件下でのみ実行させたい処理に対応する制御要素を、十字キー80と選択キー90を用いて選択する。例えば、制御要素72に対応する処理を特定の条件下でのみ実行させたい場合であれば、十字キー80の右キーでカーソル70を制御要素71から制御要素72に移し、さらに、選択キー90の決定キーを押下して制御要素72を選択する。
その後、制御要素72が選択された状態で、十字キー80を用いて分岐要素を追加する。例えば、十字キー80の下キーを押下する。これにより、図21に示すように、ラインLから分岐した新たなラインL1が追加されラインL1上に制御要素72が表示されるとともに、ラインLからラインL1へ分岐する分岐点に、新たな制御要素として分岐要素73が追加される。
なお、図21では、下キーで分岐要素を追加する例を示したが、分岐要素は上キーの押下によって追加されてもよい。即ち、ラインLに交差する方向の一方向操作が行われればよい。
一方、反復要素を追加する場合、利用者は、図22に示すように、まず、繰り返し実行させたい処理に対応する制御要素を、十字キー80と選択キー90を用いて選択する。例えば、制御要素72に対応する処理を繰り返し実行させたい場合であれば、十字キー80の右キーでカーソル70を制御要素71から制御要素72に移し、さらに、選択キー90の決定キーを押下して制御要素72を選択する。
その後、制御要素72が選択された状態で、十字キー80を用いて反復要素を追加する。例えば、十字キー80の上下キーを順番に押下する。これにより、図22に示すように、新たな制御要素として反復要素74、反復要素75がラインL上に追加される。反復要素74と反復要素75は、繰り返し対象の処理を示す制御要素72を挟むように、それぞれ制御要素72の前方、後方に追加される。
なお、図22では、上キー、下キーの順に押下する例を示したが、反復要素は下キー、上キーの順に押下することによって追加されてもよい。即ち、ラインLに交差する方向の双方向操作が行われればよい。
以上のように、情報処理装置60によっても、直感的で且つシンプルな操作で分岐及び反復に分類される制御構造をプログラムに追加することができる。
上述した実施形態は、発明の理解を容易にするために具体例を示したものであり、本発明はこれらの実施形態に限定されるものではなく、上述の実施形態の各種変形形態および代替形態を包含するものとして理解されるべきである。例えば、各実施形態は、その趣旨および範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、上述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して、または実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。即ち、モデリング支援方法、情報処理装置、及び、プログラムは、特許請求の範囲の記載を逸脱しない範囲において、さまざまな変形、変更が可能である。
以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、
検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、
をコンピュータが行うことを特徴とするモデリング支援方法。
[付記2]
付記1に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の一方向操作である場合、前記ライン上に前記分岐に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記3]
付記1又は付記2に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の双方向操作である場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記4]
付記1乃至付記3のいずれか1つに記載のモデリング支援方法において、
前記コンピュータは、前記表示装置への前記入力操作を検出するタッチセンサからの出力に基づいて前記入力操作を検出する
ことを特徴とするモデリング支援方法。
[付記5]
付記4に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作の軌跡が前記ラインを跨る弧を描く場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記6]
命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、
前記命令を実行する1つ以上のプロセッサと、を含み、
前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、
前記動作は、
各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む
ことを特徴とする情報処理装置。
[付記7]
コンピュータに、
各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる
処理を実行させることを特徴とするプログラム。
[付記1]
各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、
検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、
をコンピュータが行うことを特徴とするモデリング支援方法。
[付記2]
付記1に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の一方向操作である場合、前記ライン上に前記分岐に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記3]
付記1又は付記2に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の双方向操作である場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記4]
付記1乃至付記3のいずれか1つに記載のモデリング支援方法において、
前記コンピュータは、前記表示装置への前記入力操作を検出するタッチセンサからの出力に基づいて前記入力操作を検出する
ことを特徴とするモデリング支援方法。
[付記5]
付記4に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作の軌跡が前記ラインを跨る弧を描く場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記6]
命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、
前記命令を実行する1つ以上のプロセッサと、を含み、
前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、
前記動作は、
各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む
ことを特徴とする情報処理装置。
[付記7]
コンピュータに、
各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる
処理を実行させることを特徴とするプログラム。
1・・・プロセッサ、2・・・メモリ、2a・・・プログラム、3、62・・・入力装置、4、61・・・表示装置、10、60・・・情報処理装置、21、22、24-31、34-36、40、45、46、52、54、71、72・・・制御要素、32、37-39、73・・・分岐要素、41、42、47-49、51、53、55、74、75・・・反復要素、44、50、56、57・・・要素、L、L1-L3・・・ライン
Claims (7)
- 各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、
検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、
をコンピュータが行うことを特徴とするモデリング支援方法。 - 請求項1に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の一方向操作である場合、前記ライン上に前記分岐に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。 - 請求項1又は請求項2に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の双方向操作である場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。 - 請求項1乃至請求項3のいずれか1項に記載のモデリング支援方法において、
前記コンピュータは、前記表示装置への前記入力操作を検出するタッチセンサからの出力に基づいて前記入力操作を検出する
ことを特徴とするモデリング支援方法。 - 請求項4に記載のモデリング支援方法において、
前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作の軌跡が前記ラインを跨る弧を描く場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。 - 命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、
前記命令を実行する1つ以上のプロセッサと、を含み、
前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、
前記動作は、
各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む
ことを特徴とする情報処理装置。 - コンピュータに、
各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、
前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、
検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる
処理を実行させることを特徴とするプログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020210086A JP7219868B2 (ja) | 2020-12-18 | 2020-12-18 | モデリング支援方法、情報処理装置、及び、プログラム |
PCT/JP2021/043501 WO2022130943A1 (ja) | 2020-12-18 | 2021-11-26 | モデリング支援方法、情報処理装置、及び、プログラム |
JP2023006264A JP2023054806A (ja) | 2020-12-18 | 2023-01-19 | モデリング支援方法、情報処理装置、及び、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020210086A JP7219868B2 (ja) | 2020-12-18 | 2020-12-18 | モデリング支援方法、情報処理装置、及び、プログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023006264A Division JP2023054806A (ja) | 2020-12-18 | 2023-01-19 | モデリング支援方法、情報処理装置、及び、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022096859A JP2022096859A (ja) | 2022-06-30 |
JP7219868B2 true JP7219868B2 (ja) | 2023-02-09 |
Family
ID=82059047
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020210086A Active JP7219868B2 (ja) | 2020-12-18 | 2020-12-18 | モデリング支援方法、情報処理装置、及び、プログラム |
JP2023006264A Pending JP2023054806A (ja) | 2020-12-18 | 2023-01-19 | モデリング支援方法、情報処理装置、及び、プログラム |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2023006264A Pending JP2023054806A (ja) | 2020-12-18 | 2023-01-19 | モデリング支援方法、情報処理装置、及び、プログラム |
Country Status (2)
Country | Link |
---|---|
JP (2) | JP7219868B2 (ja) |
WO (1) | WO2022130943A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005309593A (ja) | 2004-04-19 | 2005-11-04 | Mitsubishi Electric Corp | プログラム作成装置及びプログラム作成方法 |
JP2008522275A (ja) | 2004-11-25 | 2008-06-26 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コンテンツ編集のためのユーザインタフェース |
JP2013546093A (ja) | 2010-12-14 | 2013-12-26 | サムスン エレクトロニクス カンパニー リミテッド | タイムラインバーを用いるタッチスクリーン制御方法及び装置、そのためのプログラムが記録される記録媒体、及びユーザー端末 |
US20200218445A1 (en) | 2015-03-19 | 2020-07-09 | Apple Inc. | Touch Input Cursor Manipulation |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011048477A (ja) * | 2009-08-25 | 2011-03-10 | Justsystems Corp | フローチャート描画装置、フローチャート描画方法およびフローチャート描画プログラム |
-
2020
- 2020-12-18 JP JP2020210086A patent/JP7219868B2/ja active Active
-
2021
- 2021-11-26 WO PCT/JP2021/043501 patent/WO2022130943A1/ja active Application Filing
-
2023
- 2023-01-19 JP JP2023006264A patent/JP2023054806A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005309593A (ja) | 2004-04-19 | 2005-11-04 | Mitsubishi Electric Corp | プログラム作成装置及びプログラム作成方法 |
JP2008522275A (ja) | 2004-11-25 | 2008-06-26 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | コンテンツ編集のためのユーザインタフェース |
JP2013546093A (ja) | 2010-12-14 | 2013-12-26 | サムスン エレクトロニクス カンパニー リミテッド | タイムラインバーを用いるタッチスクリーン制御方法及び装置、そのためのプログラムが記録される記録媒体、及びユーザー端末 |
US20200218445A1 (en) | 2015-03-19 | 2020-07-09 | Apple Inc. | Touch Input Cursor Manipulation |
Also Published As
Publication number | Publication date |
---|---|
WO2022130943A1 (ja) | 2022-06-23 |
JP2022096859A (ja) | 2022-06-30 |
JP2023054806A (ja) | 2023-04-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9939991B2 (en) | Tile visualizations for navigating hierarchical data on mobile devices | |
US8589458B2 (en) | Electronic calculator with touch screen | |
KR101686581B1 (ko) | 툴바 탐색(Toolbar Navigation)을 위한 사용자 인터페이스(User Interface) | |
US20150253870A1 (en) | Portable terminal | |
WO2012044363A1 (en) | Systems and methods to facilitate active reading | |
US10656790B2 (en) | Display apparatus and method for displaying a screen in display apparatus | |
EP3278203B1 (en) | Enhancement to text selection controls | |
JP2012133745A (ja) | 情報処理装置およびその表示サイズ制御方法 | |
JP2012226516A (ja) | 電子機器、表示制御方法及びプログラム | |
KR20160053547A (ko) | 전자장치 및 전자장치의 인터렉션 방법 | |
JP7219868B2 (ja) | モデリング支援方法、情報処理装置、及び、プログラム | |
JP5747688B2 (ja) | 計算装置およびプログラム | |
JP6369937B2 (ja) | アイコン表示装置及びアイコン表示プログラム | |
KR102009133B1 (ko) | 전자문서 터치 제어 방법 | |
JP2013182342A (ja) | 入力装置、入力装置の制御方法、制御プログラム、および記録媒体 | |
JP5742870B2 (ja) | 電子機器およびプログラム | |
JP2011181104A (ja) | 電子機器およびプログラム | |
KR101050671B1 (ko) | 터치스크린을 이용한 한글 입력 장치, 그 방법 | |
KR102093084B1 (ko) | 터치 제어 방법, 장치, 프로그램 및 컴퓨터 판독가능 기록매체 | |
KR20130048300A (ko) | 터치스크린 상에서 터치 버튼의 멀티터치 인식방법, 문자 입력 방법 및 객체 변형 방법 | |
JP2017027190A (ja) | オブジェクト操作制御プログラム及びオブジェクト操作制御方法並びにオブジェクト操作システム | |
CN108205407B (zh) | 显示装置、显示方法及存储介质 | |
JP6661421B2 (ja) | 情報処理装置、制御方法、及びプログラム | |
JP2015075988A (ja) | オブジェクト操作システム及びオブジェクト操作制御プログラム並びにオブジェクト操作制御方法 | |
KR20120061038A (ko) | 터치스크린 상에서 터치 버튼의 멀티터치 인식방법, 문자 입력 방법 및 객체 변형 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20211101 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20221227 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230109 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7219868 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |