Advertisement
Guest User

Untitled

a guest
Jun 1st, 2016
61
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.78 KB | None | 0 0
  1. private IEnumerator UpdateMesh()
  2. {
  3. while (true)
  4. {
  5. Vector3 min = Vector3.zero;
  6. Vector3 max = Vector3.zero;
  7.  
  8. var filters = mapping.GetMeshFilters();
  9.  
  10. text.text = "";
  11. text.text += string.Format("Mesh Count : {0}\n", filters.Count);
  12.  
  13. foreach (var filter in filters)
  14. {
  15.  
  16. var mesh = filter.sharedMesh;
  17.  
  18. foreach (var vertex in mesh.vertices)
  19. {
  20. // ローカル座標をワールド座標に変換する
  21. var v = filter.transform.TransformPoint(vertex);
  22.  
  23. // 最小、最大値を取得
  24. min.x = Mathf.Min(v.x, min.x);
  25. min.y = Mathf.Min(v.y, min.y);
  26. min.z = Mathf.Min(v.z, min.z);
  27.  
  28. max.x = Mathf.Max(v.x, max.x);
  29. max.y = Mathf.Max(v.y, max.y);
  30. max.z = Mathf.Max(v.z, max.z);
  31. }
  32. }
  33.  
  34. text.text += string.Format("Min Point : {0},{1},{2}\n", min.x, min.y, min.z);
  35. text.text += string.Format("Max Point : {0},{1},{2}\n", max.x, max.y, max.z);
  36.  
  37. cubes[0].transform.localPosition = new Vector3(min.x, min.y, min.z);
  38. cubes[1].transform.localPosition = new Vector3(min.x, min.y, max.z);
  39. cubes[2].transform.localPosition = new Vector3(max.x, min.y, max.z);
  40. cubes[3].transform.localPosition = new Vector3(max.x, min.y, min.z);
  41.  
  42. cubes[4].transform.localPosition = new Vector3(min.x, max.y, min.z);
  43. cubes[5].transform.localPosition = new Vector3(min.x, max.y, max.z);
  44. cubes[6].transform.localPosition = new Vector3(max.x, max.y, max.z);
  45. cubes[7].transform.localPosition = new Vector3(max.x, max.y, min.z);
  46.  
  47. yield return SaveMesh();
  48.  
  49. yield return new WaitForSeconds(1);
  50. }
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement