Entrega 2 – Proyecto Final: Interpolación y Longitud
Curso: Análisis numérico y computación científica
Universidad del Rosario – Escuela de Ingeniería, Ciencia y Tecnología
Fecha: 9 de Abril 2025
Integrantes del grupo:
Julieta Montoya Quintero
Nicolas Botero
Avance técnico del proyecto
Durante esta segunda fase del proyecto, el objetivo era extender la aplicación desarrollada en
App Designer para incluir tres funcionalidades principales:
• Carga de una nube de puntos desde un archivo .asc
• Selección interactiva de puntos para interpolar
• Interpolación cúbica por tramos e integración para estimar la longitud
Se trabajó con archivos de prueba como [Link], [Link] y [Link], los
cuales contienen puntos en formato tridimensional. La aplicación debía permitir cargar la
nube de puntos, seleccionar un subconjunto significativo mediante clics en el gráfico, y luego
trazar una curva interpolada entre ellos, calculando su longitud.
Implementación en App Designer
Se programaron tres botones con las siguientes funciones:
• Cargar Archivo (btnCargarButton): Permite seleccionar un archivo .asc, omitiendo la
primera línea (# ASCII) y graficando los puntos en un eje 3D (scatter3).
• Seleccionar Puntos (SeleccionarPuntosButton): Con ginput, el usuario puede
seleccionar puntos que luego se cruzan con la nube cargada para encontrar los más
cercanos, y se resaltan sobre la gráfica.
• Interpolar y Calcular (interpolarButton): Utiliza una implementación propia de spline
cúbico por tramos, que calcula los coeficientes a, b, c y d para cada tramo. Luego
genera los puntos interpolados y evalúa la longitud total de la curva.
La lógica de la interpolación cúbica se implementó manualmente, resolviendo el sistema
lineal para los coeficientes c y aplicando las fórmulas del spline natural.
Dificultades encontradas
Aunque el código fue estructurado correctamente y se trabajó con lógica matemática propia
para el spline cúbico, la aplicación no logró ejecutarse completamente como se esperaba.
Algunos errores relacionados con la definición de propiedades dentro del .mlapp y la
sincronización entre botones impidieron completar la funcionalidad final.
A pesar de esto, el análisis del problema, la comprensión de la lógica del spline y la
estructuración del código sientan una base sólida para retomar y corregir la aplicación en la
siguiente entrega.
Conclusión y próximos pasos
En esta entrega se logró:
Entender e implementar el algoritmo de interpolación cúbica por tramos.
Preparar una estructura funcional de la app en App Designer.
Integrar visualización de nubes de puntos y selección de puntos con interacción del usuario.
Para la próxima fase, se trabajará en:
Depurar y completar la integración entre los botones del .mlapp.
Añadir manejo de errores más robusto.
Extender la app para incluir cálculos de áreas o volúmenes, si el modelo lo permite.