usb_a_rcpt_smt.fpd 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. /* MACHINE-GENERATED ! */
  2. frame pad {
  3. table
  4. { h, w }
  5. { 2.82mm, 0.8mm }
  6. __0: vec @(w/2, h/2)
  7. __1: vec @(-w/2, -h/2)
  8. pad "$name" . __0
  9. }
  10. frame pads {
  11. table
  12. { name, x }
  13. { 1, -3.5mm }
  14. { 2, -1mm }
  15. { 3, 1mm }
  16. { 4, 3.5mm }
  17. __0: vec @(0mm, A)
  18. __1: vec .(x, 0mm)
  19. frame pad .
  20. }
  21. frame shield {
  22. table
  23. { name, x }
  24. { 5, -B/2 }
  25. { 6, B/2 }
  26. set d = 2.3mm
  27. set ratio = 2
  28. __0: vec @(x, 0mm)
  29. __1: vec .(d/2, d/2)
  30. __2: vec __0(d/2*ratio, d/2*ratio)
  31. __3: vec __0(-d/2, -d/2)
  32. hole . __1
  33. __4: vec __0(-d/2*ratio, -d/2*ratio)
  34. rpad "$name" . __2
  35. }
  36. frame corner {
  37. table
  38. { dx }
  39. { -1 }
  40. { 1 }
  41. __0: vec @(dx*13.9mm/2, 14.15mm-10.3mm)
  42. __1: vec .(-dx*1mm, 0mm)
  43. line __0 . w
  44. __2: vec __0(0mm, -1mm)
  45. line __0 . w
  46. }
  47. frame edge {
  48. __0: vec @(0mm, -10.3mm)
  49. __1: vec .(mouth/2, 0mm)
  50. __2: vec __0(-mouth/2, 0mm)
  51. line . __1 w
  52. }
  53. package "USB-A-RCPT-SMT"
  54. unit auto
  55. table
  56. { A, B }
  57. { 3.71mm, 13.14mm }
  58. set mouth = 14.5mm
  59. set w = 5mil
  60. frame edge @
  61. frame pads @
  62. frame shield @
  63. frame corner @
  64. measx pads.__1 >> pads.__1 3mm
  65. measx pads.__1 -> pads.__1 2.5mm
  66. measx pad.__1 -> pad.__0 3mm
  67. measy pad.__1 -> pad.__0 0.5mm
  68. measx shield.__0 >> shield.__0 0mm
  69. measy edge.__1 >> shield.__0 -2.32mm
  70. measy pads.__0 << shield.__0 -3mm
  71. measx edge.__2 >> edge.__1 1mm
  72. measx corner.__0 >> corner.__0 4mm
  73. measy edge.__2 -> corner.__0 2mm