ある点から所与の範囲内にあるポイントを抜き出したいが

緯度経度で管理しているテーブルから、ある点からある距離以下にあるポイントを抜き出す、という問題。
ある点からある距離の円を描いて、それを含む最小のバウンダリ(ここでは緯度経度の長方形)を出し、このバウンダリで十分に絞り込んだうえで個別に距離を出すという方針で行こうと考えました。
で、このバウンダリを出すのが、高校レベルのアタマしかない私にとっては問題だったり。
GRS80回転楕円体を舞台にして、子午線曲率半径と卯酉線曲率半径を出し、緯度方向の子午線曲率半径から解決。卯酉線については、緯線と平行でないため、cos(phi)を乗じてみる。「ある距離」が十分小さい場合はこれで済むと思ってやってみる。
上記の方法によって出したバウンダリと、「ある点」から緯線、経線を伸ばした交点を出し、「ある点」からの距離をPostGISのST_distance_sphereを使って計算してみると、若干小さい。
適当に係数をかけてごまかすことは可能ですが、それだったら大は小をかねるで、短軸を半径とする球で計算してしまったらいいのかも知れないとか、「ある距離」が大きい場合には「ある距離」の円がバウンダリをはみ出すんちゃうんかとか、いろいろ…。
とりあえず保留にして今後の自分に期待しておくことにするorz