JP6913338B2 - Drawing support device and program - Google Patents
Drawing support device and program Download PDFInfo
- Publication number
- JP6913338B2 JP6913338B2 JP2017002150A JP2017002150A JP6913338B2 JP 6913338 B2 JP6913338 B2 JP 6913338B2 JP 2017002150 A JP2017002150 A JP 2017002150A JP 2017002150 A JP2017002150 A JP 2017002150A JP 6913338 B2 JP6913338 B2 JP 6913338B2
- Authority
- JP
- Japan
- Prior art keywords
- cube
- information
- latitude
- longitude
- screen
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
本発明は、現実空間に存在する物体を複数のキューブによって模擬した場景を描画する処理を支援する装置及びプログラムに関する。 The present invention relates to a device and a program that support a process of drawing a scene in which an object existing in a real space is simulated by a plurality of cubes.
ロボットや自動車、船舶、航空機等の移動体の自律制御、自動運転または半自動運転を実現するためには、移動体が移動可能な通路(道路や橋梁等)または移動体が通過不能な障害物(建築物、構造物、中央分離帯、街灯や樹木等、または他の移動体)に関する情報を予めデータベース化しておき、移動体による適正な経路に沿った移動を可能とすることが求められる。 In order to realize autonomous control, automatic driving or semi-automatic driving of moving objects such as robots, automobiles, ships and aircraft, passages (roads, bridges, etc.) where the moving objects can move or obstacles (roads, bridges, etc.) where the moving objects cannot pass ( Information on buildings, structures, central separation zones, street lights, trees, etc., or other moving objects) is required to be stored in a database in advance so that the moving objects can move along an appropriate route.
移動体の現在位置の緯度及び経度をGPS(Global Positioning System)を用いて把握し、その現在位置を地図上に示すとともに、その現在位置から一定の距離の範囲内にある通路(道路)や建物等の情報を表示するカーナビゲーションシステムが公知である(例えば、下記特許文献1を参照)。だが、既製のカーナビゲーションシステムはあくまでも、搭乗者に視認させる画面表示用の地図画像データとしてのベクターデータ(ベクトル画像データ)を有しているに過ぎず、移動体の自律制御、自動運転や半自動運転に必ずしも役立てられるものではない。
The latitude and longitude of the current position of the moving object are grasped using GPS (Global Positioning System), the current position is shown on the map, and passages (roads) and buildings within a certain distance from the current position are shown. A car navigation system that displays information such as the above is known (see, for example,
現実空間に存在する通路及び/または障害物の位置や形状を精密にデータ化して蓄積しようとすると、データ量が膨大となる上、そのデータを利用して移動体からの距離や方向を把握するための処理が徒に複雑化し、計算量が増大して処理の遅延を招く懸念がある。この問題を解決する手立てとして、本件発明者は既に、通路及び/または障害物に関する情報を軽量かつ利用容易なデータの形で表現する手法を特許出願している(下記特許文献2ないし4を参照)。具体的には、空間を一定の緯度及び一定の経度の大きさのグリッドに分割し、当該空間内に存在する物体即ち通路または障害物と重なる一または複数のグリッドの位置の座標をデータベース化するというものである。さらに、各グリッドの位置の座標の情報に、当該グリッドと重なる物体の高さ寸法の情報を付加することで、空間内に存在する物体を一または複数の直方体状のキューブ(cuboid)の集合として表現することが可能である。 If you try to accurately digitize and store the positions and shapes of passages and / or obstacles that exist in the real space, the amount of data will be enormous, and the data will be used to grasp the distance and direction from the moving body. There is a concern that the processing for this will become unnecessarily complicated, the amount of calculation will increase, and the processing will be delayed. As a means to solve this problem, the present inventor has already applied for a patent application for a method of expressing information on passages and / or obstacles in the form of lightweight and easy-to-use data (see Patent Documents 2 to 4 below). ). Specifically, the space is divided into grids of a certain latitude and a certain longitude, and the coordinates of the positions of one or more grids that overlap with objects, that is, passages or obstacles existing in the space are stored in a database. That is. Furthermore, by adding the height dimension information of the object overlapping the grid to the coordinate information of the position of each grid, the object existing in the space can be made into a set of one or more rectangular parallelepiped cubes. It is possible to express.
本発明は、現実空間に存在する物体を複数のキューブによって模擬した場景を描画する処理を好適に支援しようとするものである。 The present invention preferably supports a process of drawing a scene in which an object existing in a real space is simulated by a plurality of cubes.
本発明では、現実空間に存在する物体を模擬する複数のキューブの各々についてその存在位置を示す緯度及び経度並びにその平面寸法及び高さ寸法の情報を格納するキューブ情報格納部と、与えられる視点の位置を示す緯度、経度及び高度並びに視線の方向を示す方位角及び仰俯角(仰角、俯角)を基準として所要の視野角(画角)の範囲内に存在する一または複数のキューブを検索しその緯度及び経度並びにその平面寸法及び高さ寸法の情報を前記キューブ情報格納部から読み出すキューブ検索部と、前記キューブ検索部が検索した一または複数のキューブの各々について前記キューブ情報格納部から読み出した情報を元に当該キューブの各頂点を前記視線方向と直交するスクリーンに投影した場合における各頂点の同スクリーン上での位置座標を演算する投影情報演算部と、前記投影情報演算部が演算した前記キューブの各頂点の前記スクリーン上での位置座標の情報を出力する投影情報出力部とを具備する描画支援装置を構成した。 In the present invention, a cube information storage unit for storing information on the latitude and longitude indicating the existence position of each of a plurality of cubes simulating an object existing in the real space, their plane dimensions and height dimensions, and a given viewpoint. Search for one or more cubes that exist within the required viewing angle (viewing angle) based on the latitude, longitude and altitude indicating the position, and the azimuth and elevation / depression angle (elevation angle, depression angle) indicating the direction of the line of sight. A cube search unit that reads out information on latitude and longitude and its plane dimension and height dimension from the cube information storage unit, and information read from the cube information storage unit for each of one or more cubes searched by the cube search unit. A projection information calculation unit that calculates the position coordinates of each vertex on the screen when each vertex of the cube is projected onto a screen orthogonal to the line-of-sight direction, and the cube calculated by the projection information calculation unit. A drawing support device including a projection information output unit that outputs information on the position coordinates of each of the vertices on the screen is configured.
ここで、視点の位置並びに視線の方向が「与えられる」とは、メインメモリ若しくは補助記憶デバイスから読み出し、入力デバイスを介して入力を受け付け、または外部の装置若しくはコンピュータから受信することをいう。並びに、情報を「出力する」とは、メインメモリ若しくは補助記憶デバイスに書き出し、または外部の装置若しくはコンピュータに向けて送信することをいい、特に、与えられた視点の位置から与えられた視線の方向に沿って一または複数のキューブを見た場景を三次元グラフィクスとして描画するプログラムに対してキューブの各頂点のスクリーン上での位置座標その他の情報を渡すことをいう。 Here, "given" the position of the viewpoint and the direction of the line of sight means reading from the main memory or the auxiliary storage device, accepting the input via the input device, or receiving from an external device or computer. In addition, "outputting" information means writing it out to the main memory or auxiliary storage device, or transmitting it to an external device or computer, and in particular, the direction of the line of sight given from the position of a given viewpoint. It means passing the position coordinates and other information of each vertex of the cube on the screen to the program that draws the scene of seeing one or more cubes as three-dimensional graphics along.
本発明に係るプログラムは、コンピュータを、現実空間に存在する物体を模擬する複数のキューブの各々についてその存在位置を示す緯度及び経度並びにその平面寸法及び高さ寸法の情報を格納するキューブ情報格納部、与えられる視点の位置を示す緯度、経度及び高度並びに視線の方向を示す方位角及び仰俯角を基準として所要の視野角の範囲内に存在する一または複数のキューブを検索しその緯度及び経度並びにその平面寸法及び高さ寸法の情報を前記キューブ情報格納部から読み出すキューブ検索部、前記キューブ検索部が検索した一または複数のキューブの各々について前記キューブ情報格納部から読み出した情報を元に当該キューブの各頂点を前記視線方向と直交するスクリーンに投影した場合における各頂点の同スクリーン上での位置座標を演算する投影情報演算部、並びに、前記投影情報演算部が演算した前記キューブの各頂点の前記スクリーン上での位置座標の情報を出力する投影情報出力部として機能させるものである。 The program according to the present invention is a cube information storage unit that stores information on the latitude and longitude indicating the position of each of a plurality of cubes simulating an object existing in the real space, and the plane dimension and height dimension thereof. , Search for one or more cubes existing within the required viewing angle based on the latitude, longitude and altitude indicating the position of the given viewpoint, and the azimuth and elevation / depression angles indicating the direction of the line of sight, and the latitude and longitude as well. The cube search unit that reads out the information of the plane dimension and the height dimension from the cube information storage unit, and the cube based on the information read from the cube information storage unit for each of one or a plurality of cubes searched by the cube search unit. A projection information calculation unit that calculates the position coordinates of each vertex on the screen when each vertex of is projected onto a screen orthogonal to the line-of-sight direction, and each vertex of the cube calculated by the projection information calculation unit. It functions as a projection information output unit that outputs information on the position coordinates on the screen.
しかして、前記投影情報演算部が、個々のキューブについて、当該キューブにおける隣り合う二つの頂点の前記スクリーン上での距離を閾値と比較することを通じて、それら二つの頂点のうちの一方またはそれら二つの頂点を結ぶ稜線(辺)が描画するべきものであるか否かを判定し、前記投影情報出力部が、前記投影情報演算部による判定の結果の情報をも併せて出力することが好ましい。 Thus, for each cube, the projection information calculator compares the distance on the screen of two adjacent vertices in the cube with a threshold value, so that one or two of those two vertices It is preferable that it is determined whether or not the ridge line (side) connecting the vertices should be drawn, and the projection information output unit also outputs the information of the determination result by the projection information calculation unit.
本発明によれば、現実空間に存在する物体を複数のキューブによって模擬した場景を描画する処理を好適に支援し得る。 According to the present invention, it is possible to preferably support a process of drawing a scene in which an object existing in a real space is simulated by a plurality of cubes.
本発明の一実施形態を、図面を参照して説明する。本実施形態の描画支援装置は、例えば、ロボットや自動車等の移動体1に搭載されて運用される。本描画支援装置は、コンピュータを主体として構成される。図1に示すように、コンピュータは、CPU(Central Processing Unit)1a、メインメモリ1b、補助記憶デバイス1c、ビデオコーデック1d、オーディオコーデック1e、通信インタフェース1f、入力デバイス1g等のハードウェア資源を備え、これらがコントローラ(システムコントローラ、I/Oコントローラ等)1hにより制御されて連携動作するものである。
An embodiment of the present invention will be described with reference to the drawings. The drawing support device of the present embodiment is mounted and operated on a moving
補助記憶デバイス1cは、フラッシュメモリ、ハードディスクドライブ、光学ディスクドライブ、その他である。ビデオコーデック1dは、CPU1aより受けた描画指示をもとに表示させるべき画面を生成しその画面信号をディスプレイ1iに向けて送出するGPU(Graphics Processing Unit)、画面や画像のデータを一時的に格納しておくビデオメモリ等を要素とする。オーディオコーデック1eは、符号化されている音声データを復号化して音声出力デバイス1jから音声出力する。ビデオコーデック1d及びオーディオコーデック1eはそれぞれ、ハードウェアでなくソフトウェアとして実装することも可能である。通信インタフェース1fは、当該コンピュータが外部の装置またはコンピュータと情報の授受を行うためのデバイスである。なお、通信インタフェース1fは、インターネット、携帯電話網、WiMAX網やLAN(Local Area Network)等といった電気通信回線を介した情報通信を実施するための無線トランシーバまたは有線接続インタフェースを含むことがある。入力デバイス1gは、ユーザが手指で操作するタッチパネル(ディスプレイ1iに重ね合わされたものであることがある)、押下ボタン、マウス、キーボード等、またはユーザが肉声により指令を入力する音声入力デバイスである。
The
また、当該コンピュータが、移動体1の運転制御を司ることもあり得る。その場合において、移動体1は、走行用の車輪の向きを変化させることのできる既知の操舵装置1k、車輪を回転駆動させる駆動源1lとなる既知のエンジン若しくはモータの他、移動体1の移動経路の路面上に敷設されている区画線や移動体1の周囲の物体を検出するためのセンサ1mとしてのカメラセンサ(パノラマカメラであることがある)、レーダセンサ若しくは対物距離(測距)センサ(レーザレーダ、超音波レーダ、赤外線レーダ等)、パッシブ赤外線センサ(人感センサ)等、並びに、GPSやQZSS(Quasi−Zenith Satellite System)といった航法衛星システム(衛星測位システム)の航法信号受信装置1nを備える。そして、コンピュータが、それらセンサ1mや航法信号受信装置1nを介して周囲の物体の存在や自身の現在位置の緯度及び経度を知得した上、操舵装置1k及び駆動源1lを制御して移動体1を適切な移動経路に沿って移動させることとなる。
Further, the computer may control the operation of the
当該コンピュータにあって、CPU1aにより実行されるべきプログラムは補助記憶デバイス1cに格納されており、プログラムの実行の際には補助記憶デバイス1cからメインメモリ1bに読み込まれ、CPU1aによって解読される。コンピュータは、プログラムに従って上記ハードウェア資源を作動させ、図2に示すキューブ情報格納部101、キューブ検索部102、投影情報演算部103及び投影情報出力部104としての機能を発揮する。
In the computer, the program to be executed by the
キューブ情報格納部101は、メインメモリ1b若しくは補助記憶デバイス1cの所要の記憶領域を利用し、現実空間に存在する物体を模擬する複数のキューブCの各々について、その存在位置を示す緯度及び経度、並びにその平面寸法及び高さ寸法の情報を格納する。
The cube
前提として、本実施形態では、移動体1を運用する現実の空間を、一定の緯度及び一定の経度間隔の格子によって区画される、一定の緯度及び一定の経度の大きさの仮想的なグリッドGに分割する。グリッドGは、現実の空間内に存在する物体の位置の抽象化表現(LLQuad(Latitude Longitude Quadrangle))である。図3に例示するように、空間内に存在する種々の物体の平面視形状は、各物体毎に、一または複数のグリッドGの集合として表現される。一つのグリッドGは、緯度方向及び経度方向にそれぞれ所定の寸法を有した方形(四辺形。略長方形状をなすが、厳密には長方形ではない)である。そして、一つのグリッドGを表すために、一つのグリッドGに対して少なくとも一つの位置座標を付与する。この位置座標は、対象のグリッドG内の何れかの地点、例えば当該グリッドGの角(南西角、南東角、北東角または北西角)や中央等の地点の緯度及び経度である。それら緯度及び経度はそれぞれ、所要の桁数の値とする。例えば、緯度及び経度の有効桁数を小数点以下6桁までとする場合、即ちあるグリッドGを表すデータとして当該グリッドG(の南西角)の位置座標[緯度,経度]を
[35.675126°N,139.752472°E]
のように与える場合において、当該グリッドGの北に隣接するグリッドGに与えるべき(そのグリッドGの南西角の)位置座標は、北緯に0.000001°を加算した
[35.675127°N,139.752472°E]
となり、当該グリッドGの西に隣接するグリッドGに与えるべき(そのグリッドGの南西角の)位置座標は、東経から0.000001°を減算した
[35.675126°N,139.752471°E]
となる。
As a premise, in the present embodiment, a virtual grid G having a size of a constant latitude and a constant longitude is partitioned by a grid of a constant latitude and a constant longitude interval in a real space in which the
The position coordinates to be given to the grid G adjacent to the north of the grid G (at the southwest corner of the grid G) are obtained by adding 0.000001 ° to the north latitude [35.675127 ° N, 139. .752472 ° E]
The position coordinates (at the southwest corner of the grid G) to be given to the grid G adjacent to the west of the grid G are obtained by subtracting 0.000001 ° from the east longitude [35.675126 ° N, 139.752471 ° E].
Will be.
位置座標の緯度及び経度の有効桁数を小数点以下6桁までとする場合、一つのグリッドGは緯度方向及び経度方向にそれぞれ0.000001°分の寸法を有した方形となる。その具体的な大きさは、緯度及び経度の影響を受けるため、あらゆるグリッドGが均一な平面寸法を有するわけではない。即ち、北極または南極に近づくほど、単位経度あたりの経度(東西)方向の距離は顕著に小さくなり、また単位緯度あたりの緯度(南北)方向の寸法は若干ではあるが大きくなる。緯度及び経度の有効桁数を小数点以下6桁までとする場合、日本国内では、一つのグリッドGの緯度方向の寸法は南北に約0.11m、経度方向の寸法は東西に約0.09mとなる。尤も、日本列島は南北に伸びているので、所在地の緯度による寸法の伸縮を無視するべきではない。 When the number of significant digits of the latitude and longitude of the position coordinates is up to 6 digits after the decimal point, one grid G is a square having dimensions of 0.000001 ° in the latitude direction and the longitude direction, respectively. Not all grids G have uniform planar dimensions because their specific size is affected by latitude and longitude. That is, the closer to the North Pole or the South Pole, the smaller the distance in the longitude (east-west) direction per unit longitude, and the slightly larger the dimension in the latitude (north-south) direction per unit latitude. When the number of significant digits of latitude and longitude is up to 6 digits after the decimal point, in Japan, the latitude dimension of one grid G is about 0.11 m from north to south, and the longitude dimension is about 0.09 m from east to west. Become. However, since the Japanese archipelago extends from north to south, the expansion and contraction of dimensions depending on the latitude of the location should not be ignored.
位置座標の緯度及び経度の有効桁数を小数点以下5桁までとする場合には、一つのグリッドGの緯度方向の寸法は約1.1m、経度方向の寸法は約0.9mとなる。有効桁数を小数点以下4桁までとすれば、一つのグリッドGの緯度方向の寸法は約11m、経度方向の寸法は約9mとなる。要するに、緯度及び経度の有効桁数は、そのグリッドGの平面寸法即ち緯度方向の寸法及び経度方向の寸法を規定する。緯度及び経度の有効桁数は、用途に応じて、また各物体の寸法に応じて、任意に設定することができる。大型のビル等の広い面積を有している物体にできるだけ少ない数のグリッドGを当てはめようとするならば、そのグリッドGに係る緯度及び経度の有効桁数を少なく設定することが有効である。 When the number of significant digits of the latitude and longitude of the position coordinates is up to 5 digits after the decimal point, the latitude dimension of one grid G is about 1.1 m, and the longitude dimension is about 0.9 m. If the number of significant digits is up to 4 digits after the decimal point, the latitude dimension of one grid G is about 11 m, and the longitude dimension is about 9 m. In short, the number of significant digits of latitude and longitude defines the plane dimension of the grid G, that is, the dimension in the latitude direction and the dimension in the longitude direction. The number of significant digits of latitude and longitude can be arbitrarily set according to the application and the dimensions of each object. If it is intended to apply as few grids as possible to an object having a large area such as a large building, it is effective to set a small number of significant digits of latitude and longitude related to the grid G.
その上で、本実施形態では、図3に示しているように、グリッドGから直立する、底面がグリッドGに等しい略直方体(既に述べた通り、底面Gの形状は厳密には長方形ではない)状をなすキューブ(LLCube(Latitude Longitude Cuboid))Cを観念し、現実空間に存在する種々の物体をそれぞれ一または複数のキューブCによって模擬することとしている。そして、キューブ情報格納部101は、図4に示すように、個々のグリッドG毎に、当該グリッドGの位置座標[緯度,経度]及びその有効桁数とともに、当該グリッドGに所在するキューブCの高さの情報を格納する。キューブCの高さは、現実空間において当該グリッドG上に存在している物体または物体の部分、即ちキューブCが模擬している物体または物体の部分の上面の高さ位置を表している。なお、移動体1の存在する地面または床面よりも低い位置に存在する物体、例えば溝や穴、河川や湖、海等を表現する際には、高さの情報に負の数値を与える。高さとして所定値(例えば、−0.1m)を与えたキューブCにより、側溝のようなものを表現することもできる。
On top of that, in the present embodiment, as shown in FIG. 3, a substantially rectangular parallelepiped whose bottom surface is equal to the grid G and which stands upright from the grid G (as described above, the shape of the bottom surface G is not strictly rectangular). Based on the idea of a shaped cube (LLCube (Lattide Rectangle Cube) C) C, various objects existing in the real space are simulated by one or a plurality of cubes C, respectively. Then, as shown in FIG. 4, the cube
さらに、個々のキューブCに対して、その地上高の情報を付与することも考えられる。キューブCの地上高は、現実空間において当該グリッドG上に存在している物体または物体の下面の高さ位置を表している。橋桁や梁、門等のように、移動体1の存在する地面または床面から浮いている物を表現する際には、地上高に正の数値を与える。地面または床面に接地している多くの物体については、地上高は0mとなる。
Furthermore, it is also conceivable to give information on the ground clearance to each cube C. The ground clearance of the cube C represents the height position of an object existing on the grid G in the real space or the lower surface of the object. When expressing an object floating from the ground or floor on which the moving
また、個々のキューブCに対して、当該キューブCが模擬する物体またはその部分の色等の情報を追加的に付与しても構わない。 In addition, information such as the color of an object simulated by the cube C or a portion thereof may be additionally added to each cube C.
一または複数のキューブCにより模擬する対象となる物体は、例えば、移動体1が通行可能な通路(道路であることがある)、建物や樹木等の不動産その他の移動体1の移動や動作の妨げとなり得る種々の障害物、あるいは他の移動体1である。既に述べた通り、これら物体はそれぞれ、当該物体が空間内で占有している領域に略等しい一または複数のキューブCの形で表現することができる。つまり、当該物体を象るキューブCの位置座標及び高さ(さらには、地上高や色等)の値の集合として、当該物体をデータ化することができる。全長100m、幅3mの通路は、グリッドGの位置座標の緯度及び経度の有効桁数を小数点以下6桁とすれば、(当該通路の向きにもよるが)約3万個のキューブCの集合体として捉えることができ、同数の位置座標及び高さの値の集合としてデータ化できる。また、建物面積400m2の建物は、グリッドGの位置座標の緯度及び経度の有効桁数を小数点以下5桁とすれば、400個程度のキューブCの集合体として捉えることができ、同数の位置座標及び高さの値の集合としてデータ化できる。
The object to be simulated by one or more cubes C is, for example, a passage (which may be a road) through which the moving
キューブ情報格納部101が格納している情報により、空間内に存在する個々のキューブCについて、図5に示す八つの頂点P0、P1、P2、P3、P4、P5、P6、P7の緯度、経度及び高さ位置が確定する。例えば、キューブCの南西角に位置する頂点P0、P4の位置座標[緯度,経度]が
[35.675126°N,139.752472°E]
であり、その有効桁数が小数点以下6桁までである場合、当該キューブCの南東角に位置する頂点P1、P5の位置座標[緯度,経度]は
[35.675126°N,139.752473°E]
であり、当該キューブCの北東角に位置する頂点P2、P6の位置座標[緯度,経度]は
[35.675127°N,139.752473°E]
であり、当該キューブCの北西角に位置する頂点P3、P7の位置座標[緯度,経度]は
[35.675127°N,139.752472°E]
である。そして、当該キューブCの頂面側の四つの頂点P4、P5、P6、P7の高さ位置は同キューブCの上面の高さに等しく、底面側の四つの頂点P0、P1、P2、P3の高さ位置は同キューブCの下面の高さ即ち地上高に等しい。キューブCにおける隣り合う二つの頂点は、キューブCの稜線により結ばれる。一つのキューブCは、八つの頂点P0、P1、P2、P3、P4、P5、P6、P7とともに十二本の稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11を有する。
The latitude and longitude of the eight vertices P0, P1, P2, P3, P4, P5, P6, and P7 shown in FIG. 5 for each cube C existing in the space according to the information stored in the cube
When the number of significant digits is up to 6 digits after the decimal point, the position coordinates [latitude, longitude] of the vertices P1 and P5 located at the southeast corner of the cube C are [35.675126 ° N, 139.752473 °. E]
The position coordinates [latitude, longitude] of the vertices P2 and P6 located at the northeast corner of the cube C are [35.675127 ° N, 139.752473 ° E].
The position coordinates [latitude, longitude] of the vertices P3 and P7 located at the northwest corner of the cube C are [35.675127 ° N, 139.752472 ° E].
Is. The height positions of the four vertices P4, P5, P6, and P7 on the top surface side of the cube C are equal to the height of the top surface of the cube C, and the four vertices P0, P1, P2, and P3 on the bottom surface side. The height position is equal to the height of the lower surface of the cube C, that is, the ground clearance. Two adjacent vertices in cube C are connected by the ridgeline of cube C. One cube C has eight vertices P0, P1, P2, P3, P4, P5, P6, P7 and twelve ridges L0, L1, L2, L3, L4, L5, L6, L7, L8, L9, It has L10 and L11.
キューブ検索部102は、現実の物体を模擬する多数のキューブCが配置される仮想空間をある視点位置Vからある視線方向Sに沿って見たときに、所要の視野角α、βの範囲内に存在している一または複数のキューブCを検索する。つまり、キューブ検索部102は、現実の物体をキューブCによって模擬した場景を描画する処理を実行するにあたり、描画するべき対象となるキューブCを選出する役割を担う。
The
視点の位置Vを規定する値としては、その緯度及び経度、並びに地面または床面からの高さ位置がある。そして、視線の方向Sを規定する値としては、視点の位置Vから見る方向Sのベクトルの方位角及び仰俯角がある。視点の位置V[緯度,経度,高さ]及び視線の方向S[方位角,仰俯角]は、予め与えられてメインメモリ1b若しくは補助記憶デバイス1cに記憶保持していることもあれば、入力デバイス1gを介してその入力を受け付けることもある。あるいは、電気通信回線を介して通信可能に接続している外部の装置若しくはコンピュータから受信するということもあり得る。
Values that define the position V of the viewpoint include its latitude and longitude, and the height position from the ground or floor surface. The values that define the direction S of the line of sight include the azimuth angle and the elevation / depression angle of the vector of the direction S viewed from the position V of the viewpoint. The position V [latitude, longitude, height] of the viewpoint and the direction S [azimuth, elevation / depression angle] of the line of sight may be given in advance and stored in the
キューブ検索部102は、図6ないし図8に示すように、与えられる視点の位置Vから、与えられる視線の方向Sを見るときに、その視線の方向Sと直交する有限の大きさのスクリーンFに投影され得る一または複数のキューブCに係る情報を、キューブ情報格納部101から抽出する。スクリーンFの寸法、換言すれば視野角α、βの大きさは、例えば、視線の方向と直交する上下方向及び左右方向にそれぞれ±20°まで(即ち、2α=2β=40°)とする。但し、この視野角α、βの大きさは任意であり、視点位置V及び視線方向Sと同様に与えられる不定のものであってもよい。
As shown in FIGS. 6 to 8, when the
また、キューブ検索部102がキューブCを検索するにあたり、視点の位置Vから無限遠方に位置するキューブCまでをも検索の対象としても勿論よいが、より好ましくは視点の位置Vから検索する距離の範囲Rを有限に設定する。例えば、視点の位置Vから10kmまでの範囲内、または100kmまでの範囲内に存在するキューブCのみを検索対象とし、それよりも遠方に位置するキューブCは検索の対象外とする。視点Vから遙かに遠く離れたキューブC(が模擬している物体)は実際には視認できない、または視認する必要がなく、そのようなキューブCは描画の対象としなくともよいからである。視点の位置Vからの検索距離の範囲Rは常に一定であってもよいし、視点位置V及び視線方向Sと同様に与えられる不定のものであってもよい。
Further, when the
キューブ検索部102は、空間内に存在する各キューブCの位置座標及びその有効桁数並びに高さ、地上高等の情報をキューブ情報格納部101から読み出す。そして、まず、空間内に存在するキューブCのうち、
(i)与えられた視点位置V[緯度,経度]から与えられた視線方向S[方位角]を見るときに、キューブCの南西角、南東角、北東角または北西角の頂点(あるいは、中央等)のうちの何れか少なくとも一つの位置[緯度,経度]が所要の視野角αの範囲内にあるようなキューブC
(ii)なおかつ、与えられた視点位置V[緯度,経度]と、キューブの南西角、南東角、北東角または北西角の頂点(あるいは、中央等)のうちの何れか少なくとも一つの位置[緯度,経度]との水平距離(高度差を無視した距離)が所要の検索距離Rの範囲内にあるようなキューブC
を抽出する。図7に示す例に則して述べると、あるキューブCの頂点PAはスクリーンFの左右方向に沿った視野角αの範囲外に位置しているので、この頂点PAを有するキューブCは検索条件(i)に合致しない。一方で、他のキューブCの頂点PB、PCは何れもスクリーンFの左右方向に沿った視野角αの範囲内に位置しているが、頂点PCは視点位置Vからの距離が検索距離Rの範囲外にある、つまりは視点Vから遠すぎるので、その頂点PCを有するキューブCは検索条件(ii)に合致しない。結果として、頂点PBを有するキューブCが検索条件(i)及び(ii)に合致することとなる。
The
(I) When looking at the given line-of-sight direction S [azimuth] from the given viewpoint position V [latitude, longitude], the apex (or center) of the southwest, southeast, northeast or northwest corners of cube C Etc.) Cube C such that at least one position [latitude, longitude] is within the required viewing angle α
(Ii) Moreover, at least one of the given viewpoint position V [latitude, longitude] and the apex (or center, etc.) of the southwest angle, southeast angle, northeast angle, or northwest angle of the cube [latitude]. , Longitude] and the horizontal distance (distance ignoring the altitude difference) is within the range of the required search distance R.
Is extracted. According to the example shown in FIG. 7, since the vertex PA of a certain cube C is located outside the range of the viewing angle α along the left-right direction of the screen F, the cube C having this vertex PA is a search condition. Does not match (i). On the other hand, the vertices PB and PC of the other cubes C are both located within the range of the viewing angle α along the left-right direction of the screen F, but the distance from the viewpoint position V of the vertex PC is the search distance R. The cube C having the vertex PC does not meet the search condition (ii) because it is out of range, that is, too far from the viewpoint V. As a result, the cube C having the vertex PB matches the search conditions (i) and (ii).
さらに、キューブ検索部102は、上記の検索条件(i)及び(ii)に合致するキューブCのうち、
(iii)与えられた視点位置V[緯度,経度,高さ]から与えられた視線方向S[仰俯角]を見るときに、キューブCの頂面側の何れかの頂点(あるいは、中央等)の位置[緯度,経度,高さ]が所要の視野角の下限よりも上方に位置し、並びに、同キューブCの底面側の何れかの頂点(あるいは、中央等)の位置[緯度,経度,高さ]が同視野角の上限よりも下方に位置しているようなキューブC
を抽出する。図8に示す例に則して述べると、あるキューブCの頂面側の頂点PDはスクリーンFの上下方向に沿った視野角βの下限よりも下方に位置しているので、この頂点PDを有するキューブCは検索条件(iii)に合致しない。また、他のキューブCの底面側の頂点PEはスクリーンFの上下方向に沿った視野角βの上限よりも上方に位置しているので、この頂点PEを有するキューブCも検索条件(iii)に合致しない。一方で、別のキューブCの頂点PBはスクリーンFの上下方向に沿った視野角βの範囲内に位置しているので、この頂点PBを有するキューブCが検索条件(iii)に合致することとなる。
Further, the
(Iii) When looking at the given line-of-sight direction S [elevation / depression angle] from the given viewpoint position V [latitude, longitude, height], any vertex (or center, etc.) on the top surface side of the cube C. The position [latitude, longitude, height] is located above the lower limit of the required viewing angle, and the position [latitude, longitude, etc.] of any apex (or center, etc.) on the bottom surface side of the cube C. Cube C whose height] is located below the upper limit of the same viewing angle
Is extracted. According to the example shown in FIG. 8, the apex PD on the top surface side of a certain cube C is located below the lower limit of the viewing angle β along the vertical direction of the screen F. The cube C to have does not meet the search condition (iii). Further, since the apex PE on the bottom surface side of the other cube C is located above the upper limit of the viewing angle β along the vertical direction of the screen F, the cube C having this apex PE is also included in the search condition (iii). Does not match. On the other hand, since the vertex PB of another cube C is located within the range of the viewing angle β along the vertical direction of the screen F, the cube C having this vertex PB matches the search condition (iii). Become.
上記の条件(i)、(ii)及び(iii)をおしなべて充足するキューブCが、描画するべき対象のキューブCである。キューブ検索部102は、そのような一または複数のキューブCを選出し、当該キューブCの描画のために必要となる情報、即ち当該キューブCの位置座標及び有効桁数、高さ及び地上高、色等の情報をキューブ情報格納部101から読み出して取得する。
The cube C that satisfies all of the above conditions (i), (ii), and (iii) is the cube C to be drawn. The
上記の各条件(i)、(ii)、(iii)の成否を判断するためには、それぞれの位置座標が緯度及び経度で表される二つの地点の間の距離、及びその一方の地点から他方の地点を見たときの方位角を算出する必要がある。ここで、二地点間の距離である測地線長及び一方の地点から他方の地点を見たときの方位角の計算方法の具体例を示す。以下に述べる計算方法は、国土地理院ウェブサイト(http://vldb.gsi.go.jp/sokuchi/surveycalc/surveycalc/bl2stf.html)で紹介されているものである。 In order to judge the success or failure of each of the above conditions (i), (ii), and (iii), the distance between two points whose position coordinates are represented by latitude and longitude, and one of the points It is necessary to calculate the azimuth when looking at the other point. Here, a specific example of the geodesic length, which is the distance between two points, and the calculation method of the azimuth angle when the other point is viewed from one point is shown. The calculation method described below is introduced on the Geospatial Information Authority of Japan website (http://vldb.gsi.go.jp/sokuchi/surveycalc/surveycalc/bl2stf.html).
一方の地点の緯度をφ1、経度をL1とおき、他方の地点の緯度をφ2、経度をL2とおく。但し、北緯を正、南緯を負、東経を正、西経を(360°−経度)とする。また、L=L2−L1が負値となる場合には、一方の地点の緯度をφ2、経度をL2とし、他方の地点の緯度をφ1、経度をL1として、Lを正値化する。並びに、地球楕円体(準拠楕円体)の長半径をa、扁平率をfとおく。
L=L2−L1; L’=180°−L (但し、0°≦L≦180°)
Δ=φ2−φ1; Σ=φ1+φ2
u1=tan-1[(1−f)tanφ1]; u2=tan-1[(1−f)tanφ2]
Σ’=u1+u2; Δ’=u2−u1 (但し、−180°≦Σ’≦180°、−180°≦Δ’≦180°)
ξ=cos(Σ’/2); ξ’=sin(Σ’/2)
η=sin(Δ’/2); η’=cos(Δ’/2)
x=sinu1sinu2; y=cosu1cosu2
c=ycosL+x
ε=[f(2−f)]/[(1−f)2]
以降、cの値に応じて一部計算式が異なり、c≧0が成立する場合をゾーン1、0>c≧−cos(3°cosu1)が成立する場合をゾーン2、c<−cos(3°cosu1)が成立する場合をゾーン3とする。
θの初期値θ(0)について、ゾーン1ではθ(0)=L(1+fy)とし、ゾーン2ではθ(0)=L’とする。
ゾーン3では、Σ=0であるゾーン3(a)と、Σ≠0であるゾーン3(b)とで計算方法が分かれる。
R=fπcos2u1[1−(1/4)f(1+f)sin2u1+(3/16)f2sin4u1]
d1=L’cosu1−R; d2=|Σ’|+R
q=L’/(fπ); f1=(1/4)f[1+(1/2)f]; γ0=q+f1q−f1q3
ゾーン3(a)でのθ(0)の計算は、
A0=tan-1(d1/d2) (但し、−90°≦A0≦90°)
B0=sin-1[R/√(d1 2+d2 2)] (但し、0°≦B0≦90°)
ψ=A0+B0; j=γ0/cosu1
k=(1+f1)|Σ’|(1−fy)/(fπy); j1=j/(1+ksecψ)
ψ’=sin-1j1 (但し、0°≦ψ’≦90°)
ψ’’=sin-1(j1cosu1/cosu2) (但し、0°≦ψ’’≦90°)
θ(0)=2tan-1{tan[(ψ’+ψ’’)/2]sin(|Σ’|/2)/cos(Δ’/2)}
他方、ゾーン3(b)では、d1>0の場合にθ(0)=L’とする。ゾーン3(b)でd1≦0である場合の測地線長及び方位角の計算に関しては、別途述べる。
Let the latitude of one point be φ 1 and the longitude be L 1 , the latitude of the other point be φ 2 , and the longitude be L 2 . However, the north latitude is positive, the south latitude is negative, the east longitude is positive, and the west longitude is (360 ° -longitude). When L = L 2- L 1 is a negative value, the latitude of one point is φ 2 , the longitude is L 2 , the latitude of the other point is φ 1 , and the longitude is L 1. Make it positive. Let a be the semimajor axis of the earth ellipsoid (reference ellipsoid) and f be the flattening.
L = L 2- L 1 ; L'= 180 ° -L (however, 0 ° ≤ L ≤ 180 °)
Δ = φ 2 − φ 1 ; Σ = φ 1 + φ 2
u 1 = tan -1 [(1-f) tan φ 1 ]; u 2 = tan -1 [(1-f) tan φ 2 ]
Σ'= u 1 + u 2 ; Δ'= u 2 -u 1 (however, -180 ° ≤ Σ'≤ 180 °, -180 ° ≤ Δ'≤ 180 °)
ξ = cos (Σ'/2);ξ'= sin (Σ'/2)
η = sin (Δ'/2);η'= cos (Δ'/2)
x = sine 1 sine 2 ; y = cosu 1 cosu 2
c = ycosL + x
ε = [f (2-f)] / [(1-f) 2 ]
After that, some calculation formulas differ depending on the value of c, and
The initial value of θ θ (0), and in
In zone 3, the calculation method is divided into zone 3 (a) where Σ = 0 and zone 3 (b) where Σ ≠ 0.
R = fπcos 2 u 1 [1- (1/4) f (1 + f) sin 2 u 1 + (3/16) f 2 sin 4 u 1 ]
d 1 = L'cosu 1 −R; d 2 = | Σ'| + R
q = L'/ (fπ); f 1 = (1/4) f [1 + (1/2) f]; γ 0 = q + f 1 q−f 1 q 3
The calculation of θ (0) in zone 3 (a) is
A 0 = tan -1 (d 1 / d 2 ) (However, -90 ° ≤ A 0 ≤ 90 °)
B 0 = sin -1 [R / √ (d 1 2 + d 2 2 )] (However, 0 ° ≤ B 0 ≤ 90 °)
ψ = A 0 + B 0 ; j = γ 0 / cosu 1
k = (1 + f 1 ) | Σ'| (1-fy) / (fπy); j 1 = j / (1 + ksecψ)
ψ'= sin -1 j 1 (however, 0 ° ≤ ψ'≤ 90 °)
ψ'' = sin -1 (j 1 cosu 1 / cosu 2 ) (However, 0 ° ≤ ψ'' ≤ 90 °)
θ (0) = 2 tan -1 {tan [(ψ'+ ψ'') / 2] sin (| Σ'| / 2) / cos (Δ'/2)}
On the other hand, in zone 3 (b), when d 1 > 0, θ (0) = L'is set. The calculation of the geodesic line length and the azimuth angle when d 1 ≤ 0 in zone 3 (b) will be described separately.
(ゾーン3(b)でd1≦0である場合を除く)下記θの算出において、一回目の演算ではθ(n)≡θ(0)とし、二回目以降の演算ではθ(n+1)≡θ(n)とする。
ゾーン1では、g=√[η2cos2(θ(n)/2)+ξ2sin2(θ(n)/2)]
ゾーン1以外では、g=√[η2sin2(θ(n)/2)+ξ2cos2(θ(n)/2)]
ゾーン1では、h=√[η’2cos2(θ(n)/2)+ξ’2sin2(θ(n)/2)]
ゾーン1以外では、h=√[η’2sin2(θ(n)/2)+ξ’2cos2(θ(n)/2)]
σ=2tan-1(g/h); J=2gh; K=h2−g2
γ=(y/J)sinθ(n); Γ=1−γ2; ζ=ΓK−2x; ζ’=ζ+x
D=(1/4)f(1+f)−(3/16)f2Γ
E=(1−DΓ)fγ{σ+DJ[ζ+DK(2ζ2−Γ2)]}
ゾーン1では、F=θ(n)−L−E
ゾーン1以外では、F=θ(n)−L’+E
G=fγ2(1−2DΓ)+fζ’(σ/J)[1−DΓ+(1/2)fγ2]+(1/4)f2ζζ’
θ(n+1)=θ(n)−F/(1−G)
上記を所要回数反復することで、θを求める。その反復的な演算は、|F|<10-15となるまで続行することが好ましい。
(Except when d 1 ≤ 0 in zone 3 (b)) In the calculation of θ below, θ (n) ≡ θ (0) is set in the first operation, and θ (n + 1) is set in the second and subsequent operations. ) ≡ θ (n) .
In
Other than
In
In addition zone 1, h = √ [η '2 sin 2 (θ (n) / 2) + ξ' 2 cos 2 (θ (n) / 2)]
σ = 2tan -1 (g / h); J = 2gh; K = h 2- g 2
γ = (y / J) sinθ (n) ; Γ = 1-γ 2 ; ζ = ΓK-2x; ζ'= ζ + x
D = (1/4) f (1 + f)-(3/16) f 2 Γ
E = (1-DΓ) fγ {σ + DJ [ζ + DK (2ζ 2 − Γ 2 )]}
In
Other than
G = fγ 2 (1-2DΓ) + fζ'(σ / J) [1-DΓ + (1/2) fγ 2 ] + (1/4) f 2 ζζ'
θ (n + 1) = θ (n) −F / (1-G)
By repeating the above for the required number of times, θ is obtained. The iterative calculation is preferably continued until | F | <10 -15.
(ゾーン3(b)でd1≦0である場合を除く)測地線長sは、
n0=εΓ/[√(1+εΓ)+1]2; A=(1+n0)[1+(5/4)n0 2]
B=ε[1−(3/8)n0 2]/[√(1+εΓ)+1]2
s=(1−f)aA(σ−BJ{ζ−(1/4)B[K(Γ2−2ζ2)−(1/6)Bζ(1−4K2)(3Γ2−4ζ2)]})
(ゾーン3(b)でd1≦0である場合を除く)移動体1の位置から見た対象の位置の方位角αは、
ゾーン1では、α=tan-1[ξtan(θ/2)/η]−tan-1[ξ’tan(θ/2)/η’]
ゾーン1以外では、α=tan-1[η’tan(θ/2)/ξ’]−tan-1[ηtan(θ/2)/ξ]
但し、一方の地点の緯度及び経度を(φ2,L2)とし、他方の地点の緯度及び経度を(φ1,L1)としているのであれば、
ゾーン1では、α=180°+tan-1[ξtan(θ/2)/η]+tan-1[ξ’tan(θ/2)/η’]
ゾーン1以外では、α=360°−tan-1[η’tan(θ/2)/ξ’]−tan-1[ηtan(θ/2)/ξ]
なお、ゾーン3(b)でd1=0である場合の測地線長s及び方位角αは、
Γ=sin2u1
n0=εΓ/[√(1+εΓ)+1]2; A=(1+n0)[1+(5/4)n0 2]
s=(1−f)aAπ
α=90°
但し、一方の地点の緯度及び経度を(φ2,L2)とし、他方の地点の緯度及び経度を(φ1,L1)としているのであれば、α=270°
また、ゾーン3(b)でd1<0である場合の測地線長s及び方位角αは、下記に則って算出する。一回目の演算ではγ(n)≡γ(0)とし、二回目以降の演算ではγ(n+1)≡γ(n)として、
Γ=1−γ(n) 2; D=(1/4)f(1+f)−(3/16)f2Γ
γ(n+1)=q/(1−DΓ)
上記を所要回数反復することで、Γ及びDを求める。その反復的な演算は、|γ(n)−γ(n-1)|<10-15となるまで続行することが好ましい。そして、
n0=εΓ/[√(1+εΓ)+1]2; A=(1+n0)[1+(5/4)n0 2]
s=(1−f)aAπ
m=1−qsecu1; n=DΓ/(1−DΓ); w=m−n+mn
w≦0のとき、α=90°
w>0のとき、α=90°−2sin-1√(w/2)
但し、一方の地点の緯度及び経度を(φ2,L2)とし、他方の地点の緯度及び経度を(φ1,L1)としているのであれば、
w≦0のとき、α=270°
w>0のとき、α=270°+2sin-1√(w/2)
測地線長及び方位角の計算方法は、上掲のものに限定されないことは言うまでもない。より簡易な(計算量の少ない、だが誤差が生じ得る)計算方法として、Vincentyの式やHubenyの式等が知られており、それらを採用しても構わない。あるいは、与えられた視点の位置V[緯度,経度]における単位緯度あたりの緯度方向寸法及び単位経度あたりの経度方向寸法を求め、一つのグリッドG即ちキューブCの平面寸法を(各キューブCの所在位置如何によらずに)一意に決定してしまってもよい。例えば、視点Vが日本国内に置かれる場合、緯度0.000001°が0.11m、経度0.000001°が0.09mであると定めた上で、測地線長及び方位角を計算することが考えられる。
(Except when d 1 ≤ 0 in zone 3 (b)) The geodesic length s is
n 0 = εΓ / [√ (1 + εΓ) +1] 2 ; A = (1 + n 0 ) [1+ (5/4) n 0 2 ]
B = ε [1- (3/8) n 0 2 ] / [√ (1 + εΓ) +1] 2
s = (1-f) aA (σ-BJ {ζ- (1/4) B [K (Γ 2 -2ζ 2 ) − (1/6) Bζ (1-4K 2 ) (3Γ 2 -4ζ 2 ) ]}))
(Except when d 1 ≤ 0 in zone 3 (b)) The azimuth angle α of the target position as seen from the position of the moving
In
Other than
However, if the latitude and longitude of one point is (φ 2 , L 2 ) and the latitude and longitude of the other point is (φ 1 , L 1 ), then
In
In addition zone 1, α = 360 ° -tan -1 [ η'tan (θ / 2) / ξ '] - tan -1 [ηtan (θ / 2) / ξ]
The geodesic length s and the azimuth angle α when d 1 = 0 in zone 3 (b) are
Γ = sin 2 u 1
n 0 = εΓ / [√ (1 + εΓ) +1] 2 ; A = (1 + n 0 ) [1+ (5/4) n 0 2 ]
s = (1-f) aAπ
α = 90 °
However, if the latitude and longitude of one point is (φ 2 , L 2 ) and the latitude and longitude of the other point is (φ 1 , L 1 ), α = 270 °.
Further, the geodesic length s and the azimuth angle α when d 1 <0 in zone 3 (b) are calculated according to the following. In the first operation, γ (n) ≡γ (0), and in the second and subsequent operations, γ (n + 1) ≡γ (n) .
Γ = 1-γ (n) 2 ; D = (1/4) f (1 + f)-(3/16) f 2 Γ
γ (n + 1) = q / (1-DΓ)
By repeating the above for the required number of times, Γ and D are obtained. The iterative operation is preferably continued until | γ (n) −γ (n-1) | <10 -15. and,
n 0 = εΓ / [√ (1 + εΓ) +1] 2 ; A = (1 + n 0 ) [1+ (5/4) n 0 2 ]
s = (1-f) aAπ
m = 1-qsecu 1 ; n = DΓ / (1-DΓ); w = mn + mn
When w ≦ 0, α = 90 °
When w> 0, α = 90 ° -2 sin -1 √ (w / 2)
However, if the latitude and longitude of one point is (φ 2 , L 2 ) and the latitude and longitude of the other point is (φ 1 , L 1 ), then
When w ≦ 0, α = 270 °
When w> 0, α = 270 ° + 2 sin -1 √ (w / 2)
Needless to say, the calculation method of the geodesic line length and the azimuth angle is not limited to the above. Vincenty's formula, Hubney's formula, and the like are known as simpler calculation methods (the amount of calculation is small, but errors can occur), and these may be adopted. Alternatively, the latitude dimension per unit latitude and the longitude dimension per unit longitude at the position V [latitude, longitude] of the given viewpoint are obtained, and the plane dimension of one grid G, that is, the cube C (location of each cube C). It may be uniquely determined (regardless of the position). For example, when the viewpoint V is placed in Japan, the geodesic length and azimuth can be calculated after defining that the latitude 0.000001 ° is 0.11 m and the longitude 0.000001 ° is 0.09 m. Conceivable.
投影情報演算部103は、描画するべき対象としてキューブ検索部102が選出した一または複数のキューブCの各々について、キューブ情報格納部101から読み出した情報を元に、当該キューブCの各頂点P0、P1、P2、P3、P4、P5、P6、P7をスクリーンFに投影した場合における各頂点P0、P1、P2、P3、P4、P5、P6、P7の同スクリーンF上での位置座標[左右方向位置X,上下方向位置Y]を演算する。
The projection
図7に示す例に則して述べると、描画対象であるキューブCの頂点PBをスクリーンFに投影する場合の、同スクリーンF上での左右方向に沿った位置座標は、鉛直面に平行かつ視線方向Sと直交する方向から見た(平面視の)状態で、視点Vから視線の方向Sに沿って伸びる線分と、視点Vから当該頂点PBに向かって伸びる線分とがなす角度Xとして求められる。この角度Xは、視点の位置Vから見た視線の方向Sの方位角と、同じ視点Vの位置から見た頂点PBの方向の方位角との差分である。 According to the example shown in FIG. 7, when the vertex PB of the cube C to be drawn is projected onto the screen F, the position coordinates along the left-right direction on the screen F are parallel to the vertical plane and An angle X formed by a line segment extending from the viewpoint V along the line-of-sight direction S and a line segment extending from the viewpoint V toward the apex PB in a state (in a plan view) viewed from a direction orthogonal to the line-of-sight direction S. Is required as. This angle X is the difference between the azimuth angle of the line-of-sight direction S seen from the viewpoint position V and the azimuth angle in the direction of the apex PB seen from the same viewpoint V position.
並びに、図8に示す例に則して述べると、描画対象であるキューブCの頂点PBをスクリーンFに投影する場合の、同スクリーンF上での上下方向に沿った位置座標は、水平面に平行かつ視線方向Sと直交する方向から見た(側面視の)状態で、視点Vから視線の方向Sに沿って伸びる線分と、視点Vから当該頂点PBに向かって伸びる線分とがなす角度Yとして求められる。この角度Yは、視点の位置Vから見た視線の方向Sの仰俯角と、同じ視点の位置Vから見た頂点PBの方向の仰俯角との差分である。投影情報演算部103は、描画対象のキューブCの各頂点の同スクリーンF上での位置座標[X,Y]を算出する。
Further, according to the example shown in FIG. 8, when the vertex PB of the cube C to be drawn is projected onto the screen F, the position coordinates along the vertical direction on the screen F are parallel to the horizontal plane. The angle formed by the line segment extending from the viewpoint V along the line-of-sight direction S and the line segment extending from the viewpoint V toward the apex PB when viewed from a direction orthogonal to the line-of-sight direction S (side view). Obtained as Y. This angle Y is the difference between the elevation / depression angle in the direction S of the line of sight viewed from the position V of the viewpoint and the elevation / depression angle in the direction of the apex PB viewed from the position V of the same viewpoint. The projection
のみならず、投影情報演算部103は、描画対象となるキューブCの各々について、当該キューブCが有する八つの頂点P0、P1、P2、P3、P4、P5、P6、P7のうち、当該キューブC自体の陰に隠れるために視点Vからでは見えない、つまりは描画する必要のない頂点を判断する。具体的には、視点の位置V[緯度,経度,高さ]から、キューブCの八つの頂点P0、P1、P2、P3、P4、P5、P6、P7のそれぞれの位置[緯度,経度,高さ]までの間の斜距離(高度差をも加味した文字通りの距離)を算出する。そして、視点Vからの斜距離が最も遠い頂点を、キューブC自体の陰に隠れて見えない頂点であると判定する。
Not only that, the projection
さらに、視点Vからの斜距離が最も遠い頂点のスクリーンF上での位置座標[X,Y]と、視点Vからの斜距離が二番目に遠い頂点のスクリーンF上での位置座標[X,Y]との間の距離を求め、スクリーンF上で両者の距離が閾値以下に接近しているならば、視点Vからの斜距離が二番目に遠い頂点もまたキューブC自体の陰に隠れて見えない頂点であると判定する。この閾値は、視点Vと前者の最も遠い頂点とを結ぶ線分と、視点Vと後者の二番目に遠い頂点とを結ぶ線分とがなす角度が0.5°程度となるような値に設定する。 Further, the position coordinates [X, Y] on the screen F of the vertex having the farthest oblique distance from the viewpoint V and the position coordinates [X, Y] on the screen F of the vertex having the second farthest oblique distance from the viewpoint V. If the distance to [Y] is calculated and the distance between the two is closer than the threshold on the screen F, the vertex with the second farthest oblique distance from the viewpoint V is also hidden behind the cube C itself. Judge that it is an invisible vertex. This threshold is set so that the angle between the line segment connecting the viewpoint V and the farthest vertex of the former and the line segment connecting the viewpoint V and the second farthest vertex of the latter is about 0.5 °. Set.
加えて、視点Vからの斜距離が最も遠い頂点のスクリーンF上での位置座標[X,Y]と、視点Vからの斜距離が三番目に遠い頂点のスクリーンF上での位置座標[X,Y]との間の距離を求め、スクリーンF上で両者の距離が閾値以下に接近しているならば、視点Vからの斜距離が三番目に遠い頂点、及び視点Vからの斜距離が四番目に遠い頂点もまたキューブC自体の陰に隠れて見えない頂点であると判定する。この閾値は、視点Vと前者の最も遠い頂点とを結ぶ線分と、視点Vと後者の三番目に遠い頂点とを結ぶ線分とがなす角度が0.5°程度となるような値に設定する。 In addition, the position coordinates [X, Y] on the screen F of the vertex with the farthest diagonal distance from the viewpoint V and the position coordinates [X] on the screen F of the vertex with the third farthest diagonal distance from the viewpoint V. , Y], and if the distance between them is closer than the threshold on the screen F, the apex with the third farthest oblique distance from the viewpoint V and the oblique distance from the viewpoint V are It is determined that the fourth distant vertex is also an invisible vertex hidden behind the cube C itself. This threshold is set so that the angle between the line segment connecting the viewpoint V and the farthest vertex of the former and the line segment connecting the viewpoint V and the third farthest vertex of the latter is about 0.5 °. Set.
なお、描画対象のキューブCが有する十二本の稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11のうち、キューブC自体の陰に隠れて見えない頂点に接続する稜線は、やはりキューブCの陰に隠れて見えない。そのような稜線は、描画する必要のない稜線である。 Of the twelve ridges L0, L1, L2, L3, L4, L5, L6, L7, L8, L9, L10, and L11 of the cube C to be drawn, they are hidden behind the cube C itself and cannot be seen. The ridgeline connecting to the apex is still hidden behind the cube C and cannot be seen. Such ridges are ridges that do not need to be drawn.
また、投影情報演算部103は、描画対象のキューブCの各々について、当該キューブCが有する十二本の稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11のうち、視点Vから遠く離れており視点Vから見て極めて短小となるために描画する必要のない稜線を判断する。具体的には、稜線により結ばれる二つの頂点のうちの一方のスクリーンF上での位置座標[X,Y]と、他方のスクリーンF上での位置座標[X,Y]との間の距離を求め、スクリーンF上でその両者の距離が閾値以下に接近しているならば、それら二つの頂点を結ぶ稜線を描画する必要のない稜線であると判定する。この閾値は、視点Vと一方の頂点とを結ぶ線分と、視点Vと他方の頂点とを結ぶ線分とがなす角度が0.5°程度となるような値に設定する。
Further, the projection
なおかつ、投影情報演算部103は、描画対象のキューブCの各々について、当該キューブCが有する八つの頂点P0、P1、P2、P3、P4、P5、P6、P7のうち、視点Vから遠く離れており視点Vから見て各々の頂点を区別することが困難であるために描画する必要のない頂点を判断する。具体的には、隣り合う二つの頂点のうちの一方のスクリーンF上での位置座標[X,Y]と、他方のスクリーンF上での位置座標[X,Y]との間の距離を求め、スクリーンF上でその両者の距離が閾値以下に接近しているならば、それら二つの頂点のうちの何れかを描画する必要のない頂点であると判定する。この閾値は、視点Vと一方の頂点とを結ぶ線分と、視点Vと他方の頂点とを結ぶ線分とがなす角度が0.05°程度となるような値に設定する。この閾値は、上記の他の閾値と比較して小さい。
Moreover, for each of the cubes C to be drawn, the projection
描画対象となるキューブCが有する八つの頂点P0、P1、P2、P3、P4、P5、P6、P7及び十二本の稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11が全てスクリーンFの寸法の範囲内、即ち視野角α、βの範囲内に収まっているとは限らない。投影情報演算部103は、スクリーンF上における位置座標[X,Y]がスクリーンFの寸法よりも外側に逸脱する頂点を、描画する必要のない頂点であると判断する。そして、一本の稜線により結ばれる二つの頂点の双方がスクリーンFの寸法の外側に位置している場合には、その稜線を描画する必要のない稜線であると判断する。
Eight vertices P0, P1, P2, P3, P4, P5, P6, P7 and twelve ridges L0, L1, L2, L3, L4, L5, L6, L7, L8, which the cube C to be drawn has. Not all L9, L10, and L11 are within the dimensions of the screen F, that is, within the viewing angles α and β. The projection
投影情報出力部104は、少なくとも、投影情報演算部103が演算した、描画対象のキューブCが有する各頂点P0、P1、P2、P3、P4、P5、P6、P7のスクリーンF上での位置座標[X,Y]その他の情報を出力する。投影情報出力部104は、与えられた視点の位置Vから与えられた視線の方向Sに沿って一または複数のキューブCを見た場景を三次元グラフィクスとして描画するプログラムに対し、その描画のために必要となる情報を提供するものである。図9に示すように、投影情報出力部104が出力する情報には、描画対象として選出された一または複数のキューブCのそれぞれ毎に、当該キューブCが有する八つの頂点P0、P1、P2、P3、P4、P5、P6、P7の各々のスクリーンF上での位置座標[X,Y]、各頂点P0、P1、P2、P3、P4、P5、P6、P7を描画する必要があるかないか、隣り合う二つの頂点を結ぶ十二本の稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11の各々を描画する必要があるかないか、当該キューブCの色、等が含まれる。投影情報出力部104は、これらの情報を、メインメモリ1b若しくは補助記憶デバイス1cに書き出し、または電気通信回線を介して通信可能に接続している外部の装置若しくはコンピュータに向けて送信する。
The projection
投影情報出力部104が出力する情報を取得した三次元グラフィクス描画用のプログラムは、当該情報を参照して、視点の位置Vから見た一または複数のキューブCを描画し、ディスプレイ1iの画面に表示する。投影情報出力部104は、単独のキューブCについて、当該キューブCが有する頂点P0、P1、P2、P3、P4、P5、P6、P7及び稜線L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11のうち描画不要のものを指し示す情報を出力する。この情報を参照すれば、描画プログラムにおいて、一つのキューブCの隠線処理を実行することが可能となる。他方、複数のキューブC同士の重なり合い、即ち視点Vから見て遠方のキューブCの一部または全部が視点Vにより近い手前方のキューブCの陰に隠れて見えなくなることについては、描画プログラム自体がその隠れる部分を判断して処理する必要がある。
The three-dimensional graphics drawing program that has acquired the information output by the projection
本実施形態では、現実空間に存在する物体を模擬する複数のキューブCの各々についてその存在位置を示す緯度及び経度並びにその平面寸法及び高さ寸法の情報を格納するキューブ情報格納部101と、与えられる視点の位置Vを示す緯度、経度及び高度並びに視線の方向Sを示す方位角及び仰俯角を基準として所要の視野角α、βの範囲内に存在する一または複数のキューブCを検索しその緯度及び経度並びにその平面寸法及び高さ寸法の情報を前記キューブ情報格納部101から読み出すキューブ検索部102と、前記キューブ検索部102が検索した一または複数のキューブCの各々について前記キューブ情報格納部101から読み出した情報を元に当該キューブCの各頂点P0、P1、P2、P3、P4、P5、P6、P7を前記視線方向Sと直交するスクリーンFに投影した場合における各頂点P0、P1、P2、P3、P4、P5、P6、P7の同スクリーンF上での位置座標[X,Y]を演算する投影情報演算部103と、前記投影情報演算部103が演算した前記キューブCの各頂点P0、P1、P2、P3、P4、P5、P6、P7の前記スクリーンF上での位置座標[X,Y]の情報を出力する投影情報出力部104とを具備する描画支援装置を構成した。
In the present embodiment, the cube
本実施形態によれば、移動体1の周囲に存在する物体の検出や移動体1の運転制御に用いられるデータベース、即ちキューブ情報格納部101に格納している情報を、現実の物体を複数のキューブCにより模擬した場景を描画する処理に援用することができる。
According to the present embodiment, a plurality of real objects are stored in a database used for detecting an object existing around the moving
なお、本発明は以上に詳述した実施形態に限られるものではない。各部の具体的な構成や処理の手順等は、本発明の趣旨を逸脱しない範囲で種々変形が可能である。 The present invention is not limited to the embodiments described in detail above. The specific configuration of each part, the processing procedure, and the like can be variously modified without departing from the spirit of the present invention.
101…キューブ情報格納部
102…キューブ検索部
103…投影情報演算部
104…投影情報出力部
C…キューブ
F…スクリーン
L0、L1、L2、L3、L4、L5、L6、L7、L8、L9、L10、L11…稜線
P0、P1、P2、P3、P4、P5、P6、P7…頂点
S…視線方向
V…視点位置
X、Y…頂点のスクリーン上での位置座標
α、β…視野角
101 ... Cube
Claims (2)
与えられる視点の位置を示す緯度、経度及び高度並びに視線の方向を示す方位角及び仰俯角を基準として所要の視野角の範囲内に存在する一または複数のキューブを検索しその緯度及び経度並びにその平面寸法及び高さ寸法の情報を前記キューブ情報格納部から読み出すキューブ検索部と、
前記キューブ検索部が検索した一または複数のキューブの各々について前記キューブ情報格納部から読み出した情報を元に当該キューブの各頂点を前記視線方向と直交するスクリーンに投影した場合における各頂点の同スクリーン上での位置座標を演算する投影情報演算部と、
前記投影情報演算部が演算した前記キューブの各頂点の前記スクリーン上での位置座標の情報を出力する投影情報出力部とを具備し、
前記投影情報演算部は、個々のキューブについて、当該キューブにおける隣り合う二つの頂点の前記スクリーン上での距離を閾値と比較することを通じて、それら二つの頂点のうちの一方またはそれら二つの頂点を結ぶ稜線が描画するべきものであるか否かを判定し、
前記投影情報出力部は、前記投影情報演算部による判定の結果の情報をも併せて出力する描画支援装置。 A cube information storage unit that stores information on the latitude and longitude indicating the position of each of a plurality of rectangular parallelepiped cubes that simulate an object existing in the real space, and their plane and height dimensions.
Search for one or more cubes existing within the required viewing angle based on the latitude, longitude and altitude indicating the position of a given viewpoint, and the azimuth and elevation / depression angles indicating the direction of the line of sight, and search for the latitude and longitude and their latitude and longitude and their latitudes and longitudes. A cube search unit that reads out information on plane dimensions and height dimensions from the cube information storage unit, and
The same screen of each vertex when each vertex of the cube is projected onto a screen orthogonal to the line-of-sight direction based on the information read from the cube information storage unit for each of one or a plurality of cubes searched by the cube search unit. The projection information calculation unit that calculates the position coordinates above,
It is provided with a projection information output unit that outputs information on the position coordinates of each vertex of the cube calculated by the projection information calculation unit on the screen.
The projection information calculation unit connects one or two of the two vertices of each cube by comparing the distance of two adjacent vertices in the cube on the screen with the threshold value. Determine if the ridge should be drawn and
The projection information output unit is a drawing support device that also outputs information on the result of determination by the projection information calculation unit.
現実空間に存在する物体を模擬する複数の直方体状のキューブの各々についてその存在位置を示す緯度及び経度並びにその平面寸法及び高さ寸法の情報を格納するキューブ情報格納部、
与えられる視点の位置を示す緯度、経度及び高度並びに視線の方向を示す方位角及び仰俯角を基準として所要の視野角の範囲内に存在する一または複数のキューブを検索しその緯度及び経度並びにその平面寸法及び高さ寸法の情報を前記キューブ情報格納部から読み出すキューブ検索部、
前記キューブ検索部が検索した一または複数のキューブの各々について前記キューブ情報格納部から読み出した情報を元に当該キューブの各頂点を前記視線方向と直交するスクリーンに投影した場合における各頂点の同スクリーン上での位置座標を演算する投影情報演算部、並びに、
前記投影情報演算部が演算した前記キューブの各頂点の前記スクリーン上での位置座標の情報を出力する投影情報出力部として機能させ、
前記投影情報演算部は、個々のキューブについて、当該キューブにおける隣り合う二つの頂点の前記スクリーン上での距離を閾値と比較することを通じて、それら二つの頂点のうちの一方またはそれら二つの頂点を結ぶ稜線が描画するべきものであるか否かを判定し、
前記投影情報出力部は、前記投影情報演算部による判定の結果の情報をも併せて出力するプログラム。 Computer,
A cube information storage unit that stores information on the latitude and longitude indicating the position of each of a plurality of rectangular parallelepiped cubes that simulate an object existing in the real space, and their plane and height dimensions.
Search for one or more cubes existing within the required viewing angle based on the latitude, longitude and altitude indicating the position of a given viewpoint, and the azimuth and elevation / depression angles indicating the direction of the line of sight, and search for the latitude and longitude and their latitude and longitude and their latitudes and longitudes. Cube search unit that reads information on plane dimensions and height dimensions from the cube information storage unit,
The same screen of each vertex when each vertex of the cube is projected onto a screen orthogonal to the line-of-sight direction based on the information read from the cube information storage unit for each of one or a plurality of cubes searched by the cube search unit. Projection information calculation unit that calculates the position coordinates above, and
It functions as a projection information output unit that outputs information on the position coordinates of each vertex of the cube calculated by the projection information calculation unit on the screen .
The projection information calculation unit connects one or two of the two vertices of each cube by comparing the distance of two adjacent vertices in the cube on the screen with the threshold value. Determine if the ridge should be drawn and
The projection information output unit is a program that also outputs information on the result of determination by the projection information calculation unit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017002150A JP6913338B2 (en) | 2017-01-10 | 2017-01-10 | Drawing support device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017002150A JP6913338B2 (en) | 2017-01-10 | 2017-01-10 | Drawing support device and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2018112845A JP2018112845A (en) | 2018-07-19 |
JP6913338B2 true JP6913338B2 (en) | 2021-08-04 |
Family
ID=62911213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017002150A Active JP6913338B2 (en) | 2017-01-10 | 2017-01-10 | Drawing support device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6913338B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6913353B2 (en) | 2017-05-26 | 2021-08-04 | 株式会社データ変換研究所 | Mobile control system |
CN111523240B (en) * | 2020-04-28 | 2023-05-05 | 鲁东大学 | View analysis method based on DEM data |
-
2017
- 2017-01-10 JP JP2017002150A patent/JP6913338B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
JP2018112845A (en) | 2018-07-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11959771B2 (en) | Creation and use of enhanced maps | |
Brenner | Extraction of features from mobile laser scanning data for future driver assistance systems | |
JP2020507750A (en) | Vehicle location method and system using surface penetrating radar | |
US11370115B2 (en) | Path planning for an unmanned vehicle | |
JP4700080B2 (en) | Car navigation system and method | |
CN1755326A (en) | Navigation apparatus | |
KR101756946B1 (en) | Method and apparatus for performing map search and constructing a traffic route based longitude line and latitude line | |
US20110288763A1 (en) | Method and apparatus for displaying three-dimensional route guidance | |
US11668573B2 (en) | Map selection for vehicle pose system | |
JP6913338B2 (en) | Drawing support device and program | |
CN108931255B (en) | Mobile body control system | |
KR102336778B1 (en) | Vehicle Location Method of Skyline | |
CN112789480B (en) | Method and apparatus for navigating two or more users to meeting location | |
JP2000346658A (en) | Mobile information unit | |
JP6689046B2 (en) | Object detection system | |
JP7396618B2 (en) | Mobile position estimation system | |
JP6559556B2 (en) | Object position database construction system | |
JP2017138163A (en) | Steering support system | |
US20220264255A1 (en) | Network unilateral communication location electronic underpinning system | |
JP2023048587A (en) | Information processing method, program, and information processing device | |
JP2020201180A (en) | Information processing device, control method, program, and storage medium | |
CN116601671A (en) | Vehicle navigation with respect to pedestrians and determining vehicle free space | |
CN112150907A (en) | Method for constructing map based on earth texture and application |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20191106 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20201126 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20201215 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210215 |
|
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: 20210629 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210705 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6913338 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |