ObjectVertexSnapSessionRenderer.cs 985 B

12345678910111213141516171819202122232425262728
  1. #if UNITY_EDITOR
  2. using UnityEngine;
  3. namespace O3DWB
  4. {
  5. public class ObjectVertexSnapSessionRenderer
  6. {
  7. #region Public Methods
  8. public void RenderGizmos(ObjectVertexSnapSession session, ObjectVertexSnapSessionRenderSettings renderSettings)
  9. {
  10. if (!session.IsActive) return;
  11. if(session.SourceGameObject != null || session.HasMultipleSourceObjects)
  12. {
  13. if (renderSettings.RenderSourceVertex)
  14. {
  15. Vector2 vertexScreenPos = Vector3Extensions.WorldToScreenPoint(session.SourceVertex);
  16. Circle2D circle = new Circle2D(vertexScreenPos, renderSettings.SourceVertexRadiusInPixels);
  17. GizmosEx.Render2DFilledCircle(circle, renderSettings.SourceVertexFillColor);
  18. GizmosEx.Render2DCircleBorderLines(circle, renderSettings.SourceVertexBorderColor);
  19. }
  20. }
  21. }
  22. #endregion
  23. }
  24. }
  25. #endif