Advertisement
Guest User

Untitled

a guest
Nov 13th, 2018
78
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. Option Explicit
  2.  
  3. Dim swApp As Object
  4. Dim Part As Object
  5.  
  6. Dim tabx(1000) As Double
  7. Dim taby(1000) As Double
  8. Dim tabz(1000) As Double
  9.  
  10. Dim length As Double
  11. Dim rayon As Double
  12. Dim Rayon2 As Double
  13. Dim n As Integer
  14. Dim j As Double
  15. Dim dist As Double
  16.  
  17. Dim bolle As Boolean
  18.  
  19.  
  20.  
  21. Sub main()
  22.  
  23. Set swApp = Application.SldWorks
  24. Set Part = swApp.ActiveDoc
  25. Part.SketchManager.Insert3DSketch (True) 'Esquisse 3D
  26. Part.SketchManager.AddToDB = True
  27.  
  28. ''length = l 'Longueur du VER
  29. 'nombre = n
  30.  
  31. n = InputBox("Entrer la valeur de n")
  32. length = InputBox("Entrer la valeur de l") / 1000
  33. rayon = InputBox("Entrer la valeur des particules") / 1000
  34. Rayon2 = rayon * 1.2
  35.  
  36. Dim i As Integer
  37. i = 1
  38. For i = 0 To n - 1 '10= NB inclusions (à modifier)
  39. Randomize Timer 'Gener. Aléatoire
  40. tabx(i) = Rnd * (length - Rayon2 * 2) + Rayon2  'Position x
  41. taby(i) = Rnd * (length - Rayon2 * 2) + Rayon2  'Position y
  42. tabz(i) = Rnd * (length - Rayon2 * 2) + Rayon2  'Position z
  43.  
  44. ''probleme 2
  45. bolle = 0
  46. For j = 1 To i - 1
  47. dist = Sqrt((tabx(i) - tabx(j) ^ 2 + (taby(i) - taby(j)) ^ 2 + (tabz(i) - tabz(j)) ^ 2))
  48. If (dist < 2.2 * rayon) Then bolle = 1
  49. Next j
  50. If (bolle = 0) Then
  51.  
  52.  
  53. Dim skPoint As Object
  54. Set skPoint = Part.SketchManager.CreatePoint(tabx(i), taby(i), tabz(i)) 'Creation du point
  55. ''MsgBox tabx(i) & " " & taby(i) & " " & tabz(i)
  56.  
  57. End If
  58.  
  59. Next i
  60.  
  61.  
  62. Part.SketchManager.InsertSketch (True)
  63. Part.SketchManager.AddToDB = False
  64.  
  65. End Sub
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement