JP6942964B2 - 図形描画方法、図形描画装置、及びプログラム - Google Patents

図形描画方法、図形描画装置、及びプログラム Download PDF

Info

Publication number
JP6942964B2
JP6942964B2 JP2017006189A JP2017006189A JP6942964B2 JP 6942964 B2 JP6942964 B2 JP 6942964B2 JP 2017006189 A JP2017006189 A JP 2017006189A JP 2017006189 A JP2017006189 A JP 2017006189A JP 6942964 B2 JP6942964 B2 JP 6942964B2
Authority
JP
Japan
Prior art keywords
circle
drawing area
area
triangle
drawn
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
Application number
JP2017006189A
Other languages
English (en)
Other versions
JP2018116434A (ja
JP2018116434A5 (ja
Inventor
田中 博和
博和 田中
健太郎 奥間
健太郎 奥間
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2017006189A priority Critical patent/JP6942964B2/ja
Priority to CN201810043128.4A priority patent/CN108335348B/zh
Priority to US15/873,320 priority patent/US10460528B2/en
Priority to CN202210454654.6A priority patent/CN114708373A/zh
Publication of JP2018116434A publication Critical patent/JP2018116434A/ja
Publication of JP2018116434A5 publication Critical patent/JP2018116434A5/ja
Application granted granted Critical
Publication of JP6942964B2 publication Critical patent/JP6942964B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/005General purpose rendering architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/02Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus

Description

本発明は図形描画方法、図形描画装置及びプログラムに関する。
従来、3D(3次元)の立体図形を描画する手法として、X,Y,Zの座標系において、(X,Y)の各座標に対応するZ座標を、Z=f(x,y)の関数により決定し、決定された(X,Y,Z)の各座標を3Dグラフとしてプロットする手法がある(例えば、特許文献1参照。)。この立体図形の描画を3Dグラフとしてプロットする手法は、比較的容易な演算処理となり、高速で高性能なプロセッサ(CPU)を要さずに実現できるが、円柱(楕円柱含む)、円錐(楕円錐含む)、多角柱、多角錐などを容易に描画することはできない。
また、立体図形の表面をポリゴン(グリッド)の集合としてモデル化する手法があり、あらゆる立体図形を描画できるだけでなく、移動,拡大・縮小,反転,回転等の処理を施すこともできるが、比較的演算量が増大する。
特開2005−182125号公報
前記従来の立体図形を描画するポリゴンの手法では、比較的演算量が増大するが、予め設定された描画領域からその立体図形の一部がはみ出す場合、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにすると、はみ出す部分の全領域の形状、及び、はみ出さない部分の全領域の形状を正確に算出する必要があるため、この処理が煩雑で演算量が増大する。
よって、このような立体図形の描画処理をユーザにとってストレスなく実現するには、高速で高性能(高価)なプロセッサ(CPU)を使用しなければならない。
本発明は、このような課題に鑑みなされたもので、図形を描画する際に、図形の一部が座標系により定められる描画領域からはみ出す場合であっても、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少する図形描画方法、図形描画装置及びプログラムを提供することを目的とする。
本発明に係る図形描画方法は、図形描画装置が実行する図形描画方法であって、描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形なかに、三角形3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となる第1のはみ出し三角形がある場合は、前記第1のはみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させないこと、を含むことを特徴とする。
また、本発明に係る図形描画装置は、プロセッサを備える図形描画装置であって、前記プロセッサは、記憶部に記憶された命令に従って、描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形のなかに、三角形の3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となるはみ出し三角形がある場合は、前記はみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させない処理を実行することを特徴とする。
また、本発明に係るプログラムは、電子機器のコンピュータに、描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形のなかに、三角形の3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となるはみ出し三角形がある場合は、前記はみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させない、処理を実行させることを特徴とする。
本発明によれば、図形を描画する際に、図形の一部が座標系により定められる描画領域からはみ出す場合であっても、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少する。
本発明の実施形態に係る図形描画装置10の外観構成を示す正面図であり、同図(A)は図形描画装置10をグラフ関数電卓10Fとして実施した場合を示す図、同図(B)は図形描画装置10をタブレット端末10Tとして実施した場合を示す図。 前記図形描画装置10(10F/10T)の電子回路の構成を示すブロック図。 本実施形態の円柱(円付図形)描画処理において実際に取り入れる円柱の円Crの描画手法を説明する図。 前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の頂点座標(O,A,B)と描画領域Adとの関係に応じた表示・非表示条件を示すテーブルT。 前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の表示・非表示条件に応じた頂点座標(O,A,B)の補正手法(その1)を示す図。 前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の表示・非表示条件に応じた頂点座標(O,A,B)の補正手法(その2)を示す図。 前記図形描画装置10の図形表示制御プログラム22aに従い実行される円柱(円付図形)描画処理を示すフローチャート。 前記図形描画装置10の円柱(円付図形)描画処理における円描画処理を示すフローチャート。 前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第1実施形態)を示す図。 前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第2実施形態)を示す図。 前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第3実施形態)を示す図。 前記図形描画装置10の円柱(円付図形)描画処理における円描画処理に従った各グリッド(三角形)の頂点座標(O,A,B)の補正の具体例を示す図であり、同図(A)は前記図10(第2実施形態)の円柱FCにおける円周の一部が描画領域Adからはみ出す場合の具体例を示す図、同図(B)は前記図11(第3実施形態)の円柱FCにおける円の中心Oが描画領域Adからはみ出す場合の具体例を示す図。 前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第4実施形態)を示す図。
以下図面により本発明の実施の形態について説明する。
図1は、本発明の実施形態に係る図形描画装置10の外観構成を示す正面図であり、同図(A)は図形描画装置10をグラフ関数電卓10Fとして実施した場合を示す図、同図(B)は図形描画装置10をタブレット端末10Tとして実施した場合を示す図である。
前記図形描画装置10は、前記グラフ関数電卓10Fやタブレット端末10Tとして構成する他、図形描画機能を有する(図形表示制御プログラムが実装された)パーソナルコンピュータ、スマートフォン、携帯電話機、タッチパネル式PDA(personal digital assistants)、電子ブック、携帯ゲーム機等として構成することができる。
なお、前記グラフ関数電卓10Fのような物理的なキー(ボタン)が実装されていない前記タブレット端末10Tのような図形描画装置10は、前記グラフ関数電卓10Fのキーと同様なソフトウェアキーボードを表示し、このソフトウェアキーボードに対するキー操作に応じて処理を実行する。
前記グラフ関数電卓10Fは、その携帯性の必要からユーザが片手で十分把持し片手で操作可能な小型サイズからなり、このグラフ関数電卓10の本体正面にはキー入力部11および表示出力部12が設けられる。
前記キー入力部11には、数値や数式を入力したり計算の実行を指示したりするための数値・演算記号キー群111、各種の関数を入力したりメモリ機能を立ち上げたりするための関数機能キー群112、各種動作モードのメニュー画面を表示させたり動作モードの設定を指示したりするためのモード設定キー群113、前記表示出力部12の下端に沿って表示された各種の機能を1回のキー操作で立ち上げるためのファンクションキー群114、前記表示出力部12に表示されたカーソルの移動操作やデータ項目の選択操作などを行うためのカーソルキー115が備えられる。
前記数値・演算記号キー群111としては、[0]〜[9](数値)キー、[+][−][×][÷](四則記号)キー、[EXE](実行)キー、[AC](クリア)キーなどが配列される。
前記関数機能キー群112としては、[sin](サイン)キー、[cos](コサイン)キー、[tan](タンジェント)キーなどが配列される。
前記モード設定キー群113としては、[MENU](メニュー)キー、[SHIFT](シフト)キー、[OPTN](オプション)キーなどが配列される。
前記ファンクションキー群114としては、[F1]キー〜[F6]キーが配列される。
なお、前記数値・演算記号キー群111、関数機能キー群112、モード設定キー群113、ファンクションキー群114のキーは、[SHIFT]キーが操作された後に続けて操作されることで、そのキートップに記載されたキー機能ではなく、そのキーの上方に記載されたキーとして機能できるようになっている。例えば、[SHIFT]キー操作後に[AC]キーが操作(以下、[SHIFT]+[AC]キーと記す。)されると[OFF](電源オフ)キーとなる。[SHIFT]+[MENU]キーは[SET UP](セットアップ)キー、[SHIFT]+[F3]キーは[V−Window](ビューウインドウ:描画領域設定画面Gvの表示を指示する)キーとなる。
前記表示出力部12は、ドットマトリクス型の液晶表示ユニットからなる。なお、前記タブレット端末10Tの表示出力部12は、タッチパネルを重ねて設けた液晶表示ユニットからなる。
図2は、前記図形描画装置10(10F/10T)の電子回路の構成を示すブロック図である。
この図形描画装置10の電子回路は、前記キー入力部11および表示出力部12に加えて、コンピュータであるCPU21、メモリ22、記録媒体読取部24、通信部25を備えている。
前記CPU21は、メモリ22に記憶されている図形表示制御プログラム22aに従い回路各部の動作を制御し、キー入力部11からのキー入力信号に応じた各種の演算処理を実行する。この図形表示制御プログラム22aは、メモリ22に予め記憶されていてもよいし、あるいはメモリカード等の外部記録媒体23から記録媒体読取部24を介してメモリ22に読み込まれて記憶されたものであってもよい。この図形表示制御プログラム22aは、ユーザがキー入力部11の操作によって書き換えできないようになっている。
前記メモリ22には、このようなユーザ書き換え不可能な情報の他に、ユーザが書き換え可能なデータを記憶するエリアとして、前記キー入力部11によりキー入力されたキーコードのデータが順次入力され、これにより構成される数式のデータや表データ、グラフデータ等が記憶されるエリアが確保されている。
また、前記メモリ14の書き換え可能なデータを記憶するエリアには、V−Windowデータエリア22b、図形データエリア22c、図形描画データエリア22d、表示データエリア22eが確保されている。
前記V−Windowデータエリア22bには、前記[V−Window](ビューウインドウ)キーの操作によって表示出力部12に表示される描画領域設定画面Gv(図9参照:ここでは立体図形描画用の描画領域設定画面Gv)において、ユーザ操作に応じて入力された立体図形描画のための3D座標の描画領域Ad(Xmin,max/Ymin,max/Zmin,max)のデータとグリッド(ポリゴン)の分割数(grid)のデータが記憶される。
前記図形データエリア22cには、前記[MENU](メニュー)キーの操作に従い表示される動作メニュー(図示せず)から立体図形を描画するためのアイコン[3D−Graph]を選択して表示出力部12に表示される3Dグラフ設定画面Gs(図9参照:ここでは円柱(円付図形)描画用の3Dグラフ設定画面Gs)において、ユーザ操作に応じて入力された立体図形のデータ(前記描画領域Adを基準に図形(円付図形)を形作る描画用データ(図形に対応する数式とそのパラメータである半径R/高さZ/中心座標X,Y))が記憶される。
前記図形描画データエリア22dには、前記図形データエリア22cに記憶された立体図形のデータに基づいて前記描画領域Adを基準とした演算処理により生成された立体図形の描画データ(立体図形の面をグリッド(多角形の格子)の集合で構成する各グリッドの頂点座標)が記憶される。
前記表示データエリア22eは、前記表示出力部12を構成する液晶表示ユニットの表示画面のサイズに対応したメモリエリアを有し、このメモリエリアには、前記表示画面に表示させるべき表示データがビットマップデータ(ここでは前記描画領域のデータと立体図形の描画データに応じて展開したビットマップデータ)として記憶される。
このように構成された図形描画装置10(10F/10T)は、前記CPU21が前記図形表示制御プログラム22aに記述された命令に従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、後述の動作説明で述べるような図形描画機能を実現する。
次に、前記構成による図形描画装置10の図形描画機能に従った動作について説明する。
ここでは先ず、円柱(円付図形)描画処理の概略について説明する。
この円柱(円付図形)描画処理では、前記描画領域設定画面Gvと3Dグラフ設定画面Gsに従い、前記描画領域のデータと立体図形(円柱(円付図形))のデータが設定されると、3D座標上での前記円柱のデータに対応した一方の円(上蓋)の円周を構成する座標列と、他方の円(下蓋)の円周を構成する座標列とが演算処理されて算出される。また、前記算出された一方の円に対応する座標列と他方の円に対応する座標列とを結ぶ線を構成する座標列が、前記円柱の側面を構成する座標列として演算処理されて算出される。
そして、前記算出された一方の円に対応する座標列と他方の円に対応する座標列と円柱の側面に対応する座標列のうち、前記描画領域Adに含まれる各座標の点を前記一方の円、他方の円、側面の順に描画することで、前記設定された円柱(円付図形)を表示させる。
この際、前記一方と他方の円については、その中心の座標点と該当する円の円周に対応する各座標点との間を結ぶ放射状の線と、同円の円周の各座標点間を結ぶ線とにより分割されて形成される多数の三角形(グリッド(格子))の集合で面が構成される。また、側面については、一方の円の円周に対応する各座標点と他方の円の円周に対応する各座標点とを結ぶ線により分割されて形成される多数の四角形(グリッド(格子))の集合で面が構成される。
なお、実際には、前記算出された一方の円と他方の円と側面とを構成する全ての座標点について描画するのではなく、以下に説明するように描画する。
図3は、本実施形態の円柱(円付図形)描画処理において実際に取り入れる円柱の円Crの描画手法を説明する図である。
すなわち、前記円Crを構成する各三角形(グリッド(格子))tnの分割数n(図3の場合は8分割)を設定する。そして、前記一方の円Crと他方の円Crについては、前記設定された分割数n(=8)に応じて同円Crをその中心座標Oを基準に円周方向に分割した各三角形t1〜t8の頂点座標(O,A,B)を決定し、その頂点座標(O,A,B)間を結ぶ直線により囲まれる各三角形t1〜t8の面の集合で同円Crを描画する。
また、前記側面についても、前記一方の円Crと他方の円Crとの間でその側面を構成する各四角形(グリッド(格子))の分割数mを設定する。そして、前記一方の円Crを分割した各三角形tn…の円周上の座標点A,B,…と他方の円Crを分割した各三角形tn…の円周上の座標点A,B,…とを結ぶ縦方向(Z方向)の直線と前記設定された分割数mに応じて前記一方の円Crと他方の円Crとの間を分割した水平方向(X−Y方向)の直線とにより縦横に分割される各四角形の頂点座標を決定して同側面を描画する。
図4は、前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の頂点座標(O,A,B)と描画領域Adとの関係に応じた表示・非表示条件を示すテーブルTである。
図5は、前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の表示・非表示条件に応じた頂点座標(O,A,B)の補正手法(その1)を示す図である。
図6は、前記図形描画装置10の円描画処理において円Crを構成する各グリッド(三角形)tn…の表示・非表示条件に応じた頂点座標(O,A,B)の補正手法(その2)を示す図である。
すなわち、前記円Crを構成する各グリッド(三角形)tn…を描画して表示させる際に、当該グリッド(三角形)tnの全頂点座標(O,A,B)が前記描画領域Adの領域内にある場合(図4(1)及び図5(A)参照)は、そのグリッド(三角形)tnをそのまま補正無しで表示する。
また、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標A又はBの何れかが描画領域Adの領域外にある場合(図4(2)(3)及び図5(A1)/図6(B1)参照)は、領域外にある頂点座標A又はBを領域内に移動して補正し、補正したグリッド(三角形/四角形)tnを表示する。
また、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標A,Bが描画領域Adの領域外にある場合(図4(4)及び図5(A2)/図6(B2)参照)は、領域外にある頂点座標A,Bを領域内に移動して補正し、補正したグリッド(三角形)tnを表示する。
さらに、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標Oが描画領域Adの領域外にある場合(図4(5)及び図5(A3)/図6(B3)参照)は、領域外にある頂点座標Oを領域内に移動して補正し、補正したグリッド(三角形/四角形)tnを表示する。
一方、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標O,A又はO,Bが描画領域Adの領域外にある場合(図4(6)(7)及び図5(A4)参照)は、そのグリッド(三角形)tnは非表示とする。
また、前記グリッド(三角形)tnの全頂点座標(O,A,B)が前記描画領域Adの領域外にある場合(図4(8)及び図5(A5)参照)も、そのグリッド(三角形)tnは非表示とする。
なお、描画すべき立体図形(円柱(円付図形))の描画用データ(図形に対応する数式とそのパラメータである半径R/高さZ/中心座標X,Y)における高さZの最大値又は最小値が、前記描画領域AdにおけるZ方向の領域Zmin〜maxの外にある場合は、前記円Crを構成する各グリッド(三角形)tn…の全頂点座標(O,A,B)が前記描画領域Adの領域外にある場合に相当するので(図4(9)参照)、当該各グリッド(三角形)tn…は非表示とする。
ここで、前記図5(A1)〜(A3)で示したグリッド(三角形)tnにおける頂点座標(O,A,B)の補正手法(その1)は、描画領域Adの領域外にある頂点座標を当該描画領域Ad内の最も近い点に移動して置換する補正手法である。
例えば図5(A1)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標Bが描画領域Adの領域外にある場合(図4(2)の条件に相当)は、領域外にある頂点座標Bを矢印xに示すように領域内の最も近い点B´に置換して補正し、補正したグリッド(三角形O,A,B´)tnを表示する。
例えば図5(A2)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標A,Bが描画領域Adの領域外にある場合(図4(4)の条件に相当)は、領域外にある頂点座標A,Bを矢印xa,xbに示すように領域内の最も近い点A´,B´に置換して補正し、補正したグリッド(三角形O,A´,B´)tnを表示する。
例えば図5(A3)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標Oが描画領域Adの領域外にある場合(図4(5)の条件に相当)は、領域外にある頂点座標Oを矢印xに示すように領域内の最も近い点O´に置換して補正し、補正したグリッド(三角形O´,A,B)tnを表示する。
また、前記図6(B1)〜(B3)で示したグリッド(三角形)tnにおける頂点座標(O,A,B)の補正手法(その2)は、描画領域Adの領域外にある頂点座標を、当該領域外の頂点座標と領域内の頂点座標とを結ぶ三角形の辺と描画領域Adを画定する境界との交点に移動して置換する補正手法である。
例えば図6(B1)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標Bが描画領域Adの領域外にある場合(図4(2)の条件に相当)は、領域外にある頂点座標Bを、破線矢印y1,y2に示すように、当該頂点座標Bを端点とする三角形の各辺BA,BOと描画領域Adを画定する境界との交点B1´,B2´に置換して補正し、補正したグリッド(四角形O,A,B1´,B2´)tnを表示する。
例えば図6(B2)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標A,Bが描画領域Adの領域外にある場合(図4(4)の条件に相当)は、領域外にある頂点座標A,Bを、破線矢印ya,ybに示すように、当該頂点座標A,Bを端点とする三角形の各辺AO,BOと描画領域Adを画定する境界との交点A´,B´に置換して補正し、補正したグリッド(三角形O,A´,B´)tnを表示する。
例えば図6(B3)で示したように、前記グリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標Oが描画領域Adの領域外にある場合(図4(5)の条件に相当)は、領域外にある頂点座標Oを、破線矢印y1,y2に示すように、当該頂点座標Oを端点とする三角形の各辺OA,OBと描画領域Adを画定する境界との交点O1´,O2´に置換して補正し、補正したグリッド(四角形O,O1´,O2´)tnを表示する。
このように、本実施形態の円描画処理では、前記図4のテーブルにて設定した円Crを構成する各グリッド(三角形)tn…の表示・非表示条件に従い、円Crの中心となる座標Oを含むグリッド(三角形)tnの頂点座標O,A又はO,Bが前記描画領域Adの領域外に位置する場合と、グリッド(三角形)tnの全頂点座標O,A,Bが前記描画領域Adの領域外に位置する場合は、そのグリッド(三角形)tnを非表示にする(図4(6)〜(9))、すなわち、そのグリッド(三角形)tnは生成も描画もしない。また、前記グリッド(三角形)tnの全頂点座標O,A,Bが前記描画領域Adの領域内に位置する場合は、そのグリッド(三角形)tnをそのまま表示する(図4(1))。更に、前記グリッド(三角形)tnの頂点座標A又はBが前記描画領域Adの領域外に位置する場合と、頂点座標A,Bともに前記描画領域Adの領域外に位置する場合と、頂点座標Oが前記描画領域Adの領域外に位置する場合は、その領域外に位置する頂点座標を描画領域Ad内に置換して補正したグリッド(三角形又は四角形)tnを表示することで(図4(2)〜(5))、疑似的な円Crを描画する。
これにより、前記円Crが描画領域Adからはみ出す場合に、描画領域Adからはみ出すグリッド(三角形)tnの形状を特定する複数の頂点のうちの予め定めた組合せの頂点が描画領域Adに含まれているか否かを判断し、この判断結果に基づいて、前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するか否かを判断し、前記はみ出すグリッド(三角形)tnのうち、表示しないと判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示せずに、且つ、表示すると判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するようにした。従って、描画領域Adからはみ出すグリッド(三角形)tnのうちの一部のグリッド(三角形)tnを非表示にする、すなわち、そのグリッド(三角形)tnは生成も描画もしないことから、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少するので、ひいては、高速で高性能(高価)なプロセッサ(CPU)を使用せずとも、見栄えのよい円柱(円付図形)を描画できる。
図7は、前記図形描画装置10の図形表示制御プログラム22aに従い実行される円柱(円付図形)描画処理を示すフローチャートである。
図8は、前記図形描画装置10の円柱(円付図形)描画処理における円描画処理を示すフローチャートである。
図9は、前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第1実施形態)を示す図である。
(第1実施形態)
<円柱FCの円Crの設定が描画領域Adからはみ出さない場合>
図9(A)に示すように、[MENU]キーの操作に従い表示される動作メニュー(図示せず)から立体図形を描画するためのアイコン[3D−Graph]を選択し、[V−Window]キーを操作すると、立体図形描画用の描画領域設定画面Gvが表示出力部12に表示される。
前記描画領域設定画面Gvにおいて、ユーザ操作に応じて立体図形描画のための3D座標の描画領域Adのデータが、図9(A)(B)に示すように、Xmin,max=−3,3、Ymin,max=−3,3、Zmin,max=−3,3として入力され、また、グリッド(格子)の分割数(grid)が、デフォルトの“25”から“13”に変更されて入力されると、入力された描画領域のデータ(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=13)がV−Windowデータエリア22bに記憶される(ステップS1)。
すると、図9(C)に示すように、円柱描画用の3Dグラフ設定画面Gsが表示出力部12に表示される。前記3Dグラフ設定画面Gsにおいて、ユーザ操作に応じて円柱(円付図形)のデータが、半径R=2、高さZ=−2〜2、中心座標X=0,Y=0として入力されると、入力された円柱(円付図形)のデータ(R=2/Z=−2〜2/X=0,Y=0)が円柱を描画する数式に対応付けられて図形データエリア22cに記憶される(ステップS2)。
そして、図9(D)に示すように、[EXE]キーが操作されると、先ず、前記V−Windowデータエリア22bに記憶された描画領域のデータ(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=13)と、前記図形データエリア22cに記憶された円柱(円付図形)のデータ(R=2/Z=−2〜2/X=0,Y=0)に基づいて、前述に概略を説明した円柱(円付図形)描画処理に従い、円柱FCの上側の円(上蓋)FCaと下側の円(下蓋)FCbを構成する各グリッド(三角形)t1〜t12の頂点座標(O,A,B)と、同円柱FCの側面FCsを構成する各グリッド(四角形)の頂点座標とが算出され、上側の円FCa、下側の円FCb、側面FCsそれぞれのグリッド毎にそのグリッドの頂点座標を組みにした描画データとして図形描画データエリア22dに記憶される(ステップS3)。
すると、前記円柱(円付図形)のデータにおける高さZの最大値(ここではZ=2)が前記描画領域AdのデータにおけるZ方向の最大値(Zmax=3)以下にあるか否かにより、前記円柱FCの上側の円FCaが描画領域Ad内にあるか否かが判断される(ステップS4)。
ここでは、前記円柱FCの上側の円FCaが描画領域Ad内にあると判断され(ステップS4(Yes))、前記円柱のデータのZの最大値(Z=2)が前記上側の円FCaを描画するZ方向の位置に設定される(ステップS5)。
すると、図8における円描画処理に移行され、前記上側の円FCaの描画が行われる(ステップSA)。
前記円描画処理では、前記図形描画データエリア22cに記憶された上側の円FCaの各グリッド(三角形t1〜t12)それぞれの頂点座標(O,A,B)…が、当該グリッド(三角形)tn毎に読み出される(ステップA1)。
そして、読み出されたグリッド(三角形)tnの頂点座標(O,A,B)が、全て前記描画領域Ad内であるか否か、つまり前記図4における表示条件(1)(図5(A)参照)に相当するか否か判断される(ステップA2)。
ここでは、前記図形描画データエリア22cから読み出される上側の円FCaの各グリッド(三角形)t1〜t12の頂点座標(O,A,B)は、前記円柱(円付図形)のデータ(R=2/Z=−2〜2/X=0,Y=0)に基づき、何れのグリッド(三角形)t1〜t12もその頂点座標(O,A,B)の全てが前記描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3)内であると判断されるので(ステップA2(Yes))、当該各グリッド(三角形)t1〜t12の何れの頂点座標(O,A,B)に対しても表示フラグが付加される(ステップA41)。
すると、前記表示フラグが付加された頂点座標(O,A,B)により構成される各グリッド(三角形)t1〜t12が、順次その領域に色を付けて表示データエリア22eに描画される(ステップA5,A6(Yes)→A1,A2(Yes)→A41,A5)。
そして、前記図形描画データエリア22cからの前記上側の円FCaの各グリッド(三角形)t1〜t12の頂点座標(O,A,B)の読み出しが終了すると(ステップA6(No))、前記図7における円柱(円付図形)描画処理に戻る。
これにより、図9(D)に示すように、前記設定された描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3)において、円周方向に12分割した各三角形t1〜t12からなる上側の円FCaが表示出力部12に表示される。
なお、前記ステップA2において、前記図形描画データエリア22cから読み出された上側の円FCaのグリッド(三角形)tnの頂点座標(O,A,B)の全てが、前記描画領域Ad内に含まれてはいないと判断された場合は(ステップA2(No))、当該頂点座標(O,A,B)のうち、(O)が描画領域Ad内で且つ(A)(B)の何れかが描画領域Ad外であるか、つまり前記図4における表示条件(2)(3)(図5(A1)/図6(B1)参照)に相当するか、又は(O)が描画領域Ad内で且つ(A,B)共に描画領域Ad外であるか、つまり前記図4における表示条件(4)(図5(A2)/図6(B2)参照)に相当するか、又は(O)が描画領域Ad外で且つ(A,B)共に描画領域Ad内であるか、つまり前記図4における表示条件(5)(図5(A3)/図6(B3)参照)に相当するか、が判断される(ステップA3)。
ここで、前記読み出されたグリッド(三角形)tnの頂点座標(O,A,B)のうち、(O)が描画領域Ad内で且つ(A)(B)の何れかが描画領域Ad外である、又は(O)が描画領域Ad内で且つ(A,B)共に描画領域Ad外である、又は(O)が描画領域Ad外で且つ(A,B)共に描画領域Ad内である、と判断された場合は(ステップA3(Yes))、当該グリッド(三角形)tnの頂点座標(O,A,B)に対して表示フラグが付加され(ステップA42)、描画領域Ad外として判断された頂点座標((A)(B)の何れか、又は両方(A,B)、又は(O))が、前述した補正手法(その1又はその2)に従い描画領域Ad内に置換して補正され(ステップA421)、補正後の頂点座標(O,A,B)で構成されるグリッドtnが描画される(ステップA5)。
すなわち、前記グリッド(三角形)tnの頂点座標(O)が描画領域Ad内で且つ(A)(B)の何れかが描画領域Ad外である場合は、例えば図5(A1)で示したように、領域外にある頂点座標B(又はA)が領域内の最も近い点B´(又はA´)に置換されて補正され、補正後のグリッド(三角形O,A,B´(又はO,A´,B))tnが描画される。また、頂点座標(O)が描画領域Ad内で且つ(A,B)共に描画領域Ad外である場合は、例えば図5(A2)で示したように、領域外にある頂点座標A,Bが領域内の最も近い点A´,B´に置換されて補正され、補正後のグリッド(三角形O,A´,B´)tnが描画される。また、頂点座標(O)が描画領域Ad外で且つ(A,B)共に描画領域Ad内である場合は、例えば図5(A3)で示したように、領域外にある頂点座標Oが領域内の最も近い点O´に置換されて補正され、補正後のグリッド(三角形O´,A,B)tnが描画される。
一方、前記ステップA3において(No)と判断された場合、つまり、前記読み出されたグリッド(三角形)tnの頂点座標(O,A,B)のうち、頂点座標O,A又はO,Bが描画領域Ad外にある場合(図4の非表示条件(6)(7)に相当(図5(A4)参照))、又は、全頂点座標(O,A,B)が描画領域Ad外にある場合(図4の非表示条件(8)に相当(図5(A5)参照))は、当該グリッド(三角形)tnの頂点座標(O,A,B)に対して非表示フラグが付加され(ステップA43)、そのグリッド(三角形)tnの描画は行われない(ステップA5)。
前記図7における円柱(円付図形)描画処理に戻ると、前記円柱(円付図形)のデータにおける高さZの最小値(ここではZ=−2)が前記描画領域AdのデータにおけるZ方向の最小値(Zmin=−3)以上であるか否かにより、前記円柱FCの下側の円FCbが描画領域Ad内にあるか否かが判断される(ステップS6)。
ここでは、前記円柱FCの下側の円FCbが描画領域Ad内にあると判断され(ステップS6(Yes))、前記円柱(円付図形)のデータのZの最小値(Z=−2)が前記下側の円FCbを描画するZ方向の位置に設定される(ステップS7)。
すると、前記図8における円描画処理に移行され、前記下側の円FCbの描画が行われる(ステップSA)。
すなわち、この円描画処理では、前記上側の円FCaの描画を行なった円描画処理におけるステップA1,A1,A41,A5,A6の処理と同様にして、前記設定された描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3)におけるZ方向の位置(Z=−2)において、円周方向に12分割した各三角形t1〜t12からなる下側の円FCbが描画され表示出力部12に表示される。
すると、図7における円柱(円付図形)描画処理に戻り、前記上側の円FCaと下側の円FCbとの間の円柱(円付図形)の側面FCsの描画が行われる。すなわち、前記図形描画データエリア22dに記憶された円柱FCの側面FCsを構成する描画データである各グリッド(四角形)の頂点座標が、縦横にそれぞれ12分割されて側面FCsを構成する各グリッド(四角形)の頂点座標として決定され、決定された各頂点座標を縦横に連結して構成される各グリッド(四角形)がその領域に色を付けて表示データエリア22eに描画される(ステップS8)。なお、前記図形描画データエリア22dに記憶された円柱FCの側面FCsを構成する描画データである各グリッド(四角形)の頂点座標のうち、何れかの頂点座標が前記描画領域Adの領域外になる場合には、当該領域外の頂点座標を含むグリッド(四角形)は描画されない。
これにより、図9(D)に示すように、前記設定された描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3)において、中心座標(X=0,Y=0)、半径(R=2)、高さ(Z=−2〜2)とした円柱(円付図形)FC(FCa+FCb+FCs)が描画され、立体図形画面Gdとして表示出力部12に表示される。
図10、図11は、前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第2、第3実施形態)を示す図である。
図12は、前記図形描画装置10の円柱(円付図形)描画処理における円描画処理に従った各グリッド(三角形)の頂点座標(O,A,B)の補正の具体例を示す図であり、同図(A)は前記図10(第2実施形態)の円柱FCにおける円周の一部が描画領域Adからはみ出す場合の具体例を示す図、同図(B)は前記図11(第3実施形態)の円柱FCにおける円の中心Oが描画領域Adからはみ出す場合の具体例を示す図である。
(第2実施形態)
<円柱FCの円Crの設定が円周の一部において描画領域Adから水平方向にはみ出す場合>
この第2実施形態では、前記図9(A)(B)で示した描画領域設定画面Gvに従い設定したのと同じ描画領域(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=12)において、図10(A)に示すように、3Dグラフ設定画面Gsに従い、半径R=2、高さZ=−2〜2、中心座標X=2,Y=0とした円柱(円付図形)のデータを入力した場合について説明する。
すなわち、この第2実施形態の円柱(円付図形)描画処理では、前記第1実施形態で描画した円柱(円付図形)FCの中心をX方向に“2”ずらしたものとなり、前記図8における上側の円FCaの円描画処理と下側の円FCbの円描画処理とのそれぞれにおいて、図12(A)に示すように、前記図形描画データエリア22dから読み出した各グリッドt7〜t10の円周上の頂点座標(A又はB又はその両方)が前記描画領域Adの領域外になると判断される場合の処理(ステップA3,A42,A421,A5)が、前記第1実施形態での処理と異なる。
具体的には、上側の円FCaを構成するグリッドt7,t10の頂点座標(O,A,B)を読み出した際には、(O)が描画領域Ad内で且つ(A)(B)の何れかが描画領域Ad外であり、前記図4における表示条件(2)(3)に相当すると判断される(ステップA3(Yes))。
すると、前記グリッドt7(t10)の頂点座標(O,A,B)に表示フラグが付加された後(ステップA42)、前記描画領域Ad外にあると判断された頂点座標B(又はA)が、図12(A)で示したように、描画領域Ad内の最も近い座標B´(A´)に移動されて補正される(ステップA421)。
そして、前記頂点座標B(又はA)が、前記描画領域Ad内に移動された後の頂点座標O,A,B´(又はO,A´,B)により構成される三角形t7(t10)がその領域に色を付けて描画される(ステップA5)。
また、上側の円FCaを構成するグリッドt8,t9の頂点座標(O,A,B)を読み出した際には、(O)が描画領域Ad内で且つ(A,B)共に描画領域Ad外であり、前記図4における表示条件(4)に相当すると判断される(ステップA3(Yes))。
すると、前記グリッドt8,t9の頂点座標(O,A,B)に表示フラグが付加された後(ステップA42)、前記描画領域Ad外にあると判断された頂点座標(A,B)が、図12(A)で示したように、描画領域Ad内の最も近い座標(A´,B´)に移動されて補正される(ステップA421)。
そして、前記頂点座標(A,B)が、前記描画領域Ad内に移動された後の頂点座標O,A´,B´により構成される三角形t8,t9がその領域に色を付けて描画される(ステップA5)。
そして、前記頂点座標(O,A,B)が全て前記描画領域Ad内にある他の各グリッド(三角形)t1〜t6,t11,t12については、前記第1実施形態と同様の処理(ステップA2,A41,A5,A6)に従い補正無しで描画され、図10(B)に示すように、円周方向に12分割した各三角形t1〜t12からなる上側の円FCaが表示出力部12に表示される。
なお、前記円柱(円付図形)FCの下側の円FCbの円描画処理も、前記上側の円FCaの円描画処理と同じであり、その説明を省略する。
この後、前記第1実施形態の円柱(円付図形)描画処理と同様に、前記上側の円FCaと下側の円FCbとの間の円柱(円付図形)の側面FCsの描画が行われ、前記設定された描画領域Ad(Xmin〜max=−3〜3/Ymin〜max=−3,3/Zmin,max=−3〜3)において、中心座標(X=2,Y=0)、半径(R=2)、高さ(Z=−2〜2)とした円柱(円付図形)FC(FCa+FCb+FCs)が描画され、表示出力部12に表示される(ステップS8)。
なおここでは、前記円柱FCの側面FCsを構成する各グリッド(四角形)のうち、前記頂点座標の補正の対象となった円FCa,FCbを構成する各グリッドt7〜t10に対応している側面FCsの各グリッド(四角形)については、少なくともその何れかの頂点座標が前記描画領域Adの領域外になるので、当該領域外の頂点座標を含むグリッド(四角形)は描画されない。
これにより、前記円FCa,FCbの円周の一部が描画領域Adからはみ出すように設定された場合であっても、描画領域Adからはみ出すグリッド(三角形)tnの形状を特定する複数の頂点のうちの予め定めた組合せの頂点が描画領域Adに含まれているか否かを判断し、この判断結果に基づいて、前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するか否かを判断し、前記はみ出すグリッド(三角形)tnのうち、表示しないと判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示せずに、且つ、表示すると判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するようにした。従って、描画領域Adからはみ出すグリッド(三角形)tnのうちの一部のグリッド(三角形)tnを非表示にする、すなわち、そのグリッド(三角形)tnは生成も描画もしないことから、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少するので、ひいては、高速で高性能(高価)なプロセッサ(CPU)を使用せずとも、見栄えのよい円柱(円付図形)FCを描画できる。
図10(C)は、前記図10(B)で描画した円柱(円付図形)FCを平面方向に回転処理した場合の表示状態を示している。
(第3実施形態)
<円柱FCの円Crの中心Oが描画領域Adから水平方向にはみ出す場合>
この第3実施形態では、前記図9(A)(B)で示した描画領域設定画面Gvに従い設定したのと同じ描画領域(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=13)において、図11(A)に示すように、3Dグラフ設定画面Gsに従い、半径R=2、高さZ=−2〜2、中心座標X=3.5,Y=0とした円柱(円付図形)のデータを入力した場合について説明する。
すなわち、この第3実施形態の円柱(円付図形)描画処理では、前記第1実施形態で描画した円柱(円付図形)FCの中心をX方向に“3.5”ずらしたものとなり、前記図8における上側の円FCaの円描画処理と下側の円FCbの円描画処理とのそれぞれにおいて、図12(B)に示すように、前記図形描画データエリア22dから読み出した各グリッドt1〜t4の円Crの中心に対応する頂点座標(O)が前記描画領域Adの領域外になると判断される場合の処理(ステップA3,A42,A421,A5)と、各グリッドt5(t12)の頂点座標O,B(O,A)及び各グリッドt6〜t11の全ての頂点座標(O,A,B)が前記描画領域Adの領域外になると判断される場合の処理(ステップA3(No),A43,A5)とが、前記第1実施形態での処理と異なる。
具体的には、上側の円FCaを構成するグリッドt1〜t4の頂点座標(O,A,B)を読み出した際には、(O)が描画領域Ad外で且つ(A,B)共に描画領域Ad内であり、前記図4における表示条件(4)に相当すると判断される(ステップA3(Yes))。
すると、前記グリッドt1〜t4の頂点座標(O,A,B)に表示フラグが付加された後(ステップA42)、前記描画領域Ad外にあると判断された頂点座標Oが、図12(B)で示したように、描画領域Ad内の最も近い座標O´に置換されて補正される(ステップA421)。
そして、前記頂点座標Oが、前記描画領域Ad内に移動された後の頂点座標O´,A,Bにより構成される三角形t1〜t4がその領域に色を付けて描画される(ステップA5)。
一方、上側の円FCaを構成するグリッドt5〜t12の頂点座標(O,A,B)を読み出した際には、(O,B)又は(O,A)又は全ての頂点座標(O,A,B)が描画領域Ad外であり、前記図4における非表示条件(6)(7)(8)に相当すると判断される(ステップA3(No))。
すると、前記グリッドt5〜t12の頂点座標(O,A,B)に非表示フラグが付加された(ステップA43)、当該グリッド(三角形)t5〜t12は描画されない(ステップA5)。
なお、前記円柱(円付図形)FCの下側の円FCbの円描画処理も、前記上側の円FCaの円描画処理と同じであり、その説明を省略する。
この後、前記第1,第2実施形態の円柱(円付図形)描画処理と同様に、前記上側の円FCaと下側の円FCbとの間の円柱(円付図形)の側面FCsの描画が行われ、前記設定された描画領域Ad(Xmin〜max=−3〜3/Ymin〜max=−3,3/Zmin,max=−3〜3)において、中心座標(X=3.5,Y=0)、半径(R=2)、高さ(Z=−2〜2)とした円柱(円付図形)FC(FCa+FCb+FCs)が描画され、表示出力部12に表示される(ステップS8)。
なおここでは、前記円柱FCの側面FCsを構成する各グリッド(四角形)のうち、前記非表示となった円FCa,FCbを構成する各グリッドt5〜t12に対応している側面FCsの各グリッド(四角形)については、その各グリッド(四角形)の何れかの頂点座標が前記描画領域Adの領域外になるので、当該領域外の頂点座標を含むグリッド(四角形)は描画されない。
これにより、第2実施形態と同様に、前記円FCa,FCbの中心Oが描画領域Adからはみ出すように設定された場合であっても、描画領域Adからはみ出すグリッド(三角形)tnの形状を特定する複数の頂点のうちの予め定めた組合せの頂点が描画領域Adに含まれているか否かを判断し、この判断結果に基づいて、前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するか否かを判断し、前記はみ出すグリッド(三角形)tnのうち、表示しないと判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示せずに、且つ、表示すると判断した前記はみ出すグリッド(三角形)tnを図形描画装置10の画面に表示するようにした。従って、描画領域Adからはみ出すグリッド(三角形)tnのうちの一部のグリッド(三角形)tnを非表示にする、すなわち、そのグリッド(三角形)tnは生成も描画もしないことから、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少するので、ひいては、高速で高性能(高価)なプロセッサ(CPU)を使用せずとも、見栄えのよい円柱(円付図形)FCを描画できる。
図11(C)は、前記図11(B)で描画した円柱(円付図形)FCを平面方向に回転処理した場合の表示状態を示している。
(第4実施形態)
<円柱FCの円Crの設定が描画領域Adから水平方向にはみ出し且つ円柱FCの高さZの最小値(最大値)が描画領域AdにおけるZ方向の最小値(最大値)を超えている場合>
図13は、前記図形描画装置10の円柱(円付図形)描画処理に従ったユーザ操作に対応する表示動作(第4実施形態)を示す図である。
この第4実施形態(その1:図13(A)参照)では、前記図9(A)(B)で示した描画領域設定画面Gvに従い設定したのと同じ描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=13)において、前記図10(A)で示した3Dグラフ設定画面Gsに従い、半径R=2、高さZ=−4〜2、中心座標X=2,Y=0とした円柱(円付図形)のデータを入力した場合について説明する。
すなわち、この第4実施形態(その1)の円柱(円付図形)描画処理では、前記第2実施形態で描画した円柱(円付図形)FCの高さをZ=−4〜2としてZ方向に“−2”延長したものとなり、前記図7における円柱(円付図形)描画処理での上側の円FCaの円描画処理(ステップSA)では、前記第2実施形態(図12(A)参照)と同様に、頂点座標(O,A,B)が全て描画領域Ad内にある各グリッド(三角形)t1〜t6,t11,t12(図4の表示条件(1)に相当)はその頂点座標(O,A,B)の補正無しで描画される(ステップA1,A2,A41,A5,A6)。
また、頂点座標(A)(B)の何れか又は両方が描画領域Ad外にある各グリッド(三角形)t7〜t10(図4の表示条件(2)(3)又は(4)に相当)は、描画領域Ad外にある頂点座標(A,Bの何れか又は両方)が領域内の最も近い座標(A´,B´)に補正されて描画される(ステップA1,A3(Yes),A42,A421,A5,A6)。
これにより、図13(A)に示すように、円周方向に12分割した各三角形t1〜t12からなる上側の円FCaが表示出力部12に表示される。
この後、前記図7における円柱(円付図形)描画処理では、前記円柱(円付図形)FCの高さZ=−4〜2に従い、下側の円FCbが描画領域Adより外側にあると判断される(ステップS6(No))。
これにより、図13(A)に示すように、前記下側の円FCbの円描画処理(ステップS7,SA)は行われない。
この後、前記各実施形態の円柱(円付図形)描画処理と同様に、円柱(円付図形)の側面FCsの描画が行われ、前記設定された描画領域Ad(Xmin〜max=−3〜3/Ymin〜max=−3,3/Zmin,max=−3〜3)において、中心座標(X=2,Y=0)、半径(R=2)、高さ(Z=−4〜2)とした下側の円FCbが無い円柱(円付図形)FC(FCa+FCs)が描画され、表示出力部12に表示される(ステップS8)。
次に、第4実施形態(その2:図13(B)参照)では、前記図9(A)(B)で示した描画領域設定画面Gvに従い設定したのと同じ描画領域Ad(Xmin,max=−3,3/Ymin,max=−3,3/Zmin,max=−3,3/grid=13)において、前記図10(A)で示した3Dグラフ設定画面Gsに従い、半径R=2、高さZ=−2〜4、中心座標X=2,Y=0とした円柱(円付図形)のデータを入力した場合について説明する。
すなわち、この第4実施形態(その2)の円柱(円付図形)描画処理では、前記第2実施形態で描画した円柱(円付図形)FCの高さをZ=−2〜4としてZ方向に“+2”延長したものとなり、上側の円FCaが描画領域Adより外側にあると判断される(ステップS4(No))。
これにより、図13(B)に示すように、前記上側の円FCaの円描画処理(ステップS5,SA)は行われない。
そして、前記図7における円柱(円付図形)描画処理での下側の円FCbの円描画処理(ステップSA)では、前記第2実施形態(図12(A)参照)と同様に、頂点座標(O,A,B)が全て描画領域Ad内にある各グリッド(三角形)t1〜t6,t11,t12(図4の表示条件(1)に相当)はその頂点座標(O,A,B)の補正無しで描画される(ステップA1,A2,A41,A5,A6)。
また、頂点座標(A)(B)の何れか又は両方が描画領域Ad外にある各グリッド(三角形)t7〜t10(図4の表示条件(2)(3)又は(4)に相当)は、描画領域Ad外にある頂点座標(A,Bの何れか又は両方)が領域内の最も近い座標(A´,B´)に補正されて描画される(ステップA1,A3(Yes),A42,A421,A5,A6)。
すると、前記各実施形態の円柱(円付図形)描画処理と同様に、円柱(円付図形)の側面FCsの描画が行われ、前記設定された描画領域Ad(Xmin〜max=−3〜3/Ymin〜max=−3,3/Zmin,max=−3〜3)において、中心座標(X=2,Y=0)、半径(R=2)、高さ(Z=−2〜4)とした上側の円FCaが無い円柱(円付図形)FC(FCb+FCs)が描画され、表示出力部12に表示される(ステップS8)。
これにより、前記第2実施形態と同様に、円FCa,FCbが描画領域Adから水平方向にはみ出すように設定された場合であっても、描画領域Adからはみ出すグリッド(三角形)tnのうちの一部のグリッド(三角形)tnを非表示にする、すなわち、そのグリッド(三角形)tnは生成も描画もしないことから、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少するので、ひいては、高速で高性能(高価)なプロセッサ(CPU)を使用せずとも、見栄えのよい円柱(円付図形)FCを描画できる。
なお、前記第1実施形態〜第4実施形態で説明した各円描画処理(ステップSA)におけるグリッド(三角形)tnの頂点座標の補正処理(ステップA421)では、前記図5(A1)〜(A3)を参照して説明したように、描画領域Ad外の頂点座標を描画領域Ad内の最も近い点に移動して置換する補正手法(その1)を用いたが、前記図6(B1)〜(B3)を参照して説明したように、描画領域Ad外の頂点座標を、当該領域外の頂点座標と領域内の頂点座標とを結ぶ三角形の辺と描画領域Adを画定する境界との交点に移動して置換する補正手法(その2)を用いてもよい。
したがって、前記構成の図形描画装置10によれば、描画領域設定画面Gvに従い立体図形の描画領域Adのデータ(Xmin〜max/Ymin〜max/Zmin〜max)を設定し、3Dグラフ設定画面Gsに従い円柱(円付図形)FCの描画用データ(円柱に対応する数式とそのパラメータである半径R/高さZ/中心座標X,Y)を入力する。すると、前記描画領域Adのデータ及び円柱(円付図形)FCの描画用データに基づき、前記円柱(円付図形)FCの両端の各円FCa,FCbについては、同円の中心座標Oと同円の円周を複数に分割したときの円周上の隣り合う分割点の座標A,Bとを頂点座標(O,A,B)として形成される複数の三角形(格子領域)tn…の集合により同円FCa,FCbを描画する。また、前記円柱(円付図形)FCの側面FCsについては、前記円柱(円付図形)FCの一方の円FCaに対応する複数の三角形tn…の円周上の各頂点座標(A,B)…と他方の円FCbに対応する複数の三角形tn…の円周上の各頂点座標(A,B)…とを結ぶ線と各円FCa,FCbに平行な複数の分割線とにより形成される複数の四角形(格子領域)の集合により同側面FCsを描画する。
そして、前記円FCa,FCbを前記複数の三角形(格子領域)tn…の集合として描画する際に、各三角形tnの頂点座標(O,A,B)のうち、(O)及び(A)又は(B)が前記設定された描画領域Adの外になる場合と(O,A,B)全て描画領域Adの外になる場合は、その三角形tnを描画せず、(A)(B)の何れか又は両方が描画領域Adの外になる場合と(O)だけ描画領域Adの外になる場合は、当該描画領域Ad外の頂点座標(A)又は(B)又は(A,B)又は(O)を描画領域Adを画定する境界上の座標に置換し、その置換後の頂点座標を含む三角形tnを描画する。
また、前記構成の図形描画装置10によれば、前記円柱(円付図形)FCの側面FCsを複数の四角形(格子領域)の集合として描画する際に、各四角形の頂点座標のうち、何れかの頂点座標が前記描画領域Adの外になる場合は、その四角形を描画せず、全ての頂点座標が描画領域Ad内になる場合に、その四角形を描画する。
これにより、前記第2実施形態と同様に、前記円柱(円付図形)の描画用データにおいて、円柱(円付図形)FCの円FCa,FCbが描画領域Adからはみ出すように設定された場合であっても、描画領域Adからはみ出すグリッド(三角形)tnのうちの一部のグリッド(三角形)tnを非表示にする、すなわち、そのグリッド(三角形)tnは生成も描画もしないことから、はみ出す部分の全領域を描画しないようにして且つはみ出さない部分の全領域を描画するようにする場合に比べて、演算量が増大しないか又は減少するので、ひいては、高速で高性能(高価)なプロセッサ(CPU)を使用せずとも、見栄えのよい円柱(円付図形)FCを描画できる。
なお、前記各実施形態では、円付図形として何れも円柱の立体図形を描画する場合について説明したが、前記円付図形としては、両端の円が楕円になる楕円柱、円錐、楕円錐等が含まれる。
また、前記円付図形の上面や下面が円ではなくて多角形であってもよい。その場合、前記円を多角形の面と置き換えて、前記円の中心点を多角形の重心の点と置き換えて本技術を利用することができる。
なお、前記各実施形態において記載した図形描画装置10による各処理の手法、すなわち、図7のフローチャートに示す円柱(円付図形)描画処理、図8のフローチャートに示す前記円柱(円付図形)描画処理での円描画処理等の各手法は、何れもコンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピ(登録商標)ディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記録装置の媒体に格納して配布することができる。そして、表示機能を備えた電子機器のコンピュータ(CPU)は、この外部記録装置の媒体に記録されたプログラムを記憶装置に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明した円付図形の描画機能を実現し、前述した手法による同様の処理を実行することができる。
また、前記各手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(N)上を伝送させることができ、この通信ネットワーク(N)に接続されたコンピュータ装置(プログラムサーバ)から前記プログラムのデータを、表示機能を備えた電子機器に取り込んで記憶装置に記憶させ、前述した円付図形の描画機能を実現することもできる。
本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
[請求項1]
表示装置の画面に設定する座標系における座標値によって定められる描画領域内に、入力を受け付けた数式に対応する図形の形状を特定する複数の頂点のうちの予め定めた組合せの頂点が含まれているか否かを判断する第1判断を行い、
前記第1判断の判断結果に基づいて、前記対応する図形を前記表示装置の画面に表示するか否かを判断する第2判断を行い、
前記対応する図形のうち、前記第2判断の判断結果により表示しないと判断した図形を前記表示装置の画面に表示せずに、且つ、前記第2判断の判断結果により表示すると判断した図形を前記表示装置の画面に表示する、
ことを特徴とする図形描画方法。
[請求項2]
前記入力を受け付けた数式は円または楕円を特定する数式であって、当該円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした複数の三角形を前記数式に対応する図形として特定し、
前記複数の三角形のそれぞれに対する前記第1判断において、
前記中心点が前記描画領域内に存在する場合、および、前記中心点が前記描画領域内に存在せず且つ前記円弧上の2点が当該描画領域内に存在する場合、前記三角形を前記表示装置の画面に表示し、且つ、
前記中心点が前記描画領域内に存在せず且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域内に存在しない場合、前記三角形を前記表示装置の画面に表示しない、
ことを特徴とする請求項1に記載の図形描画方法。
[請求項3]
前記入力を受け付けた数式は円柱を特定する数式であって、当該円柱の底面をなす円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした複数の三角形を前記対応する図形として特定し、
前記複数の三角形のそれぞれに対する前記第1判断において、
前記中心点が前記描画領域内に存在する場合、および、前記中心点が前記描画領域内に存在せず且つ前記円弧上の2点が当該描画領域内に存在する場合、前記三角形を前記表示装置の画面に表示し、且つ、
前記中心点が前記描画領域内に存在せず且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域内に存在しない場合、前記三角形を前記表示装置の画面に表示しない、
ことを特徴とする請求項1に記載の図形描画方法。
[請求項4]
前記円柱の側面を格子状に並ぶ複数の多角形に分割し、
前記描画領域内に、各多角形の形状を特定する複数の頂点のうちの全ての頂点が含まれているか否かを判断する第3判断を行い、
前記複数の多角形のそれぞれに対する前記第3判断において、
前記複数の頂点のうちのいずれかの点が前記描画領域内に存在しない場合、当該複数の頂点を持つ微小多角形を前記表示装置の画面に表示せず、且つ、当該微小多角形の形状を特定する複数の頂点のうちのすべての点が存在する場合、当該微小多角形を前記表示装置の画面に表示する、
ことを特徴とする請求項3に記載の図形描画方法。
[請求項5]
前記三角形を前記表示装置の画面に表示する場合、
当該三角形の複数の頂点である前記中心点および前記円弧上の2点のうちの前記描画領域内に存在しない点を、前記描画領域を画定する境界上の点に置換し、
当該中心点および当該円弧上の2点のうちの前記描画領域内に存在する点と、前記置換した点とを頂点とする三角形を前記表示装置の画面に表示する、
ことを特徴とする請求項2乃至請求項4の何れか1項に記載の図形描画方法。
[請求項6]
前記置換する際に、前記描画領域内に存在しない点を、前記境界上の当該描画領域内に存在しない点から最も近い点に置換する、
ことを特徴とする請求項5に記載の図形描画方法。
[請求項7]
前記三角形を前記表示装置の画面に表示する場合、
当該三角形の複数の頂点である前記中心点および前記円弧上の2点のうちの前記描画領域内に存在する点と、当該三角形の各辺と前記描画領域を画定する境界との交点とを頂点とする多角形を前記表示装置の画面に表示する、
ことを特徴とする請求項2乃至請求項4の何れか1項に記載の図形描画方法。
[請求項8]
表示装置の画面に設定する座標系における座標値によって定められる描画領域内に、入力を受け付けた数式に対応する図形の形状を特定する複数の頂点のうちの予め定めた組合せの頂点が含まれているか否かを判断する第1判断手段と、
前記第1判断手段の判断結果に基づいて、前記対応する図形を前記表示装置の画面に表示するか否かを判断する第2判断手段と、
前記対応する図形のうち、前記第2判断手段の判断結果により表示しないと判断した図形を前記表示装置の画面に表示せずに、且つ、前記第2判断手段の判断結果により表示すると判断した図形を前記表示装置の画面に表示する表示制御手段と、
を備えたことを特徴とする図形描画装置。
[請求項9]
電子機器のコンピュータを、
表示装置の画面に設定する座標系における座標値によって定められる描画領域内に、入力を受け付けた数式に対応する図形の形状を特定する複数の頂点のうちの予め定めた組合せの頂点が含まれているか否かを判断する第1判断手段、
前記第1判断手段の判断結果に基づいて、前記対応する図形を前記表示装置の画面に表示するか否かを判断する第2判断手段、
前記対応する図形のうち、前記第2判断手段の判断結果により表示しないと判断した図形を前記表示装置の画面に表示せずに、且つ、前記第2判断手段の判断結果により表示すると判断した図形を前記表示装置の画面に表示する表示制御手段、
として機能させるためのコンピュータ読み込み可能なプログラム。
10 …図形描画装置
10F…グラフ関数電卓
10T…タブレット端末
11 …キー入力部
12 …表示出力部
21 …CPU
22 …メモリ
22a…図形表示制御プログラム
22b…V−Windowデータエリア
22c…図形データエリア
22d…図形描画データエリア
22e…表示データエリア
23 …外部記録媒体
24 …記録媒体読取部
25 …通信部
30 …Webサーバ
N …通信ネットワーク

Claims (7)

  1. 図形描画装置が実行する図形描画方法であって、
    描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形なかに、三角形3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となる第1のはみ出し三角形がある場合は、前記第1のはみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させないこと、
    を含む図形描画方法。
  2. 前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形なかに、三角形3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点の両方が当該描画領域内となる第2のはみ出し三角形がある場合は、前記第2のはみ出し三角形における前記中心点を前記描画領域内の点に移動し、この移動された前記中心点、および、前記円弧上の2点を連結してできる、前記第2のはみ出し三角形とは形状が異なる別の三角形を、前記表示装置によって前記表示画面の前記描画領域内に描画させること、
    を含む請求項1に記載の図形描画方法。
  3. 前記移動する際に、前記第2のはみ出し三角形における前記中心点を、前記描画領域を画定する境界上の点に移動すること、
    を含む請求項2に記載の図形描画方法。
  4. 前記移動する際に、前記第2のはみ出し三角形における前記中心点を、前記境界上の前記中心点から最も近い点に移動すること、
    を含む請求項3に記載の図形描画方法。
  5. 円柱を特定する数式の入力を受け付け、
    前記円柱の底面をなす円または楕円を前記描画しようとする平面として、前記表示装置によって前記表示画面の描画領域内に描画させること、
    を含む請求項1乃至請求項4のいずれか一項に記載の図形描画方法。
  6. プロセッサを備える図形描画装置であって、
    前記プロセッサは、記憶部に記憶された命令に従って、
    描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形のなかに、三角形の3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となるはみ出し三角形がある場合は、前記はみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させない処理を実行する、
    図形描画装置。
  7. 電子機器のコンピュータに、
    描画しようとする平面としての円または楕円の中心点と当該円または楕円の円弧を複数に分割したときの円弧上の隣り合う2点の分割点とを頂点とした1つ以上の三角形を描画することにより、前記平面を表示装置によって前記表示装置の表示画面の描画領域内に描画させる際に、前記1つ以上の三角形のなかに、三角形の3つの頂点のうち前記中心点が前記描画領域外となり且つ前記円弧上の2点のうちの少なくとも1点が当該描画領域外となるはみ出し三角形がある場合は、前記はみ出し三角形を前記表示装置によって前記表示画面の前記描画領域内に描画させない、
    処理を実行させるためのプログラム。
JP2017006189A 2017-01-17 2017-01-17 図形描画方法、図形描画装置、及びプログラム Active JP6942964B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2017006189A JP6942964B2 (ja) 2017-01-17 2017-01-17 図形描画方法、図形描画装置、及びプログラム
CN201810043128.4A CN108335348B (zh) 2017-01-17 2018-01-17 图形描绘装置、控制方法及记录介质
US15/873,320 US10460528B2 (en) 2017-01-17 2018-01-17 Figure drawing apparatus, control method of figure drawing apparatus, and recording medium
CN202210454654.6A CN114708373A (zh) 2017-01-17 2018-01-17 图形描绘装置、控制方法及记录介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017006189A JP6942964B2 (ja) 2017-01-17 2017-01-17 図形描画方法、図形描画装置、及びプログラム

Publications (3)

Publication Number Publication Date
JP2018116434A JP2018116434A (ja) 2018-07-26
JP2018116434A5 JP2018116434A5 (ja) 2020-02-13
JP6942964B2 true JP6942964B2 (ja) 2021-09-29

Family

ID=62838728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017006189A Active JP6942964B2 (ja) 2017-01-17 2017-01-17 図形描画方法、図形描画装置、及びプログラム

Country Status (3)

Country Link
US (1) US10460528B2 (ja)
JP (1) JP6942964B2 (ja)
CN (2) CN108335348B (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6939135B2 (ja) * 2017-06-23 2021-09-22 カシオ計算機株式会社 電子機器、プログラム、サーバ、グラフ画像生成方法およびグラフ画像生成システム
JP2021117766A (ja) * 2020-01-27 2021-08-10 富士通株式会社 表示制御プログラム、表示制御方法、及び表示制御装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6232575A (ja) * 1985-08-06 1987-02-12 Mitsubishi Electric Corp 図形入力方式
JPH03141479A (ja) * 1989-10-27 1991-06-17 Hitachi Ltd 三次元図形表示方法及びその装置
JPH07225849A (ja) * 1993-12-17 1995-08-22 Hitachi Ltd グラフィックスコンピュータと直線描画装置
JPH07220098A (ja) * 1994-01-28 1995-08-18 Nippon Avionics Co Ltd 多角形近似による円弧の描画データ作成装置
EP0679020A1 (en) * 1994-04-19 1995-10-25 Eastman Kodak Company Method and apparatus for constrained gamut clipping
TW305927B (ja) * 1995-05-31 1997-05-21 Ushikata Mfg Co Ltd
US6108006A (en) 1997-04-03 2000-08-22 Microsoft Corporation Method and system for view-dependent refinement of progressive meshes
JP3507057B2 (ja) * 2002-06-03 2004-03-15 三菱電機株式会社 三角形ポリゴン描画装置および三角形ポリゴン描画方法
JP2005182125A (ja) 2003-12-16 2005-07-07 Casio Comput Co Ltd グラフ表示制御装置及びプログラム
WO2008114320A1 (ja) * 2007-03-20 2008-09-25 Fujitsu Microelectronics Limited 図形描画処理装置、および処理方法
US7712917B2 (en) * 2007-05-21 2010-05-11 Cree, Inc. Solid state lighting panels with limited color gamut and methods of limiting color gamut in solid state lighting panels
JP5034806B2 (ja) * 2007-09-13 2012-09-26 富士通セミコンダクター株式会社 図形描画装置、図形描画方法、図形描画プログラム、および該プログラムを記録した記録媒体
JP5310078B2 (ja) 2009-02-23 2013-10-09 富士通セミコンダクター株式会社 画像描画装置
JP5782401B2 (ja) 2012-03-29 2015-09-24 株式会社沖データ 画像形成装置
JP5942729B2 (ja) * 2012-09-20 2016-06-29 カシオ計算機株式会社 図形描画装置およびプログラム
WO2014050845A1 (ja) * 2012-09-27 2014-04-03 三菱電機株式会社 グラフィックス描画装置

Also Published As

Publication number Publication date
JP2018116434A (ja) 2018-07-26
CN108335348B (zh) 2022-05-13
CN108335348A (zh) 2018-07-27
US10460528B2 (en) 2019-10-29
US20180204388A1 (en) 2018-07-19
CN114708373A (zh) 2022-07-05

Similar Documents

Publication Publication Date Title
EP2237230B1 (en) Graph display control apparatus and graph display control method
US9870144B2 (en) Graph display apparatus, graph display method and storage medium
EP2369578B1 (en) Graph display apparatus, recording medium on which program is recorded, and graph display method
JP6942964B2 (ja) 図形描画方法、図形描画装置、及びプログラム
JP6965518B2 (ja) 描画方法、描画装置、及びプログラム
JP2011186567A (ja) 電子計算機及びプログラム
KR101030177B1 (ko) 데이터 입력장치 및 데이터 입력방법
JP6708117B2 (ja) 図形描画装置、図形描画方法、サーバ装置、プログラム、及びプログラムを送信する方法
JP5287588B2 (ja) 図形表示装置およびプログラム
US11210822B2 (en) Display apparatus, display method, and storage medium for displaying distinct display of relative position of specific point to three-dimensional range in three dimensional coordinate system
JP2004326691A (ja) 図形表示制御装置および図形表示制御プログラム
JP5786542B2 (ja) 数式入力装置およびプログラム
JP2016012330A (ja) 図形表示制御装置およびプログラム
JP2011204043A (ja) 図形表示装置及びプログラム
JP6547862B2 (ja) 図形描画装置、図形描画方法およびプログラム
JP6930337B2 (ja) 電子機器、移動経路記録方法、およびプログラム
JP5962696B2 (ja) 図形表示装置およびプログラム
JP5532890B2 (ja) 表示装置およびプログラム
JP5510253B2 (ja) 図形表示装置およびプログラム
JP2013008152A (ja) 情報表示装置
JP2004206266A (ja) グラフ表示制御装置およびグラフ表示制御プログラム
JP2013250983A (ja) 図形表示装置およびプログラム
JP2012008891A (ja) 図形表示装置およびプログラム
KR20160105073A (ko) 구조물 골격 모델링 방법 및 이 방법을 구현하는 프로그램이 기록된 기록매체

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191223

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20191223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210118

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210322

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: 20210810

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210823

R150 Certificate of patent or registration of utility model

Ref document number: 6942964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150