Best way to check magnitude from surface?

Oh I understand what you’re saying now.
Wow, why didn’t I think of that?
I might end up doing that.

also, there’s a module that allows you to rotate regions


@ArtFoundation I think I’m starting to understand what you’re saying as well. I got addition and multiplication mixed up when it comes to Vector3s. Also, you forgot to mention that you would have to add the resulting vector to the Tree position’s part.
I tested it out and it looks like that still makes a circular ellipse when you go around

Player = game.Players.LocalPlayer
Char = Player.Character
HRP = Char:WaitForChild('HumanoidRootPart')
Tree = workspace.Part

visualPart = Instance.new('Part',workspace)
visualPart.Size = Vector3.new(1,1,1)
visualPart.Name='visual'
visualPart.Anchored = true

while wait() do
	local justMagnitude = (Tree.Position-HRP.Position).Magnitude
	local difference = (Tree.Position-HRP.Position).Unit
	local distanceVector = difference*(Tree.Size/2)
	distanceVector = Tree.Position+distanceVector
	visualPart.CFrame = CFrame.new(distanceVector)	
	--print(distanceVector,'|',distanceVector.Magnitude,'|',justMagnitude)
	print(distanceVector.Magnitude,justMagnitude)
end