Resumen de API
Esta sección proporciona documentación de referencia completa de la API para MipMapEngine SDK, incluyendo todas las interfaces disponibles, descripciones de parámetros y ejemplos de uso.
Si aún no has instalado el SDK, por favor consulta la Guía de Instalación primero. Para usuarios primerizos, se recomienda comenzar con Inicio Rápido.
MipMapEngine SDK proporciona varias interfaces para satisfacer diferentes escenarios de uso:
🏗️ Arquitectura del SDK
Capa de Aplicación
- Tu Aplicación | Python/C++/CLI | Servicios Web
Capa de Interfaz API
- ReconstructFull (Proceso Completo) | ReconstructAT (Triangulación Aérea) | Reconstruct3D (Reconstrucción 3D)
Motor Central
- Algoritmos de Fotogrametría | Aceleración GPU | Procesamiento Paralelo
Capa del Sistema
- NVIDIA CUDA | Sistema de Archivos | Gestión de Licencias
📚 Categorías de Interfaces
1. Interfaces de Procesamiento por Lotes
Adecuadas para procesamiento offline de grandes cantidades de datos:
Interfaz | Función | Caso de Uso |
---|---|---|
ReconstructFull | Reconstrucción de proceso completo | Inicio rápido, procesamiento automático |
ReconstructAT | Triangulación aérea | Control fino, usuarios profesionales |
Reconstruct3D | Reconstrucción 3D | Generar modelos desde resultados AT |
OptimizeAT | Optimizar AT | Usar puntos de control para mejorar precisión |
DivideTiles | Procesamiento de azulejos | Reconstrucción de bloques de datos a gran escala |
2. Herramientas Auxiliares
Herramienta | Función |
---|---|
License Engine | Gestión de licencias |
Progress Monitor | Monitoreo de progreso |
🔄 Flujos de Trabajo Típicos
Opción 1: Proceso Completo Rápido (Recomendado para Principiantes)
ReconstructFull → Resultados de Salida
Solución de un paso, maneja automáticamente todos los procesos
Opción 2: Procesamiento Paso a Paso (Usuarios Profesionales)
ReconstructAT → OptimizeAT (Opcional) → Reconstruct3D → Resultados de Salida
Control fino sobre cada paso, soporta verificación de resultados intermedios y optimización
📝 Métodos de Llamada de Interfaz
1. Llamada por Línea de Comandos
El SDK soporta llamadas directas por línea de comandos a cada motor:
# Formato general
<engine_name> [options] -task_json <config_file>
# Ejemplo: Llamar ReconstructFull
reconstruct_full_engine -reconstruct_type 0 -task_json config.json
Después de la instalación inicial, por favor consulta la Guía de Instalación para pruebas de verificación.
2. Integración de Programa
Integra en tu aplicación a través de llamadas de proceso:
import subprocess
import json
# Preparar configuración
config = {
"license_id": 9200,
"working_dir": "./output",
"gdal_folder": "./data",
# ... otros parámetros
}
# Guardar archivo de configuración
with open("task.json", "w") as f:
json.dump(config, f)
# Llamar SDK
result = subprocess.run([
"reconstruct_full_engine.exe",
"-reconstruct_type", "0",
"-task_json", "task.json"
], capture_output=True, text=True)
print(result.stdout)
🎯 Elegir la Interfaz Correcta
Si tú... | Recomendado | Razón |
---|---|---|
Usas SDK por primera vez | ReconstructFull | Maneja automáticamente todos los detalles, más simple |
Necesitas usar puntos de control | ReconstructAT + OptimizeAT | Soporta optimización de puntos de control |
Procesando datos ultra-grandes | DivideTiles + Reconstruct3D | Soporta procesamiento paralelo de bloques |
Necesitas resultados intermedios | Procesamiento paso a paso | Puede verificar y ajustar resultados intermedios |
📖 Conceptos Comunes
Archivos de Configuración JSON
Todas las interfaces usan archivos de configuración en formato JSON, estructura básica:
{
"license_id": 9200, // Requerido: ID de Licencia
"working_dir": "string", // Requerido: Directorio de trabajo
"gdal_folder": "string", // Requerido: Directorio de datos GDAL
// ... otros parámetros dependen de la interfaz
}
Definición del Sistema de Coordenadas
{
"coordinate_system": {
"type": 2, // 0=LocalENU, 1=Local, 2=Geographic, 3=Projected, 4=ECEF
"epsg_code": 4326, // Código EPSG (opcional)
"wkt": "string", // Cadena WKT (opcional)
"origin_point": [lon, lat, alt] // Origen LocalENU (solo necesario cuando type=0)
}
}
Manejo de Errores
Todas las interfaces devuelven códigos de error enteros:
0
: ÉxitoNúmeros negativos
: Varias condiciones de error
Ver referencia de códigos de error para detalles.
🚀 Próximos Pasos
- 📚 Aprende más sobre la interfaz ReconstructFull (recomendado para principiantes)
- 🔧 Estudia la interfaz ReconstructAT (características avanzadas)
- 💡 Revisa ejemplos completos para uso práctico
Consejo: Las necesidades de la mayoría de usuarios pueden satisfacerse con ReconstructFull. Solo usa otras interfaces cuando se necesite control fino.