It is currently Sat Jul 18, 2026 2:18 am


All times are UTC - 5 hours [ DST ]



Post new topic Reply to topic  [ 5 posts ] 
Author Message
 Post subject: How to set the plug-in-curve-bend parameter in SCM
PostPosted: Thu Sep 29, 2016 12:28 am  (#1) 
Offline
GimpChat Member

Joined: Feb 21, 2016
Posts: 34
Hi
I am trying to use a script called distortions, so I save the curve node down, then adjust parameters, but is wrong, please help me to see what was wrong.
Thank you
Attachment:
snip_20160929124011.png
snip_20160929124011.png [ 37.98 KiB | Viewed 4243 times ]
Attachment:
snip_20160929123518.png
snip_20160929123518.png [ 65.86 KiB | Viewed 4243 times ]
Attachment:
testscm.zip [2.86 KiB]
Downloaded 269 times


Share on Facebook Share on Twitter Share on Orkut Share on Digg Share on MySpace Share on Delicious Share on Technorati
Top
 Post subject: Re: How to set the plug-in-curve-bend parameter in SCM
PostPosted: Thu Sep 29, 2016 9:30 am  (#2) 
Offline
Global Moderator
User avatar

Joined: May 16, 2010
Posts: 16113
(define (curvetest image
              drawable)

  (let* (
         (type          (car (gimp-drawable-type-with-alpha drawable)))
       (alpha (car (gimp-drawable-has-alpha drawable)))         

        )

    (define (upper-point-x)
    (let* ((up-x (cons-array 17 'double)))
    (aset up-x 0 +0.000000)
    (aset up-x 1 +0.082353)
    (aset up-x 2 -1.000000)
    (aset up-x 3 -1.000000)
    (aset up-x 4 -1.000000)
    (aset up-x 5 -1.000000)
    (aset up-x 6 +0.368627)
    (aset up-x 7 -1.000000)
    (aset up-x 8 -1.000000)
    (aset up-x 9 -1.000000)
    (aset up-x 10 -1.000000)
    (aset up-x 11 -1.000000)
    (aset up-x 12 -1.000000)
    (aset up-x 13 -1.000000)
    (aset up-x 14 -1.000000)
    (aset up-x 15 -1.000000)
    (aset up-x 16 +1.000000)
     ))
   
    (define (lower-point-x)
    (let* ((lo-x (cons-array 17 'double)))
    (aset lo-x 0 +0.000000)
    (aset lo-x 1 +0.074510)
    (aset lo-x 2 -1.000000)
    (aset lo-x 3 -1.000000)
    (aset lo-x 4 -1.000000)
    (aset lo-x 5 -1.000000)
    (aset lo-x 6 -1.000000)
    (aset lo-x 7 +0.407843)
    (aset lo-x 8 -1.000000)
    (aset lo-x 9 -1.000000)
    (aset lo-x 10 -1.000000)
    (aset lo-x 11 -1.000000)
    (aset lo-x 12 -1.000000)
    (aset lo-x 13 -1.000000)
    (aset lo-x 14 -1.000000)
    (aset lo-x 15 -1.000000)
    (aset lo-x 16 +1.000000)
    ))
   
    (define (upper-point-y)
    (let* ((up-y (cons-array 17 'double)))
    (aset up-y 0 +0.500000)
    (aset up-y 1 +0.650980)
    (aset up-y 2 +0.631373)
    (aset up-y 3 -1.000000)
    (aset up-y 4 -1.000000)
    (aset up-y 5 -1.000000)
    (aset up-y 6 +0.521569)
    (aset up-y 7 +0.474510)
    (aset up-y 8 -1.000000)
    (aset up-y 9 -1.000000)
    (aset up-y 10 -1.000000)
    (aset up-y 11 -1.000000)
    (aset up-y 12 -1.000000)
    (aset up-y 13 -1.000000)
    (aset up-y 14 -1.000000)
    (aset up-y 15 -1.000000)
    (aset up-y 16 +0.500000)
    ))
   
    (define (lower-point-y)
    (let* ((lo-y (cons-array 17 'double)))
    (aset lo-y 0 +0.500000)
    (aset lo-y 1 +0.678431)
    (aset lo-y 2 +0.631373)
    (aset lo-y 3 -1.000000)
    (aset lo-y 4 -1.000000)
    (aset lo-y 5 -1.000000)
    (aset lo-y 6 +0.529412)
    (aset lo-y 7 +0.541176)
    (aset lo-y 8 -1.000000)
    (aset lo-y 9 -1.000000)
    (aset lo-y 10 -1.000000)
    (aset lo-y 11 -1.000000)
    (aset lo-y 12 -1.000000)
    (aset lo-y 13 -1.000000)
    (aset lo-y 14 -1.000000)
    (aset lo-y 15 -1.000000)
    (aset lo-y 16 +0.517647)
    ))
   
    (define (upper-val-y)
    (let* ((uval-y (cons-array 256 'byte)))
(aset uval-y 0 129)
(aset uval-y 1 132)
(aset uval-y 2 136)
(aset uval-y 3 140)
(aset uval-y 4 144)
(aset uval-y 5 147)
(aset uval-y 6 150)
(aset uval-y 7 153)
(aset uval-y 8 155)
(aset uval-y 9 157)
(aset uval-y 10 159)
(aset uval-y 11 160)
(aset uval-y 12 162)
(aset uval-y 13 163)
(aset uval-y 14 163)
(aset uval-y 15 164)
(aset uval-y 16 165)
(aset uval-y 17 165)
(aset uval-y 18 166)
(aset uval-y 19 166)
(aset uval-y 20 166)
(aset uval-y 21 166)
(aset uval-y 22 166)
(aset uval-y 23 166)
(aset uval-y 24 166)
(aset uval-y 25 166)
(aset uval-y 26 165)
(aset uval-y 27 165)
(aset uval-y 28 165)
(aset uval-y 29 164)
(aset uval-y 30 164)
(aset uval-y 31 163)
(aset uval-y 32 163)
(aset uval-y 33 162)
(aset uval-y 34 162)
(aset uval-y 35 161)
(aset uval-y 36 160)
(aset uval-y 37 160)
(aset uval-y 38 159)
(aset uval-y 39 158)
(aset uval-y 40 158)
(aset uval-y 41 157)
(aset uval-y 42 156)
(aset uval-y 43 156)
(aset uval-y 44 155)
(aset uval-y 45 154)
(aset uval-y 46 154)
(aset uval-y 47 153)
(aset uval-y 48 152)
(aset uval-y 49 152)
(aset uval-y 50 151)
(aset uval-y 51 150)
(aset uval-y 52 150)
(aset uval-y 53 149)
(aset uval-y 54 149)
(aset uval-y 55 148)
(aset uval-y 56 147)
(aset uval-y 57 147)
(aset uval-y 58 146)
(aset uval-y 59 146)
(aset uval-y 60 145)
(aset uval-y 61 144)
(aset uval-y 62 144)
(aset uval-y 63 143)
(aset uval-y 64 143)
(aset uval-y 65 142)
(aset uval-y 66 142)
(aset uval-y 67 141)
(aset uval-y 68 141)
(aset uval-y 69 140)
(aset uval-y 70 140)
(aset uval-y 71 140)
(aset uval-y 72 139)
(aset uval-y 73 139)
(aset uval-y 74 138)
(aset uval-y 75 138)
(aset uval-y 76 138)
(aset uval-y 77 137)
(aset uval-y 78 137)
(aset uval-y 79 137)
(aset uval-y 80 136)
(aset uval-y 81 136)
(aset uval-y 82 136)
(aset uval-y 83 135)
(aset uval-y 84 135)
(aset uval-y 85 135)
(aset uval-y 86 135)
(aset uval-y 87 134)
(aset uval-y 88 134)
(aset uval-y 89 134)
(aset uval-y 90 134)
(aset uval-y 91 133)
(aset uval-y 92 133)
(aset uval-y 93 133)
(aset uval-y 94 133)
(aset uval-y 95 133)
(aset uval-y 96 133)
(aset uval-y 97 132)
(aset uval-y 98 132)
(aset uval-y 99 132)
(aset uval-y 100 132)
(aset uval-y 101 132)
(aset uval-y 102 132)
(aset uval-y 103 132)
(aset uval-y 104 132)
(aset uval-y 105 132)
(aset uval-y 106 131)
(aset uval-y 107 131)
(aset uval-y 108 131)
(aset uval-y 109 131)
(aset uval-y 110 131)
(aset uval-y 111 131)
(aset uval-y 112 131)
(aset uval-y 113 131)
(aset uval-y 114 131)
(aset uval-y 115 131)
(aset uval-y 116 131)
(aset uval-y 117 130)
(aset uval-y 118 130)
(aset uval-y 119 130)
(aset uval-y 120 130)
(aset uval-y 121 130)
(aset uval-y 122 130)
(aset uval-y 123 130)
(aset uval-y 124 130)
(aset uval-y 125 130)
(aset uval-y 126 130)
(aset uval-y 127 130)
(aset uval-y 128 130)
(aset uval-y 129 130)
(aset uval-y 130 130)
(aset uval-y 131 130)
(aset uval-y 132 130)
(aset uval-y 133 129)
(aset uval-y 134 129)
(aset uval-y 135 129)
(aset uval-y 136 129)
(aset uval-y 137 129)
(aset uval-y 138 129)
(aset uval-y 139 129)
(aset uval-y 140 129)
(aset uval-y 141 129)
(aset uval-y 142 129)
(aset uval-y 143 129)
(aset uval-y 144 129)
(aset uval-y 145 129)
(aset uval-y 146 129)
(aset uval-y 147 129)
(aset uval-y 148 129)
(aset uval-y 149 129)
(aset uval-y 150 129)
(aset uval-y 151 129)
(aset uval-y 152 129)
(aset uval-y 153 129)
(aset uval-y 154 129)
(aset uval-y 155 129)
(aset uval-y 156 129)
(aset uval-y 157 129)
(aset uval-y 158 129)
(aset uval-y 159 129)
(aset uval-y 160 129)
(aset uval-y 161 129)
(aset uval-y 162 128)
(aset uval-y 163 128)
(aset uval-y 164 128)
(aset uval-y 165 128)
(aset uval-y 166 128)
(aset uval-y 167 128)
(aset uval-y 168 128)
(aset uval-y 169 128)
(aset uval-y 170 128)
(aset uval-y 171 128)
(aset uval-y 172 128)
(aset uval-y 173 128)
(aset uval-y 174 128)
(aset uval-y 175 128)
(aset uval-y 176 128)
(aset uval-y 177 128)
(aset uval-y 178 128)
(aset uval-y 179 128)
(aset uval-y 180 128)
(aset uval-y 181 128)
(aset uval-y 182 128)
(aset uval-y 183 128)
(aset uval-y 184 128)
(aset uval-y 185 128)
(aset uval-y 186 128)
(aset uval-y 187 128)
(aset uval-y 188 128)
(aset uval-y 189 128)
(aset uval-y 190 128)
(aset uval-y 191 128)
(aset uval-y 192 128)
(aset uval-y 193 128)
(aset uval-y 194 128)
(aset uval-y 195 128)
(aset uval-y 196 128)
(aset uval-y 197 128)
(aset uval-y 198 128)
(aset uval-y 199 128)
(aset uval-y 200 128)
(aset uval-y 201 128)
(aset uval-y 202 128)
(aset uval-y 203 128)
(aset uval-y 204 128)
(aset uval-y 205 128)
(aset uval-y 206 128)
(aset uval-y 207 128)
(aset uval-y 208 128)
(aset uval-y 209 128)
(aset uval-y 210 128)
(aset uval-y 211 128)
(aset uval-y 212 128)
(aset uval-y 213 128)
(aset uval-y 214 128)
(aset uval-y 215 128)
(aset uval-y 216 128)
(aset uval-y 217 128)
(aset uval-y 218 128)
(aset uval-y 219 128)
(aset uval-y 220 128)
(aset uval-y 221 128)
(aset uval-y 222 128)
(aset uval-y 223 128)
(aset uval-y 224 128)
(aset uval-y 225 128)
(aset uval-y 226 128)
(aset uval-y 227 128)
(aset uval-y 228 128)
(aset uval-y 229 128)
(aset uval-y 230 128)
(aset uval-y 231 128)
(aset uval-y 232 128)
(aset uval-y 233 128)
(aset uval-y 234 128)
(aset uval-y 235 128)
(aset uval-y 236 128)
(aset uval-y 237 128)
(aset uval-y 238 128)
(aset uval-y 239 128)
(aset uval-y 240 128)
(aset uval-y 241 128)
(aset uval-y 242 128)
(aset uval-y 243 128)
(aset uval-y 244 128)
(aset uval-y 245 128)
(aset uval-y 246 128)
(aset uval-y 247 128)
(aset uval-y 248 128)
(aset uval-y 249 128)
(aset uval-y 250 128)
(aset uval-y 251 128)
(aset uval-y 252 128)
(aset uval-y 253 128)
(aset uval-y 254 128)
(aset uval-y 255 128)
    ))

    (define (lower-val-y)
    (let* ((lval-y (cons-array 256 'byte)))
(aset lval-y 0 129)
(aset lval-y 1 135)
(aset lval-y 2 142)
(aset lval-y 3 149)
(aset lval-y 4 154)
(aset lval-y 5 158)
(aset lval-y 6 161)
(aset lval-y 7 163)
(aset lval-y 8 165)
(aset lval-y 9 167)
(aset lval-y 10 168)
(aset lval-y 11 169)
(aset lval-y 12 170)
(aset lval-y 13 171)
(aset lval-y 14 172)
(aset lval-y 15 172)
(aset lval-y 16 172)
(aset lval-y 17 173)
(aset lval-y 18 173)
(aset lval-y 19 173)
(aset lval-y 20 173)
(aset lval-y 21 173)
(aset lval-y 22 173)
(aset lval-y 23 173)
(aset lval-y 24 173)
(aset lval-y 25 172)
(aset lval-y 26 172)
(aset lval-y 27 172)
(aset lval-y 28 172)
(aset lval-y 29 171)
(aset lval-y 30 171)
(aset lval-y 31 170)
(aset lval-y 32 170)
(aset lval-y 33 170)
(aset lval-y 34 169)
(aset lval-y 35 169)
(aset lval-y 36 168)
(aset lval-y 37 168)
(aset lval-y 38 167)
(aset lval-y 39 166)
(aset lval-y 40 166)
(aset lval-y 41 165)
(aset lval-y 42 165)
(aset lval-y 43 164)
(aset lval-y 44 164)
(aset lval-y 45 163)
(aset lval-y 46 163)
(aset lval-y 47 162)
(aset lval-y 48 161)
(aset lval-y 49 161)
(aset lval-y 50 160)
(aset lval-y 51 160)
(aset lval-y 52 159)
(aset lval-y 53 159)
(aset lval-y 54 158)
(aset lval-y 55 157)
(aset lval-y 56 157)
(aset lval-y 57 156)
(aset lval-y 58 156)
(aset lval-y 59 155)
(aset lval-y 60 155)
(aset lval-y 61 154)
(aset lval-y 62 154)
(aset lval-y 63 153)
(aset lval-y 64 153)
(aset lval-y 65 152)
(aset lval-y 66 151)
(aset lval-y 67 151)
(aset lval-y 68 150)
(aset lval-y 69 150)
(aset lval-y 70 149)
(aset lval-y 71 149)
(aset lval-y 72 148)
(aset lval-y 73 148)
(aset lval-y 74 148)
(aset lval-y 75 147)
(aset lval-y 76 147)
(aset lval-y 77 146)
(aset lval-y 78 146)
(aset lval-y 79 145)
(aset lval-y 80 145)
(aset lval-y 81 145)
(aset lval-y 82 144)
(aset lval-y 83 144)
(aset lval-y 84 143)
(aset lval-y 85 143)
(aset lval-y 86 143)
(aset lval-y 87 142)
(aset lval-y 88 142)
(aset lval-y 89 142)
(aset lval-y 90 141)
(aset lval-y 91 141)
(aset lval-y 92 141)
(aset lval-y 93 140)
(aset lval-y 94 140)
(aset lval-y 95 140)
(aset lval-y 96 140)
(aset lval-y 97 139)
(aset lval-y 98 139)
(aset lval-y 99 139)
(aset lval-y 100 139)
(aset lval-y 101 138)
(aset lval-y 102 138)
(aset lval-y 103 138)
(aset lval-y 104 138)
(aset lval-y 105 138)
(aset lval-y 106 138)
(aset lval-y 107 137)
(aset lval-y 108 137)
(aset lval-y 109 137)
(aset lval-y 110 137)
(aset lval-y 111 137)
(aset lval-y 112 137)
(aset lval-y 113 137)
(aset lval-y 114 136)
(aset lval-y 115 136)
(aset lval-y 116 136)
(aset lval-y 117 136)
(aset lval-y 118 136)
(aset lval-y 119 136)
(aset lval-y 120 136)
(aset lval-y 121 136)
(aset lval-y 122 136)
(aset lval-y 123 136)
(aset lval-y 124 135)
(aset lval-y 125 135)
(aset lval-y 126 135)
(aset lval-y 127 135)
(aset lval-y 128 135)
(aset lval-y 129 135)
(aset lval-y 130 135)
(aset lval-y 131 135)
(aset lval-y 132 135)
(aset lval-y 133 135)
(aset lval-y 134 135)
(aset lval-y 135 135)
(aset lval-y 136 135)
(aset lval-y 137 135)
(aset lval-y 138 134)
(aset lval-y 139 134)
(aset lval-y 140 134)
(aset lval-y 141 134)
(aset lval-y 142 134)
(aset lval-y 143 134)
(aset lval-y 144 134)
(aset lval-y 145 134)
(aset lval-y 146 134)
(aset lval-y 147 134)
(aset lval-y 148 134)
(aset lval-y 149 134)
(aset lval-y 150 134)
(aset lval-y 151 134)
(aset lval-y 152 134)
(aset lval-y 153 134)
(aset lval-y 154 134)
(aset lval-y 155 134)
(aset lval-y 156 134)
(aset lval-y 157 134)
(aset lval-y 158 134)
(aset lval-y 159 133)
(aset lval-y 160 133)
(aset lval-y 161 133)
(aset lval-y 162 133)
(aset lval-y 163 133)
(aset lval-y 164 133)
(aset lval-y 165 133)
(aset lval-y 166 133)
(aset lval-y 167 133)
(aset lval-y 168 133)
(aset lval-y 169 133)
(aset lval-y 170 133)
(aset lval-y 171 133)
(aset lval-y 172 133)
(aset lval-y 173 133)
(aset lval-y 174 133)
(aset lval-y 175 133)
(aset lval-y 176 133)
(aset lval-y 177 133)
(aset lval-y 178 133)
(aset lval-y 179 133)
(aset lval-y 180 133)
(aset lval-y 181 133)
(aset lval-y 182 133)
(aset lval-y 183 133)
(aset lval-y 184 133)
(aset lval-y 185 133)
(aset lval-y 186 133)
(aset lval-y 187 133)
(aset lval-y 188 133)
(aset lval-y 189 133)
(aset lval-y 190 133)
(aset lval-y 191 133)
(aset lval-y 192 133)
(aset lval-y 193 133)
(aset lval-y 194 133)
(aset lval-y 195 133)
(aset lval-y 196 133)
(aset lval-y 197 133)
(aset lval-y 198 133)
(aset lval-y 199 133)
(aset lval-y 200 133)
(aset lval-y 201 133)
(aset lval-y 202 133)
(aset lval-y 203 133)
(aset lval-y 204 133)
(aset lval-y 205 133)
(aset lval-y 206 133)
(aset lval-y 207 133)
(aset lval-y 208 133)
(aset lval-y 209 133)
(aset lval-y 210 133)
(aset lval-y 211 132)
(aset lval-y 212 132)
(aset lval-y 213 132)
(aset lval-y 214 132)
(aset lval-y 215 132)
(aset lval-y 216 132)
(aset lval-y 217 132)
(aset lval-y 218 132)
(aset lval-y 219 132)
(aset lval-y 220 132)
(aset lval-y 221 132)
(aset lval-y 222 132)
(aset lval-y 223 132)
(aset lval-y 224 132)
(aset lval-y 225 132)
(aset lval-y 226 132)
(aset lval-y 227 132)
(aset lval-y 228 132)
(aset lval-y 229 132)
(aset lval-y 230 132)
(aset lval-y 231 132)
(aset lval-y 232 132)
(aset lval-y 233 132)
(aset lval-y 234 132)
(aset lval-y 235 132)
(aset lval-y 236 132)
(aset lval-y 237 132)
(aset lval-y 238 132)
(aset lval-y 239 132)
(aset lval-y 240 132)
(aset lval-y 241 132)
(aset lval-y 242 132)
(aset lval-y 243 132)
(aset lval-y 244 132)
(aset lval-y 245 132)
(aset lval-y 246 132)
(aset lval-y 247 132)
(aset lval-y 248 132)
(aset lval-y 249 132)
(aset lval-y 250 132)
(aset lval-y 251 132)
(aset lval-y 252 132)
(aset lval-y 253 132)
(aset lval-y 254 132)
(aset lval-y 255 132)   
))         
       
   (if (= alpha FALSE) (gimp-layer-add-alpha drawable))   


   (if (= (car (gimp-selection-is-empty image)) TRUE)
        (gimp-image-select-item image CHANNEL-OP-REPLACE drawable)
    )   

    (plug-in-curve-bend 1 image drawable 0 TRUE TRUE FALSE 0 '17 (upper-point-x) '17 (upper-point-y) '17 (lower-point-x) '17 (lower-point-y) '256 (upper-val-y) '256 (lower-val-y))   
 
    (set! drawable (car (gimp-image-get-active-layer image)))
    (gimp-displays-flush)
  )
)

(script-fu-register "curvetest"
_"curvetest"
_"curvetest"
"cwen" 
""
  "17/02/2016"
  "RGB*"
  SF-IMAGE       "Image"          0
  SF-DRAWABLE    "Drawable"       0
  )
(script-fu-menu-register "curvetest"
                         "<Image>/Filters")


Image

_________________
Image


Top
 Post subject: Re: How to set the plug-in-curve-bend parameter in SCM
PostPosted: Thu Sep 29, 2016 9:31 am  (#3) 
Offline
Global Moderator
User avatar

Joined: May 16, 2010
Posts: 16113
    (plug-in-curve-bend 1 image drawable 0 TRUE TRUE FALSE 0 '17 (upper-point-x) '17 (upper-point-y) '17 (lower-point-x) '17 (lower-point-y) '256 (upper-val-y) '256 (lower-val-y)) 

_________________
Image


Top
 Post subject: Re: How to set the plug-in-curve-bend parameter in SCM
PostPosted: Thu Sep 29, 2016 10:30 pm  (#4) 
Offline
GimpChat Member

Joined: Feb 21, 2016
Posts: 34
Rod wrote:
    (plug-in-curve-bend 1 image drawable 0 TRUE TRUE FALSE 0 '17 (upper-point-x) '17 (upper-point-y) '17 (lower-point-x) '17 (lower-point-y) '256 (upper-val-y) '256 (lower-val-y)) 

Thanks Rod
I have been using GIMP-curves-spline array is parenthetical, now forget the parentheses, thanks for your help.


Top
 Post subject: Re: How to set the plug-in-curve-bend parameter in SCM
PostPosted: Fri Sep 30, 2016 5:36 am  (#5) 
Offline
Global Moderator
User avatar

Joined: May 16, 2010
Posts: 16113
gimptest wrote:
Rod wrote:
    (plug-in-curve-bend 1 image drawable 0 TRUE TRUE FALSE 0 '17 (upper-point-x) '17 (upper-point-y) '17 (lower-point-x) '17 (lower-point-y) '256 (upper-val-y) '256 (lower-val-y)) 

Thanks Rod
I have been using GIMP-curves-spline array is parenthetical, now forget the parentheses, thanks for your help.

No problem. Be interested in the script when you finish it. :) :bigthup

_________________
Image


Top
Post new topic Reply to topic  [ 5 posts ] 

All times are UTC - 5 hours [ DST ]



* Login  



Powered by phpBB3 © phpBB Group