Estoy buscando una manera de implementar la visibilidad (también conocida como cuenca visual). Encontré una pregunta anterior de GIS SE que sugería algunas aplicaciones SIG (no lo que necesito, estoy tratando de integrar los cálculos), y también SAGA. SAGA se parece más a lo que estoy buscando (clases C ++, Java, C #), pero no puedo entender lo suficiente de la documentación de la API para descubrir qué clases necesito incluso para instanciar (o subclase).
No estoy atado a la idea de SAGA: solo estoy buscando una biblioteca / motor que pueda hacer cálculos de intervisibilidad.
Las restricciones son que debe ser:
- razonablemente "ligero" (ya que me gustaría poder cubrir incrustado / móvil)
- razonablemente de código abierto (ya que mi aplicación será de código abierto, aunque soy flexible sobre exactamente qué licencia siempre que sea compatible con (L) GPL).
¿Alguien puede recomendar una biblioteca o motor de este tipo y proporcionar una descripción o un enlace a qué parte de la biblioteca o motor necesito usar para los cálculos de la cuenca visual?
Alternativamente / además, también agradecería referencias a documentos o tutoriales que explican cómo hacer estos cálculos de manera eficiente (según corresponda a dispositivos integrados / móviles, por lo que una implementación basada en GPU puede no ser tan útil como algo que es más general, y maneja dispositivos de baja potencia)
Mi preferencia es una implementación existente, en lugar de crear algo yo mismo (que es una opción de respaldo).
Editar: C ++ no es un requisito firme: cualquier cosa razonablemente portátil (C #, C ++, Java) servirá. Estoy intentando una biblioteca o plantillas en lugar de incrustar una aplicación grande.