DISLIN Beispiele / C#
Demonstration of CURVE / C#
using System; public class App { public static void Main() { int n = 301; float [] xray = new float [n]; float [] y1ray = new float [n]; float [] y2ray = new float [n]; int i, ic; float x, step, fpi; fpi = 3.1415926f / 180; step = 360.0f / (n - 1); for (i = 0; i < n; i++) { xray[i] = i * step; x = xray[i] * fpi; y1ray[i] = (float) Math.Sin (x); y2ray[i] = (float) Math.Cos (x); } dislin.scrmod ("revers"); dislin.metafl ("xwin"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.axspos (450, 1800); dislin.axslen (2200, 1200); dislin.name ("X-axis", "X"); dislin.name ("Y-axis", "Y"); dislin.labdig (-1, "X"); dislin.ticks (10, "Y"); dislin.ticks (9, "X"); dislin.titlin ("Demonstration of CURVE", 1); dislin.titlin ("SIN(X), COS(X)", 3); ic = dislin.intrgb (0.95f, 0.95f, 0.95f); dislin.axsbgd (ic); dislin.graf (0.0f, 360.0f, 0.0f, 90.0f, -1.0f, 1.0f, -1.0f, 0.5f); dislin.setrgb (0.7f, 0.7f, 0.7f); dislin.grid (1, 1); dislin.color ("fore"); dislin.height (50); dislin.title (); dislin.color ("red"); dislin.curve (xray, y1ray, n); dislin.color ("green"); dislin.curve (xray, y2ray, n); dislin.disfin (); } }
Polar Plots / C#
using System; public class App { public static void Main() { int i, n = 300, m = 10, ic; float f = 3.1415927f / 180, step, a; float [] x1 = new float [n]; float [] y1 = new float [n]; float [] x2 = new float [m]; float [] y2 = new float [m]; step = 360.0f / (n - 1); for (i = 0; i < n; i++) { a = (i * step) * f; y1[i] = a; x1[i] = (float) Math.Sin (5 * a); } for (i = 0; i < m; i++) { x2[i] = i + 1; y2[i] = i + 1; } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.titlin ("Polar Plots", 2); dislin.ticks (3, "y"); dislin.axends ("NOENDS", "X"); dislin.labdig (-1, "Y"); dislin.axslen (1000, 1000); dislin.axsorg (1050, 900); ic = dislin.intrgb (0.95f, 0.95f, 0.95f); dislin.axsbgd (ic); dislin.grafp (1.0f,0.0f, 0.2f, 0.0f, 30.0f); dislin.color ("blue"); dislin.curve (x1, y1, n); dislin.color ("fore"); dislin.htitle (50); dislin.title (); dislin.endgrf (); dislin.labdig (-1, "X"); dislin.axsorg (1050, 2250); dislin.labtyp ("VERT", "Y"); dislin.grafp (10.0f, 0.0f, 2.0f, 0.0f, 30.0f); dislin.barwth (-5.0f); dislin.polcrv ("FBARS"); dislin.color ("blue"); dislin.curve (x2, y2, m); dislin.disfin (); } }
Symbols / C#
u sing System; using System.Text; public class App { public static void Main() { int nl, ny, i, nxp = 0; StringBuilder cstr = new StringBuilder (80); string ctit = "Symbols"; dislin.scrmod ("revers"); dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.height (60); nl = dislin.nlmess (ctit); dislin.messag (ctit, (2100 - nl) / 2, 200); dislin.height (50); dislin.hsymbl (120); ny = 150; for (i = 0; i < 24; i++) { if ((i % 4) == 0) { ny += 400; nxp = 550; } else { nxp += 350; } nl = dislin.intcha (i, cstr); nl = dislin.nlmess (cstr.ToString ()) / 2; dislin.messag (cstr.ToString (), nxp - nl, ny + 150); dislin.symbol (i, nxp, ny); } dislin.disfin (); } }
Interpolation Methods / C#
using System; using System.Text; public class App { public static void Main() { int nya = 2700, i, nx, ny, ic; float [] x = {0.0f, 1.0f, 3.0f, 4.5f, 6.0f, 8.0f, 9.0f, 11.0f, 12.0f, 12.5f, 13.0f, 15.0f, 16.0f, 17.0f, 19.0f, 20.0f}; float [] y = {2.0f, 4.0f, 4.5f, 3.0f, 1.0f, 7.0f, 2.0f, 3.0f, 5.0f, 2.0f, 2.5f, 2.0f, 4.0f, 6.0f, 5.5f, 4.0f}; string [] cpol = {"SPLINE", "STEM", "BARS", "STAIRS", "STEP", "LINEAR"}; string ctit = "Interpolation Methods"; dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.scrmod ("revers"); dislin.disini (); dislin.complx (); dislin.pagera (); dislin.incmrk (1); dislin.hsymbl (25); dislin.titlin (ctit, 2); dislin.axslen (1500, 350); dislin.setgrf ("line", "line", "line", "line"); ic = dislin.intrgb (1.0f, 1.0f, 0.0f); dislin.axsbgd (ic); for (i = 0; i < 6; i++) { dislin.axspos (350, nya - i * 350); dislin.polcrv (cpol[i]); dislin.marker (16); dislin.graf (0.0f, 20.0f, 0.0f, 5.0f, 0.0f, 10.0f, 0.0f, 5.0f); nx = dislin.nxposn (1.0f); ny = dislin.nyposn (8.0f); dislin.messag (cpol[i], nx, ny); dislin.color ("red"); dislin.curve (x, y, 16); dislin.color ("fore"); if (i == 5) { dislin.height (50); dislin.title (); } dislin.endgrf (); } dislin.disfin (); } }
Bar Graphs / C#
using System; using System.Text; public class App { public static void Main() { int nya = 2700, i; string ctit = "Bar Graphs (BARS)"; StringBuilder cbuf = new StringBuilder (25); float [] x = {1.0f, 2.0f, 3.0f, 4.0f, 5.0f, 6.0f, 7.0f, 8.0f, 9.0f}; float [] y = {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; float [] y1 = {1.0f, 1.5f, 2.5f, 1.3f, 2.0f, 1.2f, 0.7f, 1.4f, 1.1f}; float [] y2 = {2.0f, 2.7f, 3.5f, 2.1f, 3.2f, 1.9f, 2.0f, 2.3f, 1.8f}; float [] y3 = {4.0f, 3.5f, 4.5f, 3.7f, 4.0f, 2.9f, 3.0f, 3.2f, 2.6f}; dislin.scrmod ("revers"); dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.ticks (1, "x"); dislin.intax ();; dislin.axslen (1600, 700); dislin.titlin (ctit, 3); dislin.legini (cbuf, 3, 8); dislin.leglin (cbuf, "FIRST", 1); dislin.leglin (cbuf, "SECOND", 2); dislin.leglin (cbuf, "THIRD", 3); dislin.legtit (" "); dislin.shdpat (5); for (i = 1; i <= 3; i++) { if (i > 1) dislin.labels ("none", "x"); dislin.axspos (300, nya - (i - 1) * 800); dislin.graf (0.0f, 10.0f, 0.0f, 1.0f, 0.0f, 5.0f, 0.0f, 1.0f); if (i == 1) { dislin.bargrp (3, 0.15f); dislin.color ("red"); dislin.bars (x, y, y1, 9); dislin.color ("green"); dislin.bars (x, y, y2, 9); dislin.color ("blue"); dislin.bars (x, y, y3, 9); dislin.color ("fore"); dislin.reset ("bargrp"); } else if (i == 2) { dislin.height (30); dislin.labels ("delta", "bars"); dislin.labpos ("center", "bars"); dislin.color ("red"); dislin.bars (x, y, y1, 9); dislin.color ("green"); dislin.bars (x, y1, y2, 9); dislin.color ("blue"); dislin.bars (x, y2, y3, 9); dislin.color ("fore"); dislin.reset ("height"); } else if (i == 3) { dislin.labels ("second", "bars"); dislin.labpos ("outside", "bars"); dislin.color ("red"); dislin.bars (x, y, y1, 9); dislin.color ("fore"); } if (i != 3) dislin.legend (cbuf, 7); if (i == 3) { dislin.height (50); dislin.title (); } dislin.endgrf (); } dislin.disfin (); } }
Pie Charts / C#
using System; using System.Text; public class App { public static void Main() { float [] xray = {1.0f, 2.5f, 2.0f, 2.7f, 1.8f}; StringBuilder cbuf = new StringBuilder (80); dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.chnpie ("BOTH"); dislin.axslen (1600, 1000); dislin.titlin ("Pie Charts (PIEGRF)", 1); dislin.legini (cbuf, 5, 8); dislin.leglin (cbuf, "FIRST", 1); dislin.leglin (cbuf, "SECOND", 2); dislin.leglin (cbuf, "THIRD", 3); dislin.leglin (cbuf, "FOURTH", 4); dislin.leglin (cbuf, "FIFTH", 5); dislin.patcyc (1, 7); dislin.patcyc (2, 4); dislin.patcyc (3, 13); dislin.patcyc (4, 3); dislin.patcyc (5, 5); dislin.axspos (250, 2800); dislin.piegrf (cbuf.ToString (), 1, xray, 5); dislin.endgrf (); dislin.axspos (250, 1600); dislin.labels ("DATA", "PIE"); dislin.labpos ("EXTERNAL", "PIE"); dislin.piegrf (cbuf.ToString (), 1, xray, 5); dislin.height (50); dislin.title (); dislin.disfin (); } }
3-D Bar Graph / 3-D Pie Chart / C#
using System; using System.Text; public class App { public static void Main() { StringBuilder cbuf = new StringBuilder (80); float [] xray = {2.0f, 4.0f, 6.0f, 8.0f, 10.0f}; float [] y1ray = {0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; float [] y2ray = {3.2f, 1.5f, 2.0f, 1.0f, 3.0f}; int [] ic1ray = {50, 150, 100, 200, 175}; int [] ic2ray = {50, 150, 100, 200, 175}; dislin.scrmod ("revers"); dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.titlin ("3-D Bar Graph / 3-D Pie Chart", 2); dislin.htitle (40); dislin.shdpat (16); dislin.axslen (1500, 1000); dislin.axspos (300, 1400); dislin.barwth (0.5f); dislin.bartyp ("3dvert"); dislin.labels ("second", "bars"); dislin.labpos ("outside", "bars"); dislin.labclr (255, "bars"); dislin.graf (0.0f, 12.0f, 0.0f, 2.0f, 0.0f, 5.0f, 0.0f, 1.0f); dislin.title (); dislin.color ("red"); dislin.bars (xray, y1ray, y2ray, 5); dislin.endgrf (); dislin.shdpat (16); dislin.labels ("data", "pie"); dislin.labclr (255, "pie"); dislin.chnpie ("none"); dislin.pieclr (ic1ray, ic2ray, 5); dislin.pietyp ("3d"); dislin.axspos (300, 2700); dislin.piegrf (cbuf.ToString (), 0, y2ray, 5); dislin.disfin (); } }
3-D Bars / BARS3D / C#
using System; using System.Text; public class App { public static void Main() { int n = 18, i; StringBuilder cbuf = new StringBuilder (80); float [] xwray = new float [n]; float [] ywray = new float [n]; float [] xray = {1.0f, 3.0f, 8.0f, 1.5f, 9.0f, 6.3f, 5.8f, 2.3f, 8.1f, 3.5f, 2.2f, 8.7f, 9.2f, 4.8f, 3.4f, 6.9f, 7.5f, 3.8f}; float [] yray = {5.0f, 8.0f, 3.5f, 2.0f, 7.0f, 1.0f, 4.3f, 7.2f, 6.0f, 8.5f, 4.1f, 5.0f, 7.3f, 2.8f, 1.6f, 8.9f, 9.5f, 3.2f}; float [] z1ray = {0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f}; float [] z2ray = {4.0f, 5.0f, 3.0f, 2.0f, 3.5f, 4.5f, 2.0f, 1.6f, 3.8f, 4.7f, 2.1f, 3.5f, 1.9f, 4.2f, 4.9f, 2.8f, 3.6f, 4.3f}; int [] icray = {30, 30, 30, 30, 30, 30, 100, 100, 100, 100, 100, 100, 170, 170, 170, 170, 170, 170}; for (i = 0; i < n; i++) { xwray[i] = (float) 0.5; ywray[i] = (float) 0.5; } dislin.scrmod ("revers"); dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.axspos (200, 2600); dislin.axslen (1800, 1800); dislin.name ("X-axis", "x"); dislin.name ("Y-axis", "y"); dislin.name ("Z-axis", "z"); dislin.titlin ("3-D Bars / BARS3D", 3); dislin.labl3d ("hori"); dislin.graf3d (0.0f, 10.0f, 0.0f, 2.0f, 0.0f, 10.0f, 0.0f, 2.0f, 0.0f, 5.0f, 0.0f, 1.0f); dislin.grid3d (1, 1, "bottom"); dislin.bars3d (xray, yray, z1ray, z2ray, xwray, ywray, icray, n); dislin.legini (cbuf, 3, 20); dislin.legtit (" "); dislin.legpos (1350, 1150); dislin.leglin (cbuf, "First", 1); dislin.leglin (cbuf, "Second", 2); dislin.leglin (cbuf, "Third", 3); dislin.legend (cbuf, 3); dislin.height (50); dislin.title (); dislin.disfin (); } }
Shading Patterns / C#
using System; using System.Text; public class App { public static void Main() { int [] ixp = new int [4]; int [] iyp = new int [4]; int [] ix = {0, 300, 300, 0}; int [] iy = {0, 0, 400, 400}; int nl, nx, nx0 = 335, ny0 = 350, ny, i, j, ii, k, iclr; StringBuilder cstr = new StringBuilder (80); string ctit = "Shading Patterns (AREAF)"; dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.setvlt ("small"); dislin.height (50); nl = dislin.nlmess (ctit); nx = (2970 - nl) / 2; dislin.messag (ctit, nx, 200); iclr = 0; for (i = 0; i < 3; i++) { ny = ny0 +i * 600; for (j = 0; j < 6; j++) { nx = nx0 + j * 400; ii = i * 6 + j; nl = dislin.intcha (ii, cstr); dislin.shdpat (ii); iclr = iclr % 16; iclr++; dislin.setclr (iclr); for (k = 0; k < 4; k++) { ixp[k] = ix[k] + nx; iyp[k] = iy[k] + ny; } dislin.areaf (ixp, iyp, 4); nl = dislin.nlmess (cstr.ToString ()); nx += (300 - nl) / 2; dislin.messag (cstr.ToString (), nx, ny + 460); } } dislin.disfin (); } }
3-D Colour Plot / C#
using System; public class App { public static void Main() { int n = 100; float [,] zmat = new float [n,n]; int i, j; float x, y, step, fpi; fpi = 3.1415926f / 180; step = 360.0f / (n - 1); for (i = 0; i < n; i++) { x = i * step; for (j = 0; j < n; j++) { y = j * step; zmat[i,j] = (float) (2 * Math.Sin (x * fpi) * Math.Sin (y * fpi)); } } dislin.scrmod ("revers"); dislin.metafl ("xwin"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.titlin ("3-D Colour Plot of the Function", 1); dislin.titlin ("F(X,Y) = 2 * SIN(X) * SIN(Y)", 3); dislin.name ("X-axis", "X"); dislin.name ("Y-axis", "Y"); dislin.name ("Z-axis", "Z"); dislin.axspos (300, 1850); dislin.ax3len (2200, 1400, 1400); dislin.intax (); dislin.autres (n, n); dislin.graf3 (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f, -2.0f, 2.0f, -2.0f, 1.0f); dislin.crvmat (zmat, n, n, 1, 1); dislin.height (50); dislin.title (); dislin.disfin (); } }
Surface Plot / C#
using System; public class App { public static void Main() { int n = 50, m = 50; float [,] zmat = new float [n,m]; int i, j; float x, y, step, fpi; fpi = 3.1415926f / 180; step = 360.0f / (n - 1); for (i = 0; i < n; i++) { x = i * step; for (j = 0; j < m; j++) { y = j * step; zmat[i,j] = (float) (2 * Math.Sin (x * fpi) * Math.Sin (y * fpi)); } } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.titlin ("Surface Plot of the Function", 2); dislin.titlin ("F(X,Y) = 2 * SIN(X) * SIN (Y)", 4); dislin.axspos (200, 2600); dislin.axslen (1800, 1800); dislin.name ("X-axis", "X"); dislin.name ("Y-axis", "Y"); dislin.name ("Z-axis", "Z"); dislin.view3d (-5.0f, -5.0f, 4.0f, "ABS"); dislin.graf3d (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f, -3.0f, 3.0f, -3.0f, 1.0f); dislin.height (50); dislin.title (); dislin.color ("green"); dislin.surmat (zmat, n, m, 1, 1); dislin.disfin (); } }
Shaded Surface Plot / C#
using System; public class App { public static void Main() { int n = 50, m = 50; float [,] zmat = new float [n,m]; float [] xray = new float [n]; float [] yray = new float [m]; int i, j; float x, y, step, fpi; fpi = 3.1415926f / 180; step = 360.0f / (n - 1); for (i = 0; i < n; i++) { x = i * step; xray[i] = x; for (j = 0; j < m; j++) { y = j * step; yray[j] = y; zmat[i,j] = (float) (2 * Math.Sin (x * fpi) * Math.Sin (y * fpi)); } } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.titlin ("Shaded Surface Plot", 2); dislin.titlin ("F(X,Y) = 2 * SIN(X) * SIN (Y)", 4); dislin.axspos (200, 2600); dislin.axslen (1800, 1800); dislin.name ("X-axis", "X"); dislin.name ("Y-axis", "Y"); dislin.name ("Z-axis", "Z"); dislin.view3d (-5.0f, -5.0f, 4.0f, "ABS"); dislin.graf3d (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f, -3.0f, 3.0f, -3.0f, 1.0f); dislin.height (50); dislin.title (); dislin.shdmod ("smooth", "surface"); dislin.surshd (xray, n, yray, m, zmat); dislin.disfin (); } }
Contour Plot / C#
using System; public class App { public static void Main() { int n = 50, m = 50; float [,] zmat = new float [n,m]; float [] xray = new float [n]; float [] yray = new float [m]; int i, j; float x, y, stepx, stepy, fpi, zlev; stepx = 360.0f / (n - 1); stepy = 360.0f / (m - 1); fpi = 3.1415926f / 180; for (i = 0; i < n; i++) { xray[i] = stepx * i; } for (j = 0; j < m; j++) { yray[j] = stepy * j; } for (i = 0; i < n; i++) { x = xray[i] * fpi; for (j = 0; j < m; j++) { y = yray[j] * fpi; zmat[i,j] = (float) (2 * Math.Sin (x) * Math.Sin (y)); } } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.titlin ("Contour Plot", 1); dislin.titlin ("F(X,Y) = 2 * SIN(X) * SIN(Y)", 3); dislin.intax (); dislin.axspos (450, 2650); dislin.name ("X-axis", "X"); dislin.name ("Y-axis", "Y"); dislin.graf (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f); dislin.height (50); dislin.title (); dislin.height (30); for (i = 0; i < 9; i++) { zlev = -2.0f + i * 0.5f; if (i == 4) dislin.labels ("NONE", "CONTUR"); else dislin.labels ("FLOAT", "CONTUR"); dislin.setclr ((i+1) * 28); dislin.contur (xray, n, yray, m, zmat, zlev); } dislin.disfin (); } }
Shaded Contour Plot / C#
using System; public class App { public static void Main() { int n = 50, m = 50, i, j; float [,] zmat = new float [n,m]; float [] xray = new float [n]; float [] yray = new float [m]; float [] zlev = new float [12]; string ctit1 = "Shaded Contour Plot"; string ctit2 = "F(X,Y) = (X[2$ - 1)[2$ + (Y[2$ - 1)[2$"; double x, y; double stepx = 1.6 / (n-1); double stepy = 1.6 / (m-1); for (i = 0; i < n; i++) { xray[i] = (float) (stepx * i); } for (j = 0; j < m; j++) { yray[j] = (float) (stepy * j); } for (j = 0; j < m; j++) { yray[j] = (float) (j * stepy); } for (i = 0; i < n; i++) { x = xray[i] * xray[i] - 1.0f; x *= x; for (j = 0; j < m; j++) { y = yray[j] * yray[j] - 1.0f; zmat[i,j] = (float) (x + y * y); } } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.mixalf (); dislin.titlin (ctit1, 1); dislin.titlin (ctit2, 3); dislin.name ("X-axis", "x"); dislin.name ("Y-axis", "y"); dislin.axspos (450, 2670); dislin.shdmod ("poly", "contur"); dislin.graf (0.0f, 1.6f, 0.0f, 0.2f, 0.0f, 1.6f, 0.0f, 0.2f); for (i = 0; i < 12; i++) { zlev[11-i] = 0.1f + i * 0.1f; } dislin.conshd (xray, n, yray, m, zmat, zlev, 12); dislin.height (50); dislin.title (); dislin.disfin (); } }
Shaded Surface / Contour Plot / C#
using System; public class App { public static void Main() { int n = 50, m = 50, i, j, nlev = 20; float [,] zmat = new float [n,m]; float [] xray = new float [n]; float [] yray = new float [m]; float [] zlev = new float [nlev]; double x, y, step; double fpi = 3.1415926/180.0; double stepx = 360.0 / (n-1); double stepy = 360.0 / (m-1); for (i = 0; i < n; i++) { x = i * stepx; xray[i] = (float) x; for (j = 0; j < m; j++) { y = j * stepy; yray[j] = (float) y; zmat[i,j] = (float) (2 * Math.Sin (x*fpi)* Math.Sin (y*fpi)); } } dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.setpag ("da4p"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.axspos (200, 2600); dislin.axslen (1800, 1800); dislin.name ("X-axis", "x"); dislin.name ("Y-axis", "y"); dislin.name ("Z-axis", "z"); dislin.titlin ("Shaded Surface / Contour Plot", 1); dislin.titlin ("F(X,Y) = 2*SIN(X)*SIN(Y)", 3); dislin.graf3d (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f, -2.0f, 2.0f, -2.0f, 1.0f); dislin.height (50); dislin.title (); dislin.grfini (-1.0f, -1.0f, -1.0f, 1.0f, -1.0f, -1.0f, 1.0f, 1.0f, -1.0f); dislin.nograf (); dislin.graf (0.0f, 360.0f, 0.0f, 90.0f, 0.0f, 360.0f, 0.0f, 90.0f); step = 4.0 / nlev; for (i = 0; i < nlev; i++) zlev[i] = (float) (-2.0 + i * step); dislin.conshd (xray, n, yray, n, zmat, zlev, nlev); dislin.box2d (); dislin.reset ("nograf"); dislin.grffin (); dislin.shdmod ("smooth", "surface"); dislin.surshd (xray, n, yray, m, zmat); dislin.disfin (); } }
Spheres and Tubes / C#
using System; public class App { public static void Main() { int i, j1, j2, iret; float [] x = {10.0f, 20.0f, 10.0f, 20.0f, 5.0f, 15.0f, 25.0f, 5.0f, 15.0f, 25.0f, 5.0f, 15.0f, 25.0f, 10.0f, 20.0f, 10.0f, 20.0f}; float [] y = {10.0f, 10.0f, 20.0f, 20.0f, 5.0f, 5.0f, 5.0f, 15.0f, 15.0f, 15.0f, 25.0f, 25.0f, 25.0f, 10.0f, 10.0f, 20.0f, 20.0f}; float [] z = {5.0f, 5.0f, 5.0f, 5.0f, 15.0f, 15.0f, 15.0f, 15.0f, 15.0f, 15.0f, 15.0f, 15.0f, 15.0f, 25.0f, 25.0f, 25.0f, 25.0f}; int [] idx = {1, 2, 1, 3, 3, 4, 2, 4, 5, 6, 6, 7, 8, 9, 9, 10, 11, 12, 12, 13, 5, 8, 8, 11, 6, 9, 9, 12, 7, 10, 10, 13, 14, 15, 16, 17, 14, 16, 15, 17, 1, 5, 2, 7, 3, 11, 4, 13, 5, 14, 7, 15, 11, 16, 13, 17}; dislin.setpag ("da4p"); dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.light ("on"); dislin.matop3 (0.02f, 0.02f, 0.02f, "specular"); dislin.clip3d ("none"); dislin.axspos (0, 2500); dislin.axslen (2100, 2100); dislin.htitle (50); dislin.titlin ("Spheres and Tubes", 4); dislin.name ("X-axis", "x"); dislin.name ("Y-axis", "y"); dislin.name ("Z-axis", "z"); dislin.labdig (-1, "xyz"); dislin.labl3d ("hori"); dislin.graf3d (0.0f, 30.0f, 0.0f, 5.0f, 0.0f, 30.0f, 0.0f, 5.0f, 0.0f, 30.0f, 0.0f, 5.0f); dislin.title (); dislin.shdmod ("smooth", "surface"); iret = dislin.zbfini(); dislin.matop3 (1.0f, 0.0f, 0.0f, "diffuse"); for (i = 0; i < 17; i++) dislin.sphe3d (x[i], y[i], z[i], 2.0f, 50, 25); dislin.matop3 (0.0f, 1.0f, 0.0f, "diffuse"); for (i = 0; i < 56; i += 2) { j1 = idx[i] - 1; j2 = idx[i+1] - 1; dislin.tube3d (x[j1], y[j1], z[j1], x[j2], y[j2], z[j2], 0.5f, 5, 5); } dislin.zbffin (); dislin.disfin (); } }
Some Solids / C#
using System; public class App { public static void Main() { int iret; dislin.setpag ("da4p"); dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.hwfont (); dislin.light ("on"); dislin.litop3 (1,0.5f, 0.5f, 0.5f, "ambient"); dislin.clip3d ("none"); dislin.axspos (0, 2500); dislin.axslen (2100, 2100); dislin.htitle (60); dislin.titlin ("Some Solids", 4); dislin.nograf (); dislin.graf3d (-5.0f, 5.0f, -5.0f, 2.0f, -5.0f, 5.0f, -5.0f, 2.0f, -5.0f, 5.0f, -5.0f, 2.0f); dislin.title (); dislin.shdmod ("smooth", "surface"); iret = dislin.zbfini(); dislin.matop3 (1.0f, 0.5f, 0.0f, "diffuse"); dislin.tube3d (-3.0f, -3.0f, 8.0f, 2.0f, 3.0f, 5.5f, 1.0f, 40, 20); dislin.rot3d (-60.0f, 0.0f, 0.0f); dislin.matop3 (1.0f, 0.0f, 1.0f, "diffuse"); dislin.setfce ("bottom"); dislin.matop3 (1.0f, 0.0f, 0.0f, "diffuse"); dislin.cone3d (-3.0f, -3.0f, 3.5f, 2.0f, 3.0f, 3.0f, 40, 20); dislin.setfce ("top"); dislin.rot3d (0.0f, 0.0f, 0.0f); dislin.matop3 (0.0f, 1.0f, 1.0f, "diffuse"); dislin.plat3d (4.0f, 4.0f, 3.0f, 3.0f, "icos"); dislin.rot3d (0.0f, 0.0f, 0.0f); dislin.matop3 (1.0f, 1.0f, 0.0f, "diffuse"); dislin.sphe3d (0.0f, 0.0f, 0.0f, 3.0f, 40, 20); dislin.rot3d (0.0f, 0.0f, -20.0f); dislin.matop3 (0.0f, 0.0f, 1.0f, "diffuse"); dislin.quad3d (-4.0f, -4.0f, -3.0f, 3.0f, 3.0f, 3.0f); dislin.rot3d (0.0f, 0.0f, 30.0f); dislin.matop3 (1.0f, 0.3f, 0.3f, "diffuse"); dislin.pyra3d (-2.0f, -5.0f, -10.0f, 3.0f, 5.0f, 5.0f, 4); dislin.rot3d (0.0f, 0.0f, 0.0f); dislin.matop3 (1.0f, 0.0f, 0.0f, "diffuse"); dislin.torus3d (7.0f, -3.0f, -2.0f, 1.5f, 3.5f, 1.5f, 0.0f, 360.0f, 40, 20); dislin.rot3d (0.0f, 90.0f, 0.0f); dislin.matop3 (0.0f, 1.0f, 0.0f, "diffuse"); dislin.torus3d (7.0f, -5.0f, -2.0f, 1.5f, 3.5f, 1.5f, 0.0f, 360.0f, 40, 20); dislin.zbffin (); dislin.disfin (); } }
Map Plot / C#
using System; public class App { public static void Main() { dislin.scrmod ("revers"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.axspos (400, 1850); dislin.axslen (2400, 1400); dislin.name ("Longitude", "X"); dislin.name ("Latitude", "Y"); dislin.titlin ("World Coastlines and Lakes", 3); dislin.labels ("MAP", "XY"); dislin.labdig (-1, "XY"); dislin.grafmp (-180.0f, 180.0f, -180.0f, 90.0f, -90.0f, 90.0f, -90.0f, 30.0f); dislin.gridmp (1,1); dislin.color ("green"); dislin.world (); dislin.color ("fore"); dislin.height (50); dislin.title (); dislin.disfin (); } }
TeX Instructions for Mathematical Formulas / C#
using System; public class App { public static void Main() { int nl; string cstr = "TeX Instructions for Mathematical Formulas"; dislin.scrmod ("revers"); dislin.setpag ("da4p"); dislin.metafl ("cons"); dislin.disini (); dislin.pagera (); dislin.complx (); dislin.height (40); nl = dislin.nlmess (cstr); dislin.messag (cstr, (2100 - nl)/2, 100); dislin.texmod ("on"); dislin.messag ("$\\frac{1}{x+y}$", 150, 400); dislin.messag ("$\\frac{a^2 - b^2}{a+b} = a - b$", 1200, 400); dislin.messag ("$r = \\sqrt{x^2 + y^2}", 150, 700); dislin.messag ("$\\cos \\phi = \\frac{x}{\\sqrt{x^2 + y^2}}$", 1200, 700); dislin.messag ("$\\Gamma(x) = \\int_0^\\infty e^{-t}t^{x-1}dt$", 150, 1000); dislin.messag ("$\\lim_{x \\to \\infty} (1 + \\frac{1}{x})^x = e$", 1200, 1000); dislin.messag ("$\\mu = \\sum_{i=1}^n x_i p_i$", 150, 1300); dislin.messag ("$\\mu = \\int_{-\\infty}^ \\infty x f(x) dx$", 1200, 1300); dislin.messag ("$\\overline{x} = \\frac{1}{n} \\sum_{i=1}^n x_i$", 150, 1600); dislin.messag ("$s^2 = \\frac{1}{n-1} \\sum_{i=1}^n (x_i - \\overline{x})^2$", 1200, 1600); dislin.messag ("$\\sqrt[n]{\\frac{x^n - y^n}{1 + u^{2n}}}$", 150, 1900); dislin.messag ("$\\sqrt[3]{-q + \\sqrt{q^2 + p^3}}$", 1200, 1900); dislin.messag ("$\\int \\frac{dx}{1+x^2} = \\arctan x + C$", 150, 2200); dislin.messag ("$\\int \\frac{dx}{\\sqrt{1+x^2}} = {\\rm arsinh} x + C$", 1200, 2200); dislin.messag ("$\\overline{P_1P_2} = \\sqrt{(x_2-x_1)^2 + (y_2-y_1)^2}$", 150,2500); dislin.messag ("$x = \\frac{x_1 + \\lambda x_2}{1 + \\lambda}$", 1200, 2500); dislin.disfin (); } }
News
Update 11.5.2
8. April 2024
Support für Python 3.11 und Windows
28. Juli 2023
Bugfix für die X11-Distributionen
22. Juli 2023
Update 11.5.1
25. April 2023
Support für Linux 64-bit auf IBM z Rechnern
30. Oktober 2022
Support für MingW 64-bit mit UCRT Runtime-Umgebung
28. September 2022
Release 11.5
15. März 2022
Release 11.4
15. März 2021
Support für Free Pascal 64-bit unter Windows
22. Juli 2020
Upgrade 11.3.3
28. Juni 2020
DISLIN-Buch Version 11 ist erhältlich
8. März 2017
8. April 2024
Support für Python 3.11 und Windows
28. Juli 2023
Bugfix für die X11-Distributionen
22. Juli 2023
Update 11.5.1
25. April 2023
Support für Linux 64-bit auf IBM z Rechnern
30. Oktober 2022
Support für MingW 64-bit mit UCRT Runtime-Umgebung
28. September 2022
Release 11.5
15. März 2022
Release 11.4
15. März 2021
Support für Free Pascal 64-bit unter Windows
22. Juli 2020
Upgrade 11.3.3
28. Juni 2020
DISLIN-Buch Version 11 ist erhältlich
8. März 2017