JP7380087B2 - Image display area setting program, server, image display area setting device, image display area setting method, and image display system - Google Patents
Image display area setting program, server, image display area setting device, image display area setting method, and image display system Download PDFInfo
- Publication number
- JP7380087B2 JP7380087B2 JP2019198688A JP2019198688A JP7380087B2 JP 7380087 B2 JP7380087 B2 JP 7380087B2 JP 2019198688 A JP2019198688 A JP 2019198688A JP 2019198688 A JP2019198688 A JP 2019198688A JP 7380087 B2 JP7380087 B2 JP 7380087B2
- Authority
- JP
- Japan
- Prior art keywords
- area
- display
- region
- image
- setting
- 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
- 238000000034 method Methods 0.000 title claims description 163
- 230000008569 process Effects 0.000 claims description 152
- 238000012545 processing Methods 0.000 claims description 58
- 238000012217 deletion Methods 0.000 description 18
- 230000037430 deletion Effects 0.000 description 18
- 238000004891 communication Methods 0.000 description 14
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 4
- 239000000470 constituent Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 239000000284 extract Substances 0.000 description 3
- 238000012886 linear function Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002301 combined effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
Landscapes
- Image Generation (AREA)
- Controls And Circuits For Display Device (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Description
本発明は、画像表示領域設定プログラム、サーバ、画像表示領域設定装置、画像表示領域設定方法及び画像表示システムに関する。 The present invention relates to an image display area setting program, a server, an image display area setting device, an image display area setting method, and an image display system.
スマートフォン等の機器においてグラフを表示するための各種のソフトウェアが知られている。また、近年、グラフの作成機能を備えた関数電卓も提案されてきている。通常、スマートフォン及び関数電卓等のディスプレイの表示範囲には制限がある。したがって、表示対象のグラフの種類、定義域、値域、縦軸と横軸の比等の設定によっては、グラフが適切に表示されないことがある。 Various types of software are known for displaying graphs on devices such as smartphones. Furthermore, in recent years, scientific calculators equipped with a graph creation function have been proposed. Usually, there are limits to the display range of displays such as smartphones and scientific calculators. Therefore, depending on the settings of the type of graph to be displayed, domain, range, ratio of vertical axis to horizontal axis, etc., the graph may not be displayed properly.
特許文献1のグラフ表示制御装置は、グラフを表す関数から、最大値、最小値、極大値、極小値、変曲点といったグラフの数学的特徴を計算し、数学的特徴に従ってグラフの表示範囲を設定している。 The graph display control device of Patent Document 1 calculates mathematical characteristics of the graph such as maximum value, minimum value, local maximum value, local minimum value, and inflection point from a function representing the graph, and adjusts the display range of the graph according to the mathematical characteristics. It is set.
数学的特徴を算出するための計算の中には、計算に係わるデータ処理の負荷が大きいものもある。グラフが表示されるまでの時間等にも影響するため、データ処理の負荷はなるべく小さい方が好ましい。 Some calculations for calculating mathematical features require a large data processing load. Since it also affects the time it takes for a graph to be displayed, it is preferable that the data processing load be as small as possible.
本発明は、前記の事情に鑑みてなされたものであり、大きなデータ処理の負荷をかけずにグラフ等の画像の表示領域を設定できる画像表示領域設定プログラム、サーバ、画像表示領域設定装置、画像表示領域設定方法及び画像表示システムを提供することを目的とする。 The present invention has been made in view of the above circumstances, and provides an image display area setting program, a server, an image display area setting device, and an image display area setting program, a server, an image display area setting device, and an image display area that can set the display area of images such as graphs without imposing a large data processing load. The present invention aims to provide a display area setting method and an image display system.
本発明の第1の態様の画像表示領域設定プログラムは、コンピュータに、関数グラフ画像の第1端を含む領域である第1の領域と、前記関数グラフ画像の前記第1端と対向する第2端を含む領域である第2の領域とについて、各領域に含まれる関数に応じた関数グラフの線の長さ又は点の数を比較する比較処理と、前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、を実行させる。 The image display area setting program according to the first aspect of the present invention causes a computer to select a first area including a first end of a function graph image, and a second area opposite to the first end of the function graph image. a comparison process that compares the length of a line or the number of points of a function graph according to a function included in each region with respect to a second region that is a region including an edge; A display in which a part of the area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is set as a display candidate area for display on a display device. A candidate area setting process is executed.
本発明の第2の態様のサーバは、関数グラフ画像の第1端を含む領域である第1の領域と、前記関数グラフ画像の前記第1端と対向する第2端を含む領域である第2の領域とについて、各領域に含まれる関数に応じた関数グラフの線の長さ又は点の数を比較する比較処理と、前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、をサーバのコンピュータに実行させるための画像表示領域設定プログラムを記憶するストレージを具備する。 A server according to a second aspect of the present invention includes a first area including a first end of a function graph image, and a second area including a second end opposite to the first end of the function graph image. a comparison process of comparing the length of a line or the number of points of a function graph according to a function included in each region with respect to the second region; and a comparison process of the first region and the second region. a display candidate area setting process of setting a part of the area determined based on the result of the search as a non-display area, and setting at least an area other than the non-display area as a display candidate area for display on a display device; The computer includes a storage for storing an image display area setting program to be executed by the computer.
本発明の第3の態様の画像表示領域設定装置は、表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理とを実行するプロセッサを具備する。 The image display area setting device according to the third aspect of the present invention has a first area that is a part of the display target image, and a second area that is another part of the display target image. , a comparison process that compares the length of the line or the number of points included in each area, and a part of the first area and the second area that is determined based on the comparison result. The display apparatus includes a processor that executes a display candidate area setting process of setting a non-display area and setting at least an area other than the non-display area as a display candidate area for display on a display device.
本発明の第4の態様の画像表示領域設定方法は、画像表示領域設定装置のプロセッサによって実行される方法であって、表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理とを具備する。 An image display area setting method according to a fourth aspect of the present invention is a method executed by a processor of an image display area setting device, and includes a first area that is a part of an image to be displayed, and a first area that is a part of an image to be displayed; A comparison process that compares the length of a line or the number of points included in each region with a second region that is another partial region of the image; A display candidate area setting process of setting a part of the area determined based on the comparison result as a non-display area, and setting at least an area excluding the non-display area as a display candidate area for display on a display device. and.
本発明の第5の態様の画像表示システムは、サーバとクライアント端末とを備える画像表示システムであって、表示対象データを取得する取得処理と、取得した前記表示対象データに対応した表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、前記表示対象画像のうちの、設定された前記表示候補領域を、表示装置に表示させる表示処理とを実行する。 An image display system according to a fifth aspect of the present invention is an image display system comprising a server and a client terminal, and includes an acquisition process for acquiring display target data, and a display target image corresponding to the acquired display target data. A comparison process that compares the length of a line or the number of points included in each area of a first area that is a partial area and a second area that is another partial area of the display target image. A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least the area excluding the non-display area is set as a non-display area on the display device. A display candidate area setting process for setting a display candidate area to be displayed on a display target image, and a display process for displaying the set display candidate area of the display target image on a display device are executed.
本発明によれば、大きなデータ処理の負荷をかけずにグラフ等の画像の表示領域を設定できる画像表示領域設定プログラム、サーバ、画像表示領域設定装置、画像表示領域設定方法及び画像表示システムを提供することができる。 According to the present invention, there are provided an image display area setting program, a server, an image display area setting device, an image display area setting method, and an image display system that can set the display area of images such as graphs without imposing a large data processing load. can do.
以下、本発明の実施形態について図面を参照して説明する。
[第1の実施形態]
図1は、本発明の各実施形態に係るシステム1の構成の一例を示す図である。システム1は、サーバ10と、端末20とを含む。サーバ10と端末20とは、ネットワーク30を介して通信可能に接続される。ネットワーク30は、例えばインターネットである。なお、図1には、1台の端末20のみが示されているが、端末20の台数は1台に限定されない。すなわち、端末20は2台以上であってもよい。
Embodiments of the present invention will be described below with reference to the drawings.
[First embodiment]
FIG. 1 is a diagram showing an example of the configuration of a system 1 according to each embodiment of the present invention. System 1 includes a server 10 and a terminal 20. The server 10 and the terminal 20 are communicably connected via a network 30. Network 30 is, for example, the Internet. Note that although only one terminal 20 is shown in FIG. 1, the number of terminals 20 is not limited to one. That is, the number of terminals 20 may be two or more.
サーバ10は、プロセッサ11と、ROM12と、RAM13と、ストレージ14と、通信装置15とを有している。これらの各々は、システムバス19を介して互いに接続されている。 The server 10 includes a processor 11, a ROM 12, a RAM 13, a storage 14, and a communication device 15. Each of these is connected to each other via a system bus 19.
プロセッサ11は、CPU(Central Processing Unit)等を含む集積回路であってよい。ROM12は、プロセッサ11等の動作に用いられる情報を記録している。RAM13は、プロセッサ11等の動作のための主記憶装置である。ストレージ14には、プロセッサ11で用いられるサーバ制御プログラム、各種演算を実行するための演算プログラム等の各種プログラム、パラメータ等が記憶されている。プロセッサ11は、ストレージ14に記憶されたプログラムに従ってサーバ10の動作を制御する。プロセッサ11として、CPU以外のプロセッサ、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPU(Graphic Processing unit)等が用いられてもよい。通信装置15は、ネットワーク30等の外部の通信ネットワークと通信するための回路を含む。 The processor 11 may be an integrated circuit including a CPU (Central Processing Unit) and the like. The ROM 12 records information used for the operation of the processor 11 and the like. The RAM 13 is a main storage device for the operation of the processor 11 and the like. The storage 14 stores various programs such as a server control program used by the processor 11 and a calculation program for executing various calculations, parameters, and the like. The processor 11 controls the operation of the server 10 according to a program stored in the storage 14. As the processor 11, a processor other than the CPU, such as an ASIC (Application Specific Integrated Circuit), an FPGA (Field Programmable Gate Array), or a GPU (Graphic Processing unit), may be used. Communication device 15 includes a circuit for communicating with an external communication network such as network 30.
端末20は、CPU21と、ROM22と、RAM23と、ストレージ24と、入力装置25と、表示装置26と、通信装置27とを有している。これらの各々は、システムバス29を介して互いに接続されている。端末20は、パーソナルコンピュータ(PC)、タブレット端末、スマートフォン等の電子機器であってよい。また、端末20は、通信機能を備えた関数電卓等であってもよい。 The terminal 20 includes a CPU 21 , a ROM 22 , a RAM 23 , a storage 24 , an input device 25 , a display device 26 , and a communication device 27 . Each of these is connected to each other via a system bus 29. The terminal 20 may be an electronic device such as a personal computer (PC), a tablet terminal, or a smartphone. Further, the terminal 20 may be a scientific calculator or the like having a communication function.
CPU21は、端末20の各種動作を制御するプロセッサである。ROM22は、端末20の起動プログラム等を記録している。RAM23は、CPU21等のための主記憶装置である。ストレージ24には、CPU21で用いられる端末制御プログラム等の各種プログラム、パラメータ等が記憶されている。CPU21は、入力装置25からの入力信号や通信装置27による受信信号に応じて各種プログラムを実行することで端末20の動作を制御する。各種プログラムは、不図示のウェブサーバからネットワーク30、通信装置27を介してストレージ24にダウンロードされてもよい。通信装置27は、ネットワーク30等の外部の通信ネットワークと通信するための回路を含む。 The CPU 21 is a processor that controls various operations of the terminal 20. The ROM 22 records a startup program for the terminal 20 and the like. The RAM 23 is a main storage device for the CPU 21 and the like. The storage 24 stores various programs such as a terminal control program used by the CPU 21, parameters, and the like. The CPU 21 controls the operation of the terminal 20 by executing various programs in response to input signals from the input device 25 and signals received from the communication device 27. Various programs may be downloaded to the storage 24 from a web server (not shown) via the network 30 and the communication device 27. Communication device 27 includes a circuit for communicating with an external communication network such as network 30.
入力装置25は、キーボード、マウス、タッチパネル等を含む。入力装置25を介したユーザ操作に応じて、そのユーザ操作の内容を示す信号がシステムバス29を介してCPU21に入力される。 The input device 25 includes a keyboard, a mouse, a touch panel, and the like. In response to a user operation via the input device 25, a signal indicating the content of the user operation is input to the CPU 21 via the system bus 29.
表示装置26は、液晶ディスプレイ、有機ELディスプレイ等である。表示装置26は、端末20に一体的に設けられていてもよいし、端末20とは別に設けられていてもよい。表示装置26には、各種の画像が表示される。 The display device 26 is a liquid crystal display, an organic EL display, or the like. The display device 26 may be provided integrally with the terminal 20 or may be provided separately from the terminal 20. Various images are displayed on the display device 26.
以下、システム1におけるグラフ表示処理について説明する。ここで、システム1のサーバ10及び端末20では、グラフ表示以外の処理が行われてもよい。グラフ表示以外の処理については説明を省略する。 The graph display processing in the system 1 will be described below. Here, the server 10 and terminal 20 of the system 1 may perform processing other than graph display. Descriptions of processes other than graph display will be omitted.
図2は、サーバ10におけるグラフ表示処理を示すフローチャートである。ステップS1において、プロセッサ11は、グラフ表示のリクエストがあるか否かを判定する。後で説明するように、ユーザは、端末20にグラフを表示させるときには、端末20の入力装置25を介してグラフ表示の指示を入力する。グラフ表示の指示は、グラフとして表示させたい関数f(x)及び関数f(x)の定義域を含む。グラフ表示の指示は、関数f(x)の値域をさらに含んでいてもよく、関数f(x)の定義域の替りに関数f(x)の値域を含んでいてもよい。また、グラフ表示の指示は、関数f(x)とは別の関数g(x)及び関数g(x)の定義域を含んでいてもよい。グラフ表示の指示は、関数g(x)の値域をさらに含んでいてもよく、関数g(x)の定義域の替りに関数g(x)の値域を含んでいてもよい。これらの関数g(x)及び関数g(x)や各定義域、各値域を示す情報が、関数に応じたグラフの描画範囲に係わる情報である。このようなグラフ表示の指示を受けて、端末20は、グラフ表示のリクエストを生成する。そして、端末20は、グラフ表示のリクエストを送信する。ステップS1では、このグラフ表示のリクエストの有無が判定される。ステップS1において、グラフ表示のリクエストがないと判定されたときには、処理はステップS2に移行する。ステップS1において、グラフ表示のリクエストがあると判定されたときには、処理はステップS3に移行する。 FIG. 2 is a flowchart showing graph display processing in the server 10. In step S1, the processor 11 determines whether there is a request for graph display. As will be explained later, when displaying a graph on the terminal 20, the user inputs an instruction to display the graph via the input device 25 of the terminal 20. The instruction to display a graph includes the function f(x) to be displayed as a graph and the domain of the function f(x). The instruction to display the graph may further include the range of the function f(x), or may include the range of the function f(x) instead of the domain of the function f(x). Further, the instruction to display the graph may include a function g(x) different from the function f(x) and a domain of the function g(x). The instruction to display the graph may further include the range of the function g(x), or may include the range of the function g(x) instead of the domain of the function g(x). Information indicating these functions g(x), function g(x), each domain, and each value range is information related to the drawing range of the graph according to the function. Upon receiving such a graph display instruction, the terminal 20 generates a graph display request. The terminal 20 then transmits a request for graph display. In step S1, it is determined whether there is a request for displaying this graph. If it is determined in step S1 that there is no request for graph display, the process moves to step S2. When it is determined in step S1 that there is a request for graph display, the process moves to step S3.
ステップS2において、プロセッサ11は、グラフ表示処理以外のその他の処理を実行する。プロセッサ11は、その他の処理の完了後、図2の処理を終了させる。 In step S2, the processor 11 executes processing other than graph display processing. The processor 11 ends the process of FIG. 2 after completing other processes.
ステップS3において、プロセッサ11は、グラフ表示のリクエストに基づいて、点群データを生成する。例えば、CPU1は、リクエストに含まれる定義域及び値域によって定まる描画範囲内の関数f(x)上の点を一定間隔で抽出する。抽出したそれぞれの点のxの要素及びyの要素を含む座標データが、点群データである。リクエストに定義域又は値域が含まれていないときには、予め定められている最大の描画範囲で点が抽出されてよい。これらの点群データ(表示対象データ)を特定する情報が、関数に応じたグラフの描画範囲に係わる情報である。ここで、関数f(x)上の一定間隔の点とは、各点のx座標又はy座標の間隔が一定である場合や、y=f(x)のグラフ上の点同士の直線距離やグラフに沿った長さが一定である場合を含んでよい。 In step S3, the processor 11 generates point cloud data based on the request for graph display. For example, the CPU 1 extracts points on the function f(x) within a drawing range determined by the domain and value range included in the request at regular intervals. Coordinate data including x elements and y elements of each extracted point is point group data. If the request does not include a domain or value range, points may be extracted within a predetermined maximum drawing range. The information that specifies these point cloud data (display target data) is information related to the drawing range of the graph according to the function. Here, points at regular intervals on the function f(x) refer to cases where the intervals between the x or y coordinates of each point are constant, or the straight line distance between points on the graph of y=f(x), This may include cases where the length along the graph is constant.
ステップS4において、プロセッサ11は、通信装置27を介して点群データを端末20に送信する。プロセッサ11は、送信の完了後に図2の処理を終了させる。 In step S4, the processor 11 transmits the point cloud data to the terminal 20 via the communication device 27. The processor 11 ends the process of FIG. 2 after the transmission is completed.
図3は、端末20におけるグラフ表示処理を示すフローチャートである。ステップS101において、CPU21は、グラフ表示の指示を受けたか否かを判定する。ステップS101において、グラフ表示の指示を受けていないと判定されたときには、処理はステップS102に移行する。ステップS101において、グラフ表示の指示を受けたと判定されたときには、処理はステップS103に移行する。 FIG. 3 is a flowchart showing graph display processing in the terminal 20. In step S101, the CPU 21 determines whether an instruction to display a graph has been received. If it is determined in step S101 that the instruction to display the graph has not been received, the process moves to step S102. If it is determined in step S101 that an instruction to display a graph has been received, the process moves to step S103.
ステップS102において、CPU21は、グラフ表示処理以外のその他の処理を実行する。CPU21は、その他の処理の完了後、図3の処理を終了させる。 In step S102, the CPU 21 executes processing other than graph display processing. After completing other processing, the CPU 21 ends the processing in FIG. 3 .
ステップS103において、CPU21は、グラフ表示の指示に基づいてグラフ表示のリクエストを生成する。 In step S103, the CPU 21 generates a graph display request based on the graph display instruction.
ステップS104において、CPU21は、通信装置27を介してグラフ表示のリクエストを送信する。 In step S104, the CPU 21 transmits a request for graph display via the communication device 27.
ステップS105において、CPU21は、通信装置27を介して点群データが受信されたか否かを判定する。ステップS105において、点群データが受信されたと判定されるまで、処理は待機される。所定の時間、点群データが受信されないときには、処理がタイムアウトされてもよい。ステップS105において、点群データが受信されたと判定されたときには、処理はステップS106に移行する。 In step S105, the CPU 21 determines whether point cloud data has been received via the communication device 27. In step S105, the process waits until it is determined that point cloud data has been received. Processing may time out when no point cloud data is received for a predetermined period of time. If it is determined in step S105 that point cloud data has been received, the process moves to step S106.
ステップS106において、CPU21は、グラフ表示範囲決定処理を行う。グラフ表示範囲決定処理は、点群データに応じたグラフ表示のときの、グラフの表示範囲を決定するための処理である。グラフ表示範囲決定処理の詳細については後で説明する。 In step S106, the CPU 21 performs graph display range determination processing. The graph display range determination process is a process for determining the display range of a graph when displaying a graph according to point cloud data. Details of the graph display range determination process will be explained later.
ステップS107において、CPU21は、グラフ表示範囲決定処理によって決定されたグラフの表示範囲に従って、グラフを表示する。具体的には、CPU21は、表示範囲に含まれる点群データに基づいて、表示装置26に表示した座標面上にグラフを描画する。その後、処理はステップS108に移行する。 In step S107, the CPU 21 displays the graph according to the graph display range determined by the graph display range determination process. Specifically, the CPU 21 draws a graph on the coordinate plane displayed on the display device 26 based on the point cloud data included in the display range. After that, the process moves to step S108.
ステップS108において、CPU21は、入力装置25を介してグラフ表示処理に係る何等かの操作があるか否かを判定する。ステップS108において、グラフ表示に係る何等かの操作があると判定されるまで、処理は待機される。ステップS108において、グラフ表示に係る何等かの操作があると判定されたときには、処理はステップS109に移行する。 In step S108, the CPU 21 determines whether or not there is any operation related to graph display processing via the input device 25. In step S108, the process waits until it is determined that there is some operation related to graph display. If it is determined in step S108 that there is some kind of operation related to graph display, the process moves to step S109.
ステップS109において、CPU21は、ステップS108の操作が表示終了の操作であるか否かを判定する。ステップS109において、操作が表示終了の操作でないと判定されたときには、処理はステップS110に移行する。ステップS109において、操作が表示終了の操作であると判定されたときには、CPU21は、図3の処理を終了させる。 In step S109, the CPU 21 determines whether the operation in step S108 is an operation to end the display. If it is determined in step S109 that the operation is not an operation to end the display, the process moves to step S110. In step S109, when it is determined that the operation is an operation to end the display, the CPU 21 ends the process of FIG. 3.
ステップS110において、CPU21は、ステップS108で受け付けられた操作の内容に応じた処理を行う。例えば、ステップS108で受け付けられた操作が、表示範囲の変更操作であるときには、CPU21は、操作によって指示された方向に表示範囲を変更し、変更後の表示範囲に含まれる点群データに応じてグラフを描画する。 In step S110, the CPU 21 performs processing according to the content of the operation accepted in step S108. For example, when the operation accepted in step S108 is an operation to change the display range, the CPU 21 changes the display range in the direction instructed by the operation, and changes the display range according to the point cloud data included in the changed display range. Draw a graph.
以下、第1の実施形態のグラフ表示範囲決定処理について説明する。図4は、第1の実施形態におけるグラフ表示範囲決定処理について示すフローチャートである。説明を簡単にするために、以下では、関数f(x)についての点群データだけが端末20に入力されたとする。 The graph display range determination process of the first embodiment will be described below. FIG. 4 is a flowchart showing graph display range determination processing in the first embodiment. To simplify the explanation, it will be assumed below that only point cloud data regarding the function f(x) is input to the terminal 20.
ステップS201において、CPU21は、座標面上に初回の関心領域(ROI)を設定する。ROIのx軸(横軸)方向の範囲rxは、x_min≦rx≦x_maxであり、y軸(縦軸)方向の範囲ryは、y_min≦ry≦y_maxである。初回では、x_minは、点群データにおけるxの最小値、すなわち描画範囲の左端である。また、初回では、x_maxは、点群データにおけるxの最大値、すなわち描画範囲の右端である。定義域が設定されているときには、初回のROIのx軸方向の範囲rxは、定義域と等しい。また、初回では、y_minは、点群データにおけるyの最小値、すなわち描画範囲の下端である。また、初回では、y_maxは、点群データにおけるyの最大値、すなわち描画範囲の上端である。値域が設定されているときには、初回のROIのy軸方向の範囲ryは、値域と等しい。 In step S201, the CPU 21 sets an initial region of interest (ROI) on the coordinate plane. The range rx of the ROI in the x-axis (horizontal axis) direction is x_min≦rx≦x_max, and the range ry in the y-axis (vertical axis) direction is y_min≦ry≦y_max. At the first time, x_min is the minimum value of x in the point cloud data, that is, the left end of the drawing range. Furthermore, at the first time, x_max is the maximum value of x in the point cloud data, that is, the right end of the drawing range. When the defined area is set, the range rx of the initial ROI in the x-axis direction is equal to the defined area. Further, at the first time, y_min is the minimum value of y in the point cloud data, that is, the lower end of the drawing range. Further, at the first time, y_max is the maximum value of y in the point cloud data, that is, the upper end of the drawing range. When a range is set, the range ry of the initial ROI in the y-axis direction is equal to the range.
ステップS202において、CPU21は、(y_max-y_min)がn×(x_max-x_min)よりも小さいか否かを判定する。ここで、nは、グラフ表示の際の縦軸の目盛りの増分値と横軸の目盛りの増分値との比である。nの初期値は、例えば1である。nが1である場合、x軸の1目盛りが1であるとき、y軸の1目盛りも1である。一方、nが5である場合、x軸の1目盛りが1であるとき、y軸の1目盛りは5である。nは、ユーザによって変更されてよい。ステップS202において、(y_max-y_min)がn×(x_max-x_min)よりも小さくないと判定されたときには、処理はステップS203に移行する。ステップS202において、(y_max-y_min)がn×(x_max-x_min)よりも小さいと判定されたときには、処理はステップS213に移行する。 In step S202, the CPU 21 determines whether (y_max−y_min) is smaller than n×(x_max−x_min). Here, n is the ratio between the increment value of the scale on the vertical axis and the increment value of the scale on the horizontal axis when the graph is displayed. The initial value of n is 1, for example. When n is 1, when one division on the x-axis is one, one division on the y-axis is also one. On the other hand, when n is 5, when 1 scale on the x-axis is 1, 1 scale on the y-axis is 5. n may be changed by the user. If it is determined in step S202 that (y_max-y_min) is not smaller than n×(x_max-x_min), the process moves to step S203. If it is determined in step S202 that (y_max-y_min) is smaller than n×(x_max-x_min), the process moves to step S213 .
ステップS203において、CPU21は、削除候補区間の幅dを算出する。削除候補区間の幅は、ROIの上端と下端に設定される削除候補区間のy軸方向に沿った幅である。幅dは、以下の(式1)によって算出される。後で説明するように、y_maxとy_minとの差は、図4の処理によって徐々に小さくなっていく。したがって、幅dも、徐々に短くなる。
d=(y_max-y_min)/4 (式1)
In step S203, the CPU 21 calculates the width d of the deletion candidate section. The width of the deletion candidate section is the width along the y-axis direction of the deletion candidate section set at the upper and lower ends of the ROI. The width d is calculated by the following (Equation 1). As will be explained later, the difference between y_max and y_min gradually becomes smaller through the process shown in FIG. Therefore, the width d also becomes gradually shorter.
d=(y_max-y_min)/4 (Formula 1)
ステップS204において、CPU21は、上側の削除候補区間yu、下側の削除候補区間ylを設定する。yu、ylは、以下の(式2)に従って設定される区間である。
y_max-d<yu<y_max
y_min<yl<y_min+d (式2)
In step S204, the CPU 21 sets an upper deletion candidate section yu and a lower deletion candidate section yl. yu and yl are intervals set according to the following (Formula 2).
y_max−d<yu<y_max
y_min<yl<y_min+d (Formula 2)
ステップS205において、CPU21は、削除候補区間yuと、x_maxからxminまでの区間とによって囲まれるROIの中の上側の領域(第1の除去候補領域)に含まれる曲線の弧長を算出する。曲線の弧長は、例えば上側の領域に含まれる複数の点のうちのx座標が互いに最も近い二点、つまり、互いに隣接する二点を結ぶ直線の長さの総和によって算出される。具体的には、曲線の弧長は、以下の(式3)によって算出される。なお、(式3)のxi、yiは、それぞれ、曲線上のi番目の点のx座標、y座標である。(式3)のxi+1、yi+1は、それぞれ、曲線上の(i+1)番目の点のx座標、y座標である。図5は、曲線の弧長の算出の例を示す図である。ステップS207では、図5の上側の領域R1に含まれる曲線の弧長が算出される。
ステップS206において、CPU21は、削除候補区間ylと、x_maxからxminまでの区間とによって囲まれるROIの中の下端の領域(第2の除去候補領域)に含まれる曲線の弧長を算出する。ステップS205と同様に、曲線の弧長は、例えば下側の領域に含まれる各点を結ぶ直線の長さの総和によって算出される。具体的には、曲線の弧長は、(式3)によって算出される。ステップS205では、図5の下側の領域R2に含まれる曲線の弧長が算出される。 In step S206, the CPU 21 calculates the arc length of the curve included in the lower end region (second removal candidate region) in the ROI surrounded by the deletion candidate section yl and the section from x_max to xmin. Similarly to step S205, the arc length of the curve is calculated, for example, by the sum of the lengths of straight lines connecting each point included in the lower region. Specifically, the arc length of the curve is calculated by (Equation 3). In step S205, the arc length of the curve included in the lower region R2 of FIG. 5 is calculated.
ステップS207において、CPU21は、上側の領域における曲線の弧長と下側の領域における曲線の弧長とは同じであるか否かを判定する。ステップS207において、上側の領域における曲線の弧長と下側の領域における曲線の弧長とは同じであると判定されたときには、処理はステップS208に移行する。ステップS207において、上側の領域における曲線の弧長と下側の領域における曲線の弧長とは同じでないと判定されたときには、処理はステップS209に移行する。 In step S207, the CPU 21 determines whether the arc length of the curve in the upper region and the arc length of the curve in the lower region are the same. If it is determined in step S207 that the arc length of the curve in the upper region is the same as the arc length of the curve in the lower region, the process moves to step S208. If it is determined in step S207 that the arc length of the curve in the upper region and the arc length of the curve in the lower region are not the same, the process moves to step S209.
ステップS208において、CPU21は、ROIにおいて設定された上側の領域の上から半分と、下側の領域の下から半分を、非表示領域として削除することでROIを更新する。具体的には、CPU21は、図5に示す上側の領域R1の上から半分の領域を削除する。また、CPU21は、図5に示す下側の領域R2の下から半分の領域を削除する。そして、CPU21は、y_max及びy_minをそれぞれ領域の削除後のyの最大値及び最小値に更新する。このような処理の後、CPU21は、処理をステップS214に移行させる。 In step S208, the CPU 21 updates the ROI by deleting the upper half of the upper region and the lower half of the lower region set in the ROI as non-display regions. Specifically, the CPU 21 deletes the upper half of the upper region R1 shown in FIG. 5 . Further, the CPU 21 deletes a half region from the bottom of the lower region R2 shown in FIG. Then, the CPU 21 updates y_max and y_min to the maximum and minimum values of y after deletion of the area, respectively. After such processing, the CPU 21 moves the processing to step S214.
ステップS209において、CPU21は、上側の領域における曲線の弧長は下側の領域における曲線の弧長よりも長いか否かを判定する。ステップS209において、上側の領域における曲線の弧長は下側の領域における曲線の弧長よりも長いと判定されたときには、処理はステップS210に移行する。ステップS209において、上側の領域における曲線の弧長は下側の領域における曲線の弧長よりも長くない、すなわち上側の領域における曲線の弧長は下側の領域における曲線の弧長よりも短いと判定されたときには、処理はステップS211に移行する。 In step S209, the CPU 21 determines whether the arc length of the curve in the upper region is longer than the arc length of the curve in the lower region. If it is determined in step S209 that the arc length of the curve in the upper region is longer than the arc length of the curve in the lower region, the process moves to step S210. In step S209, the arc length of the curve in the upper region is not longer than the arc length of the curve in the lower region, that is, the arc length of the curve in the upper region is shorter than the arc length of the curve in the lower region. When it is determined, the process moves to step S211.
ステップS210において、CPU21は、ROIにおいて設定された下側の領域を非表示領域として削除することでROIを更新する。具体的には、CPU21は、図5に示す第2の領域R2を削除する。そして、CPU21は、y_minを領域の削除後のyの最小値に更新する。このような処理の後、CPU21は、処理をステップS212に移行させる。 In step S210, the CPU 21 updates the ROI by deleting the lower area set in the ROI as a non-display area. Specifically, the CPU 21 deletes the second region R2 shown in FIG. Then, the CPU 21 updates y_min to the minimum value of y after the area is deleted. After such processing, the CPU 21 moves the processing to step S212.
ステップS211において、CPU21は、ROIにおいて設定された上側の領域を非表示領域として削除することでROIを更新する。具体的には、CPU21は、図5に示す第1の領域R1を削除する。そして、CPU21は、y_maxを領域の削除後のyの最大値に更新する。このような処理の後、CPU21は、処理をステップS212に移行させる。但し、図5の例においては、上側の領域における曲線の弧長は下側の領域における曲線の弧長よりも長いと判定されるので、CPU21は、ROIにおいて設定された下側の領域を削除することでROIを更新する。 In step S211, the CPU 21 updates the ROI by deleting the upper area set in the ROI as a non-display area. Specifically, the CPU 21 deletes the first region R1 shown in FIG. Then, the CPU 21 updates y_max to the maximum value of y after the area is deleted. After such processing, the CPU 21 moves the processing to step S212. However, in the example of FIG. 5, the arc length of the curve in the upper region is determined to be longer than the arc length of the curve in the lower region, so the CPU 21 deletes the lower region set in the ROI. This will update the ROI.
ステップS212において、CPU21は、処理の繰り返し回数が所定回数を超えたか否かを判定する。この所定回数は、グラフ表示範囲決定処理において要求される処理時間に応じて適宜に設定される。つまり、処理時間を短くする必要があるときには、繰り返し回数が少なく設定される。ステップS212において、処理の繰り返し回数が所定回数を超えていないと判定されたときには、処理はステップS202に戻る。この場合、更新されたROIについてS202-S211の処理が行われる。ステップS212において、処理の繰り返し回数が所定回数を超えたと判定されたときには、処理はステップS213に移行する。なお、CPU21は、このステップS212を、前述のステップS201の実行後であって、ステップS203の実行前に、実行するようにしてもよい。 In step S212, the CPU 21 determines whether the number of times the process is repeated exceeds a predetermined number of times. This predetermined number of times is appropriately set depending on the processing time required in the graph display range determination process. That is, when it is necessary to shorten the processing time, the number of repetitions is set to be small. If it is determined in step S212 that the number of times the process is repeated does not exceed the predetermined number of times, the process returns to step S202. In this case, the processes of S202-S211 are performed for the updated ROI. If it is determined in step S212 that the number of times the process is repeated exceeds the predetermined number, the process moves to step S213. Note that the CPU 21 may execute step S212 after executing step S201 described above and before executing step S203.
ステップS213において、CPU21は、現在のROIに従って表示範囲を決定する。具体的には、CPU21は、現在の(y_max-y_min)/2がグラフのy軸の中心となるように表示範囲を決定する。その後、CPU21は、図4の処理を終了させる。ここで、x軸とy軸との目盛り増分値の比は、nである。したがって、CPU21は、x軸とy軸の目盛りの比を1:nとして表示装置26に表示できるだけの表示範囲をROIから抽出する。 In step S213, the CPU 21 determines the display range according to the current ROI. Specifically, the CPU 21 determines the display range so that the current (y_max-y_min)/2 is the center of the y-axis of the graph. After that, the CPU 21 ends the process of FIG. Here, the ratio of the scale increment values between the x-axis and the y-axis is n. Therefore, the CPU 21 extracts from the ROI a display range that can be displayed on the display device 26 with the ratio of the scales of the x-axis and y-axis being 1:n.
以上説明したように第1の実施形態によれば、グラフにおける弧長の長い連続した部分を含む領域が優先して表示されるようにグラフの表示範囲が決定される。弧長の長い部分は、グラフにおいて大きく曲がっている部分である。グラフにおいて大きく曲がっている部分は、傾きが大きく変化している部分である。また、大きく曲がっている部分は、極点又は変曲点であることもある。このように、グラフにおいて大きく曲がっているって部分は他の部分に比べてユーザの関心が高いと考えられる。したがって、グラフにおける弧長の長い部分を含む領域が優先的に表示されるようにグラフの表示範囲が決定されることは、有用である。なお、1次関数の場合には、削除候補区間毎のグラフの弧長は一定である。この場合には、上側の領域と下側の領域とは、半分ずつ削除される。これにより、1次関数であっても適切にグラフが表示される。 As described above, according to the first embodiment, the display range of the graph is determined so that an area including a continuous portion of the graph with a long arc length is displayed with priority. A portion with a long arc length is a portion of the graph that is significantly curved. In the graph, a large curved part is a part where the slope changes significantly. Further, the greatly curved portion may be a pole or an inflection point. In this way, it is thought that users are more interested in parts of the graph that are significantly curved than other parts. Therefore, it is useful to determine the display range of the graph so that the area including the long arc length portion of the graph is preferentially displayed. Note that in the case of a linear function, the arc length of the graph for each deletion candidate section is constant. In this case, half of the upper region and half of the lower region are deleted. As a result, even if it is a linear function, the graph can be displayed appropriately.
また、第1の実施形態では、極点又は変曲点を実際に探索する必要がないので、微分演算等の複雑な演算は不要である。このため、CPU21等による処理の負荷は低減される。 Furthermore, in the first embodiment, there is no need to actually search for a pole or an inflection point, so complex calculations such as differential calculations are not necessary. Therefore, the processing load on the CPU 21 and the like is reduced.
また、第1の実施形態では、上側の領域と下側の領域の削除によってROIが狭くなるにつれて削除候補区間の幅dが短くなる。また、第1の実施形態では、ROIにおける上下方向(y軸方向)に沿った上端と下端に、上側の削除候補区間yuと下側の削除候補区間ylを設定したが、ROIにおける左右方向(x軸方向)に沿った左端と右端に、左側の削除候補区間と右側の削除候補区間を設定してもよい。 Furthermore, in the first embodiment, as the ROI becomes narrower due to the deletion of the upper region and the lower region, the width d of the deletion candidate section becomes shorter. In addition, in the first embodiment, the upper deletion candidate section yu and the lower deletion candidate section yl are set at the upper and lower ends of the ROI along the vertical direction (y-axis direction). A left deletion candidate section and a right deletion candidate section may be set at the left end and right end along the x-axis direction.
ここで、図4の例では、説明を簡単にするために、関数f(x)についての点群データだけが端末20に入力されたとしている。これに対し、関数g(x)についての点群データも端末20に入力された場合にも基本的には図4の処理は適用される。この場合、図4のステップS207及びS209において、上側の領域に含まれる関数f(x)のグラフと関数g(x)のグラフの双方の弧長の和と、下側の領域に含まれる関数f(x)のグラフと関数g(x)のグラフの双方の弧長の和とが比較される。 Here, in the example of FIG. 4, in order to simplify the explanation, it is assumed that only point cloud data regarding the function f(x) is input to the terminal 20. On the other hand, the process of FIG. 4 is basically applied even when point cloud data regarding the function g(x) is also input to the terminal 20. In this case, in steps S207 and S209 of FIG. 4, the sum of the arc lengths of both the graph of the function f(x) and the graph of the function g(x) included in the upper region and the function The sum of the arc lengths of both the graph of f(x) and the graph of the function g(x) are compared.
[第1の実施形態の変形例]
以下、第1の実施形態の変形例を説明する。第1の実施形態では、グラフの弧長の長い部分を含む領域が優先して表示されるようにグラフの表示範囲が決定される。前述したように、グラフの弧長は、グラフの各点を結ぶ直線の距離の総和によって算出される。したがって、グラフの弧長の長さは、グラフの点の数と正の相関を有する。そこで、以下では、グラフの弧長の長さではなく、グラフの点の数を用いた場合の変形例を説明する。図6は、第1の実施形態の変形例におけるグラフ表示範囲決定処理について示すフローチャートである。以下では、関数f(x)及び関数g(x)の双方の点群データが端末20に入力されたとする。
[Modification of the first embodiment]
Hereinafter, a modification of the first embodiment will be described. In the first embodiment, the display range of the graph is determined so that the area including the long arc length portion of the graph is displayed with priority. As mentioned above, the arc length of a graph is calculated by the sum of the distances of straight lines connecting each point of the graph. Therefore, the length of the arc length of the graph has a positive correlation with the number of points on the graph. Therefore, a modification example in which the number of points on the graph is used instead of the arc length of the graph will be described below. FIG. 6 is a flowchart showing graph display range determination processing in a modification of the first embodiment. In the following, it is assumed that point cloud data of both the function f(x) and the function g(x) are input to the terminal 20.
ステップS301において、CPU21は、関数f(x)の点群データと関数g(x)の点群データとをすべて同じ配列にしてyの値の大きい順にソートする。例えば、関数f(x)の点群データが5点のデータであり、関数g(x)の点群データも5点のデータであるときに、CPU21は、これらの点群データを区別せずに10点のデータとして、yの値の小さい順にソートする。ここで、配列のそれぞれの要素の要素番号をi(i=0、1、…)とする。なお、関数f(x)の点群データのみが入力されているときには、CPU21は、関数f(x)の点群データだけをソートする。 In step S301, the CPU 21 arranges all the point cloud data of the function f(x) and the point cloud data of the function g(x) in the same array, and sorts them in descending order of the value of y. For example, when the point cloud data of the function f(x) is 5-point data and the point cloud data of the function g(x) is also 5-point data, the CPU 21 does not distinguish between these point cloud data. Sort the 10 points of data in descending order of y value. Here, the element number of each element of the array is assumed to be i (i=0, 1, . . . ). Note that when only the point group data of the function f(x) is input, the CPU 21 sorts only the point group data of the function f(x).
ステップS302において、CPU21は、座標面上に初回の関心領域(ROI)を設定する。第1の実施形態と同様に、ROIのx軸(横軸)方向の範囲rxは、x_min≦rx≦x_maxであり、y軸(縦軸)方向の範囲ryは、y_min≦ry≦y_maxである。ただし、変形例では、y_minは、点群データにおける1番前のyの要素の値である。初回では、y_minは、要素番号i=0のyの要素の値である。また、変形例では、y_maxは、点群データにおける1番後ろのyの要素の値である。さらに、CPU21は、要素番号i_totalを設定する。要素番号i_totalは、関数f(x)と関数g(x)に含まれる点のyの要素のうちの最大のyの要素の番号iである。したがって、初回のy_maxは、要素番号i_totalのyの要素の値である。 In step S302, the CPU 21 sets an initial region of interest (ROI) on the coordinate plane. Similar to the first embodiment, the range rx in the x-axis (horizontal axis) direction of the ROI is x_min≦rx≦x_max, and the range ry in the y-axis (vertical axis) direction is y_min≦ry≦y_max. . However, in the modified example, y_min is the value of the first y element in the point cloud data. At the first time, y_min is the value of the element of y with element number i=0. In the modified example, y_max is the value of the last y element in the point cloud data. Furthermore, the CPU 21 sets an element number i_total. The element number i_total is the number i of the largest y element among the y elements of the point included in the function f(x) and the function g(x). Therefore, the initial y_max is the value of the y element of element number i_total.
ステップS303において、CPU21は、(y_max-y_min)がn×(x_max-x_min)よりも小さいか否かを判定する。ステップS302において、(y_max-y_min)がn×(x_max-x_min)よりも小さくないと判定されたときには、処理はステップS303に移行する。ステップS302において、(y_max-y_min)がn×(x_max-x_min)よりも小さいと判定されたときには、処理はステップS315に移行する。 In step S303, the CPU 21 determines whether (y_max−y_min) is smaller than n×(x_max−x_min). If it is determined in step S302 that (y_max-y_min) is not smaller than n×(x_max-x_min), the process moves to step S303. If it is determined in step S302 that (y_max−y_min) is smaller than n×(x_max−x_min), the process moves to step S315.
ステップS304において、CPU21は、削除候補区間の幅dを算出する。幅dは、前述の(式1)によって算出されてよい。 In step S304, the CPU 21 calculates the width d of the deletion candidate section. The width d may be calculated using the above-mentioned (Equation 1).
ステップS305において、CPU21は、上側の削除候補区間yu、下側の削除候補区間ylを設定する。yu、ylは、(式2)に従って設定される区間である。 In step S305, the CPU 21 sets an upper deletion candidate section yu and a lower deletion candidate section yl. yu and yl are intervals set according to (Equation 2).
ステップS306において、CPU21は、yの要素のうち、(y_max-d)>yを満たす最大のyの要素を見つける。そして、CPU21は、この要素の番号iをi_maxとして例えばRAM23に記憶させる。i_maxのyの要素は、上側の領域(第1の領域)に含まれない最大のyの要素である。また、CPU21は、yの要素のうち、(y_min+d)<yを満たす最小のyの要素を見つける。そして、CPU21は、この要素の番号iをi_minとして例えばRAM23に記憶させる。i_minのyの要素は、下側の領域(第2の領域)に含まれない最小のyの要素である。 In step S306, the CPU 21 finds the largest element of y that satisfies (y_max-d)>y among the elements of y. Then, the CPU 21 stores the number i of this element as i_max in the RAM 23, for example. The y element of i_max is the largest y element not included in the upper region (first region). Further, the CPU 21 finds the smallest element of y that satisfies (y_min+d)<y among the elements of y. Then, the CPU 21 stores the number i of this element as i_min in the RAM 23, for example. The y element of i_min is the smallest y element that is not included in the lower region (second region).
ステップS307において、CPU21は、(i_total-i_max)がi_minよりも大きいか否かを判定する。ステップS307において、(i_total-i_max)がi_minよりも大きいと判定されたときには、処理はステップS308に移行する。ステップS307において、(i_total-i_max)がi_minよりも大きくないと判定されたときには、処理はステップS309に移行する。 In step S307, the CPU 21 determines whether (i_total-i_max) is greater than i_min. If it is determined in step S307 that (i_total-i_max) is greater than i_min, the process moves to step S308. If it is determined in step S307 that (i_total−i_max) is not greater than i_min, the process moves to step S309.
ステップS308において、CPU21は、点群データの配列をi_minからi_totalまでに縮める。つまり、CPU21は、下側の領域に含まれる配列を削除する。また、CPU21は、要素番号i=0のyの要素の値をi_minの値に更新する。このような処理の後、CPU21は、処理をステップS312に移行させる。 In step S308, the CPU 21 reduces the array of point cloud data from i_min to i_total. That is, the CPU 21 deletes the array included in the lower area. Further, the CPU 21 updates the value of the element y with element number i=0 to the value i_min. After such processing, the CPU 21 moves the processing to step S312.
ステップS309において、CPU21は、(i_total-i_max)がi_minよりも小さいか否かを判定する。ステップS309において、(i_total-i_max)がi_minよりも小さいと判定されたときには、処理はステップS310に移行する。ステップS309において、(i_total-i_max)がi_minよりも小さくない、すなわち(i_total-i_max)がi_minと同じであると判定されたときには、処理はステップS311に移行する。 In step S309, the CPU 21 determines whether (i_total-i_max) is smaller than i_min. If it is determined in step S309 that (i_total−i_max) is smaller than i_min, the process moves to step S310. If it is determined in step S309 that (i_total-i_max) is not smaller than i_min, that is, (i_total-i_max) is the same as i_min, the process moves to step S311.
ステップS310において、CPU21は、点群データの配列を0からi_maxまでに縮める。つまり、CPU21は、上側の領域に含まれる配列を削除する。また、CPU21は、要素番号i=i_totalのyの要素の値をi_maxの値に更新する。このような処理の後、CPU21は、処理をステップS312に移行させる。 In step S310, the CPU 21 reduces the array of point cloud data from 0 to i_max. That is, the CPU 21 deletes the array included in the upper area. Further, the CPU 21 updates the value of the y element of element number i=i_total to the value of i_max. After such processing, the CPU 21 moves the processing to step S312.
ステップS311において、CPU21は、点群データの配列をi_min/2からi_max/2までに縮める。つまり、CPU21は、上側の領域の上から半分の領域に含まれる配列を削除する。また、CPU21は、下側の領域の下から半分の領域に含まれる配列を削除する。また、CPU21は、要素番号i=0のyの要素の値をi_minの値に更新する。また、CPU21は、要素番号i=i_totalのyの要素の値をi_maxの値に更新する。このような処理の後、CPU21は、処理をステップS312に移行させる。 In step S311, the CPU 21 reduces the array of point cloud data from i_min/2 to i_max/2. That is, the CPU 21 deletes the array included in the top half of the upper area. Further, the CPU 21 deletes the array included in the lower half of the lower region. Further, the CPU 21 updates the value of the element y with element number i=0 to the value i_min. Further, the CPU 21 updates the value of the y element of element number i=i_total to the value of i_max. After such processing, the CPU 21 moves the processing to step S312.
ステップS312において、CPU21は、処理の繰り返し回数が所定回数を超えたか否かを判定する。この所定回数は、グラフ表示範囲決定処理において要求される処理時間に応じて適宜に設定される。ステップS312において、処理の繰り返し回数が所定回数を超えていないと判定されたときには、処理はステップS303に戻る。この場合、更新されたROIについてS303-S311の処理が行われる。ステップS312において、処理の繰り返し回数が所定回数を超えたと判定されたときには、処理はステップS313に移行する。 In step S312, the CPU 21 determines whether the number of times the process is repeated exceeds a predetermined number of times. This predetermined number of times is appropriately set depending on the processing time required in the graph display range determination process. If it is determined in step S312 that the number of times the process is repeated does not exceed the predetermined number of times, the process returns to step S303. In this case, the processes of S303-S311 are performed for the updated ROI. If it is determined in step S312 that the number of repetitions of the process exceeds the predetermined number of times, the process moves to step S313.
ステップS313において、CPU21は、現在のROIに従って表示範囲を決定する。具体的には、CPU21は、現在の(y_max-y_min)/2がグラフのy軸の中心となるように表示範囲を決定する。その後、CPU21は、図6の処理を終了させる。ここで、x軸とy軸との目盛りの増分値の比は、nである。したがって、CPU21は、x軸とy軸の目盛りの比を1:nとして表示装置26に表示できるだけの表示範囲をROIから抽出する。 In step S313, the CPU 21 determines the display range according to the current ROI. Specifically, the CPU 21 determines the display range so that the current (y_max-y_min)/2 is the center of the y-axis of the graph. After that, the CPU 21 ends the process of FIG. Here, the ratio of the increment value of the scale of the x-axis and the y-axis is n. Therefore, the CPU 21 extracts from the ROI a display range that can be displayed on the display device 26 with the ratio of the scales of the x-axis and y-axis being 1:n.
以上説明したように第1の実施形態の変形例によれば、弧長の長さが点の数に置き換えられて処理が行われる。この変形例では、第1の実施形態と同様の効果が得られるのに加え、2点間の距離の演算が不要である。 As explained above, according to the modification of the first embodiment, the arc length is replaced with the number of points and processing is performed. In this modified example, in addition to obtaining the same effects as the first embodiment, there is no need to calculate the distance between two points.
[第2の実施形態]
以下、第2の実施形態を説明する。図7は、第2の実施形態におけるグラフ表示範囲決定処理について示すフローチャートである。ここで、図7の処理は、nが固定値ではなく、可変であるときに適用される処理である。また、グラフ表示範囲決定処理以外の処理は第1の実施形態と同様である。したがって、グラフ表示範囲決定処理以外の処理は説明を省略する。
[Second embodiment]
The second embodiment will be described below. FIG. 7 is a flowchart showing graph display range determination processing in the second embodiment. Here, the process in FIG. 7 is a process that is applied when n is not a fixed value but is variable. Further, the processing other than the graph display range determination processing is the same as that of the first embodiment. Therefore, description of processes other than the graph display range determination process will be omitted.
ステップS401において、CPU21は、x軸方向に領域をm等分する。この領域は、例えばx軸方向の表示範囲である。x軸方向の表示範囲は、表示装置26に一度に表示できるx軸方向の範囲である。また、mは、グラフ表示範囲決定処理において要求される処理時間に応じて適宜に設定される。つまり、処理時間を短くする必要があるときには、mは少なく設定される。 In step S401, the CPU 21 divides the area into m equal parts in the x-axis direction. This area is, for example, a display range in the x-axis direction. The display range in the x-axis direction is the range in the x-axis direction that can be displayed on the display device 26 at one time. Furthermore, m is appropriately set depending on the processing time required in the graph display range determination process. That is, when it is necessary to shorten the processing time, m is set to a smaller value.
ステップS402において、CPU21は、m等分することによって得られた領域毎に、弧長が最も長い曲線を含む正方領域を選択する。この正方領域は、m等分されたx軸方向の表示範囲を一辺とする正方領域である。図8は、第2の実施形態におけるグラフ表示範囲決定処理を説明するための図である。ここで、図8では、mは4の例が示されている。図8の正方領域SR1、SR2、SR3、SR4が領域毎の正方領域である。図8では、正方領域SR1、SR2、SR3、SR4は、図示の都合上、横長の矩形領域としてそれぞれ表されている。CPU21は、これらの正方領域を縦軸方向の正方向又は負方向にずらしながら、弧長を順次に算出し、最長の弧長の曲線を含む正方領域を見つける。図8では、正方領域SR1、SR2、SR3、SR4は、それぞれの領域における、最長の弧長の曲線を含む正方領域である。なお、弧長は、前述した(式3)によって算出されてよい。そして、CPU21は、最長の弧長の曲線を含む正方領域の最大のyの要素の値ymax、最小のyの要素の値ymin、この正方領域に含まれる曲線の弧長sを例えばRAM23に記憶させる。 In step S402, the CPU 21 selects a square area including the curve with the longest arc length for each area obtained by dividing the area into m equal parts. This square area is a square area whose one side is the display range in the x-axis direction divided into m equal parts. FIG. 8 is a diagram for explaining graph display range determination processing in the second embodiment. Here, in FIG. 8, an example where m is 4 is shown. Square regions SR1, SR2, SR3, and SR4 in FIG. 8 are square regions for each region. In FIG. 8, the square regions SR1, SR2, SR3, and SR4 are each shown as a horizontally long rectangular region for convenience of illustration. The CPU 21 sequentially calculates the arc lengths while shifting these square regions in the positive or negative direction of the vertical axis, and finds a square region that includes the curve with the longest arc length. In FIG. 8, square regions SR1, SR2, SR3, and SR4 are square regions including curves with the longest arc lengths in their respective regions. Note that the arc length may be calculated using the above-mentioned (Equation 3). Then, the CPU 21 stores in the RAM 23, for example, the value ymax of the maximum y element of the square area including the curve with the longest arc length, the value ymin of the minimum y element, and the arc length s of the curve included in this square area. let
ステップS403において、CPU21は、選択した正方領域の中で、最長の弧長の曲線を含む正方領域と、2番目の弧長の曲線を含む正方領域とを選択する。図8では、正方領域SR2、SR4が、それぞれ、最長の弧長の曲線を含む正方領域、2番目の弧長の曲線を含む正方領域の領域である。 In step S403, the CPU 21 selects a square region including the curve with the longest arc length and a square region including the curve with the second arc length from among the selected square regions. In FIG. 8, square regions SR2 and SR4 are a square region including a curve with the longest arc length and a square region including a curve with the second arc length, respectively.
ステップS404において、CPU21は、選択した2つの正方領域を内包する最小の矩形領域を、表示範囲として決定する。すなわち、CPU21は、選択した2つの正方領域の2つのymaxのうちの大きいほうのymaxをy軸方向の表示範囲の上端に、選択した2つの正方領域の2つのyminのうちの小さいほうのyminをy軸方向の表示範囲の下端に決定する。その後、CPU21は、図7の処理を終了させる。図8では、正方領域SR2のymaxがy軸方向の表示範囲の上端に、正方領域SR4のyminがy軸方向の表示範囲の下端である。 In step S404, the CPU 21 determines the smallest rectangular area that includes the two selected square areas as the display range. That is, the CPU 21 sets the larger ymax of the two ymax of the two selected square areas to the upper end of the display range in the y-axis direction, and sets the smaller ymin of the two ymin of the two selected square areas to the upper end of the display range in the y-axis direction. is determined to be the lower end of the display range in the y-axis direction. After that, the CPU 21 ends the process of FIG. In FIG. 8, ymax of the square region SR2 is the upper end of the display range in the y-axis direction, and ymin of the square region SR4 is the lower end of the display range in the y-axis direction.
以上説明したように第2の実施形態では、m等分された分割領域の中で弧長の長い曲線を含む正方領域が選択され、選択された正方領域の中でより弧長の長い曲線を含む正方領域が選択される。そして、最終的に選択された正方領域に従ってy軸方向の表示範囲が決定される。このような第2の実施形態では、横軸方向に分割された領域毎に弧長の比較がされるので、第1の実施形態及びその変形例に比べて、より弧長の長い部分が表示範囲として決定されやすい。したがって、第2の実施形態では、ユーザの関心が高いと考えられるグラフの部分が表示される可能性を第1の実施形態及びその変形例に比べて高めることができる。 As explained above, in the second embodiment, a square region including a curve with a long arc length is selected from among divided regions divided into m equal parts, and a curve with a longer arc length in the selected square region is selected. The containing square area is selected. Then, the display range in the y-axis direction is determined according to the finally selected square area. In the second embodiment, the arc lengths are compared for each area divided in the horizontal axis direction, so a portion with a longer arc length is displayed compared to the first embodiment and its variations. Easily determined as a range. Therefore, in the second embodiment, the possibility that a portion of the graph that is considered to be of high interest to the user will be displayed can be increased compared to the first embodiment and its modified example.
ここで、第2の実施形態では、m等分した領域内で弧長が最も長い曲線を含む正方領域が選択される。しかしながら、選択される領域は必ずしも正方領域でなくてもよい。つまり、選択される領域は、矩形領域であってよい。ただし、それぞれの矩形領域は、同じ形状の領域である。 Here, in the second embodiment, a square area including the curve with the longest arc length within the area divided into m equal parts is selected. However, the selected area does not necessarily have to be a square area. That is, the selected area may be a rectangular area. However, each rectangular area has the same shape.
[その他の変形例]
以下、その他の変形例を説明する。前述した実施形態では、基本的なグラフ表示の処理は端末20において行われる。これに対し、前述した端末20の処理のすべてがサーバ10において行われてもよい。この場合、端末20は、サーバ10における処理結果を受けてグラフを表示することだけを行う。
[Other variations]
Other modifications will be described below. In the embodiment described above, basic graph display processing is performed at the terminal 20. On the other hand, all of the processing of the terminal 20 described above may be performed in the server 10. In this case, the terminal 20 only receives the processing results from the server 10 and displays the graph.
また、前述した実施形態では、基本的には、グラフの弧長が最も長くなるように表示範囲が決定される。これに対し、グラフの弧長は必ずしも最も長くなる必要はない。例えば、グラフの弧長が2番目に長くなる、3番目に長くなるといった各種の変形がされてよい。つまり、実施形態においては、グラフの弧長が優先されるように表示範囲が決定されればよい。 Furthermore, in the embodiment described above, the display range is basically determined so that the arc length of the graph is the longest. On the other hand, the arc length of the graph does not necessarily have to be the longest. For example, various modifications may be made such that the arc length of the graph becomes the second longest or the third longest. That is, in the embodiment, the display range may be determined so that priority is given to the arc length of the graph.
また、前述した実施形態では、基本的には、グラフ画像を表示する場合において、グラフの弧長が最も長くなるように表示範囲が決定される。これに対し、グラフ画像に限らず、線や点によって描画された表示対象画像についても、線の長さがより長く、又は、点の数がより多い領域を表示候補領域として設定してよい。これにより、表示対象画像のうちの線や点がより多く描画されている領域を、閲覧者にとってより興味が大きい部分として抽出し、ディスプレイへ表示することができる。 Furthermore, in the embodiment described above, when displaying a graph image, the display range is basically determined so that the arc length of the graph is the longest. On the other hand, not only graph images but also display target images drawn using lines or points may be set to have longer lines or a larger number of points as display candidate areas. As a result, a region of the display target image in which more lines or points are drawn can be extracted as a region of greater interest to the viewer and displayed on the display.
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。 Note that the present invention is not limited to the above-described embodiments, and various modifications can be made without departing from the spirit of the invention at the implementation stage. Moreover, each embodiment may be implemented by appropriately combining them as much as possible, and in that case, the combined effects can be obtained. Further, the embodiments described above include inventions at various stages, and various inventions can be extracted by appropriately combining the plurality of disclosed constituent elements. For example, even if some constituent features are deleted from all the constituent features shown in the embodiments, the problem described in the column of problems to be solved by the invention can be solved, and the effect described in the column of effects of the invention can be achieved. If this is obtained, a configuration in which this component is deleted can be extracted as an invention.
以下に、本出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1] コンピュータに、
表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、
を実行させるための画像表示領域設定プログラム。
[2] コンピュータに、
前記表示対象画像の両端のうち一方の端部を含む領域を前記第1の領域とし、他方の端部を含む領域を前記第2の領域として、前記比較処理を実行させる、
ための[1]に記載の画像表示領域設定プログラム。
[3] コンピュータに、
前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理を実行させる、
ための[1]又は[2]に記載の画像表示領域設定プログラム。
[4] コンピュータに、さらに、
前記表示候補領域の縦横比が、比に関する条件を満たしているか否かを判別する比判別処理を実行させ、
前記比判別処理において、前記表示候補領域の縦横比が前記比に関する条件を満たしていると判別したか否かに応じて、前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理及び前記表示候補領域設定処理を改めて実行させるか、又は、前記比較処理及び前記表示候補領域設定処理を改めて実行させないか、を切り替える、
ための[1]又は[2]に記載の画像表示領域設定プログラム。
[5] コンピュータに、さらに、
前記比較処理を予め定めた回数実行したか否かを判別する回数判別処理を実行させ、
前記回数判別処理において、前記比較処理を予め定めた回数実行したと判別したか否かに応じて、前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理及び前記表示候補領域設定処理を改めて実行させるか、又は、前記比較処理及び前記表示候補領域設定処理を改めて実行させないか、を切り替える、
ための[1]又は[2]に記載の画像表示領域設定プログラム。
[6] コンピュータに、
前記表示候補領域の両端のうち、一方の端部を含む領域を前記第1の領域とし、他方の端部を含む領域を前記第2の領域として、前記比較処理を実行させる、
ための[3]乃至[5]の何れか一項に記載の画像表示領域設定プログラム。
[7] コンピュータに、さらに、
前記表示対象画像又は前記表示候補領域の所定方向に沿う幅が短いほど、前記第1の領域及び前記第2の領域の前記所定方向に沿う幅が短くなるように、前記第1の領域及び前記第2の領域を設定して、前記比較処理を実行させる、
ための[3]乃至[6]の何れか一項に記載の画像表示領域設定プログラム。
[8] コンピュータに、
前記表示候補領域設定処理において、
前記第1の領域及び前記第2の領域のうち、前記線の長さが短いか或いは前記点の数が少ないとされた一方の領域を、前記非表示領域として設定させるか、又は、
前記第1の領域及び前記第2の領域の各領域の前記線の長さ或いは前記点の数が互いに等しい場合に、前記第1の領域の半分の領域と、前記第2の領域の半分の領域とを、前記非表示領域として設定させる、
ための[1]乃至[7]の何れか一項に記載の画像表示領域設定プログラム。
[9] コンピュータに、
関数に応じたグラフの描画範囲に係わる情報に基づくグラフを含むグラフ画像を前記表示対象画像とし、かつ、前記第1の領域及び前記第2の領域の各領域内の前記グラフの弧長を前記線の長さとして、或いは、前記第1の領域及び前記第2の領域の各領域内の前記グラフに含まれる点の数を前記点の数として、前記比較処理を実行させる、
ための[1]乃至[8]の何れか一項に記載の画像表示領域設定プログラム。
[10] コンピュータに、
前記比較処理において、前記各領域内に含まれる複数の点のうちの互いに隣接する二点を結ぶ直線の長さの総和を、前記線の長さの前記グラフの弧長として取得させる、
ための[9]に記載の画像表示領域設定プログラム。
[11] コンピュータに、
前記関数に応じたグラフの描画範囲に係わる情報としての、前記関数の情報と、前記関数の定義域及び値域の少なくとも何れかの情報とのうちの、前記値域の上限値を含むように前記第1の領域を設定し、前記値域の下限値を含むように前記第2の領域を設定して、前記比較処理を実行させる、
ための[9]又は[10]に記載の画像表示領域設定プログラム。
[12] コンピュータに、さらに、
前記関数に応じたグラフの描画範囲に係わる情報を取得する取得処理を実行させる、
ための[9]乃至[11]の何れか一項に記載の画像表示領域設定プログラム。
[13] コンピュータに、さらに、
前記表示対象画像を分割してできる複数の領域を設定する分割領域設定処理を実行させ、
前記分割領域設定処理において設定した複数の領域の各領域について、前記比較処理、及び、前記表示候補領域設定処理を実行させることで、複数の前記表示候補領域を設定し、
表示候補領域設定処理において、設定された前記複数の表示候補領域のうち何れか2つの表示候補領域を内包する矩形領域を、前記表示装置に表示させるための領域として設定させる、
ための[1]乃至[12]の何れか一項に記載の画像表示領域設定プログラム。
[14] コンピュータに、さらに、
設定された前記複数の表示候補領域のうち、内包する前記線の長さが最も長いか又は内包する前記点の数が最も多い第1の表示候補領域と、内包する前記線の長さが2番目に長いか又は内包する前記点の数が2番目に多い第2の表示候補領域とを内包する矩形領域を、前記表示装置に表示させるための領域として設定させる、
ための[13]に記載の画像表示領域設定プログラム。
[15] コンピュータに、さらに、
前記表示対象画像のうちの、設定された前記表示候補領域を、前記表示装置に表示させる表示処理を実行させる、
ための[1]乃至[14]の何れか一項に記載の画像表示領域設定プログラム。
[16] 表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
をサーバのコンピュータに実行させるための画像表示領域設定プログラムを記憶するストレージを具備するサーバ。
[17] 表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
を実行するプロセッサ、
を具備する画像表示領域設定装置。
[18] 画像表示領域設定装置のプロセッサによって実行される方法であって、
表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
を具備する画像表示領域設定方法。
[19] サーバとクライアント端末とを備える画像表示システムであって、
表示対象データを取得する取得処理と、
取得した前記表示対象データに対応した表示対象画像の一部の領域である第1の領域と、前記表示対象画像の別の一部の領域である第2の領域とについて、各領域に含まれる線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、
前記表示対象画像のうちの、設定された前記表示候補領域を、表示装置に表示させる表示処理と、
を実行する画像表示システム。
Below, the invention described in the original claims of this application will be added.
[1] On the computer,
For a first area that is a part of the display target image and a second area that is another part of the display target image, calculate the length of the line or the number of points included in each area. Comparison processing to compare,
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
Image display area setting program to run.
[2] On the computer,
performing the comparison process with a region including one end of the display target image as the first region and a region including the other end as the second region;
The image display area setting program described in [1] for.
[3] On the computer,
newly setting a part of the display candidate areas set in the display candidate area setting process as the first area, and newly setting another part of the area as the second area; performing the comparison process on the newly set first area and the second area;
The image display area setting program according to [1] or [2].
[4] In addition to the computer,
executing a ratio determination process for determining whether the aspect ratio of the display candidate area satisfies a ratio-related condition;
In the ratio determination process, depending on whether it is determined that the aspect ratio of the display candidate area satisfies the conditions regarding the ratio, a portion of the display candidate area set in the display candidate area setting process. A region is newly set as the first region, another part of the region is newly set as the second region, and regarding the newly set first region and second region, switching whether to execute the comparison process and the display candidate area setting process anew, or to not execute the comparison process and the display candidate area setting process anew;
The image display area setting program according to [1] or [2].
[5] In addition to the computer,
executing a number of times determination process for determining whether or not the comparison process has been performed a predetermined number of times;
In the number of times determination process, depending on whether or not it is determined that the comparison process has been performed a predetermined number of times, some areas of the display candidate areas set in the display candidate area setting process are set in the first , and another part of the area is newly set as the second area, and the comparison process and the display are performed on the newly set first area and the second area. switching whether to execute the candidate area setting process again or not to execute the comparison process and the display candidate area setting process again;
The image display area setting program according to [1] or [2].
[6] To the computer,
performing the comparison process with an area including one end of both ends of the display candidate area as the first area and an area including the other end as the second area;
The image display area setting program according to any one of [3] to [5].
[7] In addition to the computer,
The first area and the second area are arranged such that the shorter the width of the display target image or the display candidate area along the predetermined direction, the shorter the width of the first area and the second area along the predetermined direction. setting a second area and executing the comparison process;
The image display area setting program according to any one of [3] to [6].
[8] To the computer,
In the display candidate area setting process,
Of the first area and the second area, one area where the length of the line is short or the number of points is small is set as the non-display area, or
When the length of the line or the number of points in each of the first region and the second region are equal to each other, half the first region and half the second region setting the area as the non-display area;
The image display area setting program according to any one of [1] to [7].
[9] To the computer,
The display target image is a graph image including a graph based on information related to the drawing range of the graph according to the function, and the arc length of the graph in each area of the first area and the second area is performing the comparison process using the length of the line or the number of points included in the graph in each of the first area and the second area as the number of points;
The image display area setting program according to any one of [1] to [8].
[10] To the computer,
In the comparison process, the sum of the lengths of straight lines connecting two mutually adjacent points among the plurality of points included in each region is obtained as the arc length of the graph of the length of the lines;
The image display area setting program described in [9] for.
[11] To the computer,
The information on the function and the information on at least one of the definition range and value range of the function as information related to the drawing range of the graph according to the function. 1 area, and setting the second area to include the lower limit value of the range, and executing the comparison process;
The image display area setting program according to [9] or [10].
[12] In addition to the computer,
executing an acquisition process for acquiring information related to a drawing range of a graph according to the function;
The image display area setting program according to any one of [9] to [11].
[13] In addition to the computer,
Executing a split area setting process for setting a plurality of areas created by dividing the display target image,
Setting a plurality of display candidate areas by executing the comparison process and the display candidate area setting process for each of the plurality of areas set in the divided area setting process;
In the display candidate area setting process, a rectangular area including any two display candidate areas among the plurality of set display candidate areas is set as an area to be displayed on the display device.
The image display area setting program according to any one of [1] to [12].
[14] To the computer, furthermore,
Among the plurality of set display candidate areas, a first display candidate area that contains the longest line or contains the largest number of points, and a first display candidate area that contains the line that has a length of 2 A rectangular area containing the second display candidate area that is the second longest or contains the second largest number of points is set as the area to be displayed on the display device.
The image display area setting program described in [13] for.
[15] In addition to the computer,
performing a display process of displaying the set display candidate area of the display target image on the display device;
The image display area setting program according to any one of [1] to [14].
[16] Regarding a first area that is a partial area of the display target image and a second area that is another partial area of the display target image, the length of the line or the point included in each area A comparison process that compares the number of
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
A server equipped with a storage that stores an image display area setting program for causing a computer of the server to execute the image display area setting program.
[17] Regarding a first area that is a partial area of the display target image and a second area that is another partial area of the display target image, the length of the line or the point included in each area A comparison process that compares the number of
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
a processor that runs
An image display area setting device comprising:
[18] A method executed by a processor of an image display area setting device, comprising:
For a first area that is a part of the display target image and a second area that is another part of the display target image, calculate the length of the line or the number of points included in each area. Comparison processing to compare,
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
An image display area setting method comprising:
[19] An image display system comprising a server and a client terminal,
Acquisition processing for acquiring display target data;
A first area that is a partial area of the display target image corresponding to the acquired display target data and a second area that is another partial area of the display target image are included in each area. a comparison process that compares the length of the line or the number of points;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
a display process of displaying the set display candidate area of the display target image on a display device;
An image display system that performs.
1 システム、10 サーバ、11 プロセッサ、12 ROM、13 RAM、14 ストレージ、15 通信装置、19 システムバス、20 端末、21 CPU、22 ROM、23 RAM、24 ストレージ、25 入力装置、26 表示装置、27 通信装置、29 システムバス、30 ネットワーク。 1 system, 10 server, 11 processor, 12 ROM, 13 RAM, 14 storage, 15 communication device, 19 system bus, 20 terminal, 21 CPU, 22 ROM, 23 RAM, 24 storage, 25 input device, 26 display device, 27 Communication equipment, 29 System bus, 30 Network.
Claims (19)
関数グラフの画像の第1端を含む領域である第1の領域と、前記関数グラフの画像の前記第1端と対向する第2端を含む領域である第2の領域とについて、各領域に含まれる前記関数グラフの線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、
を実行させるための画像表示領域設定プログラム。 to the computer,
For each region, a first region is a region including a first end of the image of the function graph, and a second region is a region including a second end opposite to the first end of the image of the function graph . a comparison process of comparing the lengths of lines or the number of points of the included function graphs ;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
Image display area setting program to run.
ことを特徴とする請求項1に記載の画像表示領域設定プログラム。 the width of the first region along the predetermined direction and the width of the second region along the predetermined direction are equal;
The image display area setting program according to claim 1 .
前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理を実行させる、
ための請求項1又は請求項2に記載の画像表示領域設定プログラム。 to the computer,
newly setting a part of the display candidate areas set in the display candidate area setting process as the first area, and newly setting another part of the area as the second area; performing the comparison process on the newly set first area and the second area;
The image display area setting program according to claim 1 or 2.
前記表示候補領域の横軸方向の長さに対する縦軸方向の長さの比が、所定の値未満であるか否かを判別する判別処理を実行させ、
前記判別処理において、前記表示候補領域の横軸方向の長さに対する縦軸方向の長さの比が、所定の値未満であると判別したか否かに応じて、前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理及び前記表示候補領域設定処理を改めて実行させるか、又は、前記比較処理及び前記表示候補領域設定処理を改めて実行させないか、を切り替える、
ための請求項1又は請求項2に記載の画像表示領域設定プログラム。 to the computer, and
performing a determination process for determining whether a ratio of the length in the vertical axis direction to the length in the horizontal axis direction of the display candidate area is less than a predetermined value;
In the determination process, the display candidate area is determined depending on whether it is determined that the ratio of the length of the display candidate area in the vertical axis direction to the length in the horizontal axis direction is less than a predetermined value. A part of the display candidate area set in the setting process is newly set as the first area, another part is newly set as the second area, and the newly set area is set as the second area. For the first area and the second area, switching whether to execute the comparison process and the display candidate area setting process anew, or to not execute the comparison process and the display candidate area setting process anew. ,
The image display area setting program according to claim 1 or 2.
前記比較処理を予め定めた回数実行したか否かを判別する回数判別処理を実行させ、
前記回数判別処理において、前記比較処理を予め定めた回数実行したと判別したか否かに応じて、前記表示候補領域設定処理において設定した前記表示候補領域のうちの一部の領域を前記第1の領域として新たに設定し、別の一部の領域を前記第2の領域として新たに設定し、新たに設定した前記第1の領域と前記第2の領域とについて、前記比較処理及び前記表示候補領域設定処理を改めて実行させるか、又は、前記比較処理及び前記表示候補領域設定処理を改めて実行させないか、を切り替える、
ための請求項1又は請求項2に記載の画像表示領域設定プログラム。 to the computer, and
executing a number of times determination process for determining whether or not the comparison process has been performed a predetermined number of times;
In the number of times determination process, depending on whether or not it is determined that the comparison process has been performed a predetermined number of times, some areas of the display candidate areas set in the display candidate area setting process are set in the first , and another part of the area is newly set as the second area, and the comparison process and the display are performed on the newly set first area and the second area. switching whether to execute the candidate area setting process again or not to execute the comparison process and the display candidate area setting process again;
The image display area setting program according to claim 1 or 2.
前記表示候補領域の両端のうち、一方の端部を含む領域を前記第1の領域とし、他方の端部を含む領域を前記第2の領域として、前記比較処理を実行させる、
ための請求項3乃至請求項5の何れか一項に記載の画像表示領域設定プログラム。 to the computer,
performing the comparison process with an area including one end of both ends of the display candidate area as the first area and an area including the other end as the second area;
The image display area setting program according to any one of claims 3 to 5.
前記関数グラフの画像又は前記表示候補領域の所定方向に沿う幅が短いほど、前記第1の領域及び前記第2の領域の前記所定方向に沿う幅が短くなるように、前記第1の領域及び前記第2の領域を設定して、前記比較処理を実行させる、
ための請求項3乃至請求項6の何れか一項に記載の画像表示領域設定プログラム。 to the computer,
The first region and the second region are arranged such that the shorter the width of the function graph image or the display candidate region along the predetermined direction, the shorter the width of the first region and the second region along the predetermined direction. setting the second area and performing the comparison process;
The image display area setting program according to any one of claims 3 to 6.
前記表示候補領域設定処理において、
前記第1の領域及び前記第2の領域のうち、前記線の長さが短いか或いは前記点の数が少ないとされた一方の領域を、前記非表示領域として設定させるか、又は、
前記第1の領域及び前記第2の領域の各領域の前記線の長さ或いは前記点の数が互いに等しい場合に、前記第1の領域の半分の領域と、前記第2の領域の半分の領域とを、前記非表示領域として設定させる、
ための請求項1乃至請求項7の何れか一項に記載の画像表示領域設定プログラム。 to the computer,
In the display candidate area setting process,
Of the first area and the second area, one area where the length of the line is short or the number of points is small is set as the non-display area, or
When the length of the line or the number of points in each of the first region and the second region are equal to each other, half the first region and half the second region setting the area as the non-display area;
An image display area setting program according to any one of claims 1 to 7.
前記第1の領域及び前記第2の領域の各領域内の前記関数グラフの弧長を前記線の長さとして、或いは、前記第1の領域及び前記第2の領域の各領域内の前記関数グラフに含まれる点の数を前記点の数として、前記比較処理を実行させる、
ための請求項1乃至請求項8の何れか一項に記載の画像表示領域設定プログラム。 to the computer,
The arc length of the function graph in each of the first region and the second region is the length of the line, or the arc length of the function graph in each of the first region and the second region is executing the comparison process using the number of points included in the function graph as the number of points;
The image display area setting program according to any one of claims 1 to 8.
前記比較処理において、前記各領域内に含まれる複数の点のうちの互いに隣接する二点を結ぶ直線の長さの総和を、前記線の長さの前記関数グラフの弧長として取得させる、
ための請求項9に記載の画像表示領域設定プログラム。 to the computer,
In the comparison process, the sum of the lengths of straight lines connecting two mutually adjacent points among the plurality of points included in each region is obtained as the arc length of the function graph of the length of the line.
The image display area setting program according to claim 9.
前記関数グラフとして表示している関数の情報と、前記関数の定義域及び値域の少なくとも何れかの情報とのうちの、前記値域の上限値を含むように前記第1の領域を設定し、前記値域の下限値を含むように前記第2の領域を設定して、前記比較処理を実行させる、
ための請求項9又は請求項10に記載の画像表示領域設定プログラム。 to the computer,
setting the first area to include the upper limit of the range of information on the function displayed as the function graph and information on at least one of the domain and range of the function; setting the second area to include the lower limit value of the value range and performing the comparison process;
The image display area setting program according to claim 9 or 10.
前記関数グラフの描画範囲に係わる情報を取得する取得処理を実行させる、
ための請求項9乃至請求項11の何れか一項に記載の画像表示領域設定プログラム。 to the computer, and
executing an acquisition process for acquiring information related to the drawing range of the function graph ;
The image display area setting program according to any one of claims 9 to 11.
前記関数グラフの画像を分割してできる複数の領域を設定する分割領域設定処理を実行させ、
前記分割領域設定処理において設定した複数の領域の各領域について、前記比較処理、及び、前記表示候補領域設定処理を実行させることで、複数の前記表示候補領域を設定し、
表示候補領域設定処理において、設定された前記複数の表示候補領域のうち何れか2つの表示候補領域を内包する矩形領域を、前記表示装置に表示させるための領域として設定させる、
ための請求項1乃至請求項12の何れか一項に記載の画像表示領域設定プログラム。 to the computer, and
executing a divided region setting process for setting a plurality of regions created by dividing the image of the function graph ;
Setting a plurality of display candidate areas by executing the comparison process and the display candidate area setting process for each of the plurality of areas set in the divided area setting process;
In the display candidate area setting process, a rectangular area including any two display candidate areas among the plurality of set display candidate areas is set as an area to be displayed on the display device.
The image display area setting program according to any one of claims 1 to 12.
設定された前記複数の表示候補領域のうち、内包する前記線の長さが最も長いか又は内包する前記点の数が最も多い第1の表示候補領域と、内包する前記線の長さが2番目に長いか又は内包する前記点の数が2番目に多い第2の表示候補領域とを内包する矩形領域を、前記表示装置に表示させるための領域として設定させる、
ための請求項13に記載の画像表示領域設定プログラム。 to the computer, and
Among the plurality of set display candidate areas, a first display candidate area that contains the longest line or contains the largest number of points, and a first display candidate area that contains the line that has a length of 2 A rectangular area containing the second display candidate area that is the second longest or contains the second largest number of points is set as the area to be displayed on the display device.
The image display area setting program according to claim 13.
前記関数グラフの画像のうちの、設定された前記表示候補領域を、前記表示装置に表示させる表示処理を実行させる、
ための請求項1乃至請求項14の何れか一項に記載の画像表示領域設定プログラム。 to the computer, and
executing a display process of displaying the set display candidate area of the image of the function graph on the display device;
The image display area setting program according to any one of claims 1 to 14.
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
をサーバのコンピュータに実行させるための画像表示領域設定プログラムを記憶するストレージを具備するサーバ。 For each region, a first region is a region including a first end of the image of the function graph, and a second region is a region including a second end opposite to the first end of the image of the function graph . a comparison process of comparing the lengths of lines or the number of points of the included function graphs ;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
A server equipped with a storage that stores an image display area setting program for causing a computer of the server to execute the image display area setting program.
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
を実行するプロセッサ、
を具備する画像表示領域設定装置。 For each region, a first region is a region including a first end of the image of the function graph, and a second region is a region including a second end opposite to the first end of the image of the function graph . a comparison process of comparing the lengths of lines or the number of points of the included function graphs ;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
a processor that runs
An image display area setting device comprising:
関数グラフの画像の第1端を含む領域である第1の領域と、前記関数グラフの画像の前記第1端と対向する第2端を含む領域である第2の領域とについて、各領域に含まれる前記関数グラフの線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域に設定し、少なくとも前記非表示領域を除く領域を表示装置に表示させるための表示候補領域に設定する表示候補領域設定処理と、
を具備する画像表示領域設定方法。 A method executed by a processor of an image display area setting device, the method comprising:
For each region, a first region is a region including a first end of the image of the function graph, and a second region is a region including a second end opposite to the first end of the image of the function graph . a comparison process of comparing the lengths of lines or the number of points of the included function graphs ;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
An image display area setting method comprising:
関数グラフのデータを取得する取得処理と、
取得した前記関数グラフのデータに対応した前記関数グラフの画像の第1端を含む領域である第1の領域と、前記関数グラフの画像の前記第1端と対向する第2端を含む領域である第2の領域とについて、各領域に含まれる前記関数グラフの線の長さ又は点の数を比較する比較処理と、
前記第1の領域及び前記第2の領域のうちの、前記比較した結果に基づいて定められる一部の領域を非表示領域として設定し、少なくとも前記非表示領域を除く領域を、表示装置に表示させるための表示候補領域として設定する表示候補領域設定処理と、
前記関数グラフの画像のうちの、設定された前記表示候補領域を、表示装置に表示させる表示処理と、
を実行する画像表示システム。 An image display system comprising a server and a client terminal,
Acquisition processing for acquiring function graph data,
A first region that is a region that includes a first end of the image of the function graph that corresponds to the acquired data of the function graph, and a region that includes a second end that is opposite to the first end of the image of the function graph. a comparison process of comparing the length of the line or the number of points of the function graph included in each region with respect to a certain second region;
A part of the first area and the second area determined based on the comparison result is set as a non-display area, and at least an area other than the non-display area is displayed on a display device. a display candidate area setting process for setting a display candidate area for
a display process of displaying the set display candidate region of the image of the function graph on a display device;
An image display system that performs.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019198688A JP7380087B2 (en) | 2019-10-31 | 2019-10-31 | Image display area setting program, server, image display area setting device, image display area setting method, and image display system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019198688A JP7380087B2 (en) | 2019-10-31 | 2019-10-31 | Image display area setting program, server, image display area setting device, image display area setting method, and image display system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021071628A JP2021071628A (en) | 2021-05-06 |
JP7380087B2 true JP7380087B2 (en) | 2023-11-15 |
Family
ID=75713769
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019198688A Active JP7380087B2 (en) | 2019-10-31 | 2019-10-31 | Image display area setting program, server, image display area setting device, image display area setting method, and image display system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7380087B2 (en) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003296285A (en) | 2002-03-29 | 2003-10-17 | Casio Comput Co Ltd | Electronic equipment with graph display function, program, and graph display method |
JP2004303105A (en) | 2003-04-01 | 2004-10-28 | Casio Comput Co Ltd | Pattern display control device and program |
US20160004423A1 (en) | 2013-01-31 | 2016-01-07 | Hewlett-Packard Development Company, L.P. | Electronic device with touch gesture adjustment of a graphical representation |
CN107767429A (en) | 2016-08-18 | 2018-03-06 | 阿里巴巴集团控股有限公司 | Curve generation method and equipment |
JP2018049495A (en) | 2016-09-23 | 2018-03-29 | カシオ計算機株式会社 | Calculation device, graph display method of calculation device, and program |
-
2019
- 2019-10-31 JP JP2019198688A patent/JP7380087B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003296285A (en) | 2002-03-29 | 2003-10-17 | Casio Comput Co Ltd | Electronic equipment with graph display function, program, and graph display method |
JP2004303105A (en) | 2003-04-01 | 2004-10-28 | Casio Comput Co Ltd | Pattern display control device and program |
US20160004423A1 (en) | 2013-01-31 | 2016-01-07 | Hewlett-Packard Development Company, L.P. | Electronic device with touch gesture adjustment of a graphical representation |
CN107767429A (en) | 2016-08-18 | 2018-03-06 | 阿里巴巴集团控股有限公司 | Curve generation method and equipment |
JP2018049495A (en) | 2016-09-23 | 2018-03-29 | カシオ計算機株式会社 | Calculation device, graph display method of calculation device, and program |
US20180089867A1 (en) | 2016-09-23 | 2018-03-29 | Casio Computer Co., Ltd. | Calculating device, graph display method of calculating device, and storage medium retaining graph display program |
Also Published As
Publication number | Publication date |
---|---|
JP2021071628A (en) | 2021-05-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10796466B2 (en) | Graph drawing method, graph drawing system, server apparatus, graph drawing apparatus, and recording medium | |
US20140317570A1 (en) | Graph display device, graph display method and computer- readable medium recording control program | |
CN113238706B (en) | View display method, device, equipment and medium | |
EP3073363A1 (en) | Electronic device, control method and control program | |
EP2843626B1 (en) | Image rendering method using layers | |
JP2018041317A (en) | System, method and program for presenting selection object | |
CN113986076A (en) | Icon display control method and device, electronic equipment and storage medium | |
US10607379B2 (en) | Graph drawing system | |
JP7380087B2 (en) | Image display area setting program, server, image display area setting device, image display area setting method, and image display system | |
CN113609419A (en) | Information display method and device, electronic equipment and computer readable medium | |
US10885685B2 (en) | Electronic apparatus for drawing graphs of mathematical expressions | |
CN111367614A (en) | Test data curve display processing system | |
CN109213981B (en) | Demonstration collaboration for various electronic devices | |
JP5905433B2 (en) | Information processing apparatus, expenditure situation visualization method, and expenditure situation visualization program | |
JP2023052016A (en) | Learning support device, learning support method, and program | |
US9235873B2 (en) | Tile-based caching for rendering complex artwork | |
JP7315042B2 (en) | Graph drawing method, graph drawing device and computer program | |
CN111402116A (en) | Method and device for processing human waist body beautification in picture and electronic equipment | |
JP7235138B2 (en) | Information processing device, data generation device, graph drawing system, and program | |
CN113377380B (en) | User interface component deployment method and device | |
CN115309319B (en) | Picture previewing method and device, electronic equipment and storage medium | |
US11640491B2 (en) | Automatic font value distribution for variable fonts | |
CN110489068B (en) | Data display method and equipment, storage medium and application server thereof | |
US20220350777A1 (en) | Document search system, document search method, and computer-readable storage medium | |
CN109036096B (en) | Method and device for controlling interpolation points along map line |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221019 |
|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20230104 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230628 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230801 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230906 |
|
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: 20231003 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20231016 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7380087 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |