请教怎么球面点的坐标

请问如何求一个球面点的坐标
我已经知道下面几点信息:
  1: 球面上点P的坐标为(x1,y1,z1) 
  2: 球面上的一个大圆(phi,theta)(这两个参数是大圆所在平面法向量对应的两个方向角),也就是说该大圆的法向 量已知。
  3: 点p到该大圆的球面距离为d

 问题:
  如何在大圆上求点p到大圆的球面距离为d的对应点q的坐标(x,y,z)

不知道怎么转换,请大虾指教

------解决方案--------------------
解方程啊
p到p1距离是d的所有球面上点构成大圆C1
计算C1和已知的这个球面大圆的交点就是了

球面公示比较复杂一点,好在也是2次方程(三角函数)啊
d是球面的弧长, 对应的球心的夹角是 d / r , 需要取半角d/2r做三角函数运算
c1 到球心距离就是 r*cos(d/2r)
C1所在平面的法向量就是P1 / |P|

计算C1和已知大圆的交点去吧