summaryrefslogtreecommitdiff
path: root/Assets/ThirdParty/AmplifyShaderEditor/Plugins/Editor/Wires/WireBezierReference.cs
blob: 6753ff02b470c4f14e9dc025bc17877609504b9b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
using UnityEngine;

namespace AmplifyShaderEditor
{
	[System.Serializable]
	public class WireBezierReference
	{
		private Rect m_boundingBox;
		private int m_inNodeId;
		private int m_inPortId;
		private int m_outNodeId;
		private int m_outPortId;

		public WireBezierReference()
		{
			m_boundingBox = new Rect();
			m_inNodeId = -1;
			m_inPortId = -1;
			m_outNodeId = -1;
			m_outPortId = -1;
		}

		public WireBezierReference( ref Rect area, int inNodeId, int inPortId, int outNodeId, int outPortId )
		{
			UpdateInfo( ref area, inNodeId, inPortId, outNodeId, outPortId );
		}

		public void UpdateInfo( ref Rect area, int inNodeId, int inPortId, int outNodeId, int outPortId )
		{
			m_boundingBox = area;
			m_inNodeId = inNodeId;
			m_inPortId = inPortId;
			m_outNodeId = outNodeId;
			m_outPortId = outPortId;
		}

		public bool Contains( Vector2 position )
		{
			return m_boundingBox.Contains( position );
		}

		public void DebugDraw()
		{
			GUI.Label( m_boundingBox, string.Empty, UIUtils.GetCustomStyle( CustomStyle.MainCanvasTitle ));
		}

		public override string ToString()
		{
			return string.Format( "In node: {0} port: {1} -> Out node: {2} port: {3}", m_inNodeId, m_inPortId, m_outNodeId, m_outPortId );
		}

		public Rect BoundingBox { get { return m_boundingBox; } }
		public int InNodeId { get { return m_inNodeId; } }
		public int InPortId { get { return m_inPortId; } }
		public int OutNodeId { get { return m_outNodeId; } }
		public int OutPortId { get { return m_outPortId; } }
	}
}