Commit Graph

237 Commits

Author SHA1 Message Date
Michael Natterer 26ca306cc9 app: Makefile formatting cleanup 2010-11-04 21:08:51 +01:00
Alexia Death d2563a69fd app: Cleanup in preparation of merge 2010-11-04 20:27:11 +02:00
Alexia Death 040c415905 app: Fix cage operaton cliping offset 2010-11-04 19:54:07 +02:00
Alexia Death 9b96120c31 app: Make cage tool behave nice with offset layers 2010-11-04 00:26:43 +02:00
Alexia Death 1ae2ad8566 app: Generic cage cleanup 2010-11-02 21:28:30 +02:00
Alexia Death d7492cb528 app: remove forward transform preview from cage tool, reverse is actually faster 2010-10-07 00:41:40 +03:00
Alexia Death e133035440 Fix point selection detection 2010-09-05 13:33:26 +03:00
Alexia Death 55b0c9f08e Some generic method sorting and cleanup in the tool 2010-09-02 22:28:06 +03:00
Alexia Death 6dc2042fe2 app: cage tool adjustments and fixes
Just show the complete preview and take the fill color from under first point.
2010-08-30 23:36:20 +03:00
Michael Muré 37d38f596e gimpcageconfig: solve segfault when adding 25th cage handle 2010-08-15 14:53:13 +02:00
Michael Muré f44dcf26b3 fill the original cage position with a plain color + UI 2010-08-15 14:20:47 +02:00
Michael Muré e2a7ef2e32 gimpcageconfig: displace the cage by a small delta to avoid having pixel exactly on edges 2010-08-15 12:59:49 +02:00
Michael Muré 537c72b0cf gimpcageconfig: add missing normal computing, which caused wrong first preview 2010-08-15 02:09:41 +02:00
Michael Muré f92b01d233 gimpoperationcagetransform: optimization 2010-08-15 01:00:21 +02:00
Michael Muré 02a14315f4 gimpoperationcagepreview: transform only pixel inside the cage 2010-08-14 23:53:23 +02:00
Michael Muré b7c2b26def precompute edge normal 2010-08-14 23:52:41 +02:00
Michael Muré c4a196d87a gimpoperationcagepreview: make the preview more visible 2010-08-14 21:37:17 +02:00
Michael Muré 2dfb79ec74 gimpoperationcagecoefcalc: correct coef calculation. Now deform works as expected. 2010-08-14 21:26:19 +02:00
Michael Muré 54a9294ea9 cleaning 2010-08-13 18:26:38 +02:00
Alexia Death a31b437bf6 Fix gfloat to gdouble resolving any nan-ds in coefs. 2010-08-13 00:07:25 +03:00
Michael Muré 25818716b3 GimpOperationCageTransform: cleanup 2010-08-12 14:36:07 +02:00
Michael Muré 9b3dbf9f3e renaming of GimpOperationCage to GimpOperationCagePreview + cleaning 2010-08-12 14:34:19 +02:00
Michael Muré 3d79167074 change name of gimp cage gegl op to gimp internal op. 2010-08-12 13:47:31 +02:00
Michael Muré 023aa06883 gimpoperationcoefcalc: attempt to fix the wrong coefficient inside and in the boundary of the cage. 2010-08-12 13:43:01 +02:00
Michael Muré 50fdbf09fd GimpOperationCoefCalc: compute the coefficient only inside the cage.
There is still a problem when pixel is exactly on a edge.
+ coding style / cleaning
2010-08-11 20:36:25 +02:00
Michael Muré eabbabb571 GimpCageConfig: add 2 method to check if a point is inside the cage.
Second one is commented, for test.
2010-08-11 20:11:49 +02:00
Alexia Death f593562055 Fix a memory allocation issue mid recursion and put a depth limit in place
The limit can be set to say 7 or 8 when bugs are out of the coef calc.
2010-08-10 22:01:18 +03:00
Michael Muré 81c948f196 GimpOperationCageTransform: pre-full the coordinate buffer with no-displacement coordinate, to keep the background while rendering 2010-08-10 00:12:10 +02:00
Michael Muré 34b40a6c7e solve the problem result cropped to the bounding box of the cage 2010-08-09 23:33:11 +02:00
Michael Muré e94d90f4a7 GimpOperationCageTransform: add code to compute the exact source point to handle aliasing. 2010-08-08 13:28:49 +02:00
Michael Muré 90d3900fbc gimpoperationcagetransform: clean unnecessery code 2010-08-08 13:27:41 +02:00
Michael Muré 69cf476387 add a gegl op that compute the reverse transformation of a cage deform. still wip. 2010-08-08 13:27:31 +02:00
Michael Muré 459414c9dc gimpcagetool: use cage_transform and gegl_render_mapping to do the transform
gimpoperationcage: cleaning
gimpcageconfig: cleaning
2010-08-08 13:27:20 +02:00
Michael Muré 8c33eb83f7 gimpcagetool, gimpoperationcage: now the forward transform work as
expected
2010-08-08 13:27:02 +02:00
Michael Muré 09ce431e7d gimpoperationcage: now inherit from GeglOperationComposer, to have an aux buffer for the coef 2010-08-08 13:26:41 +02:00
Michael Muré 670a20de05 gimpcageconfig: correct scaling factor memory allocation 2010-08-08 13:26:29 +02:00
Michael Muré 54ef87a7d3 gimpcageconfig: add the scaling factor computation 2010-08-08 13:26:20 +02:00
Michael Muré 973aeee9d4 register gimpoperationcagecoefcalc 2010-08-08 13:26:12 +02:00
Michael Muré 4f26fc8d44 gimpcageconfig: fix compilation 2010-08-08 13:26:03 +02:00
Michael Muré 7436539878 gimpcageconfig: correct indentation 2010-08-08 13:25:53 +02:00
Michael Muré d7474cd33a gimpcageconfig: correct indentation 2010-08-08 13:25:42 +02:00
Michael Muré 74a37c6266 gimpoperationcoefcalc: get_bounding_box now return the bounding box of the cage 2010-08-08 13:25:33 +02:00
Michael Muré b05460f292 add a gegl operator that compute the coeffcient for a cage transform 2010-08-08 13:25:21 +02:00
Michael Muré 2abbfc9114 rewrite of the GimpCage data structure as a Gegl config object 2010-08-08 13:25:00 +02:00
Michael Muré a20c519baf gimpoperationcage: use of no_cache = false 2010-08-08 13:23:33 +02:00
Michael Muré c1485b214e gimpoperationcage: update of the static cage 2010-08-08 13:23:23 +02:00
Michael Muré ad0a81c528 gimpoperationcage: iterate accordingly to cage's bounding box.
pre-copy the input buffer to the output.
2010-08-08 13:22:34 +02:00
Michael Muré 1b67742e4f gimpcage: add a function to compute the bounding box of the deformed cage. Computing of the coefficient is done accordingly. Update of the gegl op. Also add a wip function to compute if the cage is clockwise or not. 2010-08-08 13:22:24 +02:00
Michael Muré a93752554d gimpoperationcage: update of the gegl operator to use the deformed cage indide GimpCage and the scale factor. 2010-08-08 13:22:14 +02:00
Michael Muré 98b198785a gimpoperationcage: the gegl op now do a transformation, with cage vertices hardcoded 2010-08-08 13:21:41 +02:00