Git Product home page Git Product logo

nikki's People

Contributors

brazzy avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

Forkers

fagan2888

nikki's Issues

Parametrize export

The export could use some parameters:

  • image size
  • perhaps thumbnail size
  • track color and transparency
  • threshold for starting a new path
  • document name in Google Earth
  • Option to display timestamp
  • make sequence number options

Perhaps preset configurations for Google Earth and Google Maps?

Default File and document name could be a global setting saved in prefs.

Performance

Performance could be better, especially scanning and saving

Automate workflow

Scanning, geotagging and saving should not have to be started manually - this could make the UI simpler. Specifically do this automatically:

  1. select newly added directory
  2. scan directory when selecting it
  3. select first day when selecting directory (and after scan adds first day)
  4. geotag newly added images, re-tag when new waypoint files are added
  5. save??

Rethink progress bar or make model manipulation threadsafe

Currently it's possible to run multiple actions (scan/save/export/geotag) in parallel that manipulate the model in a non-threadsafe way. Either block the GUI (display modal progress bar) for each of these actions, or move all manipulation of the model to the EDT via invokeLater()

Enforce non-null properties

Day.directory and Directory.path must never be null - this should be enforced, but Groovy ignores "private", which makes that impossible...

Internationalize

App should allow for translated versions - all displayed strings should be moved into resource files.

Order of images

Images should be ordered, optionally by filename or by timestamp, and this order should be maintained when rescanning or moving images between days via copy/paste

Use timezone derived from waypoint to assign images to days

Currently, images are assigned to days based on the timezone the camera was set to. When this is much different from the timezone the image was taken at, it can be assigned to a wrong day. Using the timezone from the nearest waypoint would be much better, but requires geotagging images before assigning them to days.

Use two indexes in TimezoneFinder

TimezoneFinder's proximity metric degenerates and eventually fails for coordinates near the pole, and fails near the international date line. This could be fixed by using two overlapping indexes, one based on a transformed coordinate system.

Add waypoints from images

Images that have GPS data from other sources could be used and add new waypoints - this would allow Nikki to be used without GPS track files (perhaps this works already, but not tested, and there would be no track, adding the waypoints would allow one to be displayed)

Improve image parsing

Handle embedded dates and thumbnails from different camera model (e.g. SZ, handy)

Enable running via webstart

Create JNLP file and make it work (not easy, requires some work on manifest, perhaps even redo all filesystem access through webstart mechanisms to allow running with restricted permissions - but that may be impossible while Groovy is used due to its use of reflection).

Add menus

There should be a dropdown menu, perhaps also context menus in lists and on images. Reuse button actions for these.

Broken export

large view of images isn't working. GPS path gets closed wiht line from end to beginning.

Use Java 7 filesystem API

Java 7 will have a nio2 API to allow listening to filesystem changes - could make rescanning automatic

Adjust thumbnail sizes

All thumbnails should have the same width, whether they're landscape or portrait, newly computed or read from image data.

Should existing EXIF thumbnails that do not match the desired size be overwritten? Needs work in ImageWriter.writeThumbnail()

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.