1

I'm looking to develop a Desktop app (and later a web app) with Java (JavaFX or Swing) that do some specific tasks but I don't know where to start from.

I'm quite new to GIS, so I'll state some of the things I want the application to be able to do and you can tell me what alternatives are out there:

  • The map should be on a country level (one country) and the user can get specific information(Protected areas, Topography, Water bodies, Irradiation, ...) of each region displayed on the same frame each time she/he clicks on a specific button;
  • The app is a collection of layers, where each layer is supposed to represent a filter (constraint) that (the layers) when combined some regions that not satisfy those constraints are excluded;
  • I want to multiply all the map with a weight (computed based on a specific approach but it is irrelevant);
  • Last, the user can provide her/his opinion over each area (regarding the above information displayed) which should be stored in a database;

In summary, I want a way to develop an app with interactive map in Java with rich UX and feedback from the users too;

1

GeoTools would seem like an obvious choice.

Looking at your bullet points:

The map should be on a country level [...]

Like most GIS libraries, the scale of item you're representing doesn't really matter a whole lot to it.

The app is a collection of layers, where each layer is supposed to represent a filter (constraint) that (the layers) when combined some regions that not satisfy those constraints are excluded;

Umm...normally in GIS what's called a layer represents some specific type of information, so (for example) you might have one layer for roads and highways, one for rivers and lakes, one for buildings, and so on. GeoTools will certainly let you filter what features you show, but that won't necessarily correspond to its Layer class.

I want to multiply all the map with a weight (computed based on a specific approach but it is irrelevant);

You can certainly retrieve parameters associated with items in your map, and multiply them as you see fit. Multiplying "all the map" doesn't really make sense--much of the data comprising a map doesn't really "multiply" in any meaningful way.

Last, the user can provide her/his opinion over each area (regarding the above information displayed) which should be stored in a database;

There are quite a few ways to store associated data with GeoTools. Just for a couple of examples, you can associate data with an entire layer, or with an individual feature. You haven't really told us enough to guess which possibility makes sense, but chances are pretty good that once you figure out exactly what you want, it'll have a mechanism to store data associated with the level/type of item you want.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.