Druid [Re: CVS has new feature - my first major checking]

Pablo d'Angelo pablo at mathematik.uni-ulm.de
Sat Nov 1 10:39:38 GMT 2003


Hi Ed,

On Fri, 31 Oct 2003, Ed Halley wrote:

> Please contact me (and be gentle) if I've screwed up anything
> in this checkin on CVS.  Everything should build just fine,
> and there are five new graphics files in the hugin/xrc/data/.

Looks good. I'm compiling right now :)

> New feature:  the Panorama Druid.
> 
> If you look inside the Preview Pane, below the empty black
> area, you'll see the Panorama Druid's best advice on what you
> should do next to finish your panorama project.  An empty pano
> needs new images.  If the HFOV is too tiny or the final image
> is massive, the Druid will warn you.  It doesn't stop you from
> doing the wrong thing, but hopefully it will guide newcomers to
> a successful panoramic project.

Great! 
Maybe we could also add some button or something that tries to fix
the problem. if its easy to do, like recalculating the image size.

> The graphics and layout are a first-draft, and I haven't tested
> it on Windows (wxWindows on Windows supports PNG too, right?).

yes, no problem there.

> They may seem a little large compared to the other graphics.
> Other graphics I will be adding will be small but will tie into
> the coloring and style seen here.

They seem a little large, but they definately look nice! Great!
I think spending some space on icons in the preview panel is alright.

> This is very limited right now, but will be expanding as I can
> find ways to calculate and detect other "problems" with a pano
> project file.

I've just loaded 3 images and played around a bit. Some things that came
into my mind (Just suggestions)

- "panoramas" with one image are sometimes useful, like in the
  "Simulating an architectural projection" tutorial on the hugin
  homepage.

- a detection if an image has no connection to any of the other
  image would be nice. needs a loop over all images.

In one comment you write:

+       //TODO: optimizing for different projection from final
hmm, sometimes I used this for partial panoramas, where I created a
cylindrical panorama, but wanted to use vertical / horizontal control points
as defined by a rectangular output image. Hmm. well. probably an obstruse
usage :)

Should changing the "projection for optimizing" in the Optimizer tab also 
change the projection in panorama settings?

As an implementation note:

Maybe it would be better to create a class DruidHint, instead of keeping
the hints in a struct. DruidHint could be asked if it found a problem,
giving it the Panorama object. It then could also get an (optional)
fixProblem() member function that tries to fix the problem.

This keeps hint description and code to manage it together, making it 
easier to add more hints.

on each update, iteration over a list of all druids (sorted in order of
importance) could be used to define a set of current DruidHints. Either
the first one could be shown, or the user could get a up/down button to show
more.. but multiple hints could be overkill.

I'm very happy with the druid, so just take the above as ideas for
future development :)

ciao
  Pablo
--
http://wurm.wohnheim.uni-ulm.de/~redman/
Please use PGP


More information about the ptX mailing list