Guest User

Untitled

a guest
Mar 23rd, 2018
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.84 KB | None | 0 0
  1. (0, 0, 16), (100, 0, 16), (100, 100, 12), (50, 50, 24), (0, 100, 12)
  2.  
  3. Option Explicit On
  4. Option Strict On
  5. Option Infer On
  6. Option Compare Text
  7. Imports System.IO
  8. Module Module1
  9. Const INPUT_PATH As String = "C:Tempgearinput.txt"
  10. Public delimiter() As String = {"),"}
  11. Sub Main()
  12. Dim inputData() As String
  13. inputData = GetInput()
  14. Dim sprocketData() As String = Custom_Split(inputData(0))
  15. Dim paintingdata(,) As Integer = StringToIntArray(sprocketData)
  16. Dim targetForm As New Form1
  17. targetForm.Visible = True
  18. targetForm.DrawSprockets(targetForm, paintingdata)
  19. End Sub
  20. Private Function Custom_Split(ByVal stringToSplit As String) As String()
  21. stringToSplit = stringToSplit.Replace("(", String.Empty)
  22. stringToSplit = stringToSplit.Replace(" ", String.Empty)
  23. Dim stringArray() As String = stringToSplit.Split(delimiter, StringSplitOptions.RemoveEmptyEntries)
  24. stringArray(stringArray.Length - 1) = stringArray(stringArray.Length - 1).Replace(")", String.Empty)
  25. Return stringArray
  26. End Function
  27. Private Function StringToIntArray(ByVal sprocketdata() As String) As Integer(,)
  28. Dim firstDimensionSize As Integer = sprocketdata.GetUpperBound(0)
  29. Dim integerArray(firstDimensionSize, 2) As Integer
  30. Dim tempString() As String
  31. For i As Integer = 0 To firstDimensionSize
  32. tempString = sprocketdata(i).Split(","c)
  33. For j = 0 To 2
  34. integerArray(i, j) = Convert.ToInt32(tempString(j))
  35. Next
  36. Next
  37. Return integerArray
  38. End Function
  39.  
  40. Private Function GetInput() As String()
  41. Return File.ReadAllLines(INPUT_PATH)
  42. End Function
  43. End Module
  44.  
  45. Imports System.Drawing
  46. Imports System.Windows.Forms
  47.  
  48. Public Class Form1
  49. Const BUFFER As Integer = 20
  50. Dim xValue As Integer
  51. Dim yValue As Integer
  52. Dim pRadius As Integer
  53. Dim paintData(,) As Integer
  54. Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) Handles MyBase.Load
  55.  
  56. End Sub
  57. Public Shared Sub DrawSprockets(ByVal myForm As Form1, ByVal dataArray(,) As Integer)
  58. myForm.paintData = dataArray
  59. For i As Integer = 0 To myForm.paintData.GetUpperBound(0)
  60. myForm.paintData(i, 0) += 10
  61. myForm.paintData(i, 1) += 10
  62. Next
  63. myForm.Refresh()
  64. End Sub
  65.  
  66.  
  67. Private Sub Form1_Paint(ByVal sender As Object, e As PaintEventArgs) Handles MyBase.Paint
  68. Dim myPen As Pen
  69.  
  70. myPen = New Pen(Brushes.Black)
  71.  
  72. For i As Integer = 0 To paintData.GetUpperBound(0)
  73. e.Graphics.DrawEllipse(myPen, New Rectangle(paintData(i, 0), paintData(i, 1), paintData(i, 2), paintData(i, 2)))
  74. e.Graphics.FillEllipse(Brushes.Black, New Rectangle(paintData(i, 0), paintData(i, 1), paintData(i, 2), paintData(i, 2)))
  75.  
  76. Next
  77.  
  78. End Sub
  79.  
  80. End Class
Add Comment
Please, Sign In to add comment