Ejercicio
Punto 3D
Objetivo
Cree una clase "Point3D", para representar un punto en el espacio 3D, con coordenadas X, Y y Z. Debe contener los siguientes métodos:
MoveTo, que cambiará las coordenadas en las que se encuentra el punto.
DistanceTo(Point3D p2), para calcular la distancia a otro punto.
ToString, que devolverá una cadena similar a "(2,-7,0)"
Y, por supuesto, getters y setters.
El programa de prueba debe crear una matriz de 5 puntos, obtener datos para ellos y calcular (y mostrar) la distancia desde el primer punto hasta los cuatro restantes.
Código
Imports System
Class Point3D
Protected x, y, z As Double
Public Sub New()
End Sub
Public Sub New(ByVal nx As Double, ByVal ny As Double, ByVal nz As Double)
MoveTo(nx, ny, nz)
End Sub
Public Function GetX() As Double
Return x
End Function
Public Sub SetX(ByVal value As Double)
x = value
End Sub
Public Function GetY() As Double
Return y
End Function
Public Sub SetY(ByVal value As Double)
y = value
End Sub
Public Function GetZ() As Double
Return z
End Function
Public Sub SetZ(ByVal value As Double)
z = value
End Sub
Public Sub MoveTo(ByVal nx As Double, ByVal ny As Double, ByVal nz As Double)
x = nx
y = ny
z = nz
End Sub
Public Function DistanceTo(ByVal p2 As Point3D) As Double
Return Math.Sqrt((x - p2.GetX()) * (x - p2.GetX()) + (y - p2.GetY()) * (y - p2.GetY()) + (z - p2.GetZ()) * (z - p2.GetZ()))
End Function
End Class