JP5658547B2 - ネットワークシステム、通信方法、および通信端末 - Google Patents

ネットワークシステム、通信方法、および通信端末 Download PDF

Info

Publication number
JP5658547B2
JP5658547B2 JP2010272904A JP2010272904A JP5658547B2 JP 5658547 B2 JP5658547 B2 JP 5658547B2 JP 2010272904 A JP2010272904 A JP 2010272904A JP 2010272904 A JP2010272904 A JP 2010272904A JP 5658547 B2 JP5658547 B2 JP 5658547B2
Authority
JP
Japan
Prior art keywords
hand
display
image
data
cpu
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.)
Expired - Fee Related
Application number
JP2010272904A
Other languages
English (en)
Other versions
JP2011155638A (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.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP2010272904A priority Critical patent/JP5658547B2/ja
Priority to US13/519,789 priority patent/US9256362B2/en
Priority to CN201080060160.5A priority patent/CN102782627B/zh
Priority to PCT/JP2010/073329 priority patent/WO2011081088A1/ja
Publication of JP2011155638A publication Critical patent/JP2011155638A/ja
Application granted granted Critical
Publication of JP5658547B2 publication Critical patent/JP5658547B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/04883Interaction 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 for inputting data by handwriting, e.g. gesture or text
    • 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/0485Scrolling or panning
    • G06F3/04855Interaction with scrollbars
    • 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/0486Drag-and-drop
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1813Arrangements for providing special services to substations for broadcast or conference, e.g. multicast for computer conferences, e.g. chat rooms
    • H04L12/1827Network arrangements for conference optimisation or adaptation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04806Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/72427User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for supporting games or graphical animations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • H04M1/7243User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages
    • H04M1/72439User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality with interactive means for internal management of messages for image or video messaging
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/22Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector

Description

本発明は、ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末を備えるネットワークシステム、通信方法、および通信端末に関し、特に、第1および第2の通信端末がコンテンツを送受信するネットワークシステム、通信方法、および通信端末に関する。
インターネット網に接続可能な複数の通信端末が、コンテンツデータをダイレクトに交換するネットワークシステムが知られている。たとえば、サーバ/クライアントシステムや、P2P(Peer to Peer)システムなどが挙げられる。そのようなネットワークシステムにおいては、通信端末の各々は、写真画像データや、画像の格納場所を特定するためのデータや、手描き画像データ(手描きデータ)や、テキストデータなどを送信したり受信したりする。そして、通信端末の各々は、受信したデータに基づいて、ディスプレイに画像やテキストを表示させる。
たとえば、特開2004−234594号公報(特許文献1)には、フォトコミュニケーションシステムが開示されている。特開2004−234594号公報(特許文献1)によると、デジタルカメラのメモリカードなどから画像データを受け取る画像入力手段、画像データなどを記録するデータ記録手段、ユーザからの指示入力を行う入力手段、記録した画像などの表示を行う画像表示手段、記録した画像などのデータを他の端末とやり取りするためのデータ通信手段、端末の実行制御を行う制御手段を備える1対の情報通信端末であって、いずれの情報通信端末においても画像表示手段に表示された画像を見ながら画像表示手段に重畳された入力手段により手描きのグラフィック要素の書き込みを行えば、画像を含めた落書きの結果がリアルタイムに他方の情報通信端末に表示されるように構成する。
特開2004−234594号公報
しかしながら、受信側の通信端末が、送信側の通信端末が送信したコンテンツを全て表示できない場合がある。たとえば、受信側の通信端末のディスプレイが小さいことために、一部のコンテンツが隠れてしまう場合がある。
本発明は、かかる問題を解決するためになされたものであり、その目的は、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める位置に表示できるようにすることである。
この発明のある局面に従うと、ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムが提供される。第1の通信端末は、第1のディスプレイと、第1の通信デバイスと、第1のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを位置に対応する該画像上の位置に表示させ、第1の通信デバイスに位置の位置情報と手描きデータとを対応付けて第2の通信端末へと送信させる第1のプロセッサとを含む。第2の通信端末は、第2のディスプレイと、第2の通信デバイスと、第1の通信端末からの位置の位置情報と手描きデータとに基づいて、第2のディスプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示させる第2のプロセッサとを含む。第2のプロセッサは、画像のうちの位置が第2のディスプレイに表示されているか否かを判断し、位置が表示されている場合に、第2のディスプレイが手描きデータを全て表示できるか否かを判断し、第2のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小することによって、第2のディスプレイに手描きデータの全てを表示させる。
この発明の他の局面に従うと、ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムが提供される。第1の通信端末は、第1のディスプレイと、第1の通信デバイスと、第1のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを位置に対応する該画像上の位置に表示させ、第1の通信デバイスに位置の位置情報と手描きデータとを対応付けて第2の通信端末へと送信させる第1のプロセッサとを含む。第2の通信端末は、第2のディスプレイと、第2の通信デバイスと、第1の通信端末からの位置の位置情報と手描きデータとに基づいて、第2のディスプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示させる第2のプロセッサとを含む。第2のプロセッサは、画像のうちの位置が第2のディスプレイに表示されているか否かを判断し、位置が表示されている場合に、第2のディスプレイが手描きデータを全て表示できるか否かを判断し、第2のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小しかつ移動することによって、第2のディスプレイに手描きデータの全てを表示させる。
好ましくは、画像のサイズが第2のディスプレイのサイズよりも大きい
好ましくは、第2のプロセッサは、位置が表示されていない場合に、第2のディスプレイの所定の位置に手描きデータを表示させる。
好ましくは、第2のプロセッサは、位置が表示されていない場合に、第2のディスプレイに位置の方向を示す画像を表示させる。
好ましくは、画像は地図である。
この発明の別の局面に従うと、ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムにおける通信方法が提供される。通信方法は、第1の通信端末が、画像上の位置の指示をさせるステップと、第1の通信端末が、手描きデータの入力をさせるステップと、第1の通信端末が、第1のディスプレイに画像の少なくとも一部を表示させるとともに位置に対応する場所に手描きデータを表示するステップと、第1の通信端末が、第1の通信デバイスに位置の位置情報と手描きデータとを対応付けて第2の通信端末へと送信するステップと、第2の通信端末が、第1の通信端末からの位置情報と手描きデータとに基づいて、第2のディスプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示するステップと、第2の通信端末が、画像のうちの位置が第2のディスプレイに表示されているか否かを判断するステップと、第2の通信端末が、位置が表示されている場合に、第2のディスプレイが手描きデータを全て表示できるか否かを判断するステップと、第2の通信端末が、第2のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小することによって、第2のディスプレイに手描きデータの全てを表示させるステップとを備える。
この発明の別の局面に従うと、ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムにおける通信方法が提供される。通信方法は、第1の通信端末が、画像上の位置の指示をさせるステップと、第1の通信端末が、手描きデータの入力をさせるステップと、第1の通信端末が、第1のディスプレイに画像の少なくとも一部を表示させるとともに位置に対応する場所に手描きデータを表示するステップと、第1の通信端末が、第1の通信デバイスに位置の位置情報と手描きデータとを対応付けて第2の通信端末へと送信するステップと、第2の通信端末が、第1の通信端末からの位置情報と手描きデータとに基づいて、第2のディスプレイに画像の少なくとも一部を表示させるとともに位置情報に対応する場所に手描きデータを表示するステップと、第2の通信端末が、画像のうちの位置が第2のディスプレイに表示されているか否かを判断するステップと、第2の通信端末が、位置が表示されている場合に、第2のディスプレイが手描きデータを全て表示できるか否かを判断するステップと、第2のディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小しかつ移動することによって、第2のディスプレイに手描きデータの全てを表示させるステップとを備える。
この発明の別の局面に従うと、ネットワークを介して他の通信端末と通信可能な通信端末が提供される。通信端末は、ディスプレイと、通信デバイスと、他の通信端末からの位置情報と手描きデータとに基づいて、ディスプレイに位置情報に対応する場所に手描きデータを表示させるプロセッサとを備え、手描きデータは、画像上に入力され、位置情報は、手描きデータが入力された画像上の位置であり、プロセッサは、画像のうちの位置情報に対応する位置がディスプレイに表示されているか否かを判断し、位置が表示されている場合に、ディスプレイが手描きデータを全て表示できるか否かを判断し、ディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小することによって、ディスプレイに手描きデータの全てを表示させる
この発明の別の局面に従うと、ネットワークを介して他の通信端末と通信可能な通信端末が提供される。通信端末は、ディスプレイと、通信デバイスと、他の通信端末からの位置情報と手描きデータとに基づいて、ディスプレイに位置情報に対応する場所に手描きデータを表示させるプロセッサとを備え、手描きデータは、画像上に入力され、位置情報は、手描きデータが入力された画像上の位置であり、プロセッサは、画像のうちの位置情報に対応する位置がディスプレイに表示されているか否かを判断し、位置が表示されている場合に、ディスプレイが手描きデータを全て表示できるか否かを判断し、ディスプレイが手描きデータを全て表示できない場合に、位置情報に基づいて手描きデータを縮小しかつ移動することによって、ディスプレイに手描きデータの全てを表示させる。
以上のように、本発明に係るネットワークシステム、通信方法、および通信端末によって、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める位置に表示できるようになる。
本実施の形態に係るネットワークシステムの一例を示す概略図である。 本実施の形態に係るネットワークシステムにおける動作概要を示すシーケンス図である。 本実施の形態に係る動作概要に沿った通信端末の表示態様の推移を示したイメージ図である。 本実施の形態に係る手描きデータの送受信に関する動作概要を示す第1のイメージ図である。 本実施の形態に係る手描きデータの送受信に関する動作概要を示す第2のイメージ図である。 本施の形態に係る携帯電話の概観を示すイメージ図である。 本施の形態に係る携帯電話のハードウェア構成を示すブロック図である。 本実施の形態に係るメモリを構成する各種のデータ構造を示すイメージ図である。 本実施の形態に係る画像データのデータ構造を示すイメージ図である。 本実施の形態に係るチャットサーバのハードウェア構成を示すブロック図である。 本実施の形態に係るチャットサーバのメモリあるいは固定ディスクに記憶されるルーム管理テーブルのデータ構造を示すイメージ図である。 本実施の形態に係る携帯電話におけるP2P通信処理の処理手順の第1の例を示すフローチャートである。 本実施の形態に係る送信データのデータ構造を示すイメージ図である。 本実施の形態に係るディスプレイ(タッチパネル)が示す画面を示す第1のイメージ図である。 本実施の形態に係る送信データを説明するための第1のイメージ図である。 本実施の形態に係るディスプレイ(タッチパネル)が示す画面を示す第2のイメージ図である。 本実施の形態に係る送信データを説明するための第2のイメージ図である。 本実施の形態に係る携帯電話におけるP2P通信処理の処理手順の第2の例を示すフローチャートである。 本実施の形態に係るHTTP(HyperText Transfer Protocol)に基づいてチャット通信が行なわれる場合の送信データの一例を示す図である。 本実施の形態に係るTCP/IP(Transmission Control Protocol/Internet Protocol)に基づいてチャット通信が行なわれる場合の送信データの一例を示す図である。 本実施の形態に係る携帯電話における地図ポインティング処理の処理手順を示すフローチャートである。 本実施の形態に係るポインティング処理中の画面を示す第1のイメージ図である。 本実施の形態に係るポインティング処理中の画面を示す第2のイメージ図である。 本実施の形態に係る地図ポインティング処理において取得される座標を説明するためのイメージ図である。 本実施の形態に係る携帯電話における図形入力処理の処理手順を示すフローチャートである。 本実施の形態に係る図形入力処理中の画面を示す第1のイメージ図である。 本実施の形態に係る図形入力処理中の画面を示す第2のイメージ図である。 本実施の形態に係る図形入力処理中の画面を示す第3のイメージ図である。 本実施の形態に係る図形入力処理中の画面を示す第4のイメージ図である。 本実施の形態に係る携帯電話における手描き入力処理の処理手順を示すフローチャートである。 本実施の形態に係る手描き入力処理中の画面を示す第1のイメージ図である。 本実施の形態に係る手描き入力処理中の画面を示す第2のイメージ図である。 本実施の形態に係る図形入力処理および手描き入力処理において生成された送信データを説明するためのイメージ図である。 本実施の形態に係る携帯電話における手描きデータ領域の矩形取得処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における手描き処理の処理手順を示すフローチャートである。 本実施の形態に係る手描きデータ領域の変化を示すイメージ図である。 本実施の形態に係る携帯電話における手描きデータ領域の更新処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における背景データ取得処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるデータサイズ取得処理の処理手順を示すフローチャートである。 本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズと同じである場合の画面を示すイメージ図である。 本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第1のイメージ図である。 本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第2のイメージ図である。 本実施の形態に係る受信端末の画面サイズが送信端末の画面サイズよりも大きな場合の受信端末の画面を示すイメージ図である。 本実施の形態に係る送信側と同じ背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。 本実施の形態に係る受信端末が送信端末と異なる背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるデータ表示処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるポイント位置確認処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における手描きデータ設定処理の第1の例を示すフローチャートである。 本実施の形態に係る手描きデータ設定処理1の第1の例における画面を示す第1のイメージ図である。 本実施の形態に係る手描きデータ設定処理1の第1の例における画面を示す第2のイメージ図である。 本実施の形態に係る手描きデータ設定処理1の第1の例における画面を示す第3のイメージ図である。 本実施の形態に係る手描きデータ設定処理1の第1の例における画面遷移を示すイメージ図である。 本実施の形態に係る携帯電話における手描きデータ設定処理1の第2の例を示すフローチャートである。 本実施の形態に係る手描きデータ設定処理1の第2の例における画面を示す第1のイメージ図である。 本実施の形態に係る手描きデータ設定処理1の第2の例における画面を示す第2のイメージ図である。 本実施の形態に係る手描きデータ設定処理1の第2の例における画面遷移を示すイメージ図である。 本実施の形態に係る携帯電話におけるポイントを指す記号データ設定処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるポイントを指す記号データ位置確認処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるポイントを指す記号データの領域取得処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話におけるポイントを指す記号データ取得処理の処理手順を示すフローチャートである。 本実施の形態に係るポイントを指す記号データをα2倍に縮小した画面を示すイメージ図である。 本実施の形態に係るポイントを指す記号データの表示位置を移動させた画面を示すイメージ図である。 本実施の形態に係る携帯電話における縮小率α2の取得処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における手描きデータ設定処理2の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における手描き位置確認処理の処理手順を示すフローチャートである。 本実施の形態に係る携帯電話における手描きデータ取得処理の処理手順を示すフローチャートである。 本実施の形態に係る手描き画像がα3倍に縮小された画面を示すイメージ図である。 本実施の形態に係る手描き画像が移動された画面を示すイメージ図である。 本実施の形態に係る携帯電話における縮小率α3の取得処理の処理手順を示すフローチャートである。 本実施の形態に係るネットワークシステムにおける動作概要の変形例を示すシーケンス図である。
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。
また、以下では、携帯電話100を「通信端末」の代表例として説明を行う。ただし、通信端末は、パーソナルコンピュータや、カーナビゲーション装置(Satellite navigation system)や、PND(Personal Navigation Device)や、PDA(Personal Data Assistance)、ゲーム機、電子辞書、電子BOOKなどのような、ネットワークにつながる他の情報通信機器であってもよい。
<ネットワークシステム1の全体構成>
まず、本実施の形態に係るネットワークシステム1の全体構成について説明する。図1は、本実施の形態に係るネットワークシステム1の一例を示す概略図である。図1に示すように、ネットワークシステム1は、携帯電話100A,100B,100Cと、チャットサーバ(第1のサーバ装置)400と、コンテンツサーバ(第2のサーバ装置)600と、インターネット網(第1のネットワーク)500と、キャリア網(第2のネットワーク)700とを含む。また、本実施の形態に係るネットワークシステム1は、車両250に搭載されるカーナビゲーション装置200と、パーソナルコンピュータ(PC;Personal Computer)300とを含む。
なお、説明の容易化のために、以下では、本実施の形態に係るネットワークシステム1が、第1の携帯電話100Aと、第2の携帯電話100Bと、第3の携帯電話100Cとを含む場合について説明する。また、携帯電話100A,100B,100Cの各々に共通の構成や機能を説明する際には、それらを携帯電話100とも総称する。そして、携帯電話100A,100B,100C、カーナビゲーション装置200、パーソナルコンピュータ300の各々に共通の構成や機能を説明する際には、それらを通信端末とも総称する。
携帯電話100は、キャリア網700に接続可能に構成されている。カーナビゲーション装置200は、インターネット網500に接続可能に構成されている。パーソナルコンピュータ300は、LAN(Local Area Network)350やWAN(Wide Area Network)を介してインターネット網500に接続可能に構成されている。チャットサーバ400は、インターネット網500に接続可能に構成されている。コンテンツサーバ600は、インターネット網500に接続可能に構成されている。
より詳細には、第1の携帯電話100Aと、第2の携帯電話100Bと、第3の携帯電話100Cと、カーナビゲーション装置200と、パーソナルコンピュータ300とは、キャリア網700やメール送信サーバ(図2におけるチャットサーバ400)やコンテンツサーバ600(図65に示す場合)やインターネット網500を介して互いに接続可能であって、互いにデータの送受信が可能である。また、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300には、自端末を特定するための識別情報(たとえば、メールアドレスやIP(Internet Protocol)アドレスなど)が割り当てられる。すなわち、携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300は、内部の記録媒体に他の通信端末の識別情報を記憶することができ、当該識別情報に基づいてキャリア網700やインターネット網500などを介して当該他の通信端末とデータ送受信を行うことができる。
なお、本実施の形態に係る携帯電話100とカーナビゲーション装置200とパーソナルコンピュータ300とは、他の端末に割り当てられるIPアドレスを利用して、サーバ400,600を介さずに当該他の通信端末とデータ送受信を行うことが可能である。すなわち、本実施の形態に係るネットワークシステム1に含まれる携帯電話100、カーナビゲーション装置200、パーソナルコンピュータ300は、いわゆるP2P(Peer to Peer)型のネットワークを構成することが可能である。
ここでは、各通信端末がチャットサーバ400にアクセスする際には、すなわち各通信端末がインターネットにアクセスした際に、チャットサーバ400あるいは他の図示しないサーバ装置などによってIPアドレスが割り当てられるものとする。IPアドレスの割り当て処理の詳細は公知であるので、ここでは説明を繰り返さない。
<ネットワークシステム1の全体的な動作概要>
次に、本実施の形態に係るネットワークシステム1の動作概要について説明する。図2は、本実施の形態に係るネットワークシステム1における動作概要を示すシーケンス図である。図1および図2に示すように、本実施の形態に係る各通信端末は、P2P型のデータ送受信を行うために、はじめに互いのIPアドレスを交換(取得)する必要がある。そして、各通信端末は、IPアドレスを取得したのちに、P2P型のデータ送受信によってメッセージや添付ファイルなどを他の通信端末に送信する。
ただし、以下では、通信端末のそれぞれが、チャットサーバ400に生成されたチャットルームを介して、メッセージや添付ファイルを送受信する場合について説明する。そして、第1の携帯電話100Aが新たなチャットルームを生成し、当該チャットルームに第2の携帯電話100Bを招待する場合について説明する。
まず、第1の携帯電話100A(図2において端末A)が、チャットサーバ400にIP登録(ログイン)を要求する(ステップS0002)。第1の携帯電話100Aは、同時にIPアドレスを取得してもよいし、予めIPアドレスを取得していてもよい。より詳細には、第1の携帯電話100Aは、キャリア網700、メール送信サーバ(チャットサーバ400)、インターネット網500を介して、チャットサーバ400に第1の携帯電話100AのメールアドレスとIPアドレスと第2の携帯電話100Bのメールアドレスと新たなチャットルームの生成を要求するメッセージとを送信する。
チャットサーバ400は、その要求に応じて、第1の携帯電話100AのメールアドレスをそのIPアドレスに対応付けて格納する。そして、チャットサーバ400は、第1の携帯電話100Aのメールアドレスと第2の携帯電話100Bのメールアドレスとに基づいて、ルーム名を生成し、当該ルーム名のチャットルームを生成する。このとき、チャットサーバ400は、チャットルームの生成が完了した旨を第1の携帯電話100Aに通知してもよい。チャットサーバ400は、ルーム名と参加中の通信端末のIPアドレスとを対応付けて格納する。
あるいは、第1の携帯電話100Aは、第1の携帯電話100Aのメールアドレスと第2の携帯電話100Bのメールアドレスとに基づいて、新たなチャットルームのルーム名を生成し、当該ルーム名をチャットサーバ400に送信する。チャットサーバ400は、ルーム名に基づいて、新たなチャットルームを生成する。
第1の携帯電話100Aは、新たなチャットルームを生成したこと、すなわちチャットルームへの招待を示すP2P参加要請メールを第2の携帯電話100Bに送信する(ステップS0004、ステップS0006)。より詳細には、第1の携帯電話100Aは、キャリア網700、メール送信サーバ(チャットサーバ400)、インターネット網500を介して、P2P参加要請メールを第2の携帯電話100Bに送信する(ステップS0004、ステップS0006)。ただし、チャットサーバ400が、コンテンツサーバ600の役割を兼ねるものであってもよい。
第2の携帯電話100Bは、P2P参加要請メールを受信すると(ステップS0006)、第1の携帯電話100Aのメールアドレスと第2の携帯電話100Bのメールアドレスとに基づいてルーム名を生成し、チャットサーバ400に第2の携帯電話100BのメールアドレスとIPアドレスとそのルーム名を有するチャットルームへ参加する旨のメッセージとを送信する(ステップS0008)。第2の携帯電話100Bは、同時にIPアドレスを取得してもよいし、先にIPアドレスを取得してからチャットサーバ400にアクセスしてもよい。
チャットサーバ400は、そのメッセージを受け付けて、第2の携帯電話100Bのメールアドレスがルーム名に対応するものであるか否かを判断した上で、第2の携帯電話100BのメールアドレスをIPアドレスに対応付けて格納する。そして、チャットサーバ400は、第1の携帯電話100Aに、第2の携帯電話100Bがチャットルームに参加した旨と第2の携帯電話100BのIPアドレスとを送信する(ステップS0010)。同時に、チャットサーバ400は、第2の携帯電話100Bに、チャットルームへの参加を受け付けた旨と第1の携帯電話100AのIPアドレスとを送信する。
第1の携帯電話100Aと第2の携帯電話100Bは、相手のメールアドレスやIPアドレスを取得して、互いを認証する(ステップS0012)。認証が完了すると、第1の携帯電話100Aと第2の携帯電話100Bとは、P2P通信(チャット通信)を開始する(ステップS0014)。P2P通信中の動作概要については、後述する。
第1の携帯電話100Aが、第2の携帯電話100BにP2P通信を切断する旨のメッセージを送信すると(ステップS0016)、第2の携帯電話100Bは、第1の携帯電話100Aに切断する要求を受け付けた旨のメッセージを送信する(ステップS0018)。第1の携帯電話100Aは、チャットサーバ400にチャットルームを削除する要求を送信し(ステップS0020)、チャットサーバ400はチャットルームを削除する。
以下、図2と図3とを参照して、本実施の形態に係るネットワークシステム1の動作概要をより具体的に説明する。図3は、本実施の形態に係る動作概要に沿った通信端末の表示態様の推移を示したイメージ図である。なお、以下では、第1の携帯電話100Aと第2の携帯電話100Bとが、地図画像(第2のコンテンツ)を背景として表示しながら、手描き画像(第1のコンテンツ)を送受信する場合について説明する。
図3(A)に示すように、まず、第1の携帯電話100Aのユーザが地図画像などをダウンロードして、地図画像を閲覧している。第1の携帯電話100Aのユーザが、地図画像について第2の携帯電話100Bのユーザとチャットを行いたい場合、第1の携帯電話100Aはチャット開始の命令を受け付ける。図3(B)に示すように、第1の携帯電話100Aは、相手ユーザの選択命令を受け付ける。
ここでは、図3(C)に示すように、第1の携帯電話100Aは、地図画像を添付ファイル(あるいは本文)として、コンテンツサーバ600を介して第2の携帯電話100Bへと送信する(ステップS0004)。図3(D)に示すように、第2の携帯電話100Bは、地図画像を含むメールを受信して(ステップS0006)、地図画像を表示する。
ただし、第1の携帯電話100Aは、第2の携帯電話100Bに、地図画像を取得するためのURL(Uniform Resource Locator)と地図画像を特定するための情報とを送信してもよい。そして、第2の携帯電話100Bが、当該URLに基づいて、コンテンツサーバ600から第1の携帯電話100Aと同じ地図画像をダウンロードしてもよい。
さらに、第1の携帯電話100Aと第2の携帯電話100Bとは、P2P通信開始後に、地図画像をコンテンツサーバ600からダウンロードしてもよい。たとえば、第1の携帯電話100Aが、P2P通信によって、地図画像を取得するためのURLと地図画像を特定するための情報とを第2の携帯電話100Bに送信したり、地図画像自体を第2の携帯電話100Bに送信したりしてもよい。
図3(E)に示すように、第1の携帯電話100Aは、第2の携帯電話100BとP2P通信接続しない間は、メール送信を繰り返すことができる。第1の携帯電話100Aは、メール送信が完了すると、チャットサーバ400に自身のIPアドレスを登録し、第1の携帯電話100Aのメールアドレスと第2の携帯電話100Bのメールアドレスとに基づいて新たなチャットルームを生成するように要求する(ステップS0002)。
図3(F)に示すように、第2の携帯電話100Bは、チャットを開始する旨の命令を受け付けて、チャットサーバ400に、ルーム名とチャットルームに参加する旨のメッセージと自身のIPアドレスとを送信する(ステップS0008)。第1の携帯電話100Aは第2の携帯電話100BのIPアドレスを取得して、第2の携帯電話100Bは第1の携帯電話100AのIPアドレスを取得して(ステップS0010)、互いを認証しあう(ステップS0012)。
これによって、図3(G)および図3(H)に示すように、第1の携帯電話100Aと第2の携帯電話100BとはP2P通信を行うことができる(ステップS0014)。すなわち、第1の携帯電話100Aがユーザから手描き画像の入力を受け付けて、地図画像上に当該手描き画像を表示する。また、第1の携帯電話100Aは、手描きデータを第2の携帯電話100Bに送信する。第2の携帯電話100Bは、第1の携帯電話100Aからの手描きデータに基づいて、地図画像上に手描き画像を表示する。
第2の携帯電話100Bがユーザから手描き画像の入力を受け付けて、地図画像上に当該手描き画像を表示する。また、第2の携帯電話100Bは、手描きデータを第1の携帯電話100Aに送信する。第2の携帯電話100Bは、第1の携帯電話100Aからの手描きデータに基づいて、地図画像上に手描き画像を表示する。
そして、第1の携帯電話100AがP2P通信を切断した後(ステップS0016、ステップS0018)、図3(I)に示すように、第2の携帯電話100Bは第1の携帯電話100Aなどにメール送信を行うことができる。なお、P2P通信をTCP/IP通信方式で、メールの送受信をHTTP通信方式で行なうことも可能である。すなわち、P2P通信中にメール送受信を行なうことも可能である。
なお、図65は、本実施の形態に係るネットワークシステム1における動作概要の変形例を示すシーケンス図である。図2は、チャットサーバ400がメール送信サーバの役割を果たす場合の動作概要である。一方、図65は、コンテンツサーバ600がメール送信サーバの役割を果たす場合の動作概要である。なお、メール送信サーバは、チャットサーバ400やコンテンツサーバ600とは別の装置であってもよい。
<ネットワークシステム1における手描きデータの送受信に関する動作概要>
次に、手描きデータの送受信に関する動作概要についてさらに詳細に説明する。図4は、手描きデータの送受信に関する動作概要を示す第1のイメージ図である。図5は、手描きデータの送受信に関する動作概要を示す第2のイメージ図である。
図4(a)を参照して、ユーザが第1の携帯電話100Aに手描き画像を入力する。本実施の形態においては、ユーザは、手描き画像と、当該手描き画像を表示するための位置の指定とを入力する。第1の携帯電話100Aは、そのディスプレイ107Aに、ユーザが指定した位置を示すための画像107Yと、手描き画像107Xとを表示する。第1の携帯電話100Aは、指定位置情報と手描きデータとを第2の携帯電話100Bに送信する。
なお、第1の携帯電話100Aは、位置の指定を受け付けてから手描き画像の入力を受け付けてもよいし、手描き画像の入力を受け付けてから位置の指定を受け付けてもよい。本実施の形態においては、前者の形態について説明する。
第2の携帯電話100Bは、第1の携帯電話100Aから、指定位置情報と、手描きデータとを受信する。第2の携帯電話100Bは、指定位置情報に基づいて、そのディスプレイ107Bの指定位置の近傍に手描きデータを表示する。ここでは、第2の携帯電話100Bが、指定位置を示す画像107Yと、手描き画像107Xの全部とを表示できる。
すなわち、図4(a)に示す状態では、第2の携帯電話100Bが、手描き画像107Xの全部を表示できるように、地図画像を表示している。第2の携帯電話100Bは、ディスプレイ107Bあるいは地図画像を表示するウインドウの端部に、スクロールバー107Zを表示する。スクロールバーの位置から明らかなように、図4に示す状態では、第2の携帯電話100Bは、指定位置がディスプレイ107Bの略中央に位置するように、地図画像と手描き画像とを表示している。
図4(b)を参照して、第2の携帯電話100Bがユーザから画面をスクロールするための指示を受け付けると、第2の携帯電話100Bはスクロールバー107Zを移動させるとともに、地図画像の表示領域を変更する。ここでは、指定位置がディスプレイ107Bの右端近傍に位置するように、地図画像がスクロールされている。
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ107Bは手描き画像の全てを表示することができない。そのため、第2の携帯電話100Bは、指定位置の近傍であって、手描き画像が全て表示できる位置に、手描き画像を表示し直す。すなわち、第2の携帯電話100Bは、指定位置の近傍であって、手描き画像の全てを表示できる位置に、手描き画像を表示する。
図4(c)を参照して、第2の携帯電話100Bがユーザから画面をスクロールするための指示をさらに受け付けると、第2の携帯電話100Bはスクロールバー107Zをさらに移動させるとともに、地図画像の表示領域を変更する。ここでは、指定位置がディスプレイ107の外側に位置するように、地図画像がスクロールされている。
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ107Bは手描き画像の全てを表示することができない。指定位置を示す画像107Yがディスプレイ107Bに表示されないため、第2の携帯電話100Bは、手描き画像が第1の携帯電話100Aで入力されたことを示す情報とともに、ディスプレイ107Bあるいはウインドウの端部などに手描き画像を表示する。換言すれば、第2の携帯電話100Bは、指定位置が表示領域外に位置する場合には、手描き画像をディスプレイ107やウインドウの所定の領域に表示する。ただし、指定位置が表示領域外に位置する場合に、手描き画像を表示することなく、手描き画像が存在する旨を示す記号をディスプレイ107やウインドウの所定の領域に表示してもよい。
あるいは、図5を参照して、ユーザが第3の携帯電話100Cに手描き画像を入力する。図5においては、第3の携帯電話100Cのディスプレイ107Cは、第2の携帯電話100Bのディスプレイ107Bのよりも広い。前述したように、本実施の形態においては、ユーザは、入力される手描き画像に対する位置の指定と、手描き画像とを入力する。第3の携帯電話100Cは、そのディスプレイ107Cに、ユーザが指定した位置を示すための画像107Yと、手描き画像107Xとを表示する。第3の携帯電話100Cは、指定位置情報と、手描きデータとを第2の携帯電話100Bに送信する。
第2の携帯電話100Bは、第3の携帯電話100Cから、指定位置情報と、手描きデータとを受信する。第2の携帯電話100Bは、指定位置情報に基づいて、そのディスプレイ107Bの指定位置の近傍に手描きデータを表示する。ここでは、第2の携帯電話100Bにおいて、指定位置がディスプレイ107Bの右端近傍に位置するように、地図画像がスクロールされている。
この場合、スクロール前における指定位置と手描き画像との相対的な位置関係を維持すると、ディスプレイ107Bは手描き画像の全てを表示することができない。そのため、第2の携帯電話100Bは、指定位置の近傍であって、手描き画像が全て表示できる位置に、手描き画像を表示し直す。すなわち、第2の携帯電話100Bは、指定位置の近傍であって、手描き画像の全てを表示できる位置に、手描き画像を表示する。
このように、本実施の形態に係るネットワークシステム1においては、手描き画像の送信側の携帯電話100は、手描きデータとともに指定位置を送信する。一方、受信側の携帯電話100は、指定位置に基づいて、手描き画像を、その全部がディスプレイ107に収まるように、表示する。その結果、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める表示位置に対応する位置に表示できるようになる。
以下、このような機能を実現するためのネットワークシステム1の構成について詳述する。
<携帯電話100のハードウェア構成>
本実施の形態に係る携帯電話100のハードウェア構成について説明する。図6は、本施の形態に係る携帯電話100の外観を示すイメージ図である。図7は、本施の形態に係る携帯電話100のハードウェア構成を示すブロック図である。
図6および図7に示すように、本実施の形態に係る携帯電話100は、外部のネットワークとの間でデータを送受信する通信デバイス101と、プログラムや各種データベースを記憶するメモリ103と、CPU(Central Processing Unit)106と、ディスプレイ107と、外部音声が入力されるマイク108と、音声を出力するスピーカ109と、各種情報の入力を受け付ける各種ボタン110と、外部からの通信データや通話信号を受信した旨の音声を出力する第1の通知部111と、外部からの通信データや通話信号を受信した旨を表示する第2の通知部112とを含む。
本実施の形態に係るディスプレイ107は、液晶パネルやCRTから構成されるタッチパネル102を実現する。すなわち、本実施の形態に係る携帯電話100は、ディスプレイ107の下側(裏側)にペンタブレット104が敷設されている。これによって、ユーザはスタイラスペン120などを用いることによって、ペンタブレット104を介して、図形情報などをCPU106に手描き入力することができる。
なお、ユーザは、以下の方法によっても、手描き入力を行うことが可能である。すなわち、赤外線や音波を出力する特殊なペンを利用することによって、そのペンから発信される赤外線や音波を受信する受信部によってペンの動きを割り出す。この場合、当該受信部を軌跡を記憶する装置に接続することによって、CPU106が当該装置から出力される軌跡を手描き入力として受信することができる。
あるいは、ユーザは、静電パネルに対して、指、または、静電対応のペンを用いて手描き画像を書くことも可能である。
このようにして、ディスプレイ107(タッチパネル102)は、CPU106が出力したデータに基づいて、画像やテキストを表示する。
各種ボタン110は、キー入力操作などによってユーザから情報を受け付ける。たとえば、各種ボタン110は、通話を受け付けたり、通話を発したりするためのTELボタン110Aと、メールを受け付けたり、メールを発したりするためのメールボタン110Bと、P2P通信を受け付けたり、P2P通信を発したりするためのP2Pボタン110Cと、アドレス帳データを呼び出すアドレス帳ボタン110Dと、各種の処理を終了させるための終了ボタン110Eとを含む。すなわち、各種ボタン110は、通信デバイス101を介してP2P参加要請メールを受信したときに、ユーザから、チャットルームへ参加する命令や、メールの内容を表示させる命令などを選択可能に受け付ける。
第1の通知部111は、スピーカ109などを介して着信音を出力する。あるいは、第1の通知部111は、バイブレーション機能を有する。第1の通知部111は、着呼した際や、メールを受信した際や、P2P参加要請メールを受信した際に、音声を出力したり、携帯電話100を振動させたりする。
第2の通知部112は、着信したときに点滅するTEL用LED(Light Emitting Diode)112Aと、メールを受信したときに点滅するメール用LED112Bと、P2P通信を受信したときに点滅するP2P用LED112Cを含む。
CPU106は、携帯電話100の各部を制御する。たとえば、各種ボタン110を介してユーザから各種命令を受け付けて、通信デバイス101や通信デバイス101やネットワークを介して外部の通信端末とデータの送受信を行う。
通信デバイス101および通信デバイス101は、CPU106からの通信データを通信信号に変換し、その通信信号を図示しないアンテナを介して発信する。通信デバイス101および通信デバイス101は、アンテナを介して受信した通信信号を通信データに変換し、その通信データをCPU106に入力する。
メモリ103は、作業用メモリとして機能するRAM(Random Access Memory)や、制御プログラムなどを格納するROM(Read Only Memory)や、画像データなどを記憶するハードディスクなどによって実現される。図8(a)は、メモリ103を構成する各種のワークメモリ103Aのデータ構造を示すイメージ図である。図8(b)は、メモリ103が記憶するアドレス帳データ103Bを示すイメージ図である。図8(c)は、メモリ103が記憶する自端末データ103Cを示すイメージ図である。図8(d)は、メモリ103が記憶する自端末のIPアドレスデータ103Dと他端末のIPアドレスデータ103Eとを示すイメージ図である。
図8(a)に示すように、メモリ103のワークメモリ103Aは、発信者の電話番号を格納するRCVTELNO領域、受信メールに関する情報を格納するRCVMAIL領域、送信メールに関する情報を格納するSENDMAIL領域、選択されたアドレスのメモリNoを格納するSEL領域、生成されたルーム名を格納するROOMNAME領域などを含む。なお、ワークメモリ103Aは、電話番号を格納しなくてもよい。受信メールに関する情報は、MAIN領域に格納されるメール本文と、RCVMAILのFROM領域に格納されるメール送信元のメールアドレスを含む。送信メールに関する情報は、MAIN領域に格納されるメール本文と、RCVMAILのTO領域に格納されるメール送信先のメールアドレスとを含む。
図8(b)に示すように、アドレス帳データ103Bは、宛先(他の通信端末)毎にメモリNoを対応付けている。そして、アドレス帳データ103Bは、宛先毎に、名前、電話番号、メールアドレスなどを互いに対応付けて格納する。
図8(c)に示すように、自端末データ103Cは、自端末のユーザの名前、自端末の電話番号、自端末のメールアドレスなどを格納する。
図8(d)に示すように、自端末のIPアドレスデータ103Dは、自端末のIPアドレスを格納する。他端末のIPアドレスデータ103Eは、他端末のIPアドレスを格納する。
本実施の形態に係る携帯電話100の各々は、図8に示すデータを利用することによって、前述したような方法で(図1〜図3を参照。)、他の通信端末との間でデータを送受信することができる。
以下では、ディスプレイ107に表示される画像データのデータ構造、すなわちメモリ103やCPU106が取り扱う画像データのデータ構造について説明する。図9は、本実施の形態に係る画像データのデータ構造を示すイメージ図である。
図9(a)を参照して、指定位置がディスプレイ107の表示領域外である場合、CPU106がディスプレイ107に表示する画像データ1030aは、地図画像などの背景を表わすレイヤー1031aと、指定位置を表わすためのレイヤー1032a(図9(a)では指定位置が含まれていない。)と、手描き画像107Xや指定位置を示す画像107Yを表わすためのレイヤー1033aとを含む。すなわち、メモリ103は、画像データ1030aとして、レイヤー1031a〜1033aを格納する。CPU106は、メモリ103からレイヤー1031a〜1033aのデータを読み出して、背景や、手描き画像を表示する。
なお、指定位置を表すためのレイヤーは、手描き画像107Xや指定位置を示す画像107Yを表わすためのレイヤーと、同一レイヤーであってもよい。
図9(b)を参照して、指定位置がディスプレイ107の表示領域内である場合、CPU106がディスプレイ107に表示する画像データ1030bは、地図画像などの背景を表わすレイヤー1031bと、指定位置を表わすためのレイヤー1032bと、手描き画像107Xや指定位置を示す画像107Yを表わすためのレイヤー1033bとを含む。すなわち、メモリ103は、画像データ1030bとして、レイヤー1031b〜1033bを格納する。CPU106は、メモリ103からレイヤー1031b〜1033bのデータを読み出して、背景や、手描き画像を表示する。
<チャットサーバ400およびコンテンツサーバ600のハードウェア構成>
次に、本実施の形態に係るチャットサーバ400およびコンテンツサーバ600のハードウェア構成について説明する。以下では、まず、チャットサーバ400のハードウェア構成について説明する。
図10は、本実施の形態に係るチャットサーバ400のハードウェア構成を示すブロック図である。図10に示すように、本実施の形態に係るチャットサーバ400は、相互に内部バス408で接続されたCPU405と、メモリ406と、固定ディスク407と、サーバ通信デバイス409とを含む。
メモリ406は、各種の情報を記憶するものであって、たとえば、CPU405でのプログラムの実行に必要なデータを一時的に記憶する。固定ディスク407は、CPU405が実行するプログラムやデータベースを記憶する。CPU405は、チャットサーバ400の各要素を制御するものであって、各種の演算を実施する装置である。
サーバ通信デバイス409は、CPU405が出力したデータを電気信号へと変換して外部へ送信し、外部から受信した電気信号をデータに変換してCPU405に入力する。具体的には、サーバ通信デバイス409は、CPU405からのデータを、インターネット網500やキャリア網700などを介して、携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300やゲーム機や電子辞書や電子BOOKなどのネットワークに接続可能な機器に送信する。そして、サーバ通信デバイス409は、インターネット網500やキャリア網700を介して、携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300やゲーム機や電子辞書や電子BOOKなどのネットワークに接続可能な機器から受信したデータを、CPU405に入力する。
ここで、メモリ406あるいは固定ディスク407に記憶されるデータについて説明する。図11(a)は、チャットサーバ400のメモリ406あるいは固定ディスク407に記憶されるルーム管理テーブル406Aのデータ構造を示す第1のイメージ図であって、図11(b)は、チャットサーバ400のメモリ406あるいは固定ディスク407に記憶されるルーム管理テーブル406Aのデータ構造を示す第2のイメージ図である。
図11(a)および図11(b)に示すように、ルーム管理テーブル406Aは、ルーム名とIPアドレスとを対応付けて格納する。たとえば、ある時点においては、図11(a)に示すように、チャットサーバ400にルーム名Rを有するチャットルーム、ルーム名Sを有するチャットルーム、ルーム名Tを有するチャットルームが生成されている。そして、ルーム名Rを有するチャットルームには、AというIPアドレスを有する通信端末と、CというIPアドレスを有する通信端末が入室している。ルーム名Sを有するチャットルームには、BというIPアドレスを有する通信端末が入室している。ルーム名Tを有するチャットルームには、DというIPアドレスを有する通信端末が入室している。
後述するように、ルーム名Rは、CPU406が、AというIPアドレスを有する通信端末のメールアドレスとBというIPアドレスを有する通信端末のメールアドレスに基づいて決定する。図11(a)に示す状態において、ルーム名Sを有するチャットルームに新たにEというIPアドレスを有する通信端末が入室すると、図11(b)に示すように、ルーム管理テーブル406Aはルーム名SとIPアドレスEとを対応付けて格納する。
具体的には、チャットサーバ400においては、第1の携帯電話100Aが新たなチャットルームの生成を要求してきた際(図2におけるステップS0002)に、CPU405が、第1の携帯電話100Aのメールアドレスと第2の携帯電話100Bのメールアドレスとに基づいてルーム名を生成した上で、ルーム管理テーブル406Aに当該ルーム名と第1の携帯電話100AのIPアドレスとを対応付けて格納する。
そして、第2の携帯電話100Bがチャットサーバ400にチャットルームへの参加を要求してきた際(図2におけるステップS0008)に、CPU405が、ルーム管理テーブル406Aに当該ルーム名と第2の携帯電話100BのIPアドレスとを対応付けて格納する。CPU406は、ルーム管理テーブル406Aから、当該ルーム名に対応する第1の携帯電話100AのIPアドレスを読み出す。CPU406は、第1の携帯電話100AのIPアドレスを第2の各通信端末に送信し、第2の携帯電話100BのIPアドレスを第1の携帯電話100Aに送信する。
次に、コンテンツサーバ600のハードウェア構成について説明する。図10に示すように、本実施の形態に係るコンテンツサーバ600は、相互に内部バス608で接続されたCPU605と、メモリ606と、固定ディスク607と、サーバ通信デバイス609とを含む。
メモリ606は、各種の情報を記憶するものであって、たとえば、CPU605でのプログラムの実行に必要なデータを一時的に記憶する。固定ディスク607は、CPU605が実行するプログラムやデータベースを記憶する。CPU605は、コンテンツサーバ600の各要素を制御するものであって、各種の演算を実施する装置である。
サーバ通信デバイス609は、CPU605が出力したデータを電気信号へと変換して外部へ送信し、外部から受信した電気信号をデータに変換してCPU605に入力する。具体的には、サーバ通信デバイス609は、CPU605からのデータを、インターネット網500やキャリア網700などを介して、携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300やゲーム機や電子辞書や電子BOOKなどのネットワークに接続可能な機器に送信する。そして、サーバ通信デバイス609は、インターネット網500やキャリア網700を介して、携帯電話100やカーナビゲーション装置200やパーソナルコンピュータ300やゲーム機や電子辞書や電子BOOKなどのネットワークに接続可能な機器から受信したデータを、CPU605に入力する。
コンテンツサーバ600のメモリ606あるいは固定ディスク615は、手描きチャット通信の背景画像として利用されるコンテンツ(第2のコンテンツ)、たとえば地図画像などを記憶する。コンテンツサーバ600のCPU605は、サーバ通信デバイス609を介して、通信端末からコンテンツの指定を受信する。コンテンツサーバ600のCPU605は、コンテンツの指定に基づいて、当該指定に対応するコンテンツをメモリ606から読み出して、サーバ通信デバイス609を介して当該コンテンツを通信端末へ送信する。
より詳細には、コンテンツサーバ600は、コンテンツの指定として、コンテンツの種類や、コンテンツの領域などを受け付ける。コンテンツの種類の指定とは、地図画像や写真画像などのような画像データの種類の指定や、地図の縮尺の指定などを含む。コンテンツの領域の指定とは、大きいサイズのコンテンツにおける一部の領域の指定(たとえば、緯度・経度情報など。)を含む。
<携帯電話100における通信処理>
次に、本実施の形態に係る携帯電話100におけるP2P通信処理について説明する。図12は、本実施の形態に係る携帯電話100におけるP2P通信処理の処理手順の第1の例を示すフローチャートである。図13は、本実施の形態に係る送信データのデータ構造を示すイメージ図である。図14は、ディスプレイ107(タッチパネル102)が示す画面を示す第1のイメージ図である。図15は、本実施の形態に係る送信データを説明するための第1のイメージ図である。
以下では、チャットルームが既に開設されている状態、すなわち、P2P通信が設立されている状態における、第1の携帯電話100Aから第2の携帯電話100Bへと手描きデータが送信される場合について説明する。
図12に示すように、まず、第1の携帯電話100A(送信側)のCPU106は、通信デバイス101を介して、チャットサーバ400からチャット通信に関するデータを取得する(ステップS002)。同様に、第2の携帯電話100B(受信側)のCPU106も、通信デバイス101を介して、チャットサーバ400からチャット通信に関するデータを取得する(ステップS004)。
なお、「チャット通信に関するデータ」は、チャットルームのID、メンバーの端末情報、お知らせ(告知情報)、この時点までのチャット内容などを含む。
第1の携帯電話100AのCPU106は、通信デバイス101を介して、コンテンツサーバ600から背景情報としての地図画像を取得する(ステップS006)。より詳細には、CPU106は、通信デバイス101を介して、コンテンツサーバ600に、地図の中心を示す情報(図13の(g))と、地図の縮尺を示す情報(図13の(h))と、地図画像のサイズを示す情報(図13の(i))とを送信する。コンテンツサーバ600のCPU605は、第1の携帯電話100Aからの情報に基づいて、メモリ606から当該情報に対応する地図画像を読み出す。CPU605は、サーバ通信デバイス609を介して、地図画像を第1の携帯電話100Aに送信する。
同様に、第2の携帯電話100BのCPU106も、通信デバイス101を介して、コンテンツサーバ600から背景としての地図画像を取得する(ステップS008)。なお、ここでは、第1の携帯電話100Aと第2の携帯電話100Bとが、チャット通信中に背景データを取得する例を示したが、これに限られず、第1の携帯電話100Aと第2の携帯電話100Bとが、チャット通信前に背景データを取得していてもよい。
第1の携帯電話100AのCPU106は、タッチパネル102に、地図画像を表示させる(ステップS010)。同様に、第2の携帯電話100BのCPU106は、タッチパネル102に、地図画像を表示させる(ステップS012)。
図14に示すように、ステップS010およびステップS012において、ディスプレイ107には、地図画像が表示される。
第1の携帯電話100AのCPU106は、タッチパネル102を介して、地図画像内の位置を指定するための命令を受け付ける(ステップS014)。第1の携帯電話100AのCPU106は、タッチパネル102を介して、手描き画像の入力を受け付ける(ステップS016)。このとき、CPU106は、指定位置(ポイント)を示すための画像(以下では、ポイント位置を指す記号、あるいは単にポイント画像ともいう。)の選択や、当該画像の位置と指定位置との関係なども受け付けてもよい。CPU106は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けて、メモリ103に記憶する。
CPU106は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けた送信データを作成する(ステップS018)。より詳細には、図13および図15に示すように、送信データは、指定位置を示す情報(図13の(a))と、指定位置を示すための画像(ポイント画像)のイメージデータ(図13の(b))と、指定位置を示す画像を表示するための領域を特定するための情報(図13の(c))と、手描き画像を表示するための領域を特定するための情報(図13の(d))と、手描きデータ(図13の(e))と、手描き画像を表示するための領域(図13の(f))と、地図の中心を示す情報(図13の(g))と、地図の縮尺を示す情報(図13の(h))と、地図画像のサイズを示す情報(図13の(i))とを含む。
CPU106は、通信デバイス101を介して、送信データを第2の携帯電話100Bに送信する(ステップS020)。第2の携帯電話100BのCPU106は、通信デバイス101を介して、送信データを受信する(ステップS022)。
第2の携帯電話100BのCPU106は、送信データを解析する(ステップS024)。CPU106は、地図の中心を示す情報(図13の(g))と、地図の縮尺を示す情報(図13の(h))と、地図画像のサイズを示す情報(図13の(i))とに基づいて、コンテンツサーバ600から地図画像を受信する(ステップS026)。CPU106は、地図画像をディスプレイ107に表示させる(ステップS028)。
図16は、ディスプレイ107(タッチパネル102)が示す画面を示す第2のイメージ図である。図16に示すように、ステップS028において、CPU106は、送信データと地図画像とに基づいて、ディスプレイ107に手描き画像が描かれた背景画像を表示させる。
図17は、本実施の形態に係る送信データを説明するための第2のイメージ図である。図16および図17を参照して、指定位置を示すための画像のイメージデータ(図13の(b))は、矢印を示す画像、フキダシを示す画像、線、イメージ画像、三角、丸、十字カーソルであってもよい。指定位置を示す画像を表示するための領域を特定するための情報(図13の(c))は、矢印に外接する矩形の頂点を示す4つの座標であってもよいし、フキダシに外接する矩形の頂点を示す4つの座標であってもよい。
手描き画像を表示するための領域を特定するための情報(図13の(d))は、ポイント画像が表示される領域(以下では、手描きデータ領域ともいう。)の外側の矩形の頂点を示す4つの座標であってもよいし、ポイント画像が表示される領域内の矩形の頂点を示す4つの座標であってもよいし、ポイント画像が表示される領域の内側と外側とにまたがる矩形の頂点を示す4つの座標であってもよい。
図18は、本実施の形態に係る携帯電話100におけるP2P通信処理の処理手順の第2の例を示すフローチャートである。図12および図18を参照して、第1の例と第2の例とは、第1の例のステップS018(第2の例におけるステップS068)以降の処理において異なる。そのため、第1の例と第2の例は、ステップS018(ステップS068)より前の処理について同様であるため、ここでは説明を繰り返さない。
図18を参照して、第2の例では、CPU106は、手描きデータと指定位置と指定位置を示す画像に関する情報とを対応付けた送信データを作成する(ステップS068)。より詳細には、図13および図15に示すように、送信データは、指定位置を示す情報(図13の(a))や、指定位置を示すための画像(ポイント画像)のイメージデータ(図13の(b))や、指定位置を示す画像を表示するための領域を特定するための情報(図13の(c))や、手描き画像を表示するための領域を特定するための情報(図13の(d))や、手描きデータ(図13の(e))や、手描き画像を表示するための領域(図13の(f))とを含む。
CPU106は、通信デバイス101を介して、送信データを第2の携帯電話100Bに送信する(ステップS070)。第2の携帯電話100BのCPU106は、通信デバイス101を介して、送信データを受信する(ステップS072)。
第2の携帯電話100BのCPU106は、送信データを解析する(ステップS074)。図16に示すように、CPU106は、既に取得している地図画像と受信した送信データとに基づいて、ディスプレイ107に手描き画像が描かれた背景画像を表示させる(ステップS078)。すなわち、第2の例では、第2の携帯電話100Bが、第1の携帯電話100Aと同様の背景データに基づいて、背景を表示していることが好ましい。
参考のために、図19に、HTTP(HyperText Transfer Protocol)に基づいてチャット通信が行なわれる場合の送信データの一例を示す。図20に、TCP/IP(Transmission Control Protocol/Internet Protocol)に基づいてチャット通信が行なわれる場合の送信データの一例を示す。
<携帯電話100における地図ポインティング処理>
次に、本実施の形態に係る携帯電話100における地図ポインティング処理について説明する。図21は、本実施の形態に係る携帯電話100における地図ポインティング処理の処理手順を示すフローチャートである。図22は、本実施の形態に係るポインティング処理中の画面を示す第1のイメージ図である。図23は、本実施の形態に係るポインティング処理中の画面を示す第2のイメージ図である。図24は、地図ポインティング処理において取得される座標を説明するためのイメージ図である。
図21を参照して、CPU106は、タッチパネル102を介して、ユーザから位置指定スタンプ(指定位置を示す画像)の選択命令を受け付ける(ステップS102)。より詳細には、図22に示すように、CPU106は、タッチパネル102に、位置指定ボタン1071と、フキダシボタン1072と、矢印ボタン1073と、矩形ボタン1074と、手描きボタン1075と、設定ボタン1076とを表示させる。CPU106は、タッチパネル102を介して、位置指定ボタン1071が押下されたことを検知することによって、位置指定スタンプの選択命令を受け付ける。
CPU106は、タッチパネル102を介して、ユーザから位置指定スタンプを押下するための命令を受け付ける(ステップS104)。より詳細には、図23に示すように、CPU106は、スタイラスペン120あるいは指がタッチパネル102にタッチしたことを検知する。
図24を参照して、CPU106は、タッチ位置に基づいて、スタンプの中央座標(A)を取得する(ステップS106)。スタンプの中央座標(A)は、背景画像の位置を特定するための情報であればよい。たとえば、スタンプの中央座標(A)は、タッチパネル102あるいはウインドウの右上を(0,0)とした場合の、タッチパネル102あるいはウインドウ内におけるスタンプの位置を特定するものである。
CPU110は、背景である地図画像の中央座標(G)を取得する(ステップS108)。地図画像の中央座標(G)とは、現在表示対象となっている地図画像の右上を(0,0)とした場合の、当該地図画像内におけるタッチパネル102あるいはウインドウの中心を特定するものである。
CPU110は、座標(A)および座標(G)に基づいて、ポイント位置座標(データ(a))を取得する(ステップS110)。すなわち、CPU106は、座標(G)に基づいて、ディスプレイ107あるいはウインドウ内におけるスタンプの座標(A)(画面座標系)を、地図画像におけるスタンプの座標(a)(画像座標系)に変換する。CPU110は、データ(a)をメモリ103に格納する(ステップS112)。
<携帯電話100における図形入力処理>
次に、本実施の形態に係る携帯電話100における図形入力処理について説明する。図25は、本実施の形態に係る携帯電話100における図形入力処理の処理手順を示すフローチャートである。図26は、本実施の形態に係る図形入力処理中の画面を示す第1のイメージ図である。図27は、本実施の形態に係る図形入力処理中の画面を示す第2のイメージ図である。図28は、本実施の形態に係る図形入力処理中の画面を示す第3のイメージ図である。図29は、本実施の形態に係る図形入力処理中の画面を示す第4のイメージ図である。
図25を参照して、CPU110は、タッチパネル102を介して、ユーザから記号スタンプを選択するための選択命令を受け付ける(ステップS202)。より詳細には、図26を参照して、CPU106は、タッチパネル102を介して、矢印ボタン1073が押下されたことを検知する。
CPU106は、タッチパネル102を介して、ユーザから記号スタンプを押下するための命令を受け付ける(ステップS204)。より詳細には、図27を参照して、CPU106は、タッチパネル102を介して、スタイラスペン120あるいは指が押下されたことを検知して、タッチ位置を取得する。CPU106は、タッチパネル102に、タッチ位置に対応する位置に、スタンプを表示する。
CPU106は、押下されたスタンプデータを内部イメージデータ(データ(b))に変換する(ステップS206)。CPU106は、タッチ位置に基づいて、押下されたスタンプの左上、右下の座標(データ(c))を取得する(ステップS208)。
CPU106は、タッチパネル102を介して、ユーザから表示位置の候補を示すためのスタンプの選択命令を受け付ける(ステップS210)。より詳細には、図28を参照して、CPU106は、タッチパネル102を介して、矩形ボタン1074が押下されたことを検出する。
CPU110は、タッチパネル102を介して、ユーザから表示位置の候補を示すためのスタンプの押下命令を受け付ける(ステップS212)。より詳細には、図29を参照して、CPU106は、タッチパネル102を介して、スタイラスペン120あるいは指が押下されたことを検知して、タッチ位置を取得する。CPU106は、タッチパネル102に、タッチ位置に対応する位置に矩形を表示させる。
CPU110は、押下されたスタンプの左上、右下の座標(データ(d))を取得する(ステップS214)。CPU106は、データ(b)、(c)、(d)をメモリ103に格納する(ステップS216)。
<携帯電話100における手描き入力処理>
次に、本実施の形態に係る携帯電話100における手描き入力処理について説明する。図30は、本実施の形態に係る携帯電話100における手描き入力処理の処理手順を示すフローチャートである。図31は、本実施の形態に係る手描き入力処理中の画面を示す第1のイメージ図である。図32は、本実施の形態に係る手描き入力処理中の画面を示す第2のイメージ図である。
図30を参照して、CPU106は、タッチパネル102を介して、ユーザから手描きスタンプの選択命令を受け付ける(ステップS302)。より詳細には、図31を参照して、CPU106は、タッチパネル102を介して、手描きボタン1075が押下されたことを検出する。
CPU110は、タッチパネル102を介して、ユーザからコメントなどの手描き画像の入力を受け付ける(ステップS304)。より詳細には、図32を参照して、CPU106は、タッチパネル102を介して、スタイラスペン120あるいは指のタッチ位置を順次取得することによって、タッチ位置の軌跡を取得する。CPU106は、タッチパネル102に手描き画像を表示させる。
CPU110は、手描きデータ領域の矩形取得処理(ステップS400)を実行する。なお、手描きデータ領域の矩形取得処理(ステップS400)については後述する。
CPU106は、手描きデータを内部イメージデータ(データ(e))に変換する(ステップS306)。ただし、CPU106は、ペンダウンからペンアップまで、所定の時間毎のペン座標を送信してもよい。たとえば、CPU106は、所定の時間毎に測定されたぞれぞれの接触座標(x1,y1)(x2,y2)(x3,y3)を、測定の都度、他の機器に送信してもよい。CPU106は、手描きデータの矩形の左上、右下の座標(データ(f))を取得する(ステップS308)。CPU106は、データ(e)、(f)をメモリ103に格納する(ステップS310)。
図形入力処理および手描き入力処理において生成される送信データのデータ構造について説明する。図33は、図形入力処理および手描き入力処理において生成された送信データを説明するためのイメージ図である。
図33を参照して、送信データは、データ(a)からデータ(g)を含む。また、前述したように、送信データは、データ(h)およびデータ(i)を含んでもよい。
なお、CPU106は、これらのデータ(a)からデータ(i)を、1つの送信データとして送信してもよいし、CPU106が取得する度に送信してもよい。また、CPU106は、手描きボタン以外のボタンの選択命令や、図示しない送信ボタンの押下を受け付けた際に手描きデータ(e)を送信してもよい。あるいは、CPU106は、一定時間毎に手描きデータ(e)を送信してもよい。あるいは、CPU106は、ストローク毎に手描き情報を送信してもよい。あるいは、CPU106は、手描き画像の差分情報のみを順次送信してもよい。
次に、本実施の形態に係る携帯電話100における手描きデータ領域の矩形取得処理について説明する。図34は、本実施の形態に係る携帯電話100における手描きデータ領域の矩形取得処理の処理手順を示すフローチャートである。
図34を参照して、CPU106は、タッチパネル102を介して、ユーザによって設定ボタン1076が押下されたか否かを判断する(ステップS402)。設定ボタン1076が押下されなかった場合(ステップS402においてNOである場合)、CPU106は、手描き処理(ステップS500)を実行する。なお、手描き処理(ステップS500)については後述する。
一方、設定ボタン1076が押下された場合(ステップS402にてYESである場合)、CPU106は、手描きデータ領域の矩形取得処理を終了する。
次に、本実施の形態に係る携帯電話100における手描き処理について説明する。図35は、本実施の形態に係る携帯電話100における手描き処理の処理手順を示すフローチャートである。図36は、本実施の形態に係る手描きデータ領域の変化を示すイメージ図である。
図35を参照して、CPU106は、タッチパネル102を介して、ペンダウン(タッチ操作)を受け付けたか否かを判断する(ステップS502)。CPU106は、ペンダウンを受け付けなかった場合(ステップS502においてNOである場合)、手描き処理を終了する。
CPU106は、ペンダウンを受け付けた場合(ステップS502にてYESである場合)、タッチ操作された座標(X,Y)を取得する(ステップS504)。CPU106は、手描きデータ領域が設定済みであるか否かを判断する(ステップS506)。より詳細には、CPU106は、手描きデータ領域の左上座標(X1,Y1)と右下座標(X2,Y2)が設定済みであるか否かを判断する。
手描きデータ領域が設定されている場合(ステップS506にてYESである場合)、CPU106は、手描きデータ領域の更新処理(ステップS600)を実行する。すなわち、後述するように、図36に示すように、手描きデータ領域は、手描き画像が入力されるたびに大きくなっていく場合があるため、手描き画像の入力中に、手描きデータ領域の更新処理が必要となる。なお、手描きデータ領域の更新処理(ステップS600)の詳細については後述する。
手描きデータ領域が未だ設定されていない場合(ステップS506にてNOである場合)、CPU106は、変数X1にXを代入し、変数X2にXの値を代入し、変数Y1にYの値を代入し、変数Y2にYの値を代入する(ステップS508)。CPU106は、タッチパネル102を介して、ペンがドラッグされたか否かを判断する(ステップS510)。ペンがドラッグされていない場合(ステップS510にてNOである場合)、CPU106は、ステップS514からの処理を実行する。
ペンがドラッグされた場合(ステップS510にてYESである場合)、CPU106は、タッチパネル102を介して、現在の座標(X,Y)を取得する(ステップS512)。CPU106は、手描きデータ領域の更新処理(ステップS600)を実行する。CPU106は、タッチパネル102を介して、ペンがアップされたか否か(一連のタッチ操作が終了したか否か)を判断する(ステップS514)。ペンがアップされなかった場合(ステップS514にてNOである場合)、CPU106は、ステップS510からの処理を繰返す。
ペンがアップされた場合(ステップS514にてYESである場合)、CPU106は、現在の座標(X,Y)を取得する(ステップS516)。CPU106は、手描きデータ領域の更新処理(ステップS600)を実行する。CPU106は、手描き処理を終了する。
図36(a)から(d)に示すように、手描き画像の入力が進行するに従って、手描きデータ領域は広がっていく。そのため、手描き画像入力が終了した時点、すなわち、本実施の形態においてはペンがアップされた時点、において手描きデータ領域を確定することが好ましい。本実施の形態においては、後述する手描きデータ領域の更新処理(ステップS600)において、一連のタッチ操作に対応する手描きデータ領域が随時更新されていくものである。
次に、本実施の形態に係る携帯電話100における手描きデータ領域の更新処理について説明する。図37は、本実施の形態に係る携帯電話100における手描きデータ領域の更新処理の処理手順を示すフローチャートである。以下では、手描きデータ領域の左上座標が(X1,Y1)であって、手描きデータ領域の右下座標が(X2,Y2)である場合について説明する。
図37を参照して、CPU106は、現在のタッチ位置のX座標が変数X1未満であるか否かを判断する(ステップS602)。XがX1未満である場合(ステップS602にてYESである場合)、CPU106は、変数X1にXの値を代入する(ステップS604)。CPU106は、ステップS610からの処理を実行する。
Xが変数X1以上である場合(ステップS602にてNOである場合)、CPU106は、タッチ位置のX座標が変数X2よりも大きいか否かを判断する(ステップS606)。Xが変数X2よりも大きい場合(ステップS606にてYESである場合)、CPU106は、変数X2にXの値を代入する。CPU106は、ステップS610からの処理を実行する。
Xが変数X2以下である場合(ステップS606にてNOである場合)、CPU106は、タッチ位置のY座標が変数Y1未満であるか否かを判断する(ステップS610)。Yが変数Y1未満である場合(ステップS610にてYESである場合)、CPU106は、変数Y1にYの値を代入する(ステップS612)。CPU106は、手描きデータ領域の更新処理を終了する。
Yが変数Y1以上である場合(ステップS610にてNOである場合)、CPU106は、タッチ位置のY座標が変数Y2よりも大きいか否かを判断する(ステップS614)。Yが変数Y2よりも大きい場合(ステップS614にてYESである場合)、CPU106は、変数Y2にYの値を代入する(ステップS616)。CPU106は、手描きデータ領域の更新処理を終了する。
Yが変数Y2以下である場合(ステップS614にてNOである場合)、CPU106は、手描きデータ領域の更新処理を終了する。
<携帯電話100における背景データ取得処理>
次に、本実施の形態に係る携帯電話100における背景データ取得処理について説明する。図38は、本実施の形態に係る携帯電話100における背景データ取得処理の処理手順を示すフローチャートである。
図38を参照して、CPU106は、データサイズ取得処理(ステップS800)を実行する。なお、データサイズ取得処理(ステップS800)については後述する。
CPU106は、通信デバイス101を介して、地図データベース(コンテンツサーバ600)に地図データを要求する(ステップS702)。より詳細には、CPU106は、通信デバイス101を介して、データ(g)、(h)、(i)を送信する。CPU106は、通信デバイス101を介して、コンテンツサーバ600からレスポンスを受信したか否かを判断する(ステップS704)。CPU106は、コンテンツサーバ600から、レスポンスを受信しなかった場合(ステップS704にてNOである場合)、ステップS704の処理を繰返す。
CPU106は、通信デバイス101を介して、コンテンツサーバ600からレスポンスを受信した場合(ステップS704にてYESである場合)、受信したデータを内部画像データに変換する(ステップS706)。CPU106は、背景レイヤに変換した背景データ(地図画像データ)を設定する(ステップS708)。CPU106は、背景データ取得処理を終了する。
次に、本実施の形態に係る携帯電話100におけるデータサイズ取得処理について説明する。図39は、本実施の形態に係る携帯電話100におけるデータサイズ取得処理の処理手順を示すフローチャートである。
図39を参照して、CPU106は、変数orgにtrueを代入する(ステップS802)。CPU106は、タッチパネル102あるいはウインドウの画面の幅wを取得する(ステップS804)。CPU106は、タッチパネルあるいはウインドウの高さhを取得する(ステップS806)。
CPU106は、width(データ(i))=wであるか否かを判断する(ステップS808)。CPU106は、変数width(データ(i))=wである場合(ステップS808にてYESである場合)、ステップS812からの処理を実行する。
CPU106は、変数width(データ(i))=wでない場合(ステップS808にてNOである場合)、変数orgにfalseを代入する(ステップS810)。CPU106は、変数height(データ(i))=hであるか否かを判断する(ステップS812)。CPU106は、変数height(データ(i))=hである場合(ステップS812にてYESである場合)、ステップS816からの処理を実行する。
CPU106は、変数height(データ(i))=hでない場合(ステップS812にてNOである場合)、変数orgにfalseを代入する(ステップS814)。CPU106は、変数orgにtrueが代入されているか否かを判断する(ステップS816)。CPU106は、変数orgにtrueが代入されている場合(ステップS816にてYESである場合)、データサイズ取得処理を終了する。
CPU106は、変数orgにtrueが代入されていない場合(ステップS816にてNOである場合)、データサイズ設定処理(ステップS900)を実行する。なおデータサイズ設定処理(ステップS900)については後述する。CPU106は、データサイズ取得処理を終了する。
次に、本実施の形態に係る携帯電話100におけるデータサイズ設定処理について説明する。図40は、受信端末の画面サイズが送信端末の画面サイズと同じである場合の画面を示すイメージ図である。図41は、受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第1のイメージ図である。図42は、受信端末の画面サイズが送信端末の画面サイズよりも小さい場合の画面を示す第2のイメージ図である。図43は、受信端末の画面サイズが送信端末の画面サイズよりも大きな場合の受信端末の画面を示すイメージ図である。
そして、図44は、送信側と同じ背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。図45は、受信端末が送信端末と異なる背景を表示する場合のデータサイズ設定処理の処理手順を示すフローチャートである。
図41、図44を参照して、CPU106は、変数Wに変数width(tデータ(i))を代入する(ステップS902)。CPU106は、変数Hにheght(dデータ(i))を代入する(ステップS904)。CPU106は、ディスプレイ107におけるスクロールバーの表示設定を行なう(ステップS906)。CPU106は、データサイズ設定処理を終了する。
図42、図43、図45を参照して、CPU106は、変数Wに変数wの値を代入する(ステップS912)。CPU106は、変数Hに変数hの値を代入する(ステップS914)。CPU106は、データサイズ設定処理を終了する。
<携帯電話100におけるデータ表示処理>
次に、本実施の形態に係る携帯電話100におけるデータ処理処理について説明する。図46は、本実施の形態に係る携帯電話100におけるデータ表示処理の処理手順を示すフローチャートである。
図46を参照して、CPU106は、現在表示されている画面の中央座標(Bx,By)を取得する(ステップS1002)。CPU106は、ポイント位置確認処理(ステップS1100)を実行する。なお、ポイント位置確認処理(ステップS1100)については後述する。
CPU106は、変数In1にfalseが格納されているか否かを判断する(ステップS1004)。CPU106は、変数In1にfalseが格納されている場合(ステップS1004にてYESである場合)、手描きデータ設定処理1(ステップS1200)を実行する。なお、手描きデータ設定処理1(ステップS1200)については後述する。CPU106は、ステップS1008からの処理を実行する。
CPU106は、変数In1にfalseが代入されていない場合(ステップS1400にてNOである場合)、ポイントを指す記号データ設定処理(1300)を実行する。なお、ポイントを指す記号データ設定処理(1300)については後述する。
CPU106は、手描きレイヤにポイントを指す記号データ(c’)を設定する(ステップS1006)。CPU106は、手描きデータ設定処理2(ステップS1400)を実行する。なお、手描きデータ設定処理2(ステップS1400)については後述する。CPU106は、手描きレイヤに手描きデータ(e’)を設定する(ステップS1008)。CPU106は、データ表示処理を終了する。
次に、本実施の形態に係る携帯電話100におけるポイント位置確認処理について説明する。図47は、本実施の形態に係る携帯電話100におけるポイント位置確認処理の処理手順を示すフローチャートである。
図47を参照して、CPU106は、変数In1にfalseを代入する(ステップS1102)。CPU106は、タッチパネル102を介して、ポイント位置の座標(Ax,Ay)を取得する(ステップS1104)。CPU106は、変数Axが0以上であるか否かを判断する(ステップS1106)。CPU106は、変数Axが0未満である場合(ステップS1106にてNOである場合)、ポイント位置確認処理を終了する。
CPU106は、変数Axが0以上である場合(ステップS1106にてYESである場合)、変数Axが画面幅以下であるか否かを判断する(ステップS1108)。CPU106は、変数Axが画面幅よりも大きい場合(ステップS1108にてNOである場合)、ポイント位置確認処理を終了する。
CPU106は、変数Axが画面幅以下である場合(ステップS1108にてYESである場合)、変数Ayが0以上である否かを判断する(ステップS1110)。CPU106は、変数Ayが0未満である場合(ステップS1110にてNOである場合)、ポイント位置確認処理を終了する。
CPU106は、変数Ayが0以上である場合(ステップS1110にてYESである場合)、変数Ayが画面高さ以下であるか否かを判断する(ステップS1112)。CPU106は、変数Ayが画面高さより大きい場合(ステップS1112にてNOである場合)、ポイント位置確認処理を終了する。
CPU106は、変数Ayが画面高さ以下である場合(ステップS1112にてYESである場合)、変数In1にtrueを代入する(ステップS1114)。CPU106は、ポイント位置確認処理を終了する。
次に、本実施の形態に係る携帯電話100における手描きデータ設定処理1の第1の例について説明する。図48は、本実施の形態に係る携帯電話100における手描きデータ設定処理の第1の例を示すフローチャートである。図49Aは、手描きデータ設定処理1の第1の例における画面を示す第1のイメージ図である。図49Bは、手描きデータ設定処理1の第1の例における画面を示す第2のイメージ図である。図49Cは、手描きデータ設定処理1の第1の例における画面を示す第3のイメージ図である。図49Dは、手描きデータ設定処理1の第1の例における画面遷移を示すイメージ図である。
図48を参照して、CPU106は、変数αwに画面幅/手描きデータ(データ(e))の幅を代入する(ステップS1202)。CPU106は、変数αhに指定領域の高さ/手描きデータ(データ(e)の高さを代入する(ステップS1204)。CPU106は、変数αwが変数αh未満であるか否かを判断する(ステップS1206)。CPU106は、変数αwが変数αh未満である場合(ステップS1206にてYESである場合)、変数α1に変数αwを代入する(ステップS1208)。CPU106は、ステップS1212からの処理を実行する。
CPU106は、変数αwが変数αh以上である場合(ステップS1206にてNOである場合)、変数α1に変数αhを代入する(ステップS1210)。CPU106は、変数α1が1未満であるか否かを判断する(ステップS1212)。CPU106は、変数α1が1未満である場合(ステップS1212にてYESである場合)、手描きデータ(データ(e))をα1倍に縮小し、手描きデータ(e’)を作成する(ステップS1214)。CPU106は、ステップS1218からの処理を実行する。
CPU106は、変数α1が1以上である場合(ステップS1212にてNOである場合)、手描きデータ(e’)に手描きデータ(データ(e))を代入する(1216)。CPU106は、データ(e’)の表示位置を座標(0,0)に設定する(ステップS1218)。CPU106は、手描きデータ設定処理1を終了する。
このようにして、手描きデータ設定処理1においては、図49Aに示すように、CPU106は、指定位置(データ(a))がタッチパネル102あるいはウインドウの外側に位置する場合であっても、タッチパネル102あるいはウインドウの所定エリア(上部エリア)に手描き画像を表示させる。
あるいは、図49Bに示すように、CPU106は、指定位置がタッチパネル102あるいはウインドウの外側に位置する場合、タッチパネル102あるいはウインドウの所定エリアに、指定位置の方向を示すための矢印107aを表示させる。
あるいは、図49Cに示すように、CPU106は、指定位置がタッチパネル102あるいはウインドウの外側に位置する場合、タッチパネル102あるいはウインドウの当該指定位置に近いエリアに、指定位置の方向を示すための矢印107aを表示させる。
さらに、図49D(a)に示すように、CPU106は、指定位置がタッチパネル102あるいはウインドウの外側に位置する場合、タッチパネル102を介して、タッチパネル102あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付ける。なお、矢印107aは、表示されてもよいし、表示されなくともよい。CPU106は、タッチパネル102あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付けると、図49D(b)に示すように、指定位置がタッチパネル102あるいはウインドウの中央に位置するように画面をスクロールする。
あるいは、CPU106は、タッチパネル102あるいはウインドウの所定エリアに対するユーザのタッチ操作を所定時間以上受け続けると、当該所定時間の経過後、タッチ操作を受け続けている間、当該指定位置の方向へ画面をスクロールする。
あるいは、CPU110は、タッチパネル102あるいはウインドウの所定エリアに対するユーザの1つ目のタッチ操作を受けているときに、他の(2つ目の)タッチ位置を検出した場合、当該他のタッチ位置がタッチパネル102あるいはウインドウの中央に位置するように画面をスクロールする。
あるいは、CPU106は、タッチパネル102あるいはウインドウの所定エリアに対するユーザのタッチ操作を受け付けると、タッチパネル102あるいはウインドウに表示されているエリア(または、タッチパネル102あるいはウインドウの中心)と当該指定位置とがタッチパネル102あるいはウインドウに入るように、画像(地図)の縮尺(表示倍率)を調整する。
次に、本実施の形態に係る携帯電話100における手描きデータ設定処理1の第2の例について説明する。図50は、本実施の形態に係る携帯電話100における手描きデータ設定処理1の第2の例を示すフローチャートである。図51Aは、手描きデータ設定処理1の第2の例における画面を示す第1のイメージ図である。図51Bは、手描きデータ設定処理1の第2の例における画面を示す第2のイメージ図である。図51Cは、手描きデータ設定処理1の第2の例における画面遷移を示すイメージ図である。
図50を参照して、CPU106は、手描きデータ(e’)にnullを代入する(ステップS1222)。CPU106は、手描きデータ設定処理1を終了する。
このように、手描きデータ設定処理1においては、図51Aに示すように、CPU106は、指定位置が、タッチパネル102あるいはウインドウの外側に位置する場合には、タッチパネル102に手描き画像を表示させない。
あるいは、図51Bに示すように、CPU106は、指定位置がタッチパネル102あるいはウインドウの外側に位置する場合、タッチパネル102あるいはウインドウの当該指定位置に近いエリアに、指定位置の方向を示すための矢印107aを表示させる。
さらに、図51C(a)に示すように、CPU106は、指定位置がタッチパネル102あるいはウインドウの外側に位置する場合、タッチパネル102を介して、タッチパネル102あるいはウインドウに対するユーザのタッチ操作を受け付ける。なお、矢印107aは、表示されてもよいし、表示されなくともよい。CPU106は、タッチパネル102あるいはウインドウに対するユーザのタッチ操作を受け付けると、図51C(b)に示すように、指定位置がタッチパネル102あるいはウインドウの中央に位置するように画面をスクロールする。
あるいは、CPU106は、タッチパネル102あるいはウインドウに対するユーザのタッチ操作を所定時間以上受け続けると、当該所定時間の経過後、タッチ操作を受け続けている間、当該指定位置の方向へ画面をスクロールする。
あるいは、CPU110は、タッチパネル102あるいはウインドウに対するユーザの1つ目のタッチ操作を受けているときに、他の(2つ目の)タッチ位置を検出した場合、当該他のタッチ位置がタッチパネル102あるいはウインドウの中央に位置するように画面をスクロールする。
あるいは、CPU106は、タッチパネル102あるいはウインドウに対するユーザのタッチ操作を受け付けると、タッチパネル102あるいはウインドウに表示されているエリア(または、タッチパネル102あるいはウインドウの中心)と当該指定位置とがタッチパネル102あるいはウインドウに入るように、画像(地図)の縮尺(表示倍率)を調整する。
次に、本実施の形態に係る携帯電話100におけるポイントを指す記号データ設定処理について説明する。図52は、本実施の形態に係る携帯電話100におけるポイントを指す記号データ設定処理の処理手順を示すフローチャートである。
図52を参照して、CPU106は、ポイントを指す記号データ位置確認処理(ステップS1400)を実行する。なお、ポイントを指す記号データ位置確認処理(ステップS1400)については後述する。
CPU106は、変数In2にfalseが代入されているか否かを判断する(ステップS1302)。CPU106は、変数In2にfalseが代入されている場合(ステップS1302にてYESである場合)、ポイントを指す記号データ取得処理(ステップS1600)を実行する。CPU106は、ポイントを指す記号データ設定処理を終了する。
一方、CPU106は、変数In2にfalseが代入されていない場合(ステップS1302にてNOである場合)、縮小率α2に1を代入する(ステップS1304)。CPU106は、ポイントを指す記号データ(c’)にポイントを指す記号データ(c)を代入する(ステップS1306)。CPU106は、データ(c’)の表示位置を座標(Cx1,Cy1)に設定する(ステップS1308)。CPU106は、ポイントを指す記号データ設定処理を終了する。
次に、本実施の形態に係る携帯電話100におけるポイントを指す記号データ位置確認処理について説明する。図53は、本実施の形態に係る携帯電話におけるポイントを指す記号データ位置確認処理の処理手順を示すフローチャートである。
図53を参照して、CPU106は、変数In2にfalseを代入する(ステップS1402)。CPU106は、ポイントを指す記号データ位置の矩形領域を取得する(1404)。より詳細には、CPU106は、ポイントを指す記号データを表示するための領域(矩形領域)の左上座標(Cx1,Cy1)と右下座標(Cx2,Cy2)とを取得する。
CPU106は、表示位置候補の矩形領域を取得する(ステップS1406)。より詳細には、CPU106は、表示位置候補の矩形領域の左上座標(Dx1,Dy1)と右下座標(Dx2,Dy2)とを取得する。
CPU106は、ポイントを指す記号データの領域取得処理(ステップS1500)を実行する。なお、ポイントを指す記号データの領域取得処理(ステップS1500)については後述する。
CPU106は、変数X1が0以上であるか否かを判断する(ステップS1408)。CPU106は、変数X1が0未満である場合(ステップS1408にてNOである場合)、ポイントを指す記号データ位置確認処理を終了する。
CPU106は、変数X1が0以上である場合(ステップS1408にてYESである場合)、変数X2が画面幅以下であるか否かを判断する(ステップS1410)。CPU106は、変数X2が画面幅よりも大きい場合(ステップS1410にてNOである場合)、ポイントを指す記号データ位置確認処理を終了する。
CPU106は、変数Xが画面幅以下である場合(ステップS1410にてYESである場合)、変数Y1が0以上であるか否かを判断する(ステップS1412)。CPU106は、変数Y1が0未満である場合(ステップS1412にてNOである場合)、ポイントを指す記号データ位置確認処理を終了する。
CPU106は、変数Y1が0以上である場合(ステップS1412にてYESである場合)、変数Y2が画面高さ以下であるか否かを判断する(ステップS1414)。CPU106は、変数Y2が画面高さよりも大きい場合(ステップS1414にてNOである場合)、ポイントを指す記号データ位置確認処理を終了する。
CPU106は、変数Y2が画面高さ以下である場合(ステップS1414にてYESである場合)、変数In2にtrue(ステップS1416)を代入する。CPU106はポイントを指す記号データ位置確認処理を終了する。
次に、本実施の形態に係る携帯電話100におけるポイントを指す記号データの領域取得処理について説明する。図54は、本実施の形態に係る携帯電話100におけるポイントを指す記号データの領域取得処理の処理手順を示すフローチャートである。
図54を参照して、CPU106は、変数Cx1が変数Dx1以下であるか否かを判断する(ステップS1502)。CPU106は、変数Cx1が変数Dx1以下である場合(ステップS1502にてYESである場合)、変数X1に変数Cx1を代入する(ステップS1504)。CPU106は、ステップS1508からの処理を実行する。
CPU106は、変数Cx1が変数Dx1よりも大きい場合(ステップS1502にてNOである場合)、変数X1に変数Dx1を代入する(ステップS1506)。CPU106は、変数Cy1が変数Dy1以下であるか否かを判断する(ステップS1508)。CPU106は、変数Cy1が変数Dy1以下である場合(ステップS1508にてYESである場合)、変数Y1に変数Cy1を代入する(ステップS1510)。CPU106は、ステップS1514からの処理を実行する。
CPU106は、変数Cy1が変数Dy1よりも大きい場合(ステップS1508にてNOである場合)、変数Y1に変数Dy1を代入する(ステップS1512)。CPU106は、変数Cx2が変数Dx2以下であるか否かを判断する(ステップS1514)。CPU106は、変数Cx2が変数Dx2以下である場合(ステップS1514にてYESである場合)、変数X2に変数Dx2を代入する(ステップS1516)。CPU106は、ステップS1520からの処理を実行する。
CPU106は、変数Cx2が変数Dx2よりも大きい場合(ステップS1514にてNOである場合)、変数x2に変数Cx2を代入する(ステップS1518)。CPU106は、変数Cy2が変数Dy2以下であるか否かを判断する(ステップS1520)。CPU106は、変数Cy2が変数Dy2以下である場合(ステップS1520にてYESである場合)、変数Y2に変数Dy2を代入する(ステップS1522)。CPU106は、ポイントを指す記号データの領域取得処理を終了する。
CPU106は、変数Cy2が変数Dy2よりも大きい場合(ステップS1520にてNOである場合)、変数Y2に変数Cy2を代入する(ステップS1524)。CPU106は、ポイントを指す記号データの領域取得処理を終了する。
次に、本実施の形態に係る携帯電話100におけるポイントを指す記号データ取得処理について説明する。図55は、本実施の形態に係る携帯電話100におけるポイントを指す記号データ取得処理の処理手順を示すフローチャートである。図56は、ポイントを指す記号データをα2倍に縮小した画面を示すイメージ図である。図57は、ポイントを指す記号データの表示位置を移動させた画面を示すイメージ図である。
図55を参照して、CPU106は、縮小率α2の取得処理(ステップS1700)を実行する。なお、縮小率α2の取得処理(ステップS1700)については後述する。
CPU106は、変数α2が1未満であるか否かを判断する(ステップS1602)。CPU106は、変数α2が1未満である場合(ステップS1602にてYESである場合、ポイントを指す記号データ(データ(c))をα2倍に縮小し、ポイントを指す記号データ(c’)を作成する(ステップS1604)。より詳細には、図56に示すように、CPU106は、記号データの表示領域を縮小する。CPU106は、ステップS1608からの処理を実行する。
一方、CPU106は、変数α2が1以上である場合(ステップS1602にてNOである場合)、ポイントを指す記号データ(c’)にポイントを指す記号データ(データ(c))を代入する(ステップS1606)。CPU106は、データ(c’)の表示位置を(Cx1,Cy1+(Cy2−Cy1)×(1−α))に設定する(ステップS1608)。すなわち、図57に示すように、CPU106は、記号データの表示位置を移動させる。CPU106は、ポイントを指す記号データ取得処理を終了する。
次に、本実施の形態に係る携帯電話100における縮小率α2の取得処理について説明する。図58は、本実施の形態に係る携帯電話100における縮小率α2の取得処理の処理手順を示すフローチャートである。
図58を参照して、CPU106は、ポイントを指す記号データの領域から、当該領域の幅wと高さhとを取得する(ステップS1702)。より詳細には、ポイントを指す記号データの領域とは、左上の頂点の座標(X1,Y1)と右下の座標(X2,Y2)とに基づいて、w=X2−X1およびh=Y2−Y1などの式によって幅wと高さhを計算することができる。
CPU106は、変数αwに画面幅/wを代入する(ステップS1704)。CPU106は、変数αhに画面高さ/hを代入する(ステップS1706)。CPU106は、変数αwが変数αh未満であるか否かを判断する(ステップS1708)。CPU106は、変数αwが変数αh未満である場合(ステップS1708にてYESである場合)、変数α2に変数αwを代入する(ステップS1710)。CPU106は、縮小率α2の取得処理を終了する。
一方、CPU106は、変数αwが変数αh以上である場合(ステップS1708にてNOである場合)、変数α2に変数αhを代入する(ステップS1712)。CPU106は、縮小率α2の取得処理を終了する。
次に、本実施の形態に係る携帯電話100における手描きデータ設定処理2について説明する。図59は、本実施の形態に係る携帯電話100における手描きデータ設定処理2の処理手順を示すフローチャートである。
図59を参照して、CPU106は、手描きデータに概説する矩形を取得する(ステップS1802)。より詳細には、CPU106は、矩形の左上座標(Fx1,Fy1)と右下座標(Fx2,Fy2)とを取得する。CPU106は、変数In2にfalseが代入されているか否かを判断する(ステップS1804)。CPU106は、変数In2にfalseが代入されている場合(ステップS1804にてYESである場合)、手描きデータ取得処理(ステップS2000)を実行する。なお、手描きデータ取得処理(ステップS2000)については後述する。CPU106は、手描きデータ設定処理2を終了する。
CPU106は、変数In2にfalseが代入されていない場合(ステップS1804いてNOである場合)、手描き位置確認処理(ステップS1900)を実行する。なお、手描き位置確認処理(ステップS1900)については後述する。
CPU106は、変数In3にfalseが代入されているか否かを判断する(ステップS1806)。CPU106は、変数In3にfalseが代入されている場合(ステップS1806にてYESである場合)、手描きデータ取得処理(ステップS2000)を実行する。
CPU106は、変数In3にfalseが代入されていない場合(ステップS1806にてNOである場合)、手描きデータ(e’)に手描きデータ(e)を代入する(ステップS1808)。CPU106は、データ(e’)の表示位置を、(Fx1,Fy2)に設定する(ステップS1810)。CPU106は、手描きデータ設定処理2を終了する。
次に、本実施の形態に係る携帯電話100における手描き位置確認処理について説明する。図60は、本実施の形態に係る携帯電話100における手描き位置確認処理の処理手順を示すフローチャートである。
図60を参照して、CPU106は、変数In3にfalseを代入する(ステップS1902)。CPU106は、手描きデータを表示するための矩形領域を取得する(ステップS1904)。より詳細には、CPU106は、矩形領域の左上座標(Fx1,Fy1)と右下座標(Fx2,Fy2)とを取得する。
CPU106は、変数Fx1が0以上であるか否かを判断する(ステップS1906)。CPU106は、変数Fx1が0未満である場合(ステップS1906にてNOである場合)、手描き位置確認処理を終了する。
CPU106は、変数Fx1が0以上である場合(ステップS1906にてYESである場合)、変数Fx2が画面幅以下であるか否かを判断する(ステップS1908)。CPU106は、変数Fx2が画面幅よりも大きい場合(ステップS1908にてNOである場合)、手描き位置確認処理を終了する。
CPU106は、変数Fx2が画面幅以下である場合(ステップS1908にてYESである場合)、変数Fy1が0以上であるか否かを判断する(ステップS1910)。CPU106は、変数Fy1が0未満である場合(ステップS1910にてNO)である場合、手描き位置確認処理を終了する。
CPU106は、変数Fy1が0以上である場合(ステップS1910にてYESである場合)、変数Fy2が画面高さ以下であるか否かを判断する(ステップS1912)。CPU106は、変数Fy2が画面高さよりも大きい場合(ステップS1912にてNOである場合)、手描き位置確認処理を終了する。
CPU106は、変数Fy2が画面高さ以下である場合(ステップS1912にてYESである場合)、変数In3にtrueを代入する(ステップS1914)。CPU106は、手描き確認処理を終了する。
次に、本実施の形態に係る携帯電話100における手描きデータ取得処理について説明する。図61は、本実施の形態に係る携帯電話100における手描きデータ取得処理の処理手順を示すフローチャートである。図62は、手描き画像がα3倍に縮小された画面を示すイメージ図である。図63は、手描き画像が移動された画面を示すイメージ図である。
図61を参照して、CPU106は、縮小率α3の取得処理を実行する(ステップS2100)。CPU106は、変数α3が1未満であるか否かを判断する(ステップS2002)。CPU106は、変数α3が1未満である場合(ステップS2002にてYESである場合)、手描きデータ(データ(e))をα3倍に縮小し、ポイントを指す記号データ(e’)を作成する(ステップS2004)。すなわち、図62に示すように、CPU106は、α3倍に縮小された手描き画像をタッチパネル102に表示する。CPU106は、ステップS2008からの処理を実行する。
CPU106は、変数α3が1以上である場合(ステップS2002にてNOである場合)、手描きデータ(e’)に手描きデータ(e)を代入する(ステップS2006)。CPU106は、手描きデータ(e’)の表示位置を、(Fx1−(Dx2−Dx1)×α2,Fy1+(Dy2−Dy1)×α2)に設定する(ステップS2008)。すなわち、図63に示すように、CPU106は、手描き画像を移動させる。CPU106は、手描きデータ取得処理を終了する。
次に、本実施の形態に係る携帯電話100における縮小率α3の取得処理について説明する。図64は、本実施の形態に係る携帯電話100における縮小率α3の取得処理の処理手順を示すフローチャートである。
図64を参照して、CPU106は、手描きデータ領域に基づいて、領域の幅wと高さhとを取得する(ステップS2102)。より詳細には、CPU106は、手描きデータ領域の左上座標(Fx1,Fy1)と右下座標(Fx2,Fy2)とに基づいて,手描きデータ領域の幅wと高さhとを取得する。たとえば、CPU106は、w=Fx2−Fx1とh=Fy2−Fy1との式から、幅wと高さhとを取得する。
CPU106は、ポイントを指す記号データの領域(記号領域)に基づいて、記号領域の幅Dwと高さDhとを取得する(ステップS2104)。より詳細には、CPU106は、記号領域の左上座標(Dx1,Dy1)と右下座標(Dx2,Dy2)とに基づいて、記号領域の幅Dwと高さDhとを取得する。たとえば、CPU106は、Dw=(Dx2−Dx1)×α2とDh=(Dy2−Dy1)×α2とに基づいて、記号領域の幅Dwと高さDhとを取得する。
CPU106は、変数αwにDw/wを代入する(ステップS2106)。CPU106は、変数αhにDh/hを代入する(ステップS2108)。CPU106は、変数αwが変数αh未満であるか否かを判断する(ステップS2110)。CPU106は、変数αwが変数αh未満である場合(ステップS2110にてYESである場合)、変数α3に変数αwを代入する(ステップS2112)。CPU106は,縮小率α3の取得処理を終了する。
CPU106は、変数αwが変数αh以上である場合(ステップS2110にてNOである場合)、変数α3に変数αhを代入する(ステップS2114)。CPU106は、縮小率α3の取得処理を終了する。
このように、本実施の形態に係る通信端末は、以下のように構成されている。送信側の通信端末のCPU106は、タッチパネル102を介して、背景内の位置を特定と手描き画像の入力とを対応付けて受け付ける。送信側の通信端末のCPU106は、当該位置を特定するための情報と手描き画像データとを対応付けてメモリ103に記憶するとともに、通信デバイス101を介して他の通信端末(受信側の通信端末)へと送信する。
受信側の通信端末のCPU106は、通信デバイス101を介して、他の通信端末(送信側の通信端末)から、当該位置を特定するための情報と手描き画像データとを対応付けて受信する。そのため、受信側の通信端末のCPU106は、タッチパネル102(ディスプレイ107)に、背景上の当該位置に対応する領域(たとえば、当該位置の近傍、あるいは当該位置の周囲)であって、手描き画像を全て表示できる領域に、手描き画像を表示させることができる。
なお、通信端末は、背景画像上の指定位置を示す情報と、背景画像上のポイントを示す記号を表示する位置あるいは領域を示す情報と、背景画像上の手描き画像を表示する位置あるいは領域を示す情報とを対応付けて他の通信端末へ送信してもよい。あるいは、通信端末は、背景画像上の指定位置を示す情報と、当該指定位置に対するポイントを示す記号を表示する位置あるいは領域を示す情報と、当該指定位置に対する手描き画像を表示する位置あるいは領域を示す情報とを対応付けて他の通信端末へ送信してもよい。
そして、特に双方向の通信を考慮すると、背景画像のサイズがいずれかの通信端末のディスプレイのサイズよりも大きい場合もあり得る。
また、本実施の形態に係る通信端末は、P2P通信を行なうものに限定されるものではない。たとえば、通信端末は、サーバなどを介して、当該位置を特定するための情報と手描き画像データとを対応付けて送受信してもよい。
以上の構成により、本実施の形態に係る通信端末は、受信側の通信端末が、送信側の通信端末が送信したコンテンツを、送信側が求める表示位置に対応する位置に表示することができる。
<本実施の形態に係るネットワークシステム1の応用例>
本発明は、システム或いは装置にプログラムを供給することによって達成される場合にも適用できることはいうまでもない。そして、本発明を達成するためのソフトウェアによって表されるプログラムを格納した記憶媒体を、システム或いは装置に供給し、そのシステム或いは装置のコンピュータ(又はCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、本発明の効果を享受することが可能となる。
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施の形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
プログラムコードを供給するための記憶媒体としては、例えば、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード(ICメモリカード)、ROM(マスクROM、フラッシュEEPROMなど)などを用いることができる。
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施の形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施の形態の機能が実現される場合も含まれることは言うまでもない。
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
1 ネットワークシステム、100,100A,100B,100C 携帯電話、101 通信デバイス、102 タッチパネル、103 メモリ、103A ワークメモリ、103B アドレス帳データ、103C 自端末データ、103D アドレスデータ、103E アドレスデータ、104 ペンタブレット、106 CPU、107 ディスプレイ、107A,107B,107C ディスプレイ、107X 手描き画像、107Y ポイント画像、107Z スクロールバー、108 マイク、109 スピーカ、110 各種ボタン、110A ボタン、110B メールボタン、110C ボタン、110D アドレス帳ボタン、110E 終了ボタン、111 第1の通知部、112 第2の通知部、120 スタイラスペン、200 カーナビゲーション装置、250 車両、300 パーソナルコンピュータ、400 チャットサーバ、406 メモリ、406A ルーム管理テーブル、407 固定ディスク、408 内部バス、409 サーバ通信デバイス、500 インターネット網、600 コンテンツサーバ、606 メモリ、607 固定ディスク、608 内部バス、609 サーバ通信デバイス、615 固定ディスク、700 キャリア網、1030a,1030b 画像データ、1031a,1031b,1032a,1032b,1033a,1033b レイヤー、1071 位置指定ボタン、1072 フキダシボタン、1073 矢印ボタン、1074 矩形ボタン、1075 手描きボタン、1076 設定ボタン。

Claims (10)

  1. ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムであって、
    前記第1の通信端末は、
    第1のディスプレイと、
    第1の通信デバイスと、
    前記第1のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを前記位置に対応する該画像上の位置に表示させ、前記第1の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第2の通信端末へと送信させる第1のプロセッサとを含み、
    前記第2の通信端末は、
    第2のディスプレイと、
    第2の通信デバイスと、
    前記第1の通信端末からの前記位置の位置情報と前記手描きデータとに基づいて、前記第2のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示させる第2のプロセッサとを含み、
    前記第2のプロセッサは、
    前記画像のうちの前記位置が前記第2のディスプレイに表示されているか否かを判断し、
    前記位置が表示されている場合に、前記第2のディスプレイが前記手描きデータを全て表示できるか否かを判断し、
    前記第2のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小することによって、前記第2のディスプレイに前記手描きデータの全てを表示させる、ネットワークシステム。
  2. ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムであって、
    前記第1の通信端末は、
    第1のディスプレイと、
    第1の通信デバイスと、
    前記第1のディスプレイに画像を表示させ、該画像上の位置の指示に対応して入力された手描きデータを前記位置に対応する該画像上の位置に表示させ、前記第1の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第2の通信端末へと送信させる第1のプロセッサとを含み、
    前記第2の通信端末は、
    第2のディスプレイと、
    第2の通信デバイスと、
    前記第1の通信端末からの前記位置の位置情報と前記手描きデータとに基づいて、前記第2のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示させる第2のプロセッサとを含み、
    前記第2のプロセッサは、
    前記画像のうちの前記位置が前記第2のディスプレイに表示されているか否かを判断し、
    前記位置が表示されている場合に、前記第2のディスプレイが前記手描きデータを全て表示できるか否かを判断し、
    前記第2のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小しかつ移動することによって、前記第2のディスプレイに前記手描きデータの全てを表示させる、ネットワークシステム。
  3. 前記画像のサイズが前記第2のディスプレイのサイズよりも大きい、請求項1または請求項2に記載のネットワークシステム。
  4. 前記第2のプロセッサは、前記位置が表示されていない場合に、前記第2のディスプレイの所定の位置に前記手描きデータを表示させる、請求項1〜請求項3のいずれか1項に記載のネットワークシステム。
  5. 前記第2のプロセッサは、前記位置が表示されていない場合に、前記第2のディスプレイに前記位置の方向を示す画像を表示させる、請求項に記載のネットワークシステム。
  6. 前記画像は地図である、請求項1〜請求項5のいずれか1項に記載のネットワークシステム。
  7. ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムにおける通信方法であって、
    前記第1の通信端末が、画像上の位置の指示をさせるステップと、
    前記第1の通信端末が、手描きデータの入力をさせるステップと、
    前記第1の通信端末が、第1のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置に対応する場所に前記手描きデータを表示するステップと、
    前記第1の通信端末が、第1の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第2の通信端末へと送信するステップと、
    前記第2の通信端末が、前記第1の通信端末からの前記位置情報と前記手描きデータとに基づいて、第2のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示するステップと
    前記第2の通信端末が、前記画像のうちの前記位置が前記第2のディスプレイに表示されているか否かを判断するステップと、
    前記第2の通信端末が、前記位置が表示されている場合に、前記第2のディスプレイが前記手描きデータを全て表示できるか否かを判断するステップと、
    前記第2の通信端末が、前記第2のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小することによって、前記第2のディスプレイに前記手描きデータの全てを表示させるステップとを備える、通信方法。
  8. ネットワークを介して相互に通信可能な少なくとも第1および第2の通信端末とを備えるネットワークシステムにおける通信方法であって、
    前記第1の通信端末が、画像上の位置の指示をさせるステップと、
    前記第1の通信端末が、手描きデータの入力をさせるステップと、
    前記第1の通信端末が、第1のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置に対応する場所に前記手描きデータを表示するステップと、
    前記第1の通信端末が、第1の通信デバイスに前記位置の位置情報と前記手描きデータとを対応付けて前記第2の通信端末へと送信するステップと、
    前記第2の通信端末が、前記第1の通信端末からの前記位置情報と前記手描きデータとに基づいて、第2のディスプレイに前記画像の少なくとも一部を表示させるとともに前記位置情報に対応する場所に前記手描きデータを表示するステップと、
    前記第2の通信端末が、前記画像のうちの前記位置が前記第2のディスプレイに表示されているか否かを判断するステップと、
    前記第2の通信端末が、前記位置が表示されている場合に、前記第2のディスプレイが前記手描きデータを全て表示できるか否かを判断するステップと、
    前記第2のディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小しかつ移動することによって、前記第2のディスプレイに前記手描きデータの全てを表示させるステップとを備える、通信方法。
  9. ネットワークを介して他の通信端末と通信可能な通信端末であって、
    ディスプレイと、
    通信デバイスと、
    前記他の通信端末からの位置情報と手描きデータとに基づいて、前記ディスプレイに前記位置情報に対応する場所に前記手描きデータを表示させるプロセッサとを備え
    前記手描きデータは、画像上に入力され、
    前記位置情報は、前記手描きデータが入力された前記画像上の位置であり、
    前記プロセッサは、
    前記画像のうちの前記位置情報に対応する位置が前記ディスプレイに表示されているか否かを判断し、
    前記位置が表示されている場合に、前記ディスプレイが前記手描きデータを全て表示できるか否かを判断し、
    前記ディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小することによって、前記ディスプレイに前記手描きデータの全てを表示させる、通信端末。
  10. ネットワークを介して他の通信端末と通信可能な通信端末であって、
    ディスプレイと、
    通信デバイスと、
    前記他の通信端末からの位置情報と手描きデータとに基づいて、前記ディスプレイに前記位置情報に対応する場所に前記手描きデータを表示させるプロセッサとを備え、
    前記手描きデータは、画像上に入力され、
    前記位置情報は、前記手描きデータが入力された前記画像上の位置であり、
    前記プロセッサは、
    前記画像のうちの前記位置情報に対応する位置が前記ディスプレイに表示されているか否かを判断し、
    前記位置が表示されている場合に、前記ディスプレイが前記手描きデータを全て表示できるか否かを判断し、
    前記ディスプレイが前記手描きデータを全て表示できない場合に、前記位置情報に基づいて前記手描きデータを縮小しかつ移動することによって、前記ディスプレイに前記手描きデータの全てを表示させる、通信端末。
JP2010272904A 2009-12-29 2010-12-07 ネットワークシステム、通信方法、および通信端末 Expired - Fee Related JP5658547B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2010272904A JP5658547B2 (ja) 2009-12-29 2010-12-07 ネットワークシステム、通信方法、および通信端末
US13/519,789 US9256362B2 (en) 2009-12-29 2010-12-24 Network system, communication method and communication terminal
CN201080060160.5A CN102782627B (zh) 2009-12-29 2010-12-24 网络系统、通信方法以及通信终端
PCT/JP2010/073329 WO2011081088A1 (ja) 2009-12-29 2010-12-24 ネットワークシステム、通信方法、および通信端末

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009299235 2009-12-29
JP2009299235 2009-12-29
JP2010272904A JP5658547B2 (ja) 2009-12-29 2010-12-07 ネットワークシステム、通信方法、および通信端末

Publications (2)

Publication Number Publication Date
JP2011155638A JP2011155638A (ja) 2011-08-11
JP5658547B2 true JP5658547B2 (ja) 2015-01-28

Family

ID=44226494

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010272904A Expired - Fee Related JP5658547B2 (ja) 2009-12-29 2010-12-07 ネットワークシステム、通信方法、および通信端末

Country Status (4)

Country Link
US (1) US9256362B2 (ja)
JP (1) JP5658547B2 (ja)
CN (1) CN102782627B (ja)
WO (1) WO2011081088A1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6051521B2 (ja) * 2011-12-27 2016-12-27 株式会社リコー 画像合成システム
KR101873761B1 (ko) * 2012-04-20 2018-07-03 엘지전자 주식회사 이동단말기 및 그 제어방법
EP2658227B1 (en) 2012-04-27 2018-12-05 LG Electronics Inc. Exchange of hand-drawings on touch-devices
US9047244B1 (en) * 2012-09-11 2015-06-02 Google Inc. Multi-screen computing device applications
WO2014061715A1 (ja) * 2012-10-19 2014-04-24 グリー株式会社 画像配信方法、画像配信サーバ装置及びチャットシステム
EP3211856A1 (en) * 2012-11-09 2017-08-30 Hitachi Maxell, Ltd. Video information terminal and video display system
JP6455038B2 (ja) * 2014-09-16 2019-01-23 コニカミノルタ株式会社 Ar装置、画像共有システム、画像共有方法、コンピュータプログラム、およびサーバ
KR102269481B1 (ko) * 2014-10-17 2021-06-28 삼성전자주식회사 디바이스 간에 화면 공유 방법 및 이를 이용하는 디바이스
US9904447B2 (en) 2016-01-08 2018-02-27 Microsoft Technology Licensing, Llc Universal inking support
JP6768363B2 (ja) * 2016-06-10 2020-10-14 花王株式会社 スクイズ容器用キャップ
JP6766486B2 (ja) * 2016-07-13 2020-10-14 富士ゼロックス株式会社 表示制御装置、表示制御システム及びプログラム
US10970476B2 (en) * 2017-05-17 2021-04-06 Microsoft Technology Licensing, Llc Augmenting digital ink strokes

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0538182A (ja) * 1991-07-24 1993-02-12 Hitachi Ltd エレベーター装置
JPH07295940A (ja) * 1994-04-21 1995-11-10 Sharp Corp 電子機器
US6029214A (en) * 1995-11-03 2000-02-22 Apple Computer, Inc. Input tablet system with user programmable absolute coordinate mode and relative coordinate mode segments
US6366698B1 (en) * 1997-03-11 2002-04-02 Casio Computer Co., Ltd. Portable terminal device for transmitting image data via network and image processing device for performing an image processing based on recognition result of received image data
US6253061B1 (en) * 1997-09-19 2001-06-26 Richard J. Helferich Systems and methods for delivering information to a transmitting and receiving device
US6636733B1 (en) * 1997-09-19 2003-10-21 Thompson Trust Wireless messaging method
US6763373B2 (en) * 1999-10-13 2004-07-13 Datahouse Labs, Inc. Method and system for creating and sending handwritten or handdrawn messages
JP2002007934A (ja) * 2000-06-26 2002-01-11 Fujitsu Ltd 電子商取引システムおよび電子商取引方法
US7003308B1 (en) * 2000-09-12 2006-02-21 At&T Corp. Method and system for handwritten electronic messaging
US20020129174A1 (en) * 2001-01-12 2002-09-12 Labaw Christopher D. Apparatus and method for providing a unified messaging integration tool
US6798907B1 (en) * 2001-01-24 2004-09-28 Advanced Digital Systems, Inc. System, computer software product and method for transmitting and processing handwritten data
US6741749B2 (en) * 2001-01-24 2004-05-25 Advanced Digital Systems, Inc. System, device, computer program product, and method for representing a plurality of electronic ink data points
JP2003234842A (ja) * 2001-10-02 2003-08-22 Ia Link Systems Co Ltd リアルタイム手書き通信システム
US6980202B2 (en) * 2001-12-21 2005-12-27 International Business Machines Corporation Method and system for creating and accessing hyperlinks from annotations relating to a physical document
US7751623B1 (en) * 2002-06-28 2010-07-06 Microsoft Corporation Writing guide for a free-form document editor
JP3975148B2 (ja) * 2002-10-04 2007-09-12 松下電器産業株式会社 地図表示装置
JP2004234594A (ja) 2003-02-03 2004-08-19 Matsushita Electric Ind Co Ltd フォトコミュニケーションシステムおよび方法ならびに情報記録媒体
US7567239B2 (en) * 2003-06-26 2009-07-28 Motorola, Inc. Method and system for message and note composition on small screen devices
US20050060644A1 (en) * 2003-09-15 2005-03-17 Patterson John Douglas Real time variable digital paper
US20050088418A1 (en) * 2003-10-28 2005-04-28 Nguyen Mitchell V. Pen-based computer interface system
US7343552B2 (en) * 2004-02-12 2008-03-11 Fuji Xerox Co., Ltd. Systems and methods for freeform annotations
WO2007122989A1 (ja) * 2006-04-17 2007-11-01 Pioneer Corporation ナビゲーション装置および複数のナビゲーション装置の共有情報管理方法
US20070260675A1 (en) * 2006-05-08 2007-11-08 Forlines Clifton L Method and system for adapting a single-client, single-user application to a multi-user, multi-client environment
US20070288164A1 (en) * 2006-06-08 2007-12-13 Microsoft Corporation Interactive map application
JP4640289B2 (ja) * 2006-08-04 2011-03-02 富士ゼロックス株式会社 共有画像表示プログラム、情報端末装置
KR100850313B1 (ko) * 2006-11-01 2008-08-04 이용직 필기형 유무선 복합 인스턴트 메신저 서비스 시스템 및 그서비스 방법
US8330773B2 (en) * 2006-11-21 2012-12-11 Microsoft Corporation Mobile data and handwriting screen capture and forwarding
US20090078473A1 (en) * 2007-09-26 2009-03-26 Digital Pen Systems Handwriting Capture For Determining Absolute Position Within A Form Layout Using Pen Position Triangulation
JP2010021863A (ja) * 2008-07-11 2010-01-28 Sharp Corp ネットワークシステム、通信端末、通信方法、および通信プログラム
US9134947B2 (en) * 2009-03-31 2015-09-15 Ricoh Company, Ltd. Annotating digital files of a host computer using a peripheral device
JP2011171809A (ja) * 2010-02-16 2011-09-01 Sharp Corp 通信端末、通信方法、および通信プログラム
SA110310576B1 (ar) * 2010-07-06 2015-08-10 راكان خالد يوسف الخلف جهاز، نظام وطريقة لتسجيل وتوثيق التواقيع المخطوطة باليد

Also Published As

Publication number Publication date
US9256362B2 (en) 2016-02-09
CN102782627A (zh) 2012-11-14
WO2011081088A1 (ja) 2011-07-07
JP2011155638A (ja) 2011-08-11
US20120281020A1 (en) 2012-11-08
CN102782627B (zh) 2016-08-03

Similar Documents

Publication Publication Date Title
JP5658547B2 (ja) ネットワークシステム、通信方法、および通信端末
US10535196B2 (en) Indicating the geographic origin of a digitally-mediated communication
JP5467157B2 (ja) 連絡先を処理するための方法および移動端末
US20060010395A1 (en) Cute user interface
EP2216703B1 (en) Handheld electronic device
US20080132243A1 (en) Device and method for providing location information on a portable mobile communications device
US20110161856A1 (en) Directional animation for communications
EP1981254A2 (en) Communication control device and communication terminal
KR20120033846A (ko) 가상 객체를 이용한 증강 현실 제공 장치 및 방법
JP2010021863A (ja) ネットワークシステム、通信端末、通信方法、および通信プログラム
JP2011138438A (ja) 電子会議システム、情報処理装置、情報処理方法及びプログラム
KR20100090656A (ko) 핸드헬드 전자 장치
US20130016058A1 (en) Electronic device, display method and computer-readable recording medium storing display program
JP5035852B2 (ja) 通信端末、制御方法、および制御プログラム
JP2012156793A (ja) 情報端末、データ管理方法、関連付け定義データ、およびプログラム
TWI482482B (zh) 結合電子地圖的即時通訊方法、電子裝置及電腦程式產品
CN111130985A (zh) 关联关系建立方法、装置、终端、服务器及存储介质
WO2016040200A1 (en) Accessibility features in content sharing
JP2001043170A (ja) 画像を用いたメッセージ伝達方法及び装置
JP2021036400A (ja) 情報処理システム、情報処理装置、情報処理方法及びプログラム
WO2012014813A1 (ja) ネットワークシステムおよび通信方法
JP7476548B2 (ja) 通信端末、通信システム、表示方法、及びプログラム
JP2011154606A (ja) ネットワークシステム、通信方法、サーバ、および通信端末
JP2021124771A (ja) 通信端末、通信システム、表示方法、及びプログラム
CN113902152A (zh) 约车处理方法、装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131001

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140826

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141024

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141128

R150 Certificate of patent or registration of utility model

Ref document number: 5658547

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees