| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 | using System.Collections;using System.Collections.Generic;using UnityEngine;using UnityEditor;using UnityEditor.UIElements;using UnityEditor.Experimental.GraphView;using UnityEngine.UIElements;using GraphProcessor;[NodeCustomEditor(typeof(CircleRadians))]public class CircleRadiansView : BaseNodeView{	CircleRadians	node;	VisualElement	listContainer;	public override void Enable()	{		node = nodeTarget as CircleRadians;		listContainer = new VisualElement();        // Create your fields using node's variables and add them to the controlsContainer		controlsContainer.Add(listContainer);		onPortConnected += OnPortUpdate;		onPortDisconnected += OnPortUpdate;		UpdateOutputRadians(GetFirstPortViewFromFieldName("outputRadians").connectionCount);	}	void UpdateOutputRadians(int count)	{		node.outputRadians = new List<float>();		listContainer.Clear();		for (int i = 0; i < count; i++)		{			float r = (Mathf.PI * 2 / count) * i;			node.outputRadians.Add(r);			listContainer.Add(new Label(r.ToString("F3")));		}	}	public void OnPortUpdate(PortView port)	{		// There is only one port on this node so it can only be the output		UpdateOutputRadians(port.connectionCount);	}}
 |