Skip to content
  • Wolthera van Hövell's avatar
    Merge in krita-testing-wolthera (squashed)(GSoC 2015) · 187f7f25
    Wolthera van Hövell authored
    This adds a advanced GUI for the color profiles.
    With this users can make more informed decisions of which color profile to
    pick. It works best on RGB profiles, and I will attempt to make it work for
    CMYK and other spaces better after GSoC is over. I just need to contact LCMS
    with some questions.
    
    Also added is a new set of Elle's profiles.
    
    Squashed commit of the following:
    
    commit eff7a6da2d110d92d952c4f7ef46c58d80104fa0
    Merge: 840b8ec 422a57e
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 19:09:14 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit 840b8ec00f01b92bc8098d2173f553f710411693
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 17:55:04 2015 +0200
    
        Make widget outline a little nicer
    
    commit 9dc51eb0716eeeaa15cc6ea4ee093e84407c93ff
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 17:23:24 2015 +0200
    
        Make named white point for for the other spaces
    
    commit 0d23d98c2a7585e05382a969b44794917b2c9839
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 17:21:55 2015 +0200
    
        Make colorants more readable by rounding them to 4 decimals in the string
    
    commit 9bb35c79c11f3c79a7c06fd644c0eea1d2664914
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 17:00:19 2015 +0200
    
        Speed up tongue widget by only updating the profile markers.
    
        The tongue itself will still update on resize.
    
    commit ad68be3754eae88e2c246e27ad0df0bae283fe76
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 16:57:53 2015 +0200
    
        Name white point based on list of approximate points.
    
        This is a bit more artist friendly than the raw numbers. In turn the
        actual white point coordinates are now in the tooltip. These are not made
        translatable, because they are international standards.
    
        The approximation is very approximate, so there might be some changes needed
        in the future.
    
    commit b0ffcdc794812847350cf2e44c9c5b6f3ab40ad9
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 15:36:14 2015 +0200
    
        Add comments to the translatable strings
    
    commit 0c0a7e1e1f9d9dea4d708e18a314c437d1fb53f7
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Aug 21 14:58:48 2015 +0200
    
        commenting and cleaup 1
    
    commit 04b4302dafa652a285a0b6e0d80bc3c3ff1a7c0c
    Merge: d81dd45 cdd7a61
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Thu Aug 20 17:29:44 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit d81dd45d645715425a2e9d83953879c8908a8f26
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Thu Aug 20 17:27:57 2015 +0200
    
        Fix build(make export headers fit calligra/2.9 method)
    
    commit f6925281bf249da5cdb3a2c81e8a3bd908e7b857
    Merge: 3739ae0 36e77cf
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Thu Aug 20 14:53:43 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
        Conflicts:
        	krita/ui/widgets/kis_color_space_selector.h
    
    commit 3739ae04a4953df695035566dc38cf51de752181
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Thu Aug 20 14:47:33 2015 +0200
    
        Make head-way for retrieving information from named color profiles
    
        Unfortunately, the LCMS method for retrieving the PCS coordinates is strange
        to me, and I don't understand how to use it's values.
    
    commit 3d70a7e1579357adc0ccc52ceda11964e1e9b41a
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Aug 19 23:23:08 2015 +0200
    
        Add new profiles of Elle's, add descriptions to the advanced space selector
    
        TODO: Add elle to about box
    
    commit d07665295f449c6d29748b857e164917fb10c99f
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Aug 19 23:17:05 2015 +0200
    
        Convert colorants and whitepoints with the chromatic adaption matrix if there.
    
        This is necessary because newer ICC profiles make the whitepoint d50 by
        default and put a transform matrix from the actual white point to d50 into
        the chromatic adaption tag. By inverting and converting we can actually
        see our sRGB with D65 and CIERGB with E whitepoints. There's some rounding
        issues, but this is good for now.
    
    commit f084e436f5e7ef88ce63feb84d0284d48bc7ff23
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Aug 19 15:56:00 2015 +0200
    
        Moving missing code to advanced picker, make it work, hide old picker.
    
        Hiding the old picker is happening pretty hacky now, but it's for proof of
        concept.
    
    commit 800f71cfdbbe10294297b887cd65334d4457b21c
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Aug 19 14:46:26 2015 +0200
    
        Make prettier, alphabetise profiles.
    
        * Made the cietongue widget a bit prettier by introducing anti-aliasing for
        the triangle, making the grid semi-transparent and drawing two circles for
        colorants so they are easier to see.
        * Alphabetised Profile List
        * Make widget a little larger but not larger than 800x600 by default.
    
    commit 4ef754e3abffe11db451f985bb297de1e55ba5bf
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Tue Aug 18 19:07:03 2015 +0200
    
        Add basis new widget for profile selection
    
        This is the basis for a new widget for profile selection
        that allows the user to examine the many profiles Krita ships.
        Central CIETongue widget is based on DigiKam's, as mentioned in the
        credits.
        Todo:
        *Make OK/Cancel actually do things.
        *Figure out how to unadapt from D50.
        *Figure out how to understand if a profile uses L* trc.
        *Figure out how to give nicer feedback for CMYK/XYZ/LAB/YCbCr/Gray.
        *Make widget prettier.
        *Clean-up, don't be shy to nag me about this.
    
    commit 127aab1b95539013d1ed04d223f5cd165647e18b
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Aug 16 13:55:13 2015 +0200
    
        Add functionality for retrieving colorants and displaying them in UI.
    
        This adds 'hasColorants', 'getColorantsXYZ', 'getColorantsxyY',
        'getWhitePointXYZ' and 'getWhitePointxyY' to the profile-classes.
        Then these are used to display said colorants in the color-space selector
        widget. Code is still messy and the colorants are still only d50.
    
    commit ff2104da7b9f48b33b05141876961102a4608a60
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Aug 16 13:54:48 2015 +0200
    
        Fix Sketch Brush Tilt-cursor
    
    commit ec1371e35e39d31055ebbf7c96619cce67859d80
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Tue Aug 11 13:40:32 2015 +0200
    
        Polish looks of the Tangent Tilt UI. Also add in purpose.
    
    commit f006d8c498cce4c954dca5880d16e3c8e3021403
    Merge: 3527bbf c066953
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Tue Aug 11 13:35:23 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
        Conflicts:
        	krita/plugins/filters/normalize/kritanormalize.desktop
        	krita/plugins/paintops/chalk/kis_chalk_paintop_settings.cpp
        	krita/plugins/paintops/libpaintop/kis_brush_based_paintop_settings.cpp
        	krita/plugins/paintops/sketch/kis_sketch_paintop_settings.cpp
        	krita/plugins/paintops/tangentnormal/kis_normal_preview_widget.cpp
        	krita/plugins/paintops/tangentnormal/kis_normal_preview_widget.h
        	krita/plugins/paintops/tangentnormal/kritatangentnormalpaintop.desktop
        	krita/plugins/paintops/tangentnormal/wdgtangenttiltoption.ui
    
    commit 3527bbf5acd3f49047a0c07547e9b5d515d100d8
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Sun Aug 2 18:30:53 2015 +0200
    
        Add some Tangent Normal factory presets.
    
        Otherwise it won't revert to default right.
    
    commit cbd37351e63c86c6201f60ac6410ad72c3fb9c2a
    Merge: 7477061 8c8b58c
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Sun Aug 2 17:32:40 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
        Conflicts:
        	krita/plugins/paintops/libpaintop/kis_current_outline_fetcher.cpp
    
    commit 74770618d639ac0da6e51f432e17f2c84da56e21
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Sun Aug 2 17:20:04 2015 +0200
    
        Turn the Swizzle Preview into a Widget extending QLabel
    
        This allows for it to update instantly when the comboboxes update.
    
    commit 38d0415bed146c879a3a4cc09219fc3023b644f3
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Sun Aug 2 16:38:52 2015 +0200
    
        Make drawing angle to be influenced by the canvas angle.
    
        I did this because it was akward to use otherwise.
        This doesn't apply to the tilt/direction mix. So if people want the original behaviour
        they can use this one.
    
    commit 24ad0a1b60089a338a4b36c3975bf27ffbbba7c0
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Wed Jul 29 15:27:56 2015 +0200
    
        Fix normalise to work with floating point.
    
        It still doesn't output to 0-1 like you'd expect, but at the least it works a bit better.
    
    commit b8dbceed68545bc8f51de35c9c77de329fd5050e
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 23:00:55 2015 +0200
    
        Add Normalize Filter
    
        This filter takes the values of the channel and assigns them to a Qvector3d
        This is then normalizes, and those values are fed back into a color.
        This asures that the values are proper normal values.
    
        Doesn't work with float spaces yet, for some inexplicable reason
    
    commit abf94976c34c2e7873c554b6123dd672d739e0d8
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 18:03:43 2015 +0200
    
        cleanup
    
        Can't figure out how to deal with preview updating...
    
    commit 017ba62f4d1bbb5b3d32501d63bbbaa73fa16243
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 17:11:55 2015 +0200
    
        BUG 338011: Fix sharpness-mirror mode option
    
        Turns out that to render a mirrored mask, you need to actually render it.
    
    commit ffb42bcf8f55efd67442fec9fa8e0d507e3f72ca
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 16:48:50 2015 +0200
    
        Make sharpness work for tangent tilt option
    
    commit 66e001802aaf2cc990349cac971e06a22bcbf96f
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 16:22:35 2015 +0200
    
        Cleanup.
    
        Removed variables that weren't used, and noted variables that were used
        but not recognised by the compiler as Q_UNUSED
    
    commit 3becd0e6be39e8d19c90bf8a4495bbf4bb2bb2c5
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 16:02:53 2015 +0200
    
        Make it use the 8bit variety of the image colour space if the image colour space is RGBA
    
        So a CMYKA space will get sRGB, but a linear sRGB space will use the right profile.
    
    commit 4b6ec179ef9b43195089bcf3ab413e4cf0933680
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 15:21:42 2015 +0200
    
        Convert radian formula to use kis_global
    
        Remove todos in comments associated.
    
    commit ce7bc9d848bb0f0f9b37ed81932543f0aa224bd0
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 14:49:12 2015 +0200
    
        Change elevation to 1 slider and add tilt/direction mix
    
        Elevation is now not a range of two items, but rather a slider that
        is full range at 100% and only purple at 0%.
    
        Direction/Tilt mix will mix the drawing angle and tilt sensors.
    
    commit 1876187dd7ddc6eaa1d6977d43bb951ac2edba1b
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Tue Jul 28 12:41:23 2015 +0200
    
        Fix bug with direction taking 90 for the elevation
    
        This made it not work with the geometric tools.
    
        Ref T87
    
    commit ec867a1449dc511bd69e917618a2ec4008b89c01
    Author: Wolthera van Hövell <griffinvalley@gmail.com>
    Date:   Sun Jul 26 11:01:59 2015 +0200
    
        Adding a preview to the tangent tilt options
    
    commit d4807cca6b29496bfa24f1982271e03e7cf90e9c
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Mon Jul 20 20:57:03 2015 +0200
    
        make tilt cursor also work for chalk.
    
        Fixes T88
    
    commit d582e731c3736be676d9d5604eba9ef8fafa06da
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Mon Jul 20 20:46:44 2015 +0200
    
        Add more options to the tangent normal map brush.
    
    commit 5956a9e6c55f815f19e68556582e67908e6f1201
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Mon Jul 20 15:17:19 2015 +0200
    
        Adding tilt-cursor to other brushengines, removing colour cursor entry
    
    commit d6f9bbec74bc977441e3863a17d4e45e74a490e0
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Jul 19 21:13:06 2015 +0200
    
        Make rotation work with symettry multibrush
    
        Doesn't work with the snowflake and mirror options, but that's not as
        important as the symettry brush.
    
        fixes T130
    
    commit 39727914ef052e164e88ec54794c3ff8049ea8b6
    Merge: fb20900 e797d28
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Jul 19 16:12:04 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit fb2090038f234b4769c58786d09a26241fef0895
    Merge: 5dccb19 32ef906
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Jun 28 14:20:15 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
        Conflicts:
        	krita/image/brushengine/kis_paint_information.cc
        	krita/image/brushengine/kis_paint_information.h
    
    commit 5dccb19e7b01627a72af5687fa154ce150c41a72
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Jun 21 12:58:01 2015 +0200
    
        Fix the lights of the phongbumpmap filter for normalmaps
    
        I still don't like pentalis' way of handling the angle, but
        at the least this works fully now!
    
    commit f0c4531618ff3c5517cc1e7fba31c2fdab1376be
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Jun 21 00:16:59 2015 +0200
    
        make some minor changes to the pixel processor
    
        still not right though
    
    commit a67f8a146d5bddd2d217b4c35a074f32b29777ca
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat Jun 20 21:13:15 2015 +0200
    
        Initial attempt to make the phong-bump-map filter accept normal maps
    
        This allow it to preview normal maps of course, and the result is a little smoother
        it still has issues with the lighting though
    
    commit 0a660ad7f5900cf0adeab4f46f0870fdef816eb5
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat Jun 20 15:07:25 2015 +0200
    
        removing unused functionality from the phong bumpmap filter
    
        otherwise I can't tell what's up or down anymore
    
    commit 6e0a1fc3cd8a2aeba2e2aaad30140d9b45b23ca9
    Author: Boudewijn Rempt <boud@valdyas.org>
    Date:   Sat Jun 20 12:05:53 2015 +0200
    
        whitespace
    
    commit b5c14decc028d18f3c3f1eec7c5d42e7f20affd1
    Merge: bfbc94f 003f921
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat Jun 20 10:39:13 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit bfbc94f687d7cade4400b20fd12de20e8cac9df0
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Tue Jun 16 18:54:25 2015 +0200
    
        Refactor the tangent tilt and canvas rotation involvement
    
        Now, the tangent tilt option understands how to mirror itself, and can be used
        in the mirror mode, as well, the multi-brush now can pass correctly rotated
        values to the tangent tilt, but it doesn't understand how to mirror for
        various reasons.
    
        Ref T130
        Ref T87
    
    commit 31ee7e8a761fa9bfae6e85ef4cfaf236bc80fdd9
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Tue Jun 16 01:14:08 2015 +0200
    
        Initial Implementation Tilt Cursor
    
        It's a little ugly, but it works for all brush-based paintops. I need to go
        back and modify tilt_option more to work with the mirror mode now. Also
        implemented strings for the color cursor, let's see where that is going to
        lead us...
    
        Ref T88
        Ref T87
    
    commit 6de9aa089ac2ec9b708869df974cb41e2dbe7b8f
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Jun 10 15:22:20 2015 +0200
    
        delete log files
    
    commit 3f74928a8313462ce0574dbefd02cc246ec7df7b
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Jun 10 15:17:23 2015 +0200
    
        Revive Tangent Normal Brush Engine with 2.9.5 optimisations included
    
        fixes T335
    
    commit 6edac51708995d180a4bff387d57ff3fb263e0c0
    Merge: 93cbe39 dfb4ad6
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Wed Jun 10 13:57:51 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit 93cbe392da36c3b11437f3b7ca895379656fda9c
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat May 16 21:23:00 2015 +0200
    
        Implement elevation limiter.
    
        I tried implementing the direction limiter, but it doesn't work.
        Also figured out the defaults issue: It doesn't retreive from a kpp though.
        Maybe that is broken? Anyway, got nice defaults in place now.
    
        Ref T129
        Fixes T165
    
    commit 523b67164ee27485ae81cff6323abd4992ce0372
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat May 16 17:00:59 2015 +0200
    
        Let the tangent tilt be affect by the angle of the canvas
    
        Doesn't work for the multi-hand and figure drawing tools yet.
    
        ref T130
    
    commit 527bbdd33f8b0ab1f3076000476ddad99eeee982
    Merge: a9142e0 162244f
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sat May 16 14:15:41 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit a9142e09f7129392bbff0b7113e8e0794fe42330
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Apr 26 19:50:53 2015 +0200
    
        Added tangent swizzle functionality.
    
        Several things are added in this commit:
        1. A UI for tangent normal map options.
        2. The option to switch tangent encoding.
        3. The ability to use tilt-direction, drawing angle or rotation for the
        direction parameter.
        4. A default brush for the tangent normal brush engine, but no clue how
        this is supossed to work...
    
    commit 9cb2eb673184a07f2f4f5dbdc66878514e8bd7f9
    Merge: c1f9702 a76adc6
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Apr 26 14:38:40 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit c1f9702af512d7f253e930c18202ec6a0c3c1856
    Merge: 5642267 697f455
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Sun Apr 26 14:25:51 2015 +0200
    
        Merge branch 'calligra/2.9' into krita-testing-wolthera
    
    commit 56422672c5cb245b58d0c300753a957230cbd4a9
    Author: Wolthera van Hovell <griffinvalley@gmail.com>
    Date:   Fri Apr 24 14:57:29 2015 +0200
    
        First commit tangent normal brush.
    
        It... paints, takes tilt as input, and paints the right colour...
        There's still a lot to be done though.
    187f7f25