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