JP2009059101A - Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program - Google Patents
Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program Download PDFInfo
- Publication number
- JP2009059101A JP2009059101A JP2007224770A JP2007224770A JP2009059101A JP 2009059101 A JP2009059101 A JP 2009059101A JP 2007224770 A JP2007224770 A JP 2007224770A JP 2007224770 A JP2007224770 A JP 2007224770A JP 2009059101 A JP2009059101 A JP 2009059101A
- Authority
- JP
- Japan
- Prior art keywords
- dimensional object
- polygon
- plane
- cylinder
- color
- 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.)
- Pending
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
Description
本発明は、ユーザとインタラクションを可能とする地球地図の作成手法に関し、特に、動的な地図投影をリアルタイムに行うことによって、地球の姿勢をユーザが任意に指定することが可能な装置及び方法等の技術分野に関する。 The present invention relates to a method for creating a global map that enables interaction with a user, and in particular, an apparatus and a method that allow a user to arbitrarily specify the attitude of the earth by performing dynamic map projection in real time. Related to the technical field.
従来から、例えば球体又は回転楕円体としての地球を平面へ投影して地球地図を作成する種々の方法が知られているが、球体又は回転楕円体としての地球を平面に投影すると、誤差が発生するなどの様々な問題がある。このような問題の一つを解決するための方法として、例えば、特許文献1には、回転楕円体としての地球地図をUTM図法に従って所定経度帯及び所定緯度帯毎に区分して得た、不等辺四角形上の座標アドレスで規定された投影地図データを格納する地図データベースと、上記各区分毎に、各区分の不等辺四角形上の座標アドレスを、その区分内のデータの配列及び数を維持したままで、等辺四角形上の座標アドレスに変換する手段と、該変換後の等辺四角形上の座標アドレスで規定された地図データを格納するメモリと、より成る地図作成装置が開示されている。 Conventionally, various methods for creating an earth map by projecting the earth as a sphere or spheroid to a plane, for example, are known, but errors occur when the earth as a sphere or spheroid is projected onto a plane. There are various problems such as. As a method for solving one of such problems, for example, Patent Document 1 discloses a non-obtained method obtained by dividing an earth map as a spheroid into predetermined longitude bands and predetermined latitude bands according to the UTM projection. A map database that stores projection map data defined by coordinate addresses on equilateral squares, and for each of the above sections, coordinate addresses on unequal squares of each section are maintained in the array and number of data in that section. There is disclosed a map creation apparatus comprising means for converting into coordinate addresses on an equilateral quadrangle, a memory for storing map data defined by the coordinate addresses on the equilateral quadrangle after conversion.
ところで、我々の身近にある世界地図はメルカトル図法か類似の図法によるものが多く、高緯度が歪んだ世界観を我々に与えてきた。この地図学的地図により、共通の世界観を共有できるようになった反面、世界を新たな視点から解釈することや、地図と現実世界の差異を認識することは困難になった。 By the way, many of the world maps that are close to us are based on the Mercator projection or similar projections, and have given us a world view with high latitudes distorted. This cartographic map has made it possible to share a common world view, but it has become difficult to interpret the world from a new perspective and to recognize the difference between the map and the real world.
これまで、印刷メディアで発達してきた地図は、一方的に与えられる情報を読解しなければならず、ある程度の知識や訓練が必要であった。しかし近年では、コンピュータを用いたインタラクティブ地球地図が発表され(例えば、Google Earth http://earth.google.co.jp/)、読解だけではなく、インタラクションによる体験を通じて情報を解釈できるようになった。 Until now, maps that have been developed in print media have had to read information given unilaterally and required some knowledge and training. However, in recent years, interactive earth maps using computers have been announced (for example, Google Earth http://earth.google.co.jp/), and it has become possible to interpret information not only through reading but also through interactive experiences. .
なお、特許文献2〜4にも上記と関連する技術が提案されている。
しかしながら、既存のインタラクティブ地球地図でのインタラクションは、印刷メディアの世界地図のどこをどの大きさで切り取るのかという操作をするためのものが多い。これらのインタラクティブ地球地図によって遠く離れた土地の建物の名前や、目的地までの道のりを詳しく調べることなどができるようになったが、地球を俯瞰した場合、印刷メディアの世界地図や地球儀と同じ、あるいはそれに近い体験しか得ることができなかった。 However, the interaction with the existing interactive earth map is often for manipulating which part of the world map of the print media is to be cut out at what size. With these interactive Earth maps, it became possible to investigate the names of buildings far away and the way to the destination in detail, but when looking down at the earth, it is the same as the world map and globe of print media, Or I could only get an experience close to that.
本発明は、このような点に鑑み、ユーザが地球の姿勢を任意に指定し、インタラクションによる体験から新たな視点で世界を解釈することや、地図と現実世界の差異を認識すること等を、より効果的に実現することを可能とした3次元オブジェクト処理装置、3次元オブジェクト処理方法、及び3次元オブジェクト処理プログラムを提供することを課題の一つとする。 In view of such points, the present invention allows the user to arbitrarily specify the attitude of the earth, interpret the world from a new viewpoint from the experience of interaction, recognize the difference between the map and the real world, etc. An object is to provide a three-dimensional object processing device, a three-dimensional object processing method, and a three-dimensional object processing program that can be realized more effectively.
上記課題を解決するために、請求項1に記載の発明は、球体又は回転楕円体を複数のポリゴンにより表現し表面には地球表面が表される3次元オブジェクトにおける前記ポリゴンの頂点位置を円筒に投影する投影手段と、前記ポリゴンの頂点位置を平面上における直交座標に変換しつつ前記円筒を展開してその平面を表示させる展開表示手段と、 平面的な地球地図を構成する各地点における標高値に応じた描画色を規定する色テーブルを記憶する記憶手段と、を備え、前記展開表示手段は、前記円筒を展開する際に、前記変換された直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする。 In order to solve the above-mentioned problem, the invention described in claim 1 is characterized in that a sphere or a spheroid is expressed by a plurality of polygons, and a vertex position of the polygon in a three-dimensional object in which the surface of the earth is represented on a surface is a cylinder. Projection means for projecting, unfolding display means for displaying the plane by expanding the cylinder while converting the vertex position of the polygon into orthogonal coordinates on the plane, and elevation values at each point constituting the planar earth map Storage means for storing a color table that defines a drawing color according to the above, and the unfolding display means displays the drawing color of the point corresponding to the converted orthogonal coordinates when unfolding the cylinder. With reference to the color table, it is displayed in a drawing color corresponding to the altitude value at the point.
請求項2に記載の発明は、請求項1に記載の3次元オブジェクト処理装置において、前記展開表示手段は、前記平面上における前記ポリゴン内側の複数点の直交座標を、当該ポリゴンの頂点位置に対応する直交座標から計算し、当該計算した直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする。 According to a second aspect of the present invention, in the three-dimensional object processing device according to the first aspect, the unfolding display unit corresponds the orthogonal coordinates of a plurality of points inside the polygon on the plane to the vertex positions of the polygon. The drawing color of the point corresponding to the calculated orthogonal coordinate is displayed with the drawing color corresponding to the elevation value at the point with reference to the color table.
請求項3に記載の発明は、請求項2に記載の3次元オブジェクト処理装置において、ユーザからの入力手段を介した指示により、前記標高値に応じた描画色の基準レベルを変化させる変化制御手段を更に備え、前記展開表示手段は、前記基準レベルが変化される度に、前記色テーブルを参照して、既に表示された前記平面上における前記地点の描画色を変化させることを特徴とする。 According to a third aspect of the present invention, in the three-dimensional object processing apparatus according to the second aspect, the change control means for changing the reference level of the drawing color according to the altitude value according to an instruction from the user via the input means. The development display means changes the drawing color of the point on the already displayed plane with reference to the color table every time the reference level is changed.
請求項4に記載の3次元オブジェクト処理プログラムの発明は、コンピュータを、請求項1乃至3の何れか一項に記載の3次元オブジェクト処理装置として機能させることを特徴とする。 The invention of the three-dimensional object processing program according to claim 4 causes a computer to function as the three-dimensional object processing apparatus according to any one of claims 1 to 3.
請求項5に記載の発明は、球体又は回転楕円体を複数のポリゴンにより表現し表面には地球表面が表される3次元オブジェクトにおける前記ポリゴンの頂点位置を円筒に投影する工程と、前記ポリゴンの頂点位置を平面上における直交座標に変換しつつ前記円筒を展開してその平面を表示させる展開表示工程と、平面的な地球地図を構成する各地点における標高値に応じた描画色を規定する色テーブルを記憶する工程と、を備え、前記展開表示工程においては、前記円筒を展開する際に、前記変換された直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする。 According to a fifth aspect of the present invention, a step of projecting a vertex position of the polygon in a three-dimensional object in which a sphere or a spheroid is represented by a plurality of polygons and the surface of the earth is represented on a surface to a cylinder; An unfolding and displaying step for displaying the plane by expanding the cylinder while converting the vertex position into Cartesian coordinates on the plane, and a color for defining a drawing color corresponding to the altitude value at each point constituting the planar earth map Storing the table, and in the unfolding display step, when the cylinder is unfolded, the drawing color of the point corresponding to the converted orthogonal coordinate is referred to the point of the color table. It is characterized by being displayed in a drawing color corresponding to the altitude value at.
本発明によれば、円筒を展開する際に、ポリゴンの頂点位置から変換された直交座標に対応する地点の描画色を、色テーブルを参照して、当該地点における標高値に対応する描画色で表示させるようにしたので、迅速な処理を可能とし、より一層、ユーザに対し、新たな視点で世界を解釈させることができる。 According to the present invention, when the cylinder is expanded, the drawing color of the point corresponding to the orthogonal coordinate converted from the vertex position of the polygon is referred to the color table with the drawing color corresponding to the elevation value at the point. Since it is made to display, a quick process is attained and a user can be made to interpret the world from a new viewpoint further.
以下、本発明の最良の実施形態を添付図面に基づいて説明する。 DESCRIPTION OF EXEMPLARY EMBODIMENTS Hereinafter, the best embodiment of the invention will be described with reference to the accompanying drawings.
本発明に係る3次元オブジェクト処理装置及び方法は、処理部(CPU等からなる)、記憶部(VRAM、ROM及びハードディスクドライブ等からなる)、表示部(ディスプレイ等からなる)、及び操作部(マウス及びキーボード等からなる)を備えた汎用のパーソナルコンピュータに対して地球地図作成ソフトウェア(本発明に係る3次元オブジェクト処理プログラムを含む)をインストールして起動させることにより実現される。なお、本実施形態においては、表示色の決定プログラムのリアルタイムな計算処理のため、上記処理部にはGPU(Graphics Processing Unit)が備えられる。
[1.基本的なアルゴリズム]
先ず、本実施形態に係る地球地図作成ソフトウェアの基本的なアルゴリズムについて説明する。
A three-dimensional object processing apparatus and method according to the present invention includes a processing unit (comprising a CPU, etc.), a storage unit (comprising a VRAM, a ROM, a hard disk drive, etc.), a display unit (comprising a display, etc.), and an operation unit (mouse). This is realized by installing and starting the earth map creation software (including the three-dimensional object processing program according to the present invention) on a general-purpose personal computer having a keyboard and the like. In this embodiment, the processing unit includes a GPU (Graphics Processing Unit) for real-time calculation processing of a display color determination program.
[1. Basic algorithm]
First, the basic algorithm of the global map creation software according to this embodiment will be described.
図1に、本実施形態に係る地球地図作成ソフトウェアのアルゴリズム構成例を示す。 FIG. 1 shows an example of the algorithm configuration of the global map creation software according to this embodiment.
本アルゴリズムにより、3次元オブジェクトとしての地球オブジェクト(当該オブジェクトの表面には地球表面が表される)を地球儀モードと地図モードで表示し、互いに切換可能としている。なお、地球オブジェクトの持つ静的データは、地図投影の有無にかかわらず参照、提示可能になっている。 By this algorithm, the earth object as a three-dimensional object (the surface of the earth is represented on the surface of the object) is displayed in the globe mode and the map mode, and can be switched to each other. Note that the static data of the earth object can be referred to and presented regardless of the presence or absence of the map projection.
地球儀モードでは、地図に影響を与える地球オブジェクトの操作として、ユーザはマウスで地球オブジェクトをドラッグしつつ当該マウスを動かす(ポインタを移動させる)ことで、ディスプレイ上に表示された地球オブジェクトを回転させることができる。地球オブジェクトの回転は、地図投影前の地球オブジェクトに適用され、球状態のときに直感的な操作を行うために、そして、ジンバルロックを防ぐために公知のクオータニオンが用いられる。また、地球オブジェクトの回転は、平面360度どの方向にも可能になっている。更に、マウスで地球オブジェクトをドラッグしつつポインタを移動させたときの速度が計測され、当該速度で地球オブジェクトが回転されるようになっている。 In the globe mode, as an operation of the earth object that affects the map, the user rotates the earth object displayed on the display by moving the mouse (moving the pointer) while dragging the earth object with the mouse. Can do. The rotation of the earth object is applied to the earth object before projecting the map, and a known quota anion is used to perform an intuitive operation in a spherical state and to prevent gimbal lock. The rotation of the earth object is possible in any direction of 360 degrees on the plane. Further, the speed when the pointer is moved while dragging the earth object with the mouse is measured, and the earth object is rotated at the speed.
なお、本明細書では、緯度と経度を下記(1.1)のように表記する。 In this specification, latitude and longitude are expressed as shown in (1.1) below.
(e│w│n│s)(角度)・・・(1.1)
ここで、eは東経を、wは西経を、nは北緯を、s:南緯を示し、角度は、eまたはwの場合は0〜180,nまたはsの場合は0〜90をとる。
(E│w│n│s) (angle) (1.1)
Here, e represents east longitude, w represents west longitude, n represents north latitude, s: south latitude, and the angle is 0 to 180 for e or w, and 0 to 90 for n or s.
地球オブジェクトの形状モデルは、球体(回転楕円体であっても良い)を近似的に複数のポリゴン(本実施形態では、3つの頂点からなる3角形)により表現している。各ポリゴンの頂点位置は、当該オブジェクトの中心を原点とした例えば半径1の球上に配置され、緯度及び経度と対応付けられている。また、各ポリゴンの頂点位置は、それぞれ、n90とs90間、e180とw180間を等分割してできる交点とされる。分割数は、それぞれnDivLat,nDivLngとし、分割してできた交点の緯度及び経度の値を直交座標系へ変換したものが頂点位置となる。 In the shape model of the earth object, a sphere (which may be a spheroid) is approximately represented by a plurality of polygons (in this embodiment, a triangle formed by three vertices). The vertex position of each polygon is arranged on a sphere having a radius of 1, for example, with the center of the object as the origin, and is associated with latitude and longitude. The vertex position of each polygon is an intersection formed by equally dividing between n90 and s90 and between e180 and w180. The number of divisions is nDivLat and nDivLng, respectively, and the vertex position is obtained by converting the latitude and longitude values of the intersections obtained by the division into an orthogonal coordinate system.
直交座標への変換は下記(1.2)式で表される。 Conversion to Cartesian coordinates is expressed by the following equation (1.2).
x=cos(rLat)*sin(rLng)
y=sin(rLat)
z=−cos(rLat)*cos(rLng)
・・・(1.2)
ここで、rLat,rLngは緯度と経度をラジアンで表したものである。
x = cos (rLat) * sin (rLng)
y = sin (rLat)
z = −cos (rLat) * cos (rLng)
(1.2)
Here, rLat and rLng represent latitude and longitude in radians.
また、各頂点は、法線ベクトルとテクスチャ座標を保持する。地球オブジェクトが半径1の球であるので、法線ベクトルは頂点位置ベクトルと同じ値を持っている。また、テクスチャ座標は、e180からw180,およびn90からs90の範囲を含む画像が、球の対応する位置にマッピング(テクスチャマッピング)できるようになっている。なお、テクスチャ画像は一枚である必要はなく、上記範囲をカバーする複数の画像を用いてマッピングすることもできる。 Each vertex holds a normal vector and texture coordinates. Since the earth object is a sphere having a radius of 1, the normal vector has the same value as the vertex position vector. The texture coordinates can be mapped (texture mapping) to an image including a range of e180 to w180 and n90 to s90 at a corresponding position on the sphere. Note that the texture image does not have to be a single image and can be mapped using a plurality of images covering the above range.
一方、地図モードでは、地球オブジェクトが円筒に投影され当該円筒が展開されることによりその地図平面が表示される。この場合も、地図平面の対応する位置に緯度及び経度に応じた画像がマッピング(テクスチャマッピング)できるようになっている。 On the other hand, in the map mode, an earth object is projected onto a cylinder, and the cylinder plane is expanded to display the map plane. Also in this case, an image corresponding to the latitude and longitude can be mapped (texture mapping) to a corresponding position on the map plane.
なお、テクスチャマッピング等の処理は、ポリゴン単位で行われる。つまり、ポリゴンの3つの頂点座標が読み込まれて処理される。 Note that processing such as texture mapping is performed in units of polygons. That is, the three vertex coordinates of the polygon are read and processed.
そして、地球儀モードと地図モードの表示切換は、連続的に変化するアニメーションにより行われる。かかるアニメーションでは、球と地図平面との対応する点のみを用いて滑らかな軌道を実現している。地球儀モード時の球を、原点を中心とした半径1の球、地図モード時の地図をz=1(xとyの範囲は、それぞれ−π≦x≦π、−2≦y≦2)とし、各モードで対応する点の軌道を補間により求めている。当該補間は、角度と距離で行われ、角度は下記(1.3)式による球面線形補間で、距離は線形補間を用いて滑らかな動きを実現している。 The display switching between the globe mode and the map mode is performed by continuously changing animation. In such an animation, only a corresponding point between the sphere and the map plane is used to realize a smooth trajectory. The sphere in globe mode is a sphere with radius 1 centered on the origin, and the map in map mode is z = 1 (x and y ranges are -π≤x≤π and -2≤y≤2 respectively). The trajectory of the corresponding point in each mode is obtained by interpolation. The interpolation is performed with an angle and a distance. The angle is a spherical linear interpolation according to the following equation (1.3), and the distance realizes a smooth motion using the linear interpolation.
Slerp(t,q0, q1)={q0sin[θ(1-t)]+q1sin(θt)}/sinθ・・・(1.3)
ここで,q0およびq1は端点のクオータニオンで、θはq0とq1のなす角である。また、tは補間の重みを表し、0≦t≦1である。
Slerp (t, q 0 , q 1 ) = {q 0 sin [θ (1-t)] + q 1 sin (θt)} / sinθ (1.3)
Here, q 0 and q 1 are the end point quaternions, and θ is an angle formed by q 0 and q 1 . T represents the weight of interpolation, and 0 ≦ t ≦ 1.
上記(1.3)式によれば、球における任意の2点間の最短距離を表す線分を求めることができる。当該線分は、例えば端点をマウスでクリックで指定し、その指し示す地球オブジェクトの緯度及び経度を取得する。具体的な実現手法としては、クリックされたポイントのスクリーン座標系からワールド座標系へと変換し、交差するポリゴンおよびポリゴンとの交点を計算し、緯度及び経度を求める。かかる最短距離を表示すれば、緯線及び経線とともに空間的な把握を補助する基準としても機能する。
[2. 平射円筒投影アルゴリズム]
次に、本実施形態に係る地球地図作成ソフトウェアの平射円筒投影アルゴリズムについて説明する。
According to the above equation (1.3), a line segment representing the shortest distance between any two points on the sphere can be obtained. For this line segment, for example, an end point is specified by clicking with the mouse, and the latitude and longitude of the earth object pointed to are acquired. As a specific implementation method, the clicked point is converted from the screen coordinate system to the world coordinate system, the intersecting polygon and the intersection of the polygon are calculated, and the latitude and longitude are obtained. If such a shortest distance is displayed, it also functions as a reference for assisting spatial grasp along with latitude and longitude lines.
[2. Projection cylindrical projection algorithm]
Next, a flat cylindrical projection algorithm of the earth map creation software according to the present embodiment will be described.
地球オブジェクトにおけるポリゴンの頂点座標Pを入力として、投影後の位置を計算する。地図投影には平射円筒投影を用いる。この計算は、(1)光源位置を計算し、(2)ポリゴンの頂点位置を円筒に投影し、(3)円筒を展開することで求められる。各投影状態での座標系は、図1のようである。 The position after projection is calculated using the vertex coordinates P of the polygon in the earth object as input. Flat projection is used for map projection. This calculation is obtained by (1) calculating the light source position, (2) projecting the vertex position of the polygon onto the cylinder, and (3) expanding the cylinder. The coordinate system in each projection state is as shown in FIG.
以下、(1)〜(3)について詳しく説明する。
(1)光源位置の計算
図2は、平射図法によりポリゴンの頂点位置を円筒に投影する様子を示す図である。平射図法の光源位置Lは、下記(2.3)式で表され、頂点座標Pに依存することになる。
Hereinafter, (1) to (3) will be described in detail.
(1) Calculation of light source position FIG. 2 is a diagram showing a state in which the vertex position of a polygon is projected onto a cylinder by the orthographic projection method. The light source position L in the orthographic projection is expressed by the following equation (2.3) and depends on the vertex coordinate P.
L=−A/│A│
A=(Px,0,Pz)
・・・(2.3)
ここで、点Aは、点Pをxz平面に投影した点である。
(2)ポリゴンの頂点位置を円筒に投影
円筒に投影後の位置Cは、下記(2.4)式で表される。
L = −A / │A│
A = (P x , 0, P z )
(2.3)
Here, the point A is a point obtained by projecting the point P on the xz plane.
(2) Projecting the vertex position of the polygon onto the cylinder The position C after projection onto the cylinder is expressed by the following equation (2.4).
C=L+2V/R
V=P−L
R=√(Vx^2+Vz^2)
・・・(2.4)
ここで,ベクトルVは光源Lから頂点座標Pへと向かうベクトルである。また、スカラーRはベクトルVをxz平面に投影したときの長さである。
(3)円筒を展開
地球オブジェクトの半径が例えば1で、同じ半径の円筒に投影すると、展開後の平面の水平方向(x軸)の位置は円筒の角度から計算される。また、展開後の位置Mは下記(2.5)式で表される。
C = L + 2V / R
V = P−L
R = √ (V x ^ 2 + V z ^ 2)
(2.4)
Here, the vector V is a vector from the light source L toward the vertex coordinate P. The scalar R is the length when the vector V is projected onto the xz plane.
(3) Expanding the cylinder When the radius of the earth object is 1, for example, and projected onto a cylinder having the same radius, the position in the horizontal direction (x-axis) of the plane after the expansion is calculated from the angle of the cylinder. Further, the position M after the expansion is expressed by the following formula (2.5).
M=(Mx,Cy,1)
Mx=Sign(Cx)・arccos(D・E)
D=(0,−1)
E=(Cx,Cz)
Sign(a)={1(a≧0)、−1(a<0)
・・・(2.5)
平面に展開した後のy座標はCy、z座標は1である。また、x座標はベクトルDとベクトルEとのなす角に応じて計算される。なお、地球オブジェクトの半径rが1の場合、平射円筒投影後の地図平面の大きさは垂直方向が4、水平方向が2πとなる。
M = (M x , C y , 1)
M x = Sign (C x ) ・ arccos (D ・ E)
D = (0, −1)
E = (C x , C z )
Sign (a) = {1 (a ≧ 0), −1 (a <0)
... (2.5)
The y-coordinate after development on the plane is C y and the z-coordinate is 1. The x coordinate is calculated according to the angle formed by the vector D and the vector E. Note that when the radius r of the earth object is 1, the size of the map plane after the projecting cylindrical projection is 4 in the vertical direction and 2π in the horizontal direction.
以上のようにして、ポリゴンの頂点位置は地図平面上における直交座標に変換されることになる。
[3.円筒展開時の補完アルゴリズム]
次に、本実施形態に係る地球地図作成ソフトウェアの円筒展開時の補完アルゴリズムについて説明する。
As described above, the vertex positions of the polygons are converted into orthogonal coordinates on the map plane.
[3. Complementary algorithm for cylinder expansion]
Next, a supplementary algorithm at the time of cylindrical expansion of the global map creation software according to the present embodiment will be described.
図3は、ポリゴンの頂点位置が投影された円筒が展開される様子を示す概念図である。 FIG. 3 is a conceptual diagram showing how a cylinder onto which the vertex positions of polygons are projected is developed.
以下の説明において、円筒を展開するためのラインであって当該円筒の切れ目となるラインをシームライン(seam line)と称する。地球オブジェクトを構成する複数のポリゴンのうち、幾つかのポリゴンは、シームライン上に存在し当該シームラインに横切られる(つまり、ポリゴンの輪郭がシームラインと交わる)ことになる。図3(A)の例では、3つの頂点P0,P1,P2を有するポリゴンPO1がシームラインLIにより横切られている。なお、実際には、シームラインLIには、複数のポリゴンが存在することになるが説明の便宜上図示を省略している。このようなポリゴンPO1は、地図平面Fに展開された際に、処理部により図3(B)に示すように、地図平面F内で細長い3角形であるとして認識される。このため、シームラインLIと一致する地図平面Fの左右辺H1,H2は、直線状にはならず、ギザギザの外形で投影、表示されてしまう。 In the following description, a line that develops a cylinder and becomes a cut line of the cylinder is referred to as a seam line. Among the plurality of polygons constituting the earth object, some polygons exist on the seam line and cross the seam line (that is, the outline of the polygon intersects the seam line). In the example of FIG. 3A, a polygon PO1 having three vertices P0, P1, P2 is crossed by a seam line LI. In practice, a plurality of polygons exist on the seam line LI, but the illustration is omitted for convenience of explanation. When the polygon PO1 is developed on the map plane F, the processing unit recognizes it as an elongated triangle in the map plane F as shown in FIG. For this reason, the left and right sides H1 and H2 of the map plane F coinciding with the seam line LI are not linear and are projected and displayed with a jagged outer shape.
また、地球オブジェクトを構成する複数のポリゴンのうち、何れか2つのポリゴンは円筒の中心軸と交差(中心軸により貫通)することになる。図3(A)の例では、3つの頂点P3,P4,P5を有するポリゴンPO2(円筒Tの上部)は、円筒Tの中心軸G(y軸)と交差している。実際には、円筒Tの下部にも、円筒Tの中心軸Gと交差するポリゴンが存在することになる。このようなポリゴンPO2は、地図平面Fに展開された際に、処理部により図3(B)に示すように、細長い3角形であるとして認識される。このため、地図平面Fの上辺H3(なお、図の例では、わかり易くするため、理想的なH3の位置を破線で示している)は直線状にはならず、歪んだ外形で投影、表示されてしまう。なお、下辺H4についても同様のことが言える。 In addition, any two of the plurality of polygons constituting the earth object intersect with the central axis of the cylinder (through the central axis). In the example of FIG. 3A, a polygon PO2 (upper part of the cylinder T) having three vertices P3, P4, and P5 intersects the central axis G (y axis) of the cylinder T. Actually, a polygon that intersects the central axis G of the cylinder T also exists in the lower part of the cylinder T. When the polygon PO2 is developed on the map plane F, the processing unit recognizes it as an elongated triangle as shown in FIG. For this reason, the upper side H3 of the map plane F (in the example shown in the figure, the ideal position of H3 is indicated by a broken line for easy understanding) is not linear, but is projected and displayed with a distorted outline. End up. The same applies to the lower side H4.
ここで、実際の表示例を、図4〜図5に示す。 Here, actual display examples are shown in FIGS.
図4は、地球儀モードにおいて表示された地球オブジェクトの表示例を示している。 FIG. 4 shows a display example of the earth object displayed in the globe mode.
図4(A)の例では、北極が画面の最上端に、南極が画面の最下端に位置しており、北極と南極を通る軸Gが、上述した円筒Tの中心軸Gに相当することになる。このような表示状態において、ユーザがマウスで地球オブジェクトOBをドラッグしつつ当該マウスを例えば右斜め上に動かし停止すると、当該地球オブジェクトOBは、図4(A)中矢印方向に回転し、図4(B)に示すように表示されることになる。図4(B)の例では、北極が画面の最上端にされなくなり、南極が画面の最下端に位置されなくなっている。つまり、地球オブジェクトOBの回転により、画面の最上端及び画面の最下端には、北極及び南極以外の地点も(例えば、日本も)位置することが可能となる。ただし、地球オブジェクトOB軸G(円筒Tの中心軸G)は変化しない。 In the example of FIG. 4A, the north pole is located at the uppermost end of the screen, the south pole is located at the lowermost end of the screen, and the axis G passing through the north and south poles corresponds to the central axis G of the cylinder T described above. become. In such a display state, when the user drags the earth object OB with the mouse and moves the mouse diagonally upward to the right, for example, the earth object OB rotates in the direction of the arrow in FIG. It is displayed as shown in (B). In the example of FIG. 4B, the north pole is no longer at the top edge of the screen, and the south pole is no longer at the bottom edge of the screen. In other words, the rotation of the earth object OB makes it possible to locate points other than the North Pole and the South Pole (for example, Japan) at the uppermost end of the screen and the lowermost end of the screen. However, the earth object OB axis G (center axis G of the cylinder T) does not change.
そして、図4(B)の表示状態で、例えばユーザがマウスのポインタを地球オブジェクトOBに合わせ、マウスのボタンをクリック(地図モードへの移行指示)すると、上述したアルゴリズムにより地球オブジェクトOBが投影され、地図モードへ移行して図5に示すような地図平面Fが表示されることになる。図5に示す地図平面Fは、上記図3(B)を用いて説明したように、その左右辺H1,H2がギザギザの外形で表示され、なおかつ、その上下辺H3,H4は歪んだ外形で表示され、何れも直線状とはならず、非常に見栄えが悪くなっている。このような表示状態おいても、ユーザによるマウスの操作(例えばドラッグしつつ移動)により地図平面F上に位置する地点を回転等、移動させ表示状態を遷移させることが可能になっているが、かかる遷移において上記左右辺H1,H2がギザギザの外形が変化し、なおかつ、上下辺H3,H4の歪んだ外形が変化することになる。 4B, for example, when the user moves the mouse pointer to the earth object OB and clicks the mouse button (instruction to shift to the map mode), the earth object OB is projected by the algorithm described above. Then, the map mode is displayed and a map plane F as shown in FIG. 5 is displayed. As described with reference to FIG. 3B, the map plane F shown in FIG. 5 has its right and left sides H1 and H2 displayed with a jagged outer shape, and its upper and lower sides H3 and H4 have a distorted outer shape. None of them are displayed in a straight line, and the appearance is very poor. Even in such a display state, it is possible to change the display state by moving the point located on the map plane F by a mouse operation (for example, dragging and moving) by the user. In such a transition, the jagged outer shape of the left and right sides H1, H2 changes, and the distorted outer shape of the upper and lower sides H3, H4 changes.
仮に、図4(A)に示すような地球オブジェクトOBを回転できない、つまり、北極と南極の位置が固定される構成であれば、地図平面に展開した時の上記ギザギザの外形等を補完することが比較的簡単に行うことができるのであるが、本実施形態の構成では、地球オブジェクトOBないし地図平面Fを回転等させることが可能になっているので、当該補完は難しくなっている。 If the earth object OB cannot be rotated as shown in FIG. 4A, that is, if the positions of the north pole and the south pole are fixed, the above-described jagged outer shape when expanded on the map plane is complemented. However, in the configuration of the present embodiment, since the earth object OB or the map plane F can be rotated or the like, the complementation is difficult.
本発明者は、左右辺H1,H2におけるギザギザの外形を補完するための補完アルゴリズム、及び上下辺H3,H4の歪んだ外形を補完するための補完アルゴリズムを考案した。以下、図6等を参照して、当該補完アルゴリズムについて詳しく説明する。なお、図6は、ポリゴンの頂点位置が投影された円筒が展開される際における補完の様子を示す概念図である。 The inventor has devised a complementation algorithm for complementing the jagged outer shape on the left and right sides H1 and H2, and a complementation algorithm for complementing the distorted outer shape of the upper and lower sides H3 and H4. Hereinafter, the supplementary algorithm will be described in detail with reference to FIG. FIG. 6 is a conceptual diagram showing a state of complementation when a cylinder onto which a vertex position of a polygon is projected is developed.
先ず、左右辺H1,H2の補完アルゴリズムについて説明する。 First, a complementary algorithm for the left and right sides H1 and H2 will be described.
かかる補完アルゴリズムでは、上述したようにポリゴンの頂点位置が円筒に投影された後、処理部の抽出手段が、地球オブジェクトを構成する複数のポリゴンのうち、その輪郭(辺、又は線分ともいう)が、シームラインLIと交わるポリゴン(例えば、図6(A)に示す頂点P0,P1,P2を有するポリゴンPO1)を抽出する。なお、実際には、かかる処理で複数のポリゴンが抽出されることになる。また、抽出されたポリゴンの3つの頂点座標は一時的にRAMの所定アドレスに記憶されることになる。また、当該ポリゴンの抽出は、ポリゴンの頂点位置が円筒に投影される前であっても行うことができる。なぜなら、シームラインLIの位置は、円筒に投影される前の球の軸G状態であっても認識できるからである。 In such a complementary algorithm, as described above, after the vertex positions of the polygons are projected onto the cylinder, the extraction unit of the processing unit has the outline (also referred to as a side or a line segment) among the plurality of polygons constituting the earth object. However, a polygon intersecting the seam line LI (for example, a polygon PO1 having vertices P0, P1, P2 shown in FIG. 6A) is extracted. In practice, a plurality of polygons are extracted by such processing. Further, the three vertex coordinates of the extracted polygon are temporarily stored at a predetermined address in the RAM. The polygon can be extracted even before the vertex position of the polygon is projected onto the cylinder. This is because the position of the seam line LI can be recognized even in the state of the axis G of the sphere before being projected onto the cylinder.
そして、処理部の展開表示手段は、抽出したポリゴンの輪郭とシームラインLIとの交点を認識し、当該交点の位置を新たな頂点位置(投影後は直交座標)とし当該シームラインLIを境として当該ポリゴンを分割し新たなポリゴンを定義(認識)した後、当該円筒を展開してその地図平面を表示部上に表示させる。図6(B)の例では、3つの頂点P0,P1,P2を有するポリゴンPO1の輪郭とシームラインLIとの交点P10,P11,P12,P13が新たな頂点となり、3つのポリゴン(ポリゴンPO11、ポリゴンPO12、及びポリゴンPO13)に分割されている。なお、P12のx座標は、P10のx座標に2πrを加えた値となり、P13のx座標は、P11のx座標に2πrを加えた値となる。これにより、例えば、ポリゴンPO11の一辺は地図平面Fの左辺H1を構成し、また、ポリゴンPO12の一辺は地図平面Fの右辺H2を構成することになるので、地図平面Fの左右辺H1,H2をギザギザの外形でなく直線状に補完することができる。 Then, the development display means of the processing unit recognizes the intersection of the extracted polygon outline and the seam line LI, sets the position of the intersection as a new vertex position (orthogonal coordinates after projection), and uses the seam line LI as a boundary. After dividing the polygon and defining (recognizing) a new polygon, the cylinder is expanded and the map plane is displayed on the display unit. In the example of FIG. 6B, intersections P10, P11, P12, and P13 of the outline of the polygon PO1 having three vertices P0, P1, and P2 and the seam line LI become new vertices, and three polygons (polygon PO11, Polygon PO12 and polygon PO13). The x coordinate of P12 is a value obtained by adding 2πr to the x coordinate of P10, and the x coordinate of P13 is a value obtained by adding 2πr to the x coordinate of P11. Thus, for example, one side of the polygon PO11 constitutes the left side H1 of the map plane F, and one side of the polygon PO12 constitutes the right side H2 of the map plane F, so that the left and right sides H1, H2 of the map plane F Can be complemented in a straight line instead of a jagged outer shape.
次に、上下辺H3,H4の補完アルゴリズムについて説明する。 Next, a complementary algorithm for the upper and lower sides H3 and H4 will be described.
かかる補完アルゴリズムでは、上述したようにポリゴンの頂点位置が円筒に投影された後、処理部の抽出手段が、地球オブジェクトを構成する複数のポリゴンのうち、円筒の中心軸と交差するポリゴン(例えば、図6(A)に示す頂点P3,P4,P5を有するポリゴンPO2)を抽出する。なお、実際には、かかる処理で円筒の上下2つのポリゴンが抽出されることになる。また、抽出されたポリゴンの3つの頂点座標は一時的にRAMの所定アドレスに記憶されることになる。また、当該ポリゴンの抽出は、ポリゴンの頂点位置が円筒に投影される前であっても行うことができる。なぜなら、円筒Tの中心軸Gは、球の軸Gと同じであるからである。 In such a complementing algorithm, after the vertex position of the polygon is projected onto the cylinder as described above, the extraction unit of the processing unit causes the polygon (for example, a polygon that intersects the central axis of the cylinder among the plurality of polygons constituting the earth object) A polygon PO2 having vertices P3, P4, and P5 shown in FIG. 6A is extracted. In practice, two polygons on the upper and lower sides of the cylinder are extracted by such processing. Further, the three vertex coordinates of the extracted polygon are temporarily stored at a predetermined address in the RAM. The polygon can be extracted even before the vertex position of the polygon is projected onto the cylinder. This is because the central axis G of the cylinder T is the same as the axis G of the sphere.
続いて、処理部の特定手段は、抽出したポリゴンと円筒Tの中心軸Gとの交点P6の緯度及び経度を特定する。例えば、図6(A)に示すポリゴンPO2の頂点P3,P4,P5は緯度及び経度を持っているので、この3つのの頂点から交点P6の緯度及び経度を計算して特定することができる。 Subsequently, the specifying unit of the processing unit specifies the latitude and longitude of the intersection P6 between the extracted polygon and the central axis G of the cylinder T. For example, since the vertices P3, P4, and P5 of the polygon PO2 shown in FIG. 6A have latitude and longitude, the latitude and longitude of the intersection point P6 can be calculated and specified from these three vertices.
そして、処理部の展開表示手段は、基準となる矩形状の平面(つまり、直線状の上下左右辺を有する理想的な平面であり、その平面の上下左右辺の座標が予め規定され記憶されている)を画する上辺の全ての点に対して、上記交点の緯度及び経度を用いて円筒を展開してその地図平面を表示させる。より具体的には、図6(B)の例において、上辺H3上に新たな頂点P31,P32,P41,P51,P52が定義されると共に、左右辺H1,H2上にも新たな頂点P33,P53が定義される。ここで、P32のx座標はP3のx座標と同じ(つまり、P3の垂直上にP32を定義する)であり、P41のx座標はP4のx座標と同じであり、P51のx座標はP5のx座標と同じである。そして、これらの新たな頂点P31,P32,P33,P41,P51,P52,P53と、上記抽出されたポリゴンPO2の頂点P3,P4,P5が用いられて、新たなポリゴン(図6(B)の例では、ポリゴンPO21、ポリゴンPO22、ポリゴンPO23、ポリゴンPO24、ポリゴンPO25、ポリゴンPO26、ポリゴンPO27、及びポリゴンPO28)が定義される。なお、破線は補完されない場合のポリゴンの輪郭を示している。また、その他のポリゴンについては図示を省略している。 The unfolding display means of the processing unit is a reference rectangular plane (that is, an ideal plane having straight upper, lower, left and right sides, and coordinates of the upper, lower, left, and right sides of the plane are defined and stored in advance. For all the points on the upper side that draw the image, the cylinder is expanded using the latitude and longitude of the intersection and the map plane is displayed. More specifically, in the example of FIG. 6B, new vertices P31, P32, P41, P51, P52 are defined on the upper side H3, and new vertices P33, P2 are also formed on the left and right sides H1, H2. P53 is defined. Here, the x coordinate of P32 is the same as the x coordinate of P3 (that is, P32 is defined vertically above P3), the x coordinate of P41 is the same as the x coordinate of P4, and the x coordinate of P51 is P5. Is the same as the x coordinate. These new vertices P31, P32, P33, P41, P51, P52, and P53 and the vertices P3, P4, and P5 of the extracted polygon PO2 are used to create a new polygon (of FIG. 6B). In the example, polygon PO21, polygon PO22, polygon PO23, polygon PO24, polygon PO25, polygon PO26, polygon PO27, and polygon PO28) are defined. The broken line indicates the outline of the polygon when not complemented. Further, illustration of other polygons is omitted.
こうして、新たに定義されたポリゴンのうち、ポリゴンPO22、ポリゴンPO24、ポリゴンPO26、及びポリゴンPO28の一辺が上辺H3を構成することになり、なおかつ、これらのポリゴンの頂点P31,P32,P41,P51,P52には、上記交点P6の緯度及び経度(投影後は直交座標)が用いられるので、P31,P32,P41,P51,P52を結ぶ辺上の点、即ち、上辺H3上の点全て上記交点P6の緯度及び経度(投影後は直交座標)が用いられることになる。これにより、地図平面Fの上辺H3を歪んだ外形でなく直線状に補完することができる。このことは、地図平面Fの下辺H4についても同様である。 Thus, among newly defined polygons, one side of the polygon PO22, polygon PO24, polygon PO26, and polygon PO28 constitutes the upper side H3, and the vertices P31, P32, P41, P51, Since the latitude and longitude of the intersection point P6 (orthogonal coordinates after projection) are used for P52, all points on the side connecting P31, P32, P41, P51, and P52, that is, all points on the upper side H3 are the intersection point P6. The latitude and longitude (orthogonal coordinates after projection) are used. As a result, the upper side H3 of the map plane F can be complemented in a straight line rather than a distorted outer shape. The same applies to the lower side H4 of the map plane F.
図7は、上記補完アルゴリズムを用いて地図平面を表示させたときの表示例を示す図である。図7に示す地図平面Fの上下左右辺は直線状に綺麗に表示されている。
[4.標高色決定アルゴリズム]
次に、本実施形態に係る標高色決定アルゴリズムについて説明する。
FIG. 7 is a diagram showing a display example when a map plane is displayed using the above complement algorithm. The top, bottom, left and right sides of the map plane F shown in FIG. 7 are clearly displayed in a straight line.
[4. Altitude color determination algorithm]
Next, an altitude color determination algorithm according to this embodiment will be described.
標高色決定アルゴリズムでは、地球オブジェクトにテクスチャ画像を直接適用するのではなく、標高値を画像データ化し、描画時にGPUのフラグメントプログラムにより描画色を決定するアプローチをとる。かかるフラグメントプログラムは、標高値と描画色とを結びつけるカラーテーブル(平面的な地球地図を構成する各地点における標高値に応じた描画色を規定した色テーブル)を用いる必要があるが、これは1次元テクスチャとして実現できる。 In the altitude color determination algorithm, instead of directly applying a texture image to the earth object, an altitude value is converted into image data and an rendering color is determined by a GPU fragment program at the time of rendering. Such a fragment program needs to use a color table (a color table defining a drawing color corresponding to an elevation value at each point constituting a planar earth map) that links an elevation value and a drawing color. It can be realized as a dimensional texture.
図8は、標高データとカラーテーブルとの対応関係を示す概念図である。フラグメントプログラムでは、図8に示すように、描画するピクセルの標高値を、カラーテーブルを参照するためのテクスチャ座標に置き換えるようになっており、このテクスチャ座標の計算は動的に行われる。 FIG. 8 is a conceptual diagram showing the correspondence between elevation data and a color table. In the fragment program, as shown in FIG. 8, the elevation value of the pixel to be drawn is replaced with the texture coordinates for referring to the color table, and the calculation of the texture coordinates is performed dynamically.
つまり、標高色決定アルゴリズムにより動作する処理部の展開表示手段は、円筒を展開する際に、ポリゴンの頂点位置から変換された直交座標に対応する地点の描画色を、上記カラーテーブルを参照して、当該地点における標高値に対応する描画色で表示させるようになっている。また、当該処理部の展開表示手段は、地図平面上におけるポリゴン内側の複数点の直交座標を、当該ポリゴンの頂点位置に対応する直交座標から計算し、当該計算された直交座標に対応する地点の描画色を、上記カラーテーブルを参照して、当該地点における標高値に対応する描画色で表示させる。 In other words, the expansion display means of the processing unit that operates according to the altitude color determination algorithm refers to the color table for the drawing color of the point corresponding to the orthogonal coordinate converted from the vertex position of the polygon when expanding the cylinder. The drawing color corresponding to the altitude value at the point is displayed. Further, the development display means of the processing unit calculates the orthogonal coordinates of a plurality of points inside the polygon on the map plane from the orthogonal coordinates corresponding to the vertex position of the polygon, and the point corresponding to the calculated orthogonal coordinates is calculated. The drawing color is displayed with the drawing color corresponding to the altitude value at the point with reference to the color table.
そして、標高色決定アルゴリズムでは、テクスチャマッピングを直接的に使用するだけでなく、海抜のオフセット値(標高値に応じた描画色の基準レベル)を変化させることにより、動的に描画色を変更可能としている。より具体的には、処理部の変化制御手段は、ユーザからの入力手段を介した指示(例えば、マウスによる指示)により、海抜のオフセット値を変化(例えば図8の上下矢印方向に)させる。そして、処理部の展開表示手段は、海抜のオフセット値が変化される度に、カラーテーブルを参照して、既に表示された地図平面上における地点の描画色を変化させるようになっている。つまり、海抜のオフセット値が変化することによる色の変化を通じて各地点の標高が実質的に変化(実際には、標高値は変化させず、描画色の基準を変化させる)するように見えることになる。 The altitude color determination algorithm not only uses texture mapping directly, but also changes the drawing color dynamically by changing the offset value above sea level (the drawing color reference level according to the altitude value). It is said. More specifically, the change control means of the processing unit changes the offset value above sea level (for example, in the direction of the up and down arrows in FIG. 8) in accordance with an instruction (for example, an instruction by a mouse) via the input means from the user. The development display means of the processing unit changes the drawing color of the point on the already displayed map plane with reference to the color table every time the sea level offset value is changed. In other words, the elevation of each point seems to change substantially through the change in color due to the change in the offset value above sea level (actually, the elevation value does not change, and the drawing color reference changes). Become.
図9は、図7に示す地図平面Fが表示されている状態で、海抜のオフセット値を上げた場合の表示例を示しており、海抜レベルが上がったため、図7で表されていた陸地が海面下に沈むことが表されるようになっている。一方、図10は、図7に示す地図平面Fが表示されている状態で、海抜のオフセット値を下げた場合の表示例を示しており、海抜レベルが下がったため、図7では表されていなかった陸地が表されるようになっている。なお、実際には、その標高値に応じた色で表示されるので、同じ陸地又は同じ海であっても色により標高を容易に把握することができる。 FIG. 9 shows a display example when the sea level offset value is raised in the state where the map plane F shown in FIG. 7 is displayed, and the land level shown in FIG. It is expressed that it sinks under the sea surface. On the other hand, FIG. 10 shows a display example when the offset value of the sea level is lowered while the map plane F shown in FIG. 7 is displayed, and is not shown in FIG. 7 because the sea level is lowered. The land is now represented. In fact, since it is displayed in a color corresponding to the altitude value, the altitude can be easily grasped by the color even in the same land or the same sea.
なお、処理部の展開表示手段は、円筒を展開する際に、上下辺H3,H4の補完アルゴリズムにより補完された地図平面Fの上辺及び下辺上の点に対応する地点の描画色を、カラーテーブルを参照して、当該点における標高値に対応する描画色として、円筒の中心軸と交差するポリゴン(図6(A)の例では、ポリゴンPO2)の頂点位置に対応する地図平面F上における直交座標により構成される新たなポリゴン(図6(B)の例では、ポリゴンPO21、ポリゴンPO22、ポリゴンPO23、ポリゴンPO24、ポリゴンPO25、ポリゴンPO26、ポリゴンPO27、及びポリゴンPO28)内側の複数点の直交座標を、円筒の中心軸と交差するポリゴンの頂点位置に対応する直交座標から計算し、当該計算した直交座標に対応する地点の描画色を、カラーテーブルを参照して、当該地点における標高値に対応する描画色で表示させることになる。 The unfolding display means of the processing unit displays the drawing colors of points corresponding to the points on the upper and lower sides of the map plane F supplemented by the upper and lower sides H3 and H4 when the cylinder is unfolded. As a drawing color corresponding to the elevation value at the point, the orthogonality on the map plane F corresponding to the vertex position of the polygon (polygon PO2 in the example of FIG. 6A) that intersects the central axis of the cylinder. Orthogonal coordinates of a plurality of points inside a new polygon composed of coordinates (in the example of FIG. 6B, polygon PO21, polygon PO22, polygon PO23, polygon PO24, polygon PO25, polygon PO26, polygon PO27, and polygon PO28). Is calculated from the Cartesian coordinates corresponding to the vertex position of the polygon that intersects the central axis of the cylinder, and corresponds to the calculated Cartesian coordinates. The drawing color of the point, by referring to the color table will be displayed in the foreground color corresponding to elevation values at the above point.
以上説明したように、上記実施形態によれば、ユーザが地球の姿勢を任意に指定することができ、上述した補完アルゴリズムにより地図平面Fの左右辺H1,H2をギザギザの外形を迅速且つ効果的に直線状に補完し、加えて、地図平面Fの上下辺H3,H4を歪んだ外形を迅速且つ効果的に直線状に補完できるようにしたので、ユーザに対して、新たな視点で世界を解釈させことや、地図と現実世界の差異を認識させること等をより効果的に実現することができる。 As described above, according to the above-described embodiment, the user can arbitrarily specify the attitude of the earth, and the interpolation algorithm described above allows the right and left sides H1, H2 of the map plane F to have a jagged outer shape quickly and effectively. In addition, the contours of the upper and lower sides H3 and H4 of the map plane F can be complemented in a straight line quickly and effectively, giving the user a new perspective on the world. Interpretation and recognition of the difference between the map and the real world can be realized more effectively.
また、円筒を展開する際に、ポリゴンの頂点位置から変換された直交座標に対応する地点の描画色を、上記カラーテーブルを参照して、当該地点における標高値に対応する描画色で表示させるようにしたので、迅速な処理を可能とし、より一層、ユーザに対し、新たな視点で世界を解釈させることができる。 Further, when the cylinder is expanded, the drawing color of the point corresponding to the orthogonal coordinate converted from the vertex position of the polygon is displayed with the drawing color corresponding to the altitude value at the point with reference to the color table. As a result, rapid processing is possible, and the user can be made to interpret the world from a new perspective.
更に、海抜のオフセット値を変化させることにより、動的に描画色を変更可能としたので、ユーザに対し、例えば、温暖化による海面上昇によりどの程度の陸地が海面下に沈むか等を把握させることができる。 Furthermore, since the drawing color can be changed dynamically by changing the offset value above the sea level, the user can grasp, for example, how much land will sink below the sea level due to sea level rise due to global warming. be able to.
なお、本実施形態においては、3次元オブジェクトとして地球オブジェクトを例にとって説明したが、本発明は、その他の星のオブジェクト等、或いは球を平面に展開する処理に対して適用することができる。 In the present embodiment, the earth object is described as an example of the three-dimensional object. However, the present invention can be applied to other star objects and the like, or a process of developing a sphere on a plane.
OB 地球オブジェクト
T 円筒
F 地図平面
LI シームライン
G 中心軸
PO1,PO11,PO12,PO13,PO2,PO21,PO22,PO23,PO24,PO25,PO26,PO27,PO28 ポリゴン
OB Earth object T Cylinder F Map plane LI Seam line G Center axis PO1, PO11, PO12, PO13, PO2, PO21, PO22, PO23, PO24, PO25, PO26, PO27, PO28 Polygon
Claims (5)
前記ポリゴンの頂点位置を平面上における直交座標に変換しつつ前記円筒を展開してその平面を表示させる展開表示手段と、
平面的な地球地図を構成する各地点における標高値に応じた描画色を規定する色テーブルを記憶する記憶手段と、
を備え、
前記展開表示手段は、前記円筒を展開する際に、前記変換された直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする3次元オブジェクト処理装置。 Projection means for projecting a vertex position of the polygon on a cylinder in a three-dimensional object in which a sphere or a spheroid is represented by a plurality of polygons and the surface of the earth is represented on the surface;
An unfolding display means for unfolding the cylinder and displaying the plane while converting the vertex position of the polygon into orthogonal coordinates on the plane;
Storage means for storing a color table for defining a drawing color according to an altitude value at each point constituting a planar earth map;
With
The unfolding display means displays the drawing color of the point corresponding to the converted orthogonal coordinate in the drawing color corresponding to the altitude value at the point with reference to the color table when the cylinder is expanded. A three-dimensional object processing device.
前記展開表示手段は、前記平面上における前記ポリゴン内側の複数点の直交座標を、当該ポリゴンの頂点位置に対応する直交座標から計算し、当該計算した直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする3次元オブジェクト処理装置。 The three-dimensional object processing device according to claim 1,
The unfolding display means calculates the orthogonal coordinates of a plurality of points inside the polygon on the plane from the orthogonal coordinates corresponding to the vertex position of the polygon, and draws the drawing color of the point corresponding to the calculated orthogonal coordinates, A three-dimensional object processing apparatus, characterized by referring to a color table and displaying in a drawing color corresponding to an altitude value at the point.
ユーザからの入力手段を介した指示により、前記標高値に応じた描画色の基準レベルを変化させる変化制御手段を更に備え、
前記展開表示手段は、前記基準レベルが変化される度に、前記色テーブルを参照して、既に表示された前記平面上における前記地点の描画色を変化させることを特徴とする3次元オブジェクト処理装置。 The three-dimensional object processing device according to claim 2,
A change control means for changing a reference level of the drawing color according to the elevation value according to an instruction from the user via the input means;
The development display means refers to the color table every time the reference level is changed, and changes the drawing color of the spot on the plane that has already been displayed. .
前記ポリゴンの頂点位置を平面上における直交座標に変換しつつ前記円筒を展開してその平面を表示させる展開表示工程と、
平面的な地球地図を構成する各地点における標高値に応じた描画色を規定する色テーブルを記憶する工程と、
を備え、
前記展開表示工程においては、前記円筒を展開する際に、前記変換された直交座標に対応する地点の描画色を、前記色テーブルを参照して、当該地点における標高値に対応する描画色で表示させることを特徴とする3次元オブジェクト処理方法。 Projecting the vertex position of the polygon in a three-dimensional object in which a sphere or a spheroid is represented by a plurality of polygons and the surface of the sphere is represented on a cylinder;
An unfolding display step of unfolding the cylinder and displaying the plane while converting the vertex position of the polygon into orthogonal coordinates on the plane;
Storing a color table that defines a drawing color according to an altitude value at each point constituting a planar earth map;
With
In the unfolding display step, when the cylinder is unfolded, the drawing color of the point corresponding to the converted orthogonal coordinate is displayed with the drawing color corresponding to the altitude value at the point with reference to the color table. A three-dimensional object processing method characterized in that
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007224770A JP2009059101A (en) | 2007-08-30 | 2007-08-30 | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007224770A JP2009059101A (en) | 2007-08-30 | 2007-08-30 | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009059101A true JP2009059101A (en) | 2009-03-19 |
Family
ID=40554794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007224770A Pending JP2009059101A (en) | 2007-08-30 | 2007-08-30 | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009059101A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104981848A (en) * | 2013-02-15 | 2015-10-14 | 三菱电机株式会社 | Map rendering device |
-
2007
- 2007-08-30 JP JP2007224770A patent/JP2009059101A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104981848A (en) * | 2013-02-15 | 2015-10-14 | 三菱电机株式会社 | Map rendering device |
US20150325045A1 (en) * | 2013-02-15 | 2015-11-12 | Mitsubishi Electric Corporation | Map drawing device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20170091993A1 (en) | 3D Model Generation From Map Data and User Interface | |
US20170090460A1 (en) | 3D Model Generation From Map Data | |
CN105247575A (en) | Overlaying two-dimensional map data on a three-dimensional scene | |
US20080076556A1 (en) | Simulated 3D View of 2D Background Images and Game Objects | |
US8730264B1 (en) | Determining when image elements intersect | |
CN102163340A (en) | Method for labeling three-dimensional (3D) dynamic geometric figure data information in computer system | |
US9684977B2 (en) | Method and apparatus for road map rendering | |
EP2595118A2 (en) | Methods for providing 3d building information | |
ES2326755T3 (en) | REPRESENTATION OF 3D INFORMATIC GRAPHICS USING 2D PERFORMANCE OF INFORMATIC GRAPHICS. | |
CN116051713B (en) | Rendering method, electronic device, and computer-readable storage medium | |
JP6281006B1 (en) | Intersection determination program, intersection determination method, and intersection determination apparatus | |
Trenchev et al. | Mathematical approaches for creation of complex 3D models and their application in education | |
EP4258092A2 (en) | Interactive geo-contextual navigation tool | |
CN104932858A (en) | Method for realizing overlapping display of background map supporting accurate matching and real-time roaming | |
CN111431953B (en) | Data processing method, terminal, server and storage medium | |
US20240161430A1 (en) | Applying vector-based decals on three-dimensional objects | |
JP2009059101A (en) | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program | |
JP2009059100A (en) | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program | |
CN107798734A (en) | The adaptive deformation method of threedimensional model | |
JP2009059099A (en) | Three-dimensional object processor, three-dimensional object processing method and three-dimensional object processing program | |
CN112330769B (en) | Method and device for generating dotted line texture and electronic equipment | |
KR101955377B1 (en) | system for generating 3 dimensional electronic nautical chart capable of expressing triangulated area object | |
CN114359456B (en) | Picture pasting method and device, electronic equipment and readable storage medium | |
JP7368950B2 (en) | Method and apparatus for efficient building footprint identification | |
Miller et al. | Computations on an Ellipsoid for GIS |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20090605 |