krita overview

Michael Thaler michael.thaler at
Mon Oct 13 12:25:07 CEST 2003


> I did send you the patch, didn't I? I've already added a lot of comments.
> I'll ask for a cvs account again, so I can commit what I've been doing.

Yes. Sorry, I did not apply it yet. I just looked at the patch and I
saw you did not add comment to the low level stuff like KisPixelData,
KisTile, KisTileMediator, KisTileMgr, KisLayer, KisImage etc. Is it
o.k. if I do? 

> > I would also like to code the missing parts to mark the tiles as
> > clean/dirty. This is probably not too hard to do and it is definitely
> > needed to code freehand tools.
> >
> Why would that be necessary? I mean, I've alreade coded a freehand tool
> and it works just fine with what there is. But if you want to work on the

I think the whole point about the dirty bool is to mark a tile as
modified if the tile is changed. If the screen is redrawn, only tiles
which are actually modified are redrawn. Just think about a freehand
tool that just sets a pixel. For every pixel, right now, all tiles
have to be redrawn. Since this implies a conversion from a QImage to
QPixmap which is supposed to be slow, it is really inefficient. If the
dirty-bool is set probably and the code that actually renders the
image to the screen, respects the dirty-bool of the tiles, it only
renders one tile at one time in the case of the freehand tool. It is
much more efficient (I wonder why a tile size of 64 x 64 is used here?
It would probably be better to use 32 x 32 or 16 x 16 tiles because
then, in the case of the freehand tool, less data has to be drawn to
the screen and for other tools, the overhead of more tiles is not that
big, isn't it?)

> low-level tile code, that's great, because I'm not interested in that, and
> there are bound to be bugs still. If you know your way around, you can fix
> them :-). I'm currently working on porting the real brush tool to
> KisPainter, and reworking the user interface. That means that I'm mostly
> messing with KisPainter.

Yes. I saw your changes. drawPoint, drawLine etc. is also what I need
to make KisLayer/KisPainter working with paintworks,

> I'd really start with that right now, before trying to work out what
> Patrick intended with his design.

I think the low-level stuff is pretty clear to me. What is not clear
is how to code tools/filters in a sane way, e.g. using kparts.

Take care,
We shall not cease from exploration, and the end of all our exploring 
will be to arrive where we started and know the place for the first time.

More information about the kimageshop mailing list