Imports GinoGraphics
Public Class Form1
Inherits System.Windows.Forms.Form
#Region " Windows Form Designer generated code "
Public Sub New()
MyBase.New()
'This call is required by the Windows Form Designer.
InitializeComponent()
'Add any initialization after the InitializeComponent() call
End Sub
'Form overrides dispose to clean up the component list.
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Required by the Windows Form Designer
Private components As System.ComponentModel.IContainer
'NOTE: The following procedure is required by the Windows Form Designer
'It can be modified using the Windows Form Designer.
'Do not modify it using the code editor.
Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox
Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox
Friend WithEvents Panel1 As System.Windows.Forms.Panel
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents ComboBox2 As System.Windows.Forms.ComboBox
Friend WithEvents Label2 As System.Windows.Forms.Label
Friend WithEvents NumericUpDown1 As System.Windows.Forms.NumericUpDown
Friend WithEvents Label3 As System.Windows.Forms.Label
Friend WithEvents NumericUpDown2 As System.Windows.Forms.NumericUpDown
Friend WithEvents Label4 As System.Windows.Forms.Label
Private Sub InitializeComponent()
Dim resources As System.Resources.ResourceManager = New System.Resources.ResourceManager(GetType(Form1))
Me.PictureBox1 = New System.Windows.Forms.PictureBox()
Me.ComboBox1 = New System.Windows.Forms.ComboBox()
Me.Panel1 = New System.Windows.Forms.Panel()
Me.Label4 = New System.Windows.Forms.Label()
Me.NumericUpDown2 = New System.Windows.Forms.NumericUpDown()
Me.Label3 = New System.Windows.Forms.Label()
Me.NumericUpDown1 = New System.Windows.Forms.NumericUpDown()
Me.Label2 = New System.Windows.Forms.Label()
Me.ComboBox2 = New System.Windows.Forms.ComboBox()
Me.Label1 = New System.Windows.Forms.Label()
Me.Panel1.SuspendLayout()
CType(Me.NumericUpDown2, System.ComponentModel.ISupportInitialize).BeginInit()
CType(Me.NumericUpDown1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'PictureBox1
'
Me.PictureBox1.BackColor = System.Drawing.SystemColors.Control
Me.PictureBox1.Dock = System.Windows.Forms.DockStyle.Fill
Me.PictureBox1.Name = "PictureBox1"
Me.PictureBox1.Size = New System.Drawing.Size(424, 293)
Me.PictureBox1.TabIndex = 0
Me.PictureBox1.TabStop = False
'
'ComboBox1
'
Me.ComboBox1.Items.AddRange(New Object() {"Sphere", "Cone", "Cylinder"})
Me.ComboBox1.Location = New System.Drawing.Point(8, 40)
Me.ComboBox1.Name = "ComboBox1"
Me.ComboBox1.Size = New System.Drawing.Size(121, 21)
Me.ComboBox1.TabIndex = 5
Me.ComboBox1.Text = "Sphere"
'
'Panel1
'
Me.Panel1.BackgroundImage = CType(resources.GetObject("Panel1.BackgroundImage"), System.Drawing.Bitmap)
Me.Panel1.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D
Me.Panel1.Controls.AddRange(New System.Windows.Forms.Control() {Me.Label4, Me.NumericUpDown2, Me.Label3, Me.NumericUpDown1, Me.Label2, Me.ComboBox2, Me.Label1, Me.ComboBox1})
Me.Panel1.Dock = System.Windows.Forms.DockStyle.Right
Me.Panel1.Location = New System.Drawing.Point(280, 0)
Me.Panel1.Name = "Panel1"
Me.Panel1.Size = New System.Drawing.Size(144, 293)
Me.Panel1.TabIndex = 6
'
'Label4
'
Me.Label4.BackColor = System.Drawing.Color.Transparent
Me.Label4.ForeColor = System.Drawing.SystemColors.ActiveCaptionText
Me.Label4.Location = New System.Drawing.Point(8, 194)
Me.Label4.Name = "Label4"
Me.Label4.Size = New System.Drawing.Size(72, 16)
Me.Label4.TabIndex = 12
Me.Label4.Text = "V Complexity"
'
'NumericUpDown2
'
Me.NumericUpDown2.Location = New System.Drawing.Point(88, 192)
Me.NumericUpDown2.Name = "NumericUpDown2"
Me.NumericUpDown2.Size = New System.Drawing.Size(40, 20)
Me.NumericUpDown2.TabIndex = 11
Me.NumericUpDown2.Value = New Decimal(New Integer() {10, 0, 0, 0})
'
'Label3
'
Me.Label3.BackColor = System.Drawing.Color.Transparent
Me.Label3.ForeColor = System.Drawing.SystemColors.ActiveCaptionText
Me.Label3.Location = New System.Drawing.Point(8, 152)
Me.Label3.Name = "Label3"
Me.Label3.Size = New System.Drawing.Size(72, 24)
Me.Label3.TabIndex = 10
Me.Label3.Text = "U Complexity"
'
'NumericUpDown1
'
Me.NumericUpDown1.Location = New System.Drawing.Point(88, 152)
Me.NumericUpDown1.Name = "NumericUpDown1"
Me.NumericUpDown1.Size = New System.Drawing.Size(40, 20)
Me.NumericUpDown1.TabIndex = 9
Me.NumericUpDown1.Value = New Decimal(New Integer() {10, 0, 0, 0})
'
'Label2
'
Me.Label2.BackColor = System.Drawing.Color.Transparent
Me.Label2.ForeColor = System.Drawing.SystemColors.ActiveCaptionText
Me.Label2.Location = New System.Drawing.Point(8, 85)
Me.Label2.Name = "Label2"
Me.Label2.Size = New System.Drawing.Size(120, 11)
Me.Label2.TabIndex = 8
Me.Label2.Text = "Select Colour:"
'
'ComboBox2
'
Me.ComboBox2.Items.AddRange(New Object() {"Black", "Red", "Orange", "Yellow", "Green", "Cyan", "Blue", "Magenta", "Brown", "White"})
Me.ComboBox2.Location = New System.Drawing.Point(8, 104)
Me.ComboBox2.Name = "ComboBox2"
Me.ComboBox2.Size = New System.Drawing.Size(120, 21)
Me.ComboBox2.TabIndex = 7
Me.ComboBox2.Text = "Black"
'
'Label1
'
Me.Label1.BackColor = System.Drawing.Color.Transparent
Me.Label1.ForeColor = System.Drawing.SystemColors.ActiveCaptionText
Me.Label1.Location = New System.Drawing.Point(8, 21)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(128, 11)
Me.Label1.TabIndex = 6
Me.Label1.Text = "Select 3D shape:"
'
'Form1
'
Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
Me.ClientSize = New System.Drawing.Size(424, 293)
Me.Controls.AddRange(New System.Windows.Forms.Control() {Me.Panel1, Me.PictureBox1})
Me.Name = "Form1"
Me.Text = "3D Shapes"
Me.Panel1.ResumeLayout(False)
CType(Me.NumericUpDown2, System.ComponentModel.ISupportInitialize).EndInit()
CType(Me.NumericUpDown1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub PictureBox1_Paint(ByVal sender As Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
Dim NUL, i As Integer
Dim factor, xmov As Double
Dim hdc As IntPtr
Dim winsize As GDIM
Dim wintyp As Integer
Dim Uvec As New GPOINT3(5.0, 30.0, 5.0)
Dim Vvec As New GPOINT3(5.0, 30.0, 5.0)
NUL = 0
hdc = e.Graphics.GetHdc
Gino.OpenGino()
Gino.Mwinao(NUL, hdc.ToInt32)
Gino.EnqDrawingLimits(winsize, wintyp)
factor = Math.Min(winsize.xpap / 100.0, winsize.ypap / 100.0)
Gino.DefinePictureUnits(factor)
Gino.SetLineColour(ComboBox2.SelectedIndex + 1)
Gino.SetFacetFillStyle(-1)
If ComboBox1.SelectedItem = "Sphere" Then
Gino.DrawBezierSphere(50.0, 50.0, 50.0, 25.0, NumericUpDown1.Value, NumericUpDown2.Value, 0.0, 0.0, 0.0)
End If
If ComboBox1.SelectedItem = "Cone" Then
Gino.DrawCone(50.0, 50.0, 50.0, 25.0, 1.0, 30.0, 0.0, 0.0, 0.0, Vvec, VectorType.GRELATIVE, NumericUpDown1.Value, NumericUpDown2.Value)
End If
If ComboBox1.SelectedItem = "Cylinder" Then
Gino.DrawCylinder(50.0, 50.0, 50.0, 25.0, 30.0, 0.0, 0.0, 0.0, Vvec, VectorType.GRELATIVE, NumericUpDown1.Value, NumericUpDown2.Value)
End If
Gino.FlushGraphics()
e.Graphics.ReleaseHdc(hdc)
End Sub
Private Sub CheckBox1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Refresh()
End Sub
Private Sub CheckBox2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Refresh()
End Sub
Private Sub RadioButton1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Refresh()
End Sub
Private Sub RadioButton2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Refresh()
End Sub
Private Sub PictureBox1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles PictureBox1.Resize
PictureBox1.Refresh()
End Sub
Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown
End Sub
Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged
PictureBox1.Refresh()
End Sub
Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged
PictureBox1.Refresh()
End Sub
Private Sub NumericUpDown1_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NumericUpDown1.ValueChanged
PictureBox1.Refresh()
End Sub
Private Sub NumericUpDown2_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NumericUpDown2.ValueChanged
PictureBox1.Refresh()
End Sub
Private Sub NumericUpDown1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles NumericUpDown1.TextChanged
PictureBox1.Refresh()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Refresh()
End Sub
End Class