MCPcopy Create free account
hub / github.com/CruiserOne/Astrolog / WireSphere

Function WireSphere

xdevice.cpp:1982–2009  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1980// are used to mark the exact locations of zoomed in planets in the scene.
1981
1982void WireSphere(int x, int y, int z, int r)
1983{
1984 real rgx[12+1], rgy[12+1], rgr[6+1];
1985 int rgz[6+1], i, j, x1, y1, x2, y2;
1986
1987 for (i = 0; i < 12; i++) {
1988 rgx[i] = RCosD((real)(i * nDegMax / 12));
1989 rgy[i] = RSinD((real)(i * nDegMax / 12));
1990 }
1991 rgx[12] = rgx[0]; rgy[12] = rgy[0];
1992 for (i = 0; i <= 6; i++) {
1993 rgz[i] = z + (int)((real)r * rgx[i]);
1994 rgr[i] = (real)r * rgy[i];
1995 }
1996 for (j = 1; j <= 6; j++) {
1997 x2 = x + (int)rgr[j]; y2 = y;
1998 for (i = 0; i < 12; i++) {
1999 x1 = x2; y1 = y2;
2000 x2 = x + (int)(rgr[j] * rgx[i+1]);
2001 y2 = y + (int)(rgr[j] * rgy[i+1]);
2002 if (j < 6)
2003 WireLine(x1, y1, rgz[j], x2, y2, rgz[j]);
2004 x1 = x + (int)(rgr[j-1] * rgx[i+1]);
2005 y1 = y + (int)(rgr[j-1] * rgy[i+1]);
2006 WireLine(x2, y2, rgz[j], x1, y1, rgz[j-1]);
2007 }
2008 }
2009}
2010
2011
2012// Add a fixed star to the current wireframe file.

Callers 1

WireChartOrbitFunction · 0.85

Calls 1

WireLineFunction · 0.85

Tested by

no test coverage detected