Я работаю в трехмерном пространстве (X, Y, Z).
У меня есть KDTree (благодаря Accord.Net ), который я наследую и добавляю свойство, которое имеетМакс и мин каждого измерения.Я написал конструктор, который добавляет значения из списка и получает минимальное и максимальное значения одновременно.
Дерево (в моем случае) может иметь размеры 1, 2 или 3.
Я хотел бы иметь свойство, которое выглядит так, если дерево имеет одно измерение (ось X):
Tree.MinMax.X.Min
Tree.MinMax.X.Min
Если мое дерево имеет два измерения (скажем, Y и Z), свойство будет выглядеть так:
Tree.MinMax.Y.Min
Tree.MinMax.Y.Min
Tree.MinMax.Z.Min
Tree.MinMax.Z.Min
У меня есть список.Невозможно назвать каждый элемент в списке (о котором я знаю).
class MinMax
{
internal double Min = double.MaxValue;
internal double Max = double.MinValue;
internal void Add(double value)
{
Min = msf.Min(Min, value);
Max = msf.Max(Max, value);
}
}
Это дает мне следующий синтаксис (за которым трудно следовать):
Tree.MinMax[0].Min
Tree.MinMax[0].Max
Есть ли способ присвоения имен элементам списка или способ сделать свойство «гибким», вроде именованного кортежа?