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

Function XChartIndian

xcharts1.cpp:3925–4166  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

3923// East Indian is displayed in place of South Indian when -XC setting is on.
3924
3925void XChartIndian()
3926{
3927 char sz[cchSzDef];
3928 int rgcbox[cSign+1], mpobox[objMax], rgibox[objMax],
3929 rgx[cSign+1], rgy[cSign+1], nTrans = (int)(gs.rBackPct * 256.0 / 100.0),
3930 cx, cy, unit, x1, y1, x2, y2, x11, y11, x22, y22, xs, ys, xb, yb, xi, yi,
3931 xp, yp, z, i, j, k, n, sig, nGrid;
3932 flag fSouthIndian = (gi.nMode == gWheel && !gs.fHouseExtra),
3933 fNorthIndian = gi.nMode == gHouse,
3934 fEastIndian = (gi.nMode == gWheel && gs.fHouseExtra),
3935 fTextHouse = (gs.nFontHou == 0),
3936 fHouseSign = (us.nHouseSystem == hsWhole || us.nHouseSystem == hsNull),
3937 fOff;
3938 KI kiContrast;
3939
3940 // Initialize box size and other variables
3941 if (gs.fText && gs.fDoSidebar)
3942 gs.xWin -= xSideT;
3943 unit = Max(12, yFontT);
3944 x1 = y1 = unit; x2 = gs.xWin-1-unit; y2 = gs.yWin-1-unit;
3945 cx = (x1+x2)/2; cy = (y1+y2)/2;
3946 if (!fEastIndian) {
3947 xb = (x2-x1)/4; yb = (y2-y1)/4;
3948 x1 = cx - xb*2; y1 = cy - yb*2; x2 = cx + xb*2; y2 = cy + yb*2;
3949 } else {
3950 xb = (x2-x1)/3; yb = (y2-y1)/3;
3951 x1 = cx - xb*3/2; y1 = cy - yb*3/2; x2 = cx + xb*3/2; y2 = cy + yb*3/2;
3952 }
3953 xs = x2-x1; ys = y2-y1;
3954 x11 = x1 + xb; y11 = y1 + yb; x22 = x2 - xb; y22 = y2 - yb;
3955 ClearB((pbyte)rgcbox, sizeof(rgcbox));
3956 ClearB((pbyte)mpobox, sizeof(mpobox));
3957 ClearB((pbyte)rgibox, sizeof(rgibox));
3958
3959 // Draw box outlines
3960 DrawColor(gi.kiOn);
3961 DrawEdge(x1, y1, x2, y2);
3962 if (fSouthIndian) {
3963 DrawLineX(x1, x2, y11); DrawLineX(x1, x2, y22);
3964 DrawLineY(x11, y1, y2); DrawLineY(x22, y1, y2);
3965 DrawLineX(x1, x11, cy); DrawLineX(x22, x2, cy);
3966 DrawLineY(cx, y1, y11); DrawLineY(cx, y22, y2);
3967 rgx[1] = x11; rgy[1] = y1;
3968 rgx[2] = cx; rgy[2] = y1;
3969 rgx[3] = x22; rgy[3] = y1;
3970 rgx[4] = x22; rgy[4] = y11;
3971 rgx[5] = x22; rgy[5] = cy;
3972 rgx[6] = x22; rgy[6] = y22;
3973 rgx[7] = cx; rgy[7] = y22;
3974 rgx[8] = x11; rgy[8] = y22;
3975 rgx[9] = x1; rgy[9] = y22;
3976 rgx[10] = x1; rgy[10] = cy;
3977 rgx[11] = x1; rgy[11] = y11;
3978 rgx[12] = x1; rgy[12] = y1;
3979 z = 6*gi.nScale;
3980 } else if (fNorthIndian) {
3981 DrawLine(x1, y1, x2, y2); DrawLine(x2, y1, x1, y2);
3982 DrawLine(cx, y1, x1, cy); DrawLine(x1, cy, cx, y2);

Callers 1

DrawChartXFunction · 0.85

Calls 11

ClearBFunction · 0.85
DrawColorFunction · 0.85
Mod12Function · 0.85
DrawFillWheelFunction · 0.85
DrawSignFunction · 0.85
DrawHouseFunction · 0.85
DrawObjectFunction · 0.85
DrawSzFunction · 0.85
SzZodiacFunction · 0.85
XChartGridFunction · 0.85
DrawSidebarFunction · 0.85

Tested by

no test coverage detected