Advertisement
Guest User

Untitled

a guest
Jun 16th, 2019
72
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.13 KB | None | 0 0
  1. private fun loadData() {
  2. ...
  3. App.books = makeGrid(bookModels)
  4. }
  5.  
  6. val offsets = listOf(
  7. Pair(-1.5f, -1.5f), Pair(-0.5f, -1.5f), Pair(0.5f, -1.5f), Pair(1.5f, -1.5f),
  8. Pair(-1.5f, -0.5f), Pair(-0.5f, -0.5f), Pair(0.5f, -0.5f), Pair(1.5f, -0.5f),
  9. Pair(-1.5f, 0.5f), Pair(-0.5f, 0.5f), Pair(0.5f, 0.5f), Pair(1.5f, 0.5f),
  10. Pair(-1.5f, 1.5f), Pair(-0.5f, 1.5f), Pair(0.5f, 1.5f), Pair(1.5f, 1.5f)
  11. )
  12.  
  13. fun makeGrid(data: List<BookModel>): MutableList<ARBook> {
  14. val res = mutableListOf<ARBook>()
  15. var x: Float
  16. var z: Float
  17. var zLayer = 0
  18. var i = 0
  19.  
  20. val elevationMap = MutableList(16) { 0f }
  21.  
  22. for (book in data) {
  23. x = offsets[i].first * (paperbackWidth + 0.03f)
  24. z = offsets[i].second * (paperbackHeight + 0.03f)
  25.  
  26. res.add(
  27. ARBook(
  28. makeSize(book.pages),
  29. Vector3(x, elevationMap[i], z),
  30. makeAngle(),
  31. book.cover
  32. )
  33. )
  34.  
  35. elevationMap[i] += res[res.size - 1].size.y
  36.  
  37. if (i == 15) {
  38. zLayer++
  39. i = 0
  40. } else {
  41. i++
  42. }
  43. }
  44. return res
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement