x = Math.Sqrt(Math.Pow(r,2)<1>-Math.Pow(v<2>,2)<2>)*Math.Cos(u)<1>;
y = Math.Sqrt(Math.Pow(r,2)<1>-Math.Pow(v<2>,2)<2>)*Math.Sin(u)<1>;
p = List.FirstItem(Autodesk.Point.ByCoordinates(x<1><2>,y<1><2>,z)<1>);
dr = List.DiagonalRight(p,c);
pr = PolyCurve.ByPoints(List.FilterByBoolMask(dr,List.Count(dr<1>)>1)["in"],false);
dl = List.DiagonalLeft(p,c);
pl = PolyCurve.ByPoints(List.FilterByBoolMask(dl,List.Count(dl<1>)>1)["in"],false);
dh = List.UniqueItems(List.Transpose(p)<1>);
ph = PolyCurve.ByPoints(List.FilterByBoolMask(dh,List.Count(dh<1>)>1)["in"],false);