Архитектурный шаблон "Мрак в моделях" на нескольких языках и платформах
Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
pirms 11 mēnešiem
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. protocol Context {
  2. var itemsCount: Float { get }
  3. }
  4. protocol Position {
  5. var x: Float { get }
  6. var y: Float { get }
  7. }
  8. func memoryGap() -> Float {
  9. return memorySide() + memorySpace()
  10. }
  11. func memoryGroups(c: Context) -> [Float: Float] {
  12. var items: [Float: Float] = [:]
  13. // @ts-ignore
  14. let ids = utsIndexArray(c.itemsCount);
  15. ids.forEach { i in
  16. // @ts-ignore
  17. items[Float(i)] = utsFloor(Float(i) / 2)
  18. }
  19. return items;
  20. }
  21. func memorySide() -> Float {
  22. return 50
  23. }
  24. func memorySpace() -> Float {
  25. return 20
  26. }
  27. func memoryItemPositions(c: Context) -> [Position] {
  28. var pos: [Position] = []
  29. // @ts-ignore
  30. let ids = utsIndexArray(c.itemsCount);
  31. ids.forEach { i in
  32. // @ts-ignore
  33. let row = utsFloor(Float(i) / 4)
  34. let x = memoryGap() + (Float(i) - row * 4) * memoryGap()
  35. let y = memoryGap() + row * memoryGap()
  36. // @ts-ignore
  37. pos.append(memoryCreatePosition(x, y))
  38. }
  39. return pos
  40. }