DISLIN Examples / Visual Basic
Demonstration of CURVE / Visual Basic
Imports System Public Class App Public Shared Sub Main () Const [N] As Integer = 300 Dim xray([N]), y1ray([N]), y2ray([N]) As Single Dim x, stp, fpi As Single Dim i, ic As Integer fpi = 3.1415926f / 180 stp = 360.0f / ([N]) For i = 0 To [N] xray(i) = i * stp x = xray(i) * fpi y1ray(i) = Math.Sin (x) y2ray(i) = Math.Cos (x) Next i 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.95, 0.95, 0.95) dislin.axsbgd (ic) dislin.graf (0.0f, 360.0f, 0.0f, 90.0f, -1.0f, 1.0f, -1.0f, 0.5f) dislin.setrgb (0.7, 0.7, 0.7) dislin.grid (1, 1) dislin.color ("fore") dislin.title () dislin.color ("red") dislin.curve (xray, y1ray, [N] + 1) dislin.color ("green") dislin.curve (xray, y2ray, [N] + 1) dislin.color ("fore") dislin.disfin () End Sub End Class
Polar Plots / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim n As Integer = 300 - 1 Dim m As Integer = 10 - 1 Dim pi As Single = 3.1415926 Dim xray (n), x1(n), y1 (n) As Single Dim x2 (m), y2 (m) As Single Dim a, x, f, stp As Single Dim i, ic As Integer f = pi / 180.0 stp = 360.0 / n For i = 0 To n a = i * stp * f xray(i) = i * stp x = xray(i) * f y1(i) = a x1(i) = Math.Sin (5 * a) Next i For i = 0 To m x2(i) = i + 1 y2(i) = i + 1 Next i dislin.setpag ("da4p") dislin.metafl ("cons") dislin.scrmod ("revers") 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.95, 0.95, 0.95) dislin.axsbgd (ic) dislin.grafp (1.0, 0.0, 0.2, 0.0, 30.0) 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.0, 0.0, 2.0, 0.0, 30.0) dislin.barwth (-5.0) dislin.polcrv ("FBARS") dislin.color ("blue") dislin.curve (x2, y2, m) dislin.disfin () End Sub End Class
Symbols / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim ctit As String = "Symbols" Dim i, nl, ny, nxp As Integer Dim v As Single dislin.scrmod ("revers") dislin.setpag ("da4p") dislin.metafl ("cons") dislin.disini () dislin.pagera () dislin.hwfont () 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 To 23 If (i Mod 4) = 0 Then ny += 400 nxp = 550 Else nxp += 350 End If v = i nl = dislin.nlnumb (v, -1) dislin.number (v, -1, nxp - nl/2, ny + 150) dislin.symbol (i, nxp, ny) Next i dislin.disfin () End Sub End Class
Interpolation Methods / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim xray () As Single = {0.0, 1.0, 3.0, 4.5, 6.0, 8.0, 9.0, 11.0, 12.0, _ 12.5, 13.0, 15.0, 16.0, 17.0, 19.0, 20.0} Dim yray () As Single = {2.0, 4.0, 4.5, 3.0, 1.0, 7.0, 2.0, 3.0, 5.0, _ 2.0, 2.5, 2.0, 4.0, 6.0, 5.5, 4.0} Dim ctit As String = "Interpolation Methods" Dim cpol () As String = {"SPLINE", "STEM", "BARS", "STAIRS", "STEP", _ "LINEAR"} Dim ic, i, nya, nx, ny As Integer dislin.setpag ("da4p") dislin.scrmod ("reverse") dislin.metafl ("xwin") dislin.disini () dislin.pagera () dislin.complx () dislin.incmrk (1) dislin.hsymbl (25) dislin.titlin (ctit, 1) dislin.axslen (1500, 350) dislin.setgrf ("LINE", "LINE", "LINE", "LINE") ic = dislin.intrgb (1.0, 1.0, 0.0) dislin.axsbgd (ic) nya = 2700 For i = 0 To 5 dislin.axspos (350, nya - i * 350) dislin.polcrv (cpol(i)) dislin.marker (0) dislin.graf (0.0, 20.0, 0.0, 5.0, 0.0, 10.0, 0.0, 5.0) nx = dislin.nxposn (1.0) ny = dislin.nyposn (8.0) dislin.messag (cpol(i), nx, ny) dislin.color ("red") dislin.curve (xray, yray, 16) dislin.color ("fore") If i = 5 Then dislin.height (50) dislin.title () End If dislin.endgrf () Next i dislin.disfin () End Sub End Class
Bar Graphs / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim cbuf As New StringBuilder (80) Dim x () As Single = {1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0} Dim y () As Single = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0} Dim y1 () As Single = {1.0, 1.5, 2.5, 1.3, 2.0, 1.2, 0.7, 1.4, 1.1} Dim y2 () As Single = {2.0, 2.7, 3.5, 2.1, 3.2, 1.9, 2.0, 2.3, 1.8} Dim y3 () As Single = {4.0, 3.5, 4.5, 3.7, 4.0, 2.9, 3.0, 3.2, 2.6} Dim nya As Integer = 2700 Dim i As Integer Dim ctit As String = "Bar Graphs (BARS)" dislin.setpag ("da4p") dislin.scrmod ("revers") 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 To 3 If i > 1 Then dislin.labels ("none","x") End If dislin.axspos (300, nya-(i-1)*800) dislin.graf (0.0, 10.0, 0.0, 1.0, 0.0, 5.0, 0.0, 1.0) If i = 1 Then dislin.bargrp (3, 0.15) 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") ElseIf i = 2 Then 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") ElseIf i = 3 Then dislin.labels ("second", "bars") dislin.labpos ("outside", "bars") dislin.color ("red") dislin.bars (x, y, y1, 9) dislin.color ("fore") End If If i <> 3 Then dislin.legend (cbuf, 7) End If If i = 3 Then dislin.height (50) dislin.title () End If dislin.endgrf () Next i dislin.disfin () End Sub End Class
Pie Charts / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim xray () As Single = {1.0, 2.5, 2.0, 2.7, 1.8} Dim ctit As String = "Pie Charts (PIEGRF)" Dim cbuf As New StringBuilder (80) dislin.setpag ("da4p") dislin.scrmod ("revers") dislin.metafl ("cons") dislin.disini () dislin.pagera () dislin.complx () dislin.chnpie ("BOTH") dislin.axslen (1600, 1000) dislin.titlin (ctit, 2) 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 () End Sub End Class
3-D Bar Graph / 3-D Pie Chart / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim xray () As Single = {2.0, 4.0, 6.0, 8.0, 10.0} Dim y1ray () As Single = {0.0, 0.0, 0.0, 0.0, 0.0} Dim y2ray () As Single = {3.2, 1.5, 2.0, 1.0, 3.0} Dim ic1ray () As Integer = {50, 150, 100, 200, 175} Dim ic2ray () As Integer = {50, 150, 100, 200, 175} Dim cbuf As New StringBuilder (80) dislin.metafl ("cons") dislin.setpag ("da4p") dislin.scrmod ("revers") 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.5) dislin.bartyp ("3dvert") dislin.labels ("second", "bars") dislin.labpos ("outside", "bars") dislin.labclr (255, "bars") dislin.graf (0.0, 12.0, 0.0, 2.0, 0.0, 5.0, 0.0, 1.0) 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 () End Sub End Class
3-D Bars / BARS3D / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim n As Integer = 17 Dim xray () As Single = {1.0, 3.0, 8.0, 1.5, 9.0, 6.3, 5.8, 2.3, 8.1, 3.5, _ 2.2, 8.7, 9.2, 4.8, 3.4, 6.9, 7.5, 3.8} Dim yray () As Single = {5.0, 8.0, 3.5, 2.0, 7.0, 1.0,4.3, 7.2, 6.0, 8.5, _ 4.1, 5.0, 7.3, 2.8, 1.6, 8.9, 9.5, 3.2} Dim z1ray () As Single = {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, _ 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0} Dim z2ray () As Single = {4.0, 5.0, 3.0, 2.0, 3.5, 4.5, 2.0, 1.6, 3.8, _ 4.7, 2.1, 3.5, 1.9, 4.2, 4.9, 2.8, 3.6, 4.3} Dim icray () As Integer = {30, 30, 30, 30, 30, 30, 100, 100, 100, 100, _ 100, 100, 170, 170, 170, 170, 170, 170} Dim xwray (17), ywray (17) As Single Dim cbuf As New StringBuilder (80) Dim i As Integer For i = 0 To n xwray(i) = 0.5 ywray(i) = 0.5 Next i dislin.metafl ("xwin") dislin.scrmod ("revers") dislin.setpag ("da4p") dislin.disini () dislin.hwfont () dislin.pagera () 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.0,10.0,0.0,2.0,0.0,10.0,0.0,2.0,0.0,5.0,0.0,1.0) dislin.grid3d (1,1, "bottom") dislin.bars3d (xray, yray, z1ray, z2ray, xwray, ywray, icray, n + 1) 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 () End Sub End Class
Shading Patterns / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Dim ix () As Integer = {0, 300, 300, 0} Dim iy () As Integer = {0, 0, 400, 400} Dim ixp () As Integer = {0, 0, 0, 0} Dim iyp () As Integer = {0, 0, 0, 0} Dim ctit As String = "Shading patterns (AREAF)" Dim i, j, k, ii, nl, nx0, ny0, iclr, nx, ny As Integer Dim v As Single dislin.metafl ("cons") dislin.scrmod ("revers") dislin.disini () dislin.setvlt ("small") dislin.pagera () dislin.complx () dislin.height (50) nl = dislin.nlmess (ctit) dislin.messag (ctit, (2970 - nl)/2, 200) nx0 = 335 ny0 = 350 iclr = 0 For i = 0 To 2 ny = ny0 + i * 600 For j = 0 To 5 nx = nx0 + j * 400 ii = i * 6 + j dislin.shdpat (ii) iclr = iclr Mod 8 iclr = iclr + 1 dislin.setclr (iclr) For k = 0 To 3 ixp(k) = ix(k) + nx iyp(k) = iy(k) + ny Next k dislin.areaf (ixp, iyp, 4) nl = dislin.nlnumb (ii, -1) nx += (300 - nl) / 2 dislin.color ("foreground") v = ii dislin.number (v, -1, nx, ny + 460) Next j Next i dislin.disfin () End Sub End Class
3-D Colour Plot / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Const [N] As Integer = 100 Dim zmat(100,100) As Single Dim x, y, stp, fpi As Single Dim i, j As Integer fpi = 3.1415926f / 180 stp = 360.0f / [N] For i = 0 To [N] x = i * stp For j = 0 To [N] y = j * stp zmat (i,j) = 2 * Math.Sin (x * fpi) * Math.Sin (y * fpi) Next j Next i 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] + 1, [N] + 1, 1, 1) dislin.height (50) dislin.title () dislin.disfin () End Sub End Class
Surface Plot / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Const [N] As Integer = 50 Dim zmat([N],[N]) As Single Dim x, y, stp, fpi As Single Dim i, j As Integer fpi = 3.1415926f / 180 stp = 360.0f / [N] For i = 0 To [N] x = i * stp For j = 0 To [N] y = j * stp zmat (i,j) = 2 * Math.Sin (x * fpi) * Math.Sin (y * fpi) Next j Next i dislin.scrmod ("revers") dislin.metafl ("xwin") 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] + 1, [N] + 1, 1, 1) dislin.disfin () End Sub End Class
Shaded Surface Plot / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Const [N] As Integer = 50 Const [M] As Integer = 50 Dim xray([N]) As Single Dim yray([M]) As Single Dim zmat([N],[M]) As Single Dim stpx, stpy, fpi As Single Dim i, j As Integer fpi = 3.1415926f / 180 stpx = 360.0f / [N] stpy = 360.0f / [M] For i = 0 To [N] xray (i) = i * stpx For j = 0 To [M] yray (j) = j * stpy zmat (i,j) = 2 * Math.Sin (xray(i) * fpi) * Math.Sin (yray(j) * fpi) Next j Next i dislin.scrmod ("revers") dislin.metafl ("xwin") 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.shdmod ("smooth", "surface") dislin.surshd (xray, [N] + 1, yray, [M] + 1, zmat) dislin.disfin () End Sub End Class
Contour Plot / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Const [N] As Integer = 60 Const [M] As Integer = 50 Dim xray([N]) As Single Dim yray([M]) As Single Dim zmat([N],[M]) As Single Dim stpx, stpy, fpi As Single Dim ctit1 As String = "Contour Plot" Dim ctit2 As String = "F(X,Y) = 2 * SIN(X) * SIN (Y)" Dim zlev As Single Dim i, j As Integer fpi = 3.1415926f / 180 stpx = 360.0f / [N] stpy = 360.0f / [M] For i = 0 To [N] xray (i) = i * stpx For j = 0 To [M] yray (j) = j * stpy zmat (i,j) = 2 * Math.Sin (xray(i) * fpi) * Math.Sin (yray(j) * fpi) Next j Next i dislin.scrmod ("revers") dislin.metafl ("cons") dislin.setpag ("da4p") dislin.disini () dislin.pagera () dislin.complx () dislin.titlin (ctit1, 2) dislin.titlin (ctit2, 4) dislin.axspos (450, 2670) dislin.intax () dislin.name ("X-axis", "X") dislin.name ("Y-axis", "Y") dislin.graf (0.0, 360.0, 0.0, 90.0, 0.0, 360.0, 0.0, 90.0) dislin.height (30) For i = 0 To 8 zlev = -2.0 + i * 0.5 If i = 4 then dislin.labels ("NONE", "CONTUR") Else dislin.labels ("FLOAT", "CONTUR") End If dislin.setclr ((i+1) * 28) dislin.contur (xray, n + 1, yray, m + 1, zmat, zlev) Next i dislin.color ("FORE") dislin.height (50) dislin.title () dislin.disfin () End Sub End Class
Shaded Contour Plot / Visual Basic
Imports System Imports System.Text Public Class App Public Shared Sub Main () Const [N] As Integer = 50 Const [M] As Integer = 80 Dim xray([N]) As Single Dim yray([M]) As Single Dim zmat([N],[M]) As Single Dim zlev(11) As Single Dim stpx, stpy, x, x2, y, y2 As Single Dim ctit1 As String = "Shaded Contour Plot" Dim ctit2 As String = "F(X,Y) = (X[2$ - 1)[2$ + (Y[2$ - 1)[2$" Dim i, j As Integer stpx = 1.6 / n stpy = 1.6 / n For i = 0 To [N] xray (i) = i * stpx x = xray (i) * xray (i) - 1.0 x2 = x * x For j = 0 To [M] yray (j) = j * stpy y = yray (j) * yray (j) - 1.0 y2 = y * y zmat (i,j) = x2 + y2 Next j Next i dislin.scrmod ("revers") dislin.metafl ("cons") dislin.setpag ("da4p") dislin.disini () dislin.pagera () dislin.complx () dislin.mixalf () dislin.titlin (ctit1, 2) dislin.titlin (ctit2, 4) dislin.axspos (450, 2670) dislin.name ("X-axis", "X") dislin.name ("Y-axis", "Y") dislin.shdmod ("poly", "contur") dislin.graf (0.0, 1.6, 0.0, 0.2, 0.0, 1.6, 0.0, 0.2) For i = 0 To 11 zlev(11-i) = 0.1 + i * 0.1 Next i dislin.conshd (xray, n + 1, yray, m + 1, zmat, zlev, 12) dislin.height (50) dislin.title () dislin.disfin () End Sub End Class
Shaded Surface / Contour Plot / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim n As INTEGER = 50 Dim m As INTEGER = 50 Dim nlev As INTEGER = 19 Dim x(n), y(m), zmat (n,m), zlev (nlev) As Single Dim ctit1 As String = "Shaded Surface / Contour Plot" Dim ctit2 As String = "F(X,Y) = 2 * SIN(X) * SIN (Y)" Dim fpi, stpx, stpy, stp As Single Dim i, j As Integer fpi = 3.1415927 / 180.0 stpx = 360.0 / n stpy = 360.0 / m For i = 0 To n x(i) = i * stpx For j = 0 To m y(j) = j * stpy zmat(i,j) = 2 * Math.Sin(x(i) * fpi) * Math.Sin(y(j) * fpi) Next j Next i dislin.scrmod ("revers") dislin.metafl ("cons") dislin.setpag ("da4p") dislin.disini () dislin.pagera () dislin.hwfont () dislin.titlin (ctit1, 2) dislin.titlin (ctit2, 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.graf3d (0.0, 360.0, 0.0, 90.0, 0.0, 360.0, 0.0, 90.0, _ -2.0, 2.0, -2.0, 1.0) dislin.height (50) dislin.title () dislin.grfini (-1.0, -1.0, -1.0, 1.0, -1.0, -1.0, 1.0, 1.0, -1.0) dislin.nograf () dislin.graf (0.0, 360.0, 0.0, 90.0, 0.0, 360.0, 0.0, 90.0) stp = 4.0 / nlev For i = 0 To nlev zlev(i) = -2.0 + i * stp Next i dislin.conshd (x, n + 1, y, m + 1, zmat, zlev, nlev + 1) dislin.box2d () dislin.reset ("nograf") dislin.grffin () dislin.shdmod ("smooth", "surface") dislin.surshd (x, n + 1, y, m + 1, zmat) dislin.disfin () End Sub End Class
Spheres and Tubes / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim x () As Single = {10.0, 20.0, 10.0, 20.0, 5.0, 15.0, 25.0, 5.0, 15.0, _ 25.0, 5.0, 15.0, 25.0, 10.0, 20.0, 10.0, 20.0} Dim y () As Single = {10.0, 10.0, 20.0, 20.0, 5.0, 5.0, 5.0, 15.0, 15.0, _ 15.0, 25.0, 25.0, 25.0, 10.0, 10.0, 20.0, 20.0} Dim z () As Single = {5.0, 5.0, 5.0, 5.0, 15.0, 15.0, 15.0, 15.0, 15.0, _ 15.0, 15.0, 15.0, 15.0, 25.0, 25.0, 25.0, 25.0} Dim idx () As Integer = {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} Dim iret, i, j1, j2 As Integer dislin.setpag ("da4p") dislin.scrmod ("revers") dislin.metafl ("cons") dislin.disini () dislin.pagera () dislin.hwfont () dislin.light ("on") dislin.matop3 (0.02, 0.02, 0.02, "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.0, 30.0, 0.0, 5.0, 0.0, 30.0, 0.0, 5.0, _ 0.0, 30.0, 0.0, 5.0) dislin.title () dislin.shdmod ("smooth", "surface") iret = dislin.zbfini () dislin.matop3 (1.0, 0.0, 0.0, "diffuse") For i = 0 To 16 dislin.sphe3d (x(i), y(i), z(i), 2.0, 50, 25) Next i dislin.matop3 (0.0, 1.0, 0.0, "diffuse") For i = 0 To 55 Step 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.5, 5, 5) Next i dislin.zbffin () dislin.disfin () End Sub End Class
Some Solids / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim iret As Integer dislin.setpag ("da4p") dislin.scrmod ("revers") dislin.metafl ("cons") dislin.disini () dislin.pagera () dislin.hwfont () dislin.light ("on") dislin.litop3(1,0.5,0.5,0.5,"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.0, 5.0, -5.0, 2.0, -5.0, 5.0, -5.0, 2.0, _ -5.0, 5.0, -5.0, 2.0) dislin.title () dislin.shdmod ("smooth", "surface") iret = dislin.zbfini() dislin.matop3 (1.0, 0.5, 0.0, "diffuse") dislin.tube3d (-3.0, -3.0, 8.0, 2.0, 3.0, 5.5, 1.0, 40, 20) dislin.rot3d (-60.0, 0.0, 0.0) dislin.matop3 (1.0, 0.0, 1.0, "diffuse") dislin.setfce ("bottom") dislin.matop3 (1.0, 0.0, 0.0, "diffuse") dislin.cone3d (-3.0, -3.0, 3.5, 2.0, 3.0, 3.0, 40, 20) dislin.setfce ("top") dislin.rot3d (0.0, 0.0, 0.0) dislin.matop3 (0.0, 1.0, 1.0, "diffuse") dislin.plat3d (4.0, 4.0, 3.0, 3.0, "icos") dislin.rot3d (0.0, 0.0, 0.0) dislin.matop3 (1.0, 1.0, 0.0, "diffuse") dislin.sphe3d (0.0, 0.0, 0.0, 3.0, 40, 20) dislin.rot3d (0.0, 0.0, -20.0) dislin.matop3 (0.0, 0.0, 1.0, "diffuse") dislin.quad3d (-4.0, -4.0, -3.0, 3.0, 3.0, 3.0) dislin.rot3d (0.0, 0.0, 30.0) dislin.matop3 (1.0, 0.3, 0.3, "diffuse") dislin.pyra3d (-2.0, -5.0, -10.0, 3.0, 5.0, 5.0, 4) dislin.rot3d (0.0, 0.0, 0.0) dislin.matop3 (1.0, 0.0, 0.0, "diffuse") dislin.torus3d (7.0, -3.0, -2.0, 1.5, 3.5, 1.5, 0.0, 360.0, 40, 20) dislin.rot3d (0.0, 90.0, 0.0) dislin.matop3 (0.0, 1.0, 0.0, "diffuse") dislin.torus3d (7.0, -5.0, -2.0, 1.5, 3.5, 1.5, 0.0, 360.0, 40, 20) dislin.zbffin () dislin.disfin () End Sub End Class
Map Plot / Visual Basic
Imports System Public Class App Public Shared Sub 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 () End Sub End Class
TeX Instructions for Mathematical Formulas / Visual Basic
Imports System Public Class App Public Shared Sub Main () Dim ctit As String = "TeX Instructions for Mathematical Formulas" Dim nl As Integer dislin.setpag ("da4p") dislin.scrmod ("revers") dislin.metafl ("cons") dislin.disini () dislin.pagera () dislin.complx () dislin.height (40) nl = dislin.nlmess (ctit) dislin.messag (ctit, (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 () End Sub End Class

News
Support for Python 3.11 and Windows
28. July 2023
Bug fix for the X11 distributions
22. July 2023
Upgrade 11.5.1
25. April 2023
Support for Linux 64-bit on IBM z series
30. October 2022
Support for MingW 64-bit UCRT runtime environment
28. September 2022
Release 11.5
15. March 2022
Release 11.4
15. March 2021
Support for Free Pascal 64-bit on Windows
22. July 2020
Upgrade 11.3.3
28. June 2020
Upgrade 11.3.2
19. May 2020
DISLIN Book Version 11 is available
8. March 2017
28. July 2023
Bug fix for the X11 distributions
22. July 2023
Upgrade 11.5.1
25. April 2023
Support for Linux 64-bit on IBM z series
30. October 2022
Support for MingW 64-bit UCRT runtime environment
28. September 2022
Release 11.5
15. March 2022
Release 11.4
15. March 2021
Support for Free Pascal 64-bit on Windows
22. July 2020
Upgrade 11.3.3
28. June 2020
Upgrade 11.3.2
19. May 2020
DISLIN Book Version 11 is available
8. March 2017