TheMonsterFromTheDeep / vague

Java-based image editor
0 stars 0 forks source link

New vision for editor #14

Open TheMonsterFromTheDeep opened 8 years ago

TheMonsterFromTheDeep commented 8 years ago

A while ago, I completely re-structured the UI and made it basically really clunky.

However, I have a reason for this. I had an idea for a UI that was fluid - a user could open the app and have a blank canvas. Then they could drag out a window and get started working. Perhaps there could be a shortcut for immediately opening the editor window.

This is why I want to make a new type of Editor - the thing that actually does the drawing. I want the editor to implement this idea of fluidity - so, when opening the editor, the user can just draw a curve - immediately. Said curve can then be edited. There is no limit on image size - as the user continues to draw, the canvas is automatically resized.

This would, of course, be a strange collision with vector graphics. However, I don't think I want to make this a vector editor - I would like to have it remain bitmap, but with vector-like features. Bitmap graphics have advantages, such as the fact that various filters and the like can be applied.

Of course, there is no reason vector images can't have filters applied to them - but vector graphics programs won't necessarily support certain more advanced vector features, which is why I would like to stay away. There is nothing very complicated about supporting 32 bit rgb color (or even less!) so bitmap images work well.

So then, my new plan for the image editor is something like a vector editor, but with more advanced features. Like, for example, it would be possible to draw a curve, and then blur it with the background. But, then, the curve could be edited and the area that was blurred would move too.

Of course, there is one big problem - either Java is slow or I am slow, or a little bit of both. It is incredibly taxing to do fancy filters and stuff while editing images. That is why these effects will be applied only when the user is making no actions.

Hopefully the rest of the image editor should be fast enough, then. Whatever object is being edited will just caused the editor to save buffers of the objects above and below it, and then it will be very fast to draw it back.