From 8e13e7e2874adc8982e16d1d2ed2e28d7480b45f Mon Sep 17 00:00:00 2001 From: chai <215380520@qq.com> Date: Sun, 19 May 2024 16:05:58 +0800 Subject: +1.57 --- .../Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs | 48 ++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Thronefall_1_57/Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs (limited to 'Thronefall_1_57/Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs') diff --git a/Thronefall_1_57/Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs b/Thronefall_1_57/Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs new file mode 100644 index 0000000..4558519 --- /dev/null +++ b/Thronefall_1_57/Decompile/NGS.MeshFusionPro/BinaryTreeNode.cs @@ -0,0 +1,48 @@ +using UnityEngine; + +namespace NGS.MeshFusionPro; + +public abstract class BinaryTreeNode : IBinaryTreeNode +{ + public BinaryTreeNode Left { get; private set; } + + public BinaryTreeNode Right { get; private set; } + + public bool IsLeaf { get; private set; } + + public bool HasChilds => Left != null; + + public Vector3 Center { get; private set; } + + public Vector3 Size { get; private set; } + + public Bounds Bounds { get; private set; } + + public BinaryTreeNode(Vector3 center, Vector3 size, bool isLeaf) + { + Center = center; + Size = size; + Bounds = new Bounds(center, size); + IsLeaf = isLeaf; + } + + public IBinaryTreeNode GetLeft() + { + return Left; + } + + public IBinaryTreeNode GetRight() + { + return Right; + } + + public void SetChilds(BinaryTreeNode left, BinaryTreeNode right) + { + Left = left; + Right = right; + } + + public abstract void Add(TData data); + + public abstract void Remove(TData data); +} -- cgit v1.1-26-g67d0