Commit graph

542 commits

Author SHA1 Message Date
Sven Neumann
dc8bdb4fa1 app/base/siox.[ch] fixed API docs.
2005-08-25  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpscanconvert.c: fixed API docs.

2005-08-25  Sven Neumann  <sven@gimp.org>

	* app/app-sections.txt
	* app/app.types: minor updates.

	* libgimpbase/tmpl/gimputils.sgml: regenerated.
2005-08-25 16:52:46 +00:00
Sven Neumann
5ea47e3126 minor optimizations.
2005-08-23  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: minor optimizations.

	* app/actions/gradients-actions.c
	* app/actions/patterns-actions.c
	* plug-ins/metadata/interface.c: applied patch from Stephan Binner
	that fixes wrong use of ellipsis (bug #309657).
2005-08-22 23:30:23 +00:00
Michael Natterer
eb69eb49dc even more cleanup, replaced informal comments by API docs.
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.[ch]: even more cleanup, replaced informal
	comments by API docs.
2005-08-20 17:25:19 +00:00
Michael Natterer
4fb1743f55 renamed puclic functions, defines and enums to live in a proper "boundary"
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.[ch]: renamed puclic functions, defines and
	enums to live in a proper "boundary" namespace. Cleaned up and
	simplified internal code even more.

	* app/core/gimpchannel.c
	* app/core/gimpdrawable-stroke.c
	* app/core/gimplayer-floating-sel.c
	* app/paint/gimppaintcore-stroke.c
	* app/tools/gimpeditselectiontool.c
	* app/tools/gimpfuzzyselecttool.c
	* app/tools/gimppainttool.c: changed accordingly.
2005-08-20 15:46:37 +00:00
Michael Natterer
e923e0a595 rename local "ns" variables to "num_segs" now that the global "num_segs"
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c: rename local "ns" variables to "num_segs"
	now that the global "num_segs" is gone.
2005-08-20 12:44:01 +00:00
Michael Natterer
d78fa5482d moved the entire internal state of boundary creation and simplification
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c: moved the entire internal state of boundary
	creation and simplification from <eek>global variables</eek> to a
	new "Boundary" struct that needs to be newly allocated for each
	boundary. Yes this allocates and frees memory more often than
	before but the old code was simply one big eek.
2005-08-20 12:35:54 +00:00
Michael Natterer
d0309947f8 look at the passed "ns" variable instead of at the global "num_segs" one
2005-08-20  Michael Natterer  <mitch@gimp.org>

	* app/base/boundary.c (sort_boundary): look at the passed "ns"
	variable instead of at the global "num_segs" one to figure if the
	passed array of BoundSegs is empty. Fixes bug #313922 at its root.
2005-08-20 12:22:31 +00:00
Sven Neumann
465aa7a7c5 fixed initialization of row array.
2005-08-17  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (smooth_region): fixed
	initialization of row array.

	* app/base/siox.c: minor cleanups.
2005-08-17 15:38:43 +00:00
Sven Neumann
e91e1ad5d8 applied patch by Kristian Jantz. Reimplements find_max_blob() so that it
2005-08-17  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: applied patch by Kristian Jantz. Reimplements
	find_max_blob() so that it needs less memory. Slows things down a
	bit, but that can be improved later.
2005-08-17 11:05:34 +00:00
Sven Neumann
ce8dcfb497 app/base/siox.[ch] app/core/gimpdrawable-foreground-extract.[ch]
2005-08-09  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]
	* app/tools/gimpforegroundselectoptions.[ch]
	* app/tools/gimpforegroundselecttool.c: renamed Granularity to
	Color Sensitivity, both in the GUI and in the APIs.
2005-08-09 20:43:44 +00:00
Sven Neumann
6f386794b7 optimized further.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): optimized further.
2005-08-08 18:31:28 +00:00
Sven Neumann
651aca218a added another call to gimp_progress_update().
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: added another call to gimp_progress_update().

	* app/core/gimp.c (gimp_init): fixed harmless cut-n-paste error.
2005-08-08 17:38:25 +00:00
Sven Neumann
5c6b8e9f79 added the possibility to specify a clip rectangle.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/core/gimpscanconvert.[ch]: added the possibility to specify
	a clip rectangle.

	* app/base/siox.c (find_max_blob): use g_try_malloc().
2005-08-08 12:05:54 +00:00
Sven Neumann
64614aa4fd optimizations.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): optimizations.
2005-08-08 04:49:44 +00:00
Sven Neumann
3f9144e534 fixed for offsetted regions. Do thresholding as part of find_max_blob().
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): fixed for offsetted regions.
	Do thresholding as part of find_max_blob().
2005-08-08 04:17:41 +00:00
Sven Neumann
eb6268e53b fixed for offsetted regions.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): fixed for offsetted regions.
2005-08-08 03:41:02 +00:00
Sven Neumann
a72b704ebf check boundary conditions before pushing a pixel to the queue.
2005-08-08  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (find_max_blob): check boundary conditions
	before pushing a pixel to the queue.
2005-08-08 01:27:11 +00:00
Sven Neumann
822a8a1f14 cosmetics 2005-08-08 00:31:55 +00:00
Sven Neumann
e17b69fe43 made variables more local to make the code easier to read and to optimize.
2005-08-07  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: made variables more local to make the code
	easier to read and to optimize.
2005-08-07 20:20:53 +00:00
Sven Neumann
37307dcb15 more micro optimizations 2005-08-07 16:32:32 +00:00
Sven Neumann
f4893406ef micro optimizations.
2005-08-07  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): micro optimizations.
2005-08-07 16:07:32 +00:00
Sven Neumann
46bc22c7ff reordered parameters to match the order of parameters in
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]: reordered parameters to match the order of
	parameters in gimp_drawable_foreground_extract_siox().

	* app/core/gimpdrawable-foreground-extract.c: changed accordingly.

	* app/tools/gimpforegroundselectoptions.[ch]: draw slider value to
	the right.

	* app/tools/gimpfreeselecttool.[ch]: added
	gimp_free_select_tool_select() to calls the virtual select() method.

	* app/tools/gimpforegroundselecttool.[ch]: queue an idle select if
	the smoothness or granularity values change in the tool options.
2005-08-06 20:01:22 +00:00
Sven Neumann
d670b0e11e app/base/siox.[ch] expose all parameters of the SIOX algorithm. Provide
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]: expose all
	parameters of the SIOX algorithm. Provide default values.

	* app/tools/gimpforegroundselectoptions.[ch]: added properties and
	user interface for all SIOX parameters.

	* app/tools/gimpforegroundselecttool.c: changed accordingly.

2005-08-06  Sven Neumann  <sven@gimp.org>

	* plug-ins/benchmark-foreground-extract.py: pass run-mode to PDB
	calls.
2005-08-06 19:08:43 +00:00
Sven Neumann
3c8a10e925 app/base/siox.c moved rectangle intersection into
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c
	* app/core/gimpdrawable-foreground-extract.c: moved rectangle
	intersection into gimp_drawable_foreground_extract().
2005-08-06 15:09:31 +00:00
Sven Neumann
71785ac8cd canonicalize hardcoded procedure names.
2005-08-06  Sven Neumann  <sven@gimp.org>

	* app/batch.c: canonicalize hardcoded procedure names.

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.[ch]
	* app/tools/gimpforegroundselecttool.c: restrict the working area
	to the double of the bounding box of the initial selection.
2005-08-06 00:51:22 +00:00
Sven Neumann
4f870bc132 deprecated RGB intensity functions and definitions. These coefficients do
2005-08-03  Sven Neumann  <sven@gimp.org>

	* libgimpcolor/gimprgb.[ch]: deprecated RGB intensity functions
	and definitions. These coefficients do not accurately compute
	luminance for contemporary monitors. Instead the coefficients from
	the sRGB spec should be used which have now been added.

	* libgimpcolor/gimpcolor.def: updated.

	* libgimp/gimpdrawable.c
	* libgimp/gimppixelfetcher.c
	* app/base/colorize.c
	* app/base/levels.c
	* app/base/temp-buf.c
	* app/core/gimpdrawable-blend.c
	* app/core/gimpdrawable-convert.c
	* app/core/gimpdrawable-desaturate.c
	* app/core/gimpimage-convert.c
	* app/core/gimpimage.c
	* app/gui/splash.c
	* app/widgets/gimpgradienteditor.c
	* modules/colorsel_triangle.c
	* plug-ins/common/aa.c
	* plug-ins/common/bumpmap.c
	* plug-ins/common/colorify.c
	* plug-ins/common/despeckle.c
	* plug-ins/common/displace.c
	* plug-ins/common/engrave.c
	* plug-ins/common/gradmap.c
	* plug-ins/common/grid.c
	* plug-ins/common/mng.c
	* plug-ins/common/newsprint.c
	* plug-ins/common/png.c
	* plug-ins/common/whirlpinch.c
	* plug-ins/gflare/gflare.c
	* plug-ins/gfli/gfli.c
	* plug-ins/maze/handy.c
	* plug-ins/pagecurl/pagecurl.c: use gimp_rgb_luminance() and
	friends instead of the deprecated intensity functions.
2005-08-03 00:36:41 +00:00
Sven Neumann
26eecddbdc loop unrolling.
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/base/gimphistogram.c (gimp_histogram_calculate_sub_region):
	loop unrolling.

	* app/dialogs/about-dialog.c
	* app/widgets/gimpselectiondata.c
	* plug-ins/bmp/bmpread.c (ReadBMP)
	* plug-ins/gfig/gfig.c (gfig_load)
	* plug-ins/imagemap/imap_preview.c
	* plug-ins/imagemap/imap_selection.c
	* plug-ins/jpeg/jpeg-exif.c
	* plug-ins/common/dicom.c: fixed signedness warnings.
2005-07-30 14:05:57 +00:00
Sven Neumann
2300e2b743 increase the size of the swap file in chunks of 16MB instead of only
2005-07-30  Sven Neumann  <sven@gimp.org>

	* app/base/tile-swap.c: increase the size of the swap file in
	chunks of 16MB instead of only 256KB. Check the return value of
	ftruncate().
2005-07-30 00:33:57 +00:00
Sven Neumann
a026524412 app/base/siox.[ch] pass progress_callback and progress_data to
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]
	* app/core/gimpdrawable-foreground-extract.c: pass progress_callback
	and progress_data to siox_foreground_extract().
2005-07-29 16:09:16 +00:00
Sven Neumann
9dfb56a435 keep a tail pointer. Speeds up the benchmark by about 50%.
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (add_to_list): keep a tail pointer. Speeds up
	the benchmark by about 50%.
2005-07-29 15:25:20 +00:00
Sven Neumann
fde49937b3 minor cleanup.
2005-07-29  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c (siox_foreground_extract): minor cleanup.
2005-07-28 23:40:00 +00:00
Sven Neumann
b82d4c46c7 accept an offset between pixels and mask, work only on the intersection
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.[ch]: accept an offset between pixels and mask,
	work only on the intersection rectangle.

	* app/core/gimpdrawable-foreground-extract.c: pass the drawable
	offsets to siox_foreground_extract().
2005-07-28 20:12:16 +00:00
Sven Neumann
55f7b68c23 allow to enable some debug output.
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: allow to enable some debug output.
2005-07-28 00:18:39 +00:00
Sven Neumann
d429a944db app/core/Makefile.am moved cpercep from here ...
2005-07-28  Sven Neumann  <sven@gimp.org>

	* app/core/Makefile.am
	* app/core/cpercep.[ch]: moved cpercep from here ...

	* app/base/Makefile.am
	* app/base/cpercep.[ch]: ... to here.

	* app/base/siox.[ch]: use the cpercep routines for RGB->LAB
	conversion, gives a 20% speedup. Removed normalization which seems
	redundant. Make it work for grayscale and indexed, not only RGB.

	* app/core/gimpdrawable-foreground-extract.c
	* app/core/gimpimage-convert.c: changed accordingly.
2005-07-27 22:52:34 +00:00
Sven Neumann
b8725f4878 added comments about possible improvements.
2005-07-16  Sven Neumann  <sven@gimp.org>

	* app/base/siox.c: added comments about possible improvements.
2005-07-16 00:00:11 +00:00
Sven Neumann
395c6dbf70 fixed implementations.
2005-07-15  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.c (erode_region) (dilate_region):
	fixed implementations.
2005-07-15 19:07:38 +00:00
Sven Neumann
74bb5d998b formatting 2005-07-14 16:26:26 +00:00
Sven Neumann
2566531777 added erode_region() and dilate_region() 2005-07-14 15:40:19 +00:00
Sven Neumann
c6ea42505b changed some more places from segmentator to siox 2005-07-13 19:37:27 +00:00
Sven Neumann
70aa10cef7 app/base/Makefile.am renamed to siox.[ch].
2005-07-13  Sven Neumann  <sven@gimp.org>

	* app/base/Makefile.am
	* app/base/segmentator.[ch]: renamed to siox.[ch].

	* app/base/siox.[ch]: added API docs and a link to the algorithm's
	new homepage. Removed unused code.

	* app/core/gimpdrawable-foreground-extract.c: changed accordingly.
2005-07-13 19:30:25 +00:00
Sven Neumann
fbd53c511b added smooth_region(), a simple convolution filter to smooth a mask.
2005-07-13  Sven Neumann  <sven@gimp.org>

	* app/paint-funcs/paint-funcs.[ch]: added smooth_region(), a
	simple convolution filter to smooth a mask.

	* app/base/segmentator.c (smooth_mask): use the new function.
2005-07-13 17:27:37 +00:00
Sven Neumann
1aae154af7 for now, implement smooth_mask() by means of gaussian_blur_region().
2005-07-11  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: for now, implement smooth_mask() by
	means of gaussian_blur_region().
2005-07-11 21:03:10 +00:00
Hans Breuer
d9ac028c50 updated dont include "gimpmessagedialog.c" to avoid redefinitions. Instead
2005-07-10  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc app/gimpcore.def : updated
	* app/widgets/gimpcontrollerlist.c : dont include
	"gimpmessagedialog.c" to avoid redefinitions.
	Instead include gimpmessagebox.h and gimpmessagedialog.h

	* plug-ins/common/raw.c : include <io.h>
	* plug-ins/common/screenshot.c : make it compile. It
	still has no code to actually work on win32.
2005-07-10 16:24:57 +00:00
Sven Neumann
f2382a6ef6 ported to GIMP data structures. There are still some TODOs, smooth_mask()
2005-07-10  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.[ch]: ported to GIMP data structures. There
	are still some TODOs, smooth_mask() isn't implemented yet.

	* app/core/Makefile.am
	* app/core/gimpdrawable-foreground-extract.[ch]: thin wrapper around
	the new segmentation algorithm.

	* tools/pdbgen/pdb/drawable.pdb: added a first draft of a PDB API
	for foreground extraction.

	* app/pdb/drawable_cmds.c
	* app/pdb/internal_procs.c
	* libgimp/gimpdrawable_pdb.[ch]: regenerated.
2005-07-09 22:44:26 +00:00
Sven Neumann
841144efbd formatting.
2005-07-09  Sven Neumann  <sven@gimp.org>

	* app/base/pixel-surround.[ch]: formatting.
2005-07-09 12:04:23 +00:00
Sven Neumann
d34180d5a0 temporarily added uint->RGB conversion for Java byteorder 2005-07-08 23:58:45 +00:00
Sven Neumann
6248b954db plugged memory leaks.
2005-07-09  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: plugged memory leaks.
2005-07-08 22:33:18 +00:00
Sven Neumann
edc6dc95e6 minor cleanup, use a GQueue instead of a custom queue implementation.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: minor cleanup, use a GQueue instead of a
	custom queue implementation.
2005-07-08 21:24:55 +00:00
Sven Neumann
447ee79608 minor cleanup.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.c: minor cleanup.
2005-07-08 19:42:29 +00:00
Sven Neumann
bc170c2e2c applied GIMP coding style, switch to glib functions for memory allocation.
2005-07-08  Sven Neumann  <sven@gimp.org>

	* app/base/segmentator.[ch]: applied GIMP coding style, switch to
	glib functions for memory allocation.
2005-07-07 23:48:58 +00:00