я бы разбивал дерево на компоненты, в зависимости от нужной детализации (ствол, ветви, ветки на них, совсем мелкая шолупонь). Проходился бы по каждому компоненту, строил бы некую маску на нем и дальше по этой маске шел бы и спрашивал позиции точек, по их усредненной позиции ставил бы свою точку, которая и была бы точкой сплайна