private static IEnumerable <XElement> CreateZodiacDivisions(double centerX, double centerY, double radius) { foreach (var number in Enumerable.Range(0, 12)) { var point = CircleMath.GetPoint(30 * number, radius, centerX, centerY); yield return(SvgBuild.Line(centerX, centerY, point.X, point.Y, "stroke:#000000;stroke-width:0.2")); } }
private static IEnumerable <XElement> CreateHexagramLineMarkers(double centerX, double centerY, double innerRadius, double outerRadius) { foreach (var angle in HexagramLL.LineStarts.SelectMany(x => x.Value)) { var point1 = CircleMath.GetPoint(HexagramOffset - angle, innerRadius, centerX, centerY); var point2 = CircleMath.GetPoint(HexagramOffset - angle, outerRadius, centerX, centerY); yield return(SvgBuild.Line(point1.X, point1.Y, point2.X, point2.Y, "stroke:#000000;stroke-width:0.2")); } }
private static IEnumerable <XElement> CreateHexagramDivisions(double centerX, double centerY, double innerRadius, double outerRadius) { foreach (var hexagram in HexagramLL.LineStarts) { var point1 = CircleMath.GetPoint(HexagramOffset - hexagram.Value[0], innerRadius, centerX, centerY); var point2 = CircleMath.GetPoint(HexagramOffset - hexagram.Value[0], outerRadius, centerX, centerY); yield return(SvgBuild.Line(point1.X, point1.Y, point2.X, point2.Y, "stroke:#000000;stroke-width:0.4")); } }