JP2004110584A - リンク生成装置、方法、プログラム及び記録媒体 - Google Patents
リンク生成装置、方法、プログラム及び記録媒体 Download PDFInfo
- Publication number
- JP2004110584A JP2004110584A JP2002274078A JP2002274078A JP2004110584A JP 2004110584 A JP2004110584 A JP 2004110584A JP 2002274078 A JP2002274078 A JP 2002274078A JP 2002274078 A JP2002274078 A JP 2002274078A JP 2004110584 A JP2004110584 A JP 2004110584A
- Authority
- JP
- Japan
- Prior art keywords
- link
- shape
- stroke
- detected
- obj
- 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.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Image Analysis (AREA)
Abstract
【解決手段】入力部100は、マウスやペンなどからの座標点列をストロークとして取得する。形状検出部101は、入力部100で取得したストロークの座標点列から、この座標点列が形成した1つ以上の特定形状を検出する。オブジェクト検出部102は、形状検出部101で検出した形状を形成するストローク座標点列の連続する2点間を結ぶ線分がオブジェクトに内包されるか交差する場合に、そのオブジェクトを選択状態とする。リンク生成部103は、オブジェクト検出部102で検出したオブジェクト間に形状検出部101で検出したストロークの形状に従ってリンク状態を生成する。
【選択図】 図1
Description
【発明の属する技術分野】
本発明は、計算用のコンピュータのグラフィカルユーザインタフェース(GUI)に関し、詳細には、コンピュータのグラフィックオブジェクト間のリンク情報を編集するユーザインタフェース装置で用いて好適なリンク生成装置、方法、プログラム及び記録媒体に関する。
【0002】
【従来の技術】
マウス、スタイラスペン、タッチパネルなどの入力装置と、ビットマップディスプレイなどの表示装置を用いた計算機用のグラフィカルユーザインタフェースの発達により、視覚的に表現されたグラフィカルオブジェクト(以下オブジェクト)を操作するアプリケーションソフトウェアが数多く開発されている。これらのアプリケーションソフトウェアでは、表示装置に表示されたオブジェクトからマウスなどの入力装置でクリックしたオブジェクトを選択状態として、さまざまな編集操作を行う。
【0003】
上述のような編集操作のひとつに、少なくとも2つ以上のオブジェクトの間を線分(あるいは線分群)や矢印付の線分(あるいは線分群)で結び、オブジェクト間に何らかの関係性がある状態を持たせる「リンク」の編集がある。
リンク編集操作では、ユーザは複数のオブジェクトを選択状態にする操作と、さらにリンクの編集する操作を行う必要があるため、グラフィカルユーザインタフェースとしての操作性の向上が望まれている。
【0004】
グラフィカルユーザインタフェースの操作性向上を目的とする従来技術としては、ストローク形状を検出してストロークが交差したオブジェクトを選択状態とする方法が提案されている(例えば、特許文献1)。
【0005】
【特許文献1】
特開平10−49700号公報
【0006】
【発明が解決しようとする課題】
しかし、上記従来技術では、複数のオブジェクトを選択したり、選択状態を変更することはできるが、選択したオブジェクト間のリンク情報を生成したり編集したりするには、ユーザはさらに別途リンク情報の編集操作を加える必要があり、操作性が非常に悪くなる恐れがある。
また、リンク情報には、リンクの始点と終点を示す情報が必要であるが、従来技術では、オブジェクトの始点や終点といった概念抜きに選択状態にしてしまうため、選択後のリンク編集が非常に困難である。
さらに、リンクは線分や矢印付き線分といった様々な視覚的属性を持つため、従来技術では上述の操作に加えて、さらにリンクの線分の線種を選択するなどの操作が必要になってしまう。
【0007】
本発明の目的は上記従来の問題点に鑑み、オブジェクト間のリンク情報を生成したり編集したりする際の操作性の向上を目的とするリンク生成装置、方法、プログラム及び記録媒体を提供することにある。
【0008】
【課題を解決するための手段】
上記の目的を達成するために本発明によるリンク生成装置は、入力装置からのストローク情報の形状を検出する形状検出手段と、前記形状検出手段により検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出手段と、前記形状検出手段が検出した形状に従って前記オブジェクト検出手段が検出したオブジェクト間をリンク状態とするリンク生成手段とを有することを特徴とするものである。
【0009】
また、本発明によるリンク生成方法は、入力装置からのストローク情報の形状を検出する形状検出ステップと、前記形状検出ステップで検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出ステップと、前記形状検出ステップで検出した形状に従って前記オブジェクト検出ステップで検出したオブジェクト間をリンク状態とするリンク生成ステップとを有することを特徴とするものである。
【0010】
また、本発明によるプログラムは、入力装置からのストローク情報の形状を検出する形状検出処理と、前記形状検出処理で検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出処理と、前記形状検出処理で検出した形状に従って前記オブジェクト検出処理で検出したオブジェクト間をリンク状態とするリンク生成処理とをコンピュータに実行させることを特徴とするものである。
さらに、本発明による記録媒体は、上記プログラムを記録したものである。
【0011】
すなわち、請求項1記載の発明は、入力装置からのストローク情報の形状を検出する形状検出手段と、前記形状検出手段により検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出手段と、前記形状検出手段が検出した形状に従って前記オブジェクト検出手段が検出したオブジェクト間をリンク状態とするリンク生成手段とを有することを特徴とするリンク生成装置である。
【0012】
請求項2記載の発明は、請求項1記載の発明において、前記オブジェクト検出手段は、前記形状検出手段が検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とするリンク生成装置である。
【0013】
請求項3記載の発明は、請求項1または2記載の発明において、前記形状検出手段は、ストローク情報の自己交差点数を検出することを特徴とするリンク生成装置である。
【0014】
請求項4記載の発明は、請求項1から3のいずれか1項に記載の発明において、前記リンク生成手段は、前記形状検出手段が検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とするリンク生成装置である。
【0015】
請求項5記載の発明は、請求項1から4のいずれか1項に記載の発明において、計算システム用のユーザインタフェース装置で用いられることを特徴とするリンク生成装置である。
【0016】
請求項6記載の発明は、入力装置からのストローク情報の形状を検出する形状検出ステップと、前記形状検出ステップで検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出ステップと、前記形状検出ステップで検出した形状に従って前記オブジェクト検出ステップで検出したオブジェクト間をリンク状態とするリンク生成ステップとを有することを特徴とするリンク生成方法である。
【0017】
請求項7記載の発明は、請求項6記載の発明において、前記オブジェクト検出ステップは、前記形状検出ステップで検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とするリンク生成方法である。
【0018】
請求項8記載の発明は、請求項6または7記載の発明において、前記形状検出ステップは、ストローク情報の自己交差点数を検出することを特徴とするリンク生成方法である。
【0019】
請求項9記載の発明は、請求項6から8のいずれか1項に記載の発明において、前記リンク生成ステップは、前記形状検出ステップで検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とするリンク生成方法である。
【0020】
請求項10記載の発明は、請求項6から9のいずれか1項に記載の発明において、計算システム用のユーザインタフェース装置で用いられることを特徴とするリンク生成方法である。
【0021】
請求項11記載の発明は、入力装置からのストローク情報の形状を検出する形状検出処理と、前記形状検出処理で検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出処理と、前記形状検出処理で検出した形状に従って前記オブジェクト検出処理で検出したオブジェクト間をリンク状態とするリンク生成処理とをコンピュータに実行させるプログラムである。
【0022】
請求項12記載の発明は、請求項11記載の発明において、前記オブジェクト検出処理は、前記形状検出処理が検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とするプログラムである。
【0023】
請求項13記載の発明は、請求項11または12記載の発明において、前記形状検出処理は、ストローク情報の自己交差点数を検出することを特徴とするプログラムである。
【0024】
請求項14記載の発明は、請求項11から13のいずれか1項に記載の発明において、前記リンク生成処理は、前記形状検出処理が検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とするプログラムである。
【0025】
請求項15記載の発明は、請求項11から14のいずれか1項に記載のプログラムを記録した記録媒体である。
【0026】
【発明の実施の形態】
以下、本発明の実施の形態を図面と共に説明する。
まず、図2について本実施の形態で用いるリンクの概念を説明する。
図2(a)では、表示装置上に四角1、丸2、三角3の三つのオブジェクトが配置されており、四角1と三角3は線分4、四角1と丸2は矢印付き線分5によって結ばれている。
【0027】
このように表示装置上に表示されるオブジェクト間に線分4や矢印付き線分5を描画することで、オブジェクト間に何らかの関係付けが成されていることを視覚的にユーザに伝えるものをリンクと定義する。
リンクは、例えば図表用アプリケーションソフトウェアやプレゼンテーションソフトウェアなどに多く見られる機能である。
【0028】
図2(b)はリンクの他のバリエーションを示している。リンクは「四角1→丸2→五角形6」のように2つ以上のオブジェクトが連なる場合もある。この場合、四角1と丸2は線分7で結ばれているが、丸2と五角形6をつなぐ部分は線分ではなく曲線8である。このように、視覚的にオブジェクト間に関係があることを示すことが分かるものもリンクとして扱うことができる。
【0029】
また、四角1と三角3の間は点線の線分9で結ばれている。このように、視覚的な属性は単純な実線だけでなく、色属性、線種、線幅など様々な視覚効果属性を持つものもリンクとして扱うことができる。
本実施の形態は、上述のようなリンクを生成したり編集する際の操作性を向上する方法を提供するものである。
【0030】
図1は本発明の実施の形態によるユーザインタフェース装置に搭載されるリンク生成装置の構成を示すブロック図である。
図1において、入力部100は、マウス、スタイラスペン、タッチパネルなどからの座標点列(以下ストローク)を取得する。ストロークとは、入力部100のボタンやペンなどの筆記手段が入力部100の入力面に接地した状態から離れる状態までの(x,y) の座標点を所定の時間間隔でサンプリングした座標点の列である。ストロークの詳細については後述する。
【0031】
形状検出部101は、入力部100で取得したストロークのうちの座標点列から、この座標点列が形成した1つ以上の特定形状を検出する。オブジェクト検出部102は、形状検出部101で検出した形状を形成するストローク座標点列の連続する2点間を結ぶ線分がオブジェクトに内包されるか交差する場合に、そのオブジェクトを選択状態とする。リンク生成部103は、オブジェクト検出部102で検出したオブジェクト間に形状検出部101で検出したストロークの形状に従ってリンク状態を生成する。
【0032】
次に、図3を参照してストロークの概念を説明する。
ストロークは手、ペン、ボタンなどの筆記手段が入力面に接地した点から移動した後、筆記手段が接面から離れるまでの0番目からn番目までの座標点列をサンプリングしたものである。例えばi番目の座標点は、水平方向をx、垂直方向をyとすると(x[i],y[i] )のように表すことができる。
【0033】
以下説明を簡単にするために、コンピュータ言語であるC言語の構造体形式の書式を用いて説明する。
オブジェクトのデータ構造を表す構造体OBJECTは以下のように定義できる。
【0034】
ここで、x[],y[] は、ストロークを構成する水平方向、垂直方向の座標点であり、NMAXは配列の最大数を示す所定の定数である。nはストロークの座標点数である。
isLinkは、真偽値(真True,偽False )を持つ変数であり、Trueの場合はそのオブジェクトがリンクオブジェクトであることを示し、False の場合はリンク以外のオブジェクトであることを示している。
【0035】
larray[]は、オブジェクトがリンクオブジェクトの場合、そのリンクオブジェクトがリンクするオブジェクトobj[] のインデックス番号を順次保持する配列であり、LINKMAX はその配列の最大数を示す所定の定数である。
1nはオブジェクトがリンクオブジェクトの場合に、そのリンクオブジェクトがリンクするオブジェクトの個数を保持するための変数である。
obj[] はOBJECT型の構造体を持つ配列であり、OBJMAXはobj[] 配列の最大数を保持する所定の定数である。max は現時点でのオブジェクトの個数を保持する変数である。
【0036】
図4は入力部100の処理を示すフローチャートである。
ユーザはまずリンクオブジェクトを生成するのか、通常オブジェクトを生成するのかを選択する(ステップS1、以下ステップ略)。通常オブジェクトとは、リンクオブジェクト以外のストローク描画物などのことである。次に、筆記手段が入力部100の入力面の (x,y ) の位置に接地すると(S2)、まずobj[] 配列のオブジェクトの個数を保持するmax を1インクリメントする(S3)。次に、obj[max].nを0に初期化する(S4)。
【0037】
次に、ユーザが筆記手段を入力面上で(x’,y’ )の位置に移動させたとすると(S5)、筆記手段が入力面から離れたかどうかを判断する(S6)。筆記手段が接地したままの場合(S6、NO)、obj[max].x[obj[max].n]にx’を、obj[max].y[obj[max].n]にy’を代入した後(S7)、obj[max].nを1インクリメントして(S8)、次の筆記手段の移動を検出し(S6)、以後、筆記手段が入力面から離れるまで処理を繰り返す。
筆記手段が入力面から離れたら(S6、yes)、そのオブジェクトがリンクオブジェクトか否かを調べ(S9)、リンクオブジェクトの場合はobj[max].isLink をTrueに(S10)、それ以外の場合はobj[max].isLink をFalse にして(S11)、処理を終了する。
【0038】
次に、形状検出部101の処理について説明する。
形状検出部101では、obj[k]を構成するストロークの自己交差数を検出する(k は0からmax の値をとる任意の変数)。ここで自己交差とは、obj[k]のストロークを構成する座標点を順に結んだ線分同士が交差することを指す。
線分の交差判定処理については、例えば、
http://www.wombat.or.jp/tomoyashuttle/shtml/algorithm/Intersection.htm
に示されている公知の技術を用いるため、詳細な構成説明は省略するが以下に概略を示す。
【0039】
図5に自己交差の例を示す。
まず、通常の線分交差判定処理について説明する。座標点A,B,C,D がある場合、線分ABと線分CDが交差するということは、点A,B を通る直線が線分CDと交差し、かつ、点C,D を通る直線が線分ABと交差していることと考えられる。そこで、直線を境界線として、線分を構成する2つの点が直線に対して両側に存在するとき、即ち、y=dx+eという直線を考えた場合にy−dx−eに対して2つの点の座標値を代入して符号が異なるときに、直線と線分は交差すると考えられる。この処理を直線ABと点C,D 、直線CDと点A,B に対して計算した結果、双方が交差すると判定された場合、線分ABと線分CDが交差すると判定される。
【0040】
このような線分交差判定処理を、obj[k]自身を構成する座標点を結んだ線分間に適用することで、自己交差数scを計算できる。
例えば、i とj が互いに独立に0からobj[k]のストロークの頂点数であるobj[k].nまでの値を取る変数であるとすると、座標点A(obj[k].x[i],obj[k].y[i])、B(obj[k].x[i+1],obj[k].y[i+1])、C(obj[k].x[j],obj[k].y[j])、D(obj[k].x[j+1],obj[k].y[j+1])によって構成される線分AB,CD のうち、i=j 、i=j+1 、j=i+1 の条件を除くすべての場合について、線分の交差を検出する。このとき検出された交差の和を自己交差数とする。
【0041】
図6はオブジェクト検出部102の処理を示すフローチャートである。
オブジェクト検出部102では、リンクオブジェクトとして入力したオブジェクトと、他のオブジェクトとが交差するかどうかを検出し(交差の概念は図7を参照)、交差を検出した場合は、その交差したオブジェクト間にリンク関係があるもの検出する。
図7においては、ストローク10が四角1、三角3、丸2と交差し、五角形6とは交差していない場合を示す。
【0042】
入力部100においてリンクオブジェクト、即ち、obj[max].isLink=Trueとなった場合に図6の処理が行われる。
まず、テンポラリ変数k を0, 真偽値を保持する変数cFlag をFalse,obj[max]のリンクするオブジェクト数obj[max].ln を0にそれぞれ初期化する(S21)。次に、テンポラリ変数iを0に、一時的に交差を検出したオブジェクトの配列のインデックス番号を保持するsrc を−1に初期化した後(S22)、テンポラリ変数jを0に初期化する(S23)。
【0043】
次に順次、テンポラリ変数I,j,k を更新しながら、線分(obj[max].x[i],obj[max].y[i]) − (obj[max].x[i+1],obj[max].y[i+1]) と線分(obj[k].x[j],obj[k].y[j]) − (obj[k].x[j+1],obj[k].y[j+1]) が交差しないかどうかを判断する(S24、S25、S26、S33、S35)。
交差を検出した場合は、cFlag をTrueとして、src にそのときに交差したk の値を代入しておく(S27)。線分交差判定処理については前述の通りであり、ここでは説明を省略する。
【0044】
次に、cFlag=False かどうかを判断し(S28)、Trueの場合にはsrc が−1でないことを判断し(S29)、src が−1でない場合、src が過去に検出されていないかどうかを判断する(S30)。Src が過去に検出されていないかどうかを知るには、既に過去に検出したオブジェクトのインデックス番号を保持するobj[max].larray[] 配列中にsrc の値があるかどうかを照合すればよい。
【0045】
src が過去に検出されていないと判断された場合には、obj[max].larray[obj[max].ln]にsrc の値を代入して、さらに、obj[max].larray[] 配列のインデックス値であるobj[max].ln を1インクリメントする(S31)。
このようにして、obj[k]に関してk を0からmax−1 番目まで探索して、obj[max]のストロークに交差するobj[max]以外のすべてのオブジェクトを検出する(S32、S33)。尚、S28でcFlag=False でない場合は、S34、S35でi=obj[max]. n−1になるまで処理を繰り返す。
【0046】
図8はリンク生成部103の処理を示すフローチャートである。
まず、オブジェクト検出部102において、obj[max].ln が2以上であるかを判断し、2より小さい場合にはただちに処理を終了する(S41)。
obj[max].ln が2以上の場合には、次にテンポラリ変数iを0に初期化する(S42)。次に、s1=obj[max].larray[i] とs2=obj[max].larray[i+1] として、obj[max].larray[] 配列内の検出したオブジェクトの連続したインデックス番号を取得する(S43)。
【0047】
次に、形状検出部101で検出したobj[max]のストロークにおける自己交差数scの数に従って生成するリンクオブジェクトの線種Ltype を決定する(S44)。sc=0の場合は「線分」、sc=1の場合は「矢印(片端)」、sc=2の場合は「矢印(両端)」、その他の場合は「線分」としてLtype を決定する(S45からS50)。次に、線種をLtypに指定する(S51)。
【0048】
次に(obj[s1].x[0],obj[s1].y[0])−(obj[s2].x[0],obj[s2].y[0]) 間にLtypeに指定した線種で線分を描画する(S52)。線種が「線分」の場合は、ob j[s1] とobj[s2] の間に通常の線分を描画する。線種が「矢印(片端)」の場 合は、obj[s1] とobj[s2] の間にobj[s2] 側に矢印のついた線分を描画する。 線種が「矢印(両端)」の場合は、obj[s1] とobj[s2] の間にobj[s1] 側とob j[s2] 側の両端に矢印のついた線分を描画する。
【0049】
次にiがobj[max].ln−1 かどうかを判断し(S53)、iがobj[max].ln−1 でない場合にはiを1インクリメントする(S54)。
以上の処理をiがobj[max].ln−1 になるまで繰り返し行う。
【0050】
図9はリンク生成部103の他の処理を示すフローチャートである。
図9においては、リンクオブジェクトが交差したオブジェクトのうち、始点側に最も近いオブジェクトと、終点側に最も近いオブジェクトとの間にリンク線分を描画する。
【0051】
まずobj[max].ln>=2かどうかを判断して(S61)、obj[max].ln が2より小さい場合には直ちに処理を終了する。それ以外の場合は、次にs1=obj[max].larray[0] ,s2=obj[max].larray[obj[max].ln−1] として(S62)、オブジェクト検出部102において、最初に検出したオブジェクト、即ち、obj[max]の始点(obj[max].x[0],obj[max].y[0])側に最も近傍のオブジェクトのインデックス番号と、最後に検出したオブジェクト、即ち、obj[max]の終点(obj[max].x[obj[max].n] ,obj[max].y[obj[max].n]) 側に最も近傍のオブジェクトのインデックス番号を取得する。
その後の処理は図8のS44からS52と同様であるため詳細な説明は割愛するが、obj[s1] とobj[s2] 間にリンク線分を描画する。
【0052】
図10はリンク生成部103が形状検出部101において検出したリンクオブジェクトの自己交差数に従って線種を変更してリンク線分を描画している様子を示す。
図10(a1)のようにリンクオブジェクトのストロークに自己交差数がない場合は、リンク生成部103は、図10(a2)のようなリンク線分を生成する。
図10(b1)のようにリンクオブジェクトのストロークに自己交差数が一つある場合は、リンク生成部103は、図10(b2)のように片端に矢印を持つようなリンク線分を生成する。
図10(c1)のようにリンクオブジェクトのストロークに自己交差数が二つある場合は、リンク生成部103は、図10(c2)のように両端に矢印を持つようなリンク線分を生成する。
【0053】
図11は図8に示したリンク生成部103の処理と、図9に示したリンク生成部103の他の処理との違いを示す。
図11(a)のようなリンクオブジェクトのストロークを描画すると、図8の処理の場合は、図11(b1)のようにリンクオブジェクトのストロークが交差する各オブジェクト間にリンク線分が生成される。また、図9の処理の場合には、図11(b2)のようにリンクオブジェクトのストロークの始点近傍のオブジェクトと終点近傍のオブジェクトの間にリンク線分が生成される。
【0054】
次に図12を参照して、上述した一連の処理を実行するプログラムをコンピュータにインストールして実行可能な状態とするために用いられる本発明の実施の形態によるプログラム、及びこのプログラムを記録した記録媒体について説明する。
プログラムは、前述した各フローチャートの処理を実行するものである。
【0055】
このプログラムは、例えば図12(a)に示すように、本発明によるリンク生成装置を搭載したユーザインタフェース装置を接続したコンピュータに内蔵されている記録媒体としてのハードディスクに予めインストールした状態で提供できる。
また、プログラムは、図12(b)に示すように、記録媒体に一時的あるいは永続的に格納し、本発明によるリンク生成装置を搭載したユーザインタフェース装置を接続したコンピュータにユニットとして組み込んだり、あるいは着脱式の記録媒体として利用することで、パッケージソフトウェアとして提供できる。
【0056】
上記プログラムを格納する記録媒体としては、図12(c)に示すように、例えばフロッピー(登録商標)ディスク、CD−ROM(Compact Disc Read Only Memory )、MO(Magneto optical )ディスク、DVD (Digital Versatile Disc)、磁気ディスク、半導体メモリなどを利用できる。
また、プログラムは、図12(d)に示すように、ダウンロードサイトから、LAN (Local Area Network)やインターネットといったネットワークを介して、有線または無線により、本発明によるリンク生成装置を搭載したユーザインタフェース装置を接続したコンピュータに転送し、そのコンピュータが内蔵するハードディスクなどにダウンロードさせるようにすることができる。
【0057】
【発明の効果】
以上説明した発明は以下のような効果を奏する。
従来技術では、オブジェクト間にリンク操作を行う場合には、オブジェクトを選択状態にしておいてリンク編集を行うか、あるいは2つのオブジェクトを意図的に選択してリンク操作を行う必要があったが、本発明によれば、リンクオブジェクトのストロークをオブジェクトに交差するように描画してリンクするオブジェクトを検出し、その交差した順にリンク線分を生成できるようになるため、GUI 操作におけるリンク編集操作が簡単になる。
【0058】
また、リンクは線分や矢印付き線分といった様々な視覚的属性を持つため、従来技術では、リンクの線分の線種を別途選択するなどの操作が必要になってしまうが、本発明によれば、リンクオブジェクトのストロークに含まれる自己交差数を検出して、その自己交差数の違いによってリンク線分の線種を同時に指定できるため、線種を別途選択する手間を軽減できるようになる。
【図面の簡単な説明】
【図1】本発明の実施の形態によるリンク生成装置を示すブロック図である。
【図2】リンクの概念を説明するための構成図である。
【図3】ストロークの概念を説明するための構成図である。
【図4】入力部の処理を示すフローチャートである。
【図5】ストロークの自己交差の例を示す構成図である。
【図6】オブジェクト検出部の処理を示すフローチャートである。
【図7】交差の概念を説明するための構成図である。
【図8】リンク生成部の処理を示すフローチャートである。
【図9】リンク生成部の他の処理を示すフローチャートである。
【図10】リンク生成部が自己交差数に応じて色々な線種でリンク線分を描画する様子を示す構成図である。
【図11】リンク生成部の処理の違いによるリンク線分を示す構成図である。
【図12】本発明によるプログラム及び記録媒体を説明するための構成図である。
【符号の説明】
1、7 四角のオブジェクト
2 丸のオブジェクト
3 三角のオブジェクト
4 線分
5 矢印付き線分
6 五角形のオブジェクト
8 曲線の線分
9 点線の線分
10 ストローク
100 入力部
101 形状検出部
102 オブジェクト検出部
103 リンク生成部
Claims (15)
- 入力装置からのストローク情報の形状を検出する形状検出手段と、
前記形状検出手段により検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出手段と、
前記形状検出手段が検出した形状に従って前記オブジェクト検出手段が検出したオブジェクト間をリンク状態とするリンク生成手段とを有することを特徴とするリンク生成装置。 - 前記オブジェクト検出手段は、前記形状検出手段が検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とする請求項1記載のリンク生成装置。
- 前記形状検出手段は、ストローク情報の自己交差点数を検出することを特徴とする請求項1または2記載のリンク生成装置。
- 前記リンク生成手段は、前記形状検出手段が検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とする請求項1から3のいずれか1項に記載のリンク生成装置。
- 計算システム用のユーザインタフェース装置で用いられることを特徴とする請求項1から4のいずれか1項に記載のリンク生成装置。
- 入力装置からのストローク情報の形状を検出する形状検出ステップと、
前記形状検出ステップで検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出ステップと、
前記形状検出ステップで検出した形状に従って前記オブジェクト検出ステップで検出したオブジェクト間をリンク状態とするリンク生成ステップとを有することを特徴とするリンク生成方法。 - 前記オブジェクト検出ステップは、前記形状検出ステップで検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とする請求項6記載のリンク生成方法。
- 前記形状検出ステップは、ストローク情報の自己交差点数を検出することを特徴とする請求項6または7記載のリンク生成方法。
- 前記リンク生成ステップは、前記形状検出ステップで検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とする請求項6から8のいずれか1項に記載のリンク生成方法。
- 計算システム用のユーザインタフェース装置で用いられることを特徴とする請求項6から9のいずれか1項に記載のリンク生成方法。
- 入力装置からのストローク情報の形状を検出する形状検出処理と、
前記形状検出処理で検出した形状の検出位置にオブジェクトがあるか否かを検出するオブジェクト検出処理と、
前記形状検出処理で検出した形状に従って前記オブジェクト検出処理で検出したオブジェクト間をリンク状態とするリンク生成処理とをコンピュータに実行させるプログラム。 - 前記オブジェクト検出処理は、前記形状検出処理が検出するストロークの形状のうち、ストロークの始点付近に最も近い位置のオブジェクトと、ストロークの終点付近に最も近い位置のオブジェクトを検出することを特徴とする請求項11に記載のプログラム。
- 前記形状検出処理は、ストローク情報の自己交差点数を検出することを特徴とする請求項11または12記載のプログラム。
- 前記リンク生成処理は、前記形状検出処理が検出するストロークの形状に従ってリンクの始点片端、終点片端、あるいは始点と終点両端の表示状態を変更することを特徴とする請求項11から13のいずれか1項に記載のプログラム。
- 請求項11から14のいずれか1項に記載のプログラムを記録した記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002274078A JP4143370B2 (ja) | 2002-09-19 | 2002-09-19 | リンク生成装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002274078A JP4143370B2 (ja) | 2002-09-19 | 2002-09-19 | リンク生成装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004110584A true JP2004110584A (ja) | 2004-04-08 |
JP4143370B2 JP4143370B2 (ja) | 2008-09-03 |
Family
ID=32270651
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002274078A Expired - Fee Related JP4143370B2 (ja) | 2002-09-19 | 2002-09-19 | リンク生成装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4143370B2 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006338667A (ja) * | 2005-05-31 | 2006-12-14 | Fuji Xerox Co Ltd | ユーザ−マシン間通信方法、装置、インターフェイス・プロセッサ、及びプログラム |
JP2009526303A (ja) * | 2006-02-10 | 2009-07-16 | コリア インスティテュート オブ サイエンス アンド テクノロジー | グラフィックユーザインターフェース装置及びグラフィック客体のディスプレイ方法 |
JP2009291246A (ja) * | 2008-06-02 | 2009-12-17 | Sega Corp | ゲーム制御プログラム、ゲーム装置および記録媒体 |
JP2011134076A (ja) * | 2009-12-24 | 2011-07-07 | Mitsubishi Electric Corp | タッチパネル入力装置 |
JP2019101739A (ja) * | 2017-12-01 | 2019-06-24 | 富士ゼロックス株式会社 | 情報処理装置、情報処理システムおよびプログラム |
-
2002
- 2002-09-19 JP JP2002274078A patent/JP4143370B2/ja not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006338667A (ja) * | 2005-05-31 | 2006-12-14 | Fuji Xerox Co Ltd | ユーザ−マシン間通信方法、装置、インターフェイス・プロセッサ、及びプログラム |
JP2009526303A (ja) * | 2006-02-10 | 2009-07-16 | コリア インスティテュート オブ サイエンス アンド テクノロジー | グラフィックユーザインターフェース装置及びグラフィック客体のディスプレイ方法 |
US9395906B2 (en) | 2006-02-10 | 2016-07-19 | Korea Institute Of Science And Technology | Graphic user interface device and method of displaying graphic objects |
JP2009291246A (ja) * | 2008-06-02 | 2009-12-17 | Sega Corp | ゲーム制御プログラム、ゲーム装置および記録媒体 |
JP2011134076A (ja) * | 2009-12-24 | 2011-07-07 | Mitsubishi Electric Corp | タッチパネル入力装置 |
JP2019101739A (ja) * | 2017-12-01 | 2019-06-24 | 富士ゼロックス株式会社 | 情報処理装置、情報処理システムおよびプログラム |
JP7006198B2 (ja) | 2017-12-01 | 2022-01-24 | 富士フイルムビジネスイノベーション株式会社 | 情報処理装置、情報処理システムおよびプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP4143370B2 (ja) | 2008-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4028031B2 (ja) | 任意形状のリンクの曲線変換方法及びノードリンクダイヤグラムのトポロジを維持するための方法 | |
JP4028844B2 (ja) | グラフィックス・イメージ生成装置、及びその方法並びにプログラム | |
JP3974196B2 (ja) | オブジェクト指向グラフィック入力及びディスプレイシステム | |
JPH0355848B2 (ja) | ||
US20060066610A1 (en) | Method, device, and computer program product for displaying 3D grid in designing configuration model | |
JP3186241B2 (ja) | 図形編集装置 | |
JP2003518686A (ja) | グラフィカル・ユーザ・インタフェースのためのディスプレイ | |
JP2004110584A (ja) | リンク生成装置、方法、プログラム及び記録媒体 | |
JPH06131436A (ja) | 描画処理装置及び方法 | |
JP2024025829A (ja) | 情報処理装置、情報処理方法及びプログラム | |
JP3599198B2 (ja) | 図形編集装置 | |
JPH0415753A (ja) | データベースシステム | |
Zhang et al. | Knotpad: Visualizing and exploring knot theory with fluid reidemeister moves | |
JP2001209816A5 (ja) | ||
JP4094706B2 (ja) | コンピュータ制御デイスプレイシステム | |
US20140300604A1 (en) | Vector graphics authoring tool that enables directional input requests for selecting reference points on a vector path of an image being authored | |
JP2015007844A (ja) | ユーザインタフェース装置、ユーザインタフェース方法およびプログラム | |
JPH10222689A (ja) | 図形表示方法及び装置及び図形表示プログラムを格納した記憶媒体 | |
JP4774911B2 (ja) | 作図処理プログラム、作図処理プログラムを記録した記録媒体、作図処理方法及び作図処理システム | |
JP3634426B2 (ja) | 図面イメージの待避・復元方式 | |
JP2000194477A (ja) | 複数オブジェクト配置装置および記録媒体 | |
JP4630589B2 (ja) | 解析結果出力方法、解析結果出力装置、コンピュータプログラム及び記録媒体 | |
JP2014109933A (ja) | 三次元配筋シミュレーションシステムにおける配筋補正処理装置 | |
JP2536948B2 (ja) | 3点指定円弧検出方法及び装置 | |
JP2023004992A (ja) | 電子ビーム描画装置、電子ビーム描画方法、およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050223 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20071001 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071009 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071207 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080219 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080421 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20080501 |
|
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: 20080610 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080616 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4143370 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110620 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120620 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130620 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |