private static void DrawNodeRing(RenderWindow app, INodesModel nodes) { var nodeRing = ElementDrawer.CreateRing(app, 260, new Color(255, 255, 255), true); var nodePegPoints = ElementDrawer.CreatePegPoints(app, nodeRing, 56, (Math.PI * 2) / 56); Array.Reverse(nodePegPoints); nodePegPoints[nodes.GetNode1Position() - 1].FillColor = new Color(255, 0, 0); nodePegPoints[nodes.GetNode2Position() - 1].FillColor = new Color(255, 0, 0); foreach (var p in nodePegPoints) { app.Draw(p); } }
private static void DrawNodeRing(SKImageInfo info, SKCanvas canvas, INodesModel nodes) { var nodeRing = ElementDrawer.CreateRing(info, canvas, Utility.GetWidthValueFromPercentage(info, (float)39.4), new Color(255, 255, 255, 0), true); nodeRing.FillColor = new Color(255, 255, 0, 0); var nodePegPoints = ElementDrawer.CreatePegPoints(info, canvas, nodeRing, 56); nodePegPoints[nodes.GetNode1Position() - 1].FillColor = new Color(255, 0, 0); nodePegPoints[nodes.GetNode2Position() - 1].FillColor = new Color(255, 0, 0); foreach (var p in nodePegPoints) { canvas.DrawCircle(p.x, p.y, p.Radius, GetPointPainter(p)); } }
public bool CheckLunarEclipse() { bool isEclipse = false; bool node1SunAligned = false; if (_nodesModel.GetNode1Position() == _sunModel.Get() || _nodesModel.GetNode1Position() == _sunModel.Get() - 1 || _nodesModel.GetNode1Position() == _sunModel.Get() + 1) { node1SunAligned = true; } bool node1MoonAligned = false; if (_nodesModel.GetNode1Position() == _moonModel.Get() || _nodesModel.GetNode1Position() == _moonModel.Get() - 1 || _nodesModel.GetNode1Position() == _moonModel.Get() + 1) { node1MoonAligned = true; } bool node2SunAligned = false; if (_nodesModel.GetNode2Position() == _sunModel.Get() || _nodesModel.GetNode2Position() == _sunModel.Get() - 1 || _nodesModel.GetNode2Position() == _sunModel.Get() + 1) { node2SunAligned = true; } bool node2MoonAligned = false; if (_nodesModel.GetNode2Position() == _moonModel.Get() || _nodesModel.GetNode2Position() == _moonModel.Get() - 1 || _nodesModel.GetNode2Position() == _moonModel.Get() + 1) { node2MoonAligned = true; } if ((node1SunAligned == true && node2MoonAligned == true) || (node2SunAligned == true && node1MoonAligned == true)) { isEclipse = true; } return(isEclipse); }