# Gaussian blur moves object when applied in different places in the code?

• Why does applying a Gaussian blur in different places in the code move the image it applies to? Example code, output, revised code putting the blur call before the 1st image, output.

``````size(550, 300)
# initiate a new image object
im = ImageObject()
# draw in the image
# the 'with' statement will create a custom context
# only drawing in the image object
with im:
# set a size for the image
size(200, 200)
# draw something
fill(1, 0, 0)
rect(0, 0, width(), height())
fill(1)
fontSize(30)
text("Hello World", (10, 10))
# draw in the image in the main context
image(im, (10, 50))
# apply some filters
im.gaussianBlur()
# get the offset (with a blur this will be negative)
x, y = im.offset()
# draw in the image in the main context
image(im, (300+x, 50+y))
``````

yields: ``````size(550, 300)
# initiate a new image object
im = ImageObject()
# draw in the image
# the 'with' statement will create a custom context
# only drawing in the image object
with im:
# set a size for the image
size(200, 200)
# draw something
fill(1, 0, 0)
rect(0, 0, width(), height())
fill(1)
fontSize(30)
text("Hello World", (10, 10))
# apply some filters
im.gaussianBlur()
# draw in the image in the main context
image(im, (10, 50))
# get the offset (with a blur this will be negative)
x, y = im.offset()
# draw in the image in the main context
image(im, (300+x, 50+y))
``````

yields: • not really a bug: when applying a blur the images gets bigger, check with `im.size()` before and after the blur is applied.

`im.offset()` is providing you the correct `x`, `y` difference.