newfunc
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_AsSvg(geom [, rel [, prec]]) ジオメトリをSVGパース…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Segmentize(geom, max_length) 動作紹介 一辺が10の正…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_SnapToGrid(geom, size [, size_y]) 座標を、与えられ…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Affine(geom, a, b, d, e, xoff, yoff) 与えられたジオ…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Scale(geom, sx, sy [,CenterPoint]) / STX_Scale(geom…
MySQLに Spatial(GIS)関数を大量に追加するプロジェクトをやっています。現在、標準のMySQLが持つSpatial関数に加え、新たに60個以上の関数を使用できるところまで進めて参りました。 https://github.com/sakaik/mysql-spatial-plugin/tree/mainみなさんにぜ…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_RemoveRepeatedPoints(geom [, tol]) 連続する重複頂点…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_HexGrid(size, geom) 与えられたgeomのバウンディング…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_SquareGrid(size, geom) 指定されたgeomを覆うような矩…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_MinimumBoundingCircle(geom [, segs]) 最小外接円を求…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_GeneratePoints(geom, n [, seed]) 与えられたPOLYGON…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_MakePolygon(ring [, inner_rings]) LINESTRINGを与え…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Makeline(p1, p2) / STX_Makeline(multipoint) 与えら…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_Points(geom) 与えられたジオメトリを構成する点をすべ…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_PointonSurface(geom) 与えられたジオメトリ内にあるこ…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 https://sakaik.hateblo.jp/entry/20260215/mysql_spatial_functions_plugin STX_LineLocatePoint(line, point) 第2引数のPOINTから最も…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_ClosestPoint(geom1, geom2) geom2にもっとも近い位置となるような geom1上の点を返す。実は STX_ShortestLine() 関数が返すLINESTR…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_ShortestLine(g1, g2) 2つのジオメトリ間の最短線分を返します。つまり、2つの点から構成される LINESTRING型を返します。 動作紹介…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_Dwithin(g1, g2, dist) ふたつのジオメトリの間の距離が、第3引数の範囲内かを判定して 1(範囲内)か 0(範囲外)を返す。 動作紹介 辺…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_RelateMatch(g1, g2, pattern) 与えた2つのジオメトリの関係が、第3引数で与えたDE-9IM関係行列とマッチすることを判定する。どうで…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_Relate(g1, g2) DE-9IM 関係行列を返す。 2つの値について、以下の表のような相互の関係を求め、II IB IE BI BB BE EI EB EE の順と…
自作の、Spatial(GIS)関連の関数をMySQLに追加するプラグインの関数をひとつひとつ動作確認しながら紹介するシリーズ。 STX_LineSubstring(line, start, end) LINESTRINGを指定した割合の場所でちょん切って返す関数です。 (0,0)-(0,100) のLINESTRINGを、0.…
MySQLにSpatial(GIS)関数をいっぱい追加したくて、Pluginを作っています。 sakaik.hateblo.jpテストを兼ねて一つ一つ関数を紹介しています。 STX_Project(point, dist, azimuth) 与えられた点を、指定された方向に、指定された距離だけ移動した点を返す。地…
MySQL Spatial Functions Plugin、関数を動作確認して紹介するシリーズ。度分秒を変換する関数が欲しかったので追加しました。 STX_dms2deg(d, m, s) 度、分、秒の数字を与えて、小数点の度の数値へ変換する機能です。GISツールどこにもそんな機能はない(と…
自作の MySQL Spatial Functions Plugin の関数をひとつひとつ検証しています。今回は Googleの Encoded Polyline 形式に変換したり、逆にEncoded PolylineからLINESTRINGに変換したりするエンコード、デコード関数を。 STX_AsEncodedPolyline(geom [, prec]…
MySQLにSpatial(GIS)関数を追加しています(プラグインとして)。ひとつひとつの関数を動作確認しつつ紹介するシリーズ。ひとつ前に続いて、角度関係です。 STX_Angle(p1, p2, p3) 3つのPOINTを与えてそれが為す角(p1-p2-p3)の角度を求めます。戻り値はラジ…
MySQL にSpatial(GIS)関数を大量に追加する(ひとり)プロジェクト、MySQL Spatial Functions Plugin。実装した関数を、ひとつひとつ動作確認しながら紹介していきます。今回は方位角。 STX_Azimuth(p1, p2) 点1から点2への方位角をラジアンで返します。方位…
MySQL Spatial Functions Plugin の関数動作確認中。この関数は面白い。ポリゴンの内接円に関する情報を返してくれる関数。 STX_MaximumInscribedCircle() POLYGONに内接する「最大内接円」の半径となるLINESTRINGを返します。LINESTRINGは中心から「最近接…
MySQL Spatial Functions Plugin の関数紹介(動作テストがてら)。今回はちょっと楽しい STX_Rotate()。 STX_Reverse() 指定した点を中心にジオメトリデータを回転します。 動作紹介 (35 135) を中心としてPOLYGONを30度回転します mysql> SET @g1=ST_GeomF…
MySQL Spatial Functions Plugin(自作)の関数ひとつひとつ検証中。今回は STX_Reverse()。 STX_Reverse() ポリゴンやラインを構成する点の順序を逆にする関数です。 動作紹介 LINESTRINGに対して、構成点の順序を逆転する例 +----------------------------…