What's new

Stretch selection of layer without distorting details?


moots404

New Member
Messages
4
Likes
8
I am trying to figure out how to stretch/skew a portion of a layer without it affecting surrounding details from lining up with the details I'm modifying. I've tried puppetwarp, free transform, but the closest I could get to what I'm trying to do is liquify, to a small degree. I usually just use free transform to stretch and skew the selection then redoing the details but sometimes that doesn't always look right, or requires way more work than I feel is necessary. I know there has got to be a way to do what I'm trying to do. I just want the details (the hair strokes for example) to remain anchored and lined up, and so I don't have to redraw half of it. Done this way too many times.

2020-11-20 22_21_28-Untitled-3.psd @ 200% (Layer 4, RGB_8) _.png

2020-11-20 22_22_22-Untitled-3.psd @ 200% (Layer 4, RGB_8) _.png
 

Rich54

Guru
Messages
1,001
Likes
1,960
Any time you stretch an area, the underlying texture will stretch with it. I can't think of any way around that. But if you want a certain area elongated, what if you made a selection—similar to the selection you made in your first attachment—and copied that to a new layer. Reposition that new layer using the Move tool, and then use the Patch tool to smooth over the seams. Like this:

Stretch.jpg
 

JeffK

Power User
Messages
401
Likes
538
@Rich54 had an excellent suggestion and probably the way that I would have approach it as well.
But I did play with it a bit this morning and found some additional options.

Start by selecting the part you want to stretch and place it on another layer. Note - I've enlarged the stretch):
Then with that layer active, got to Edit - Free Transform. and pull on the handles to stretch your image in the direction you want to go. You may have to pull on additional handles for fit and orientation:

1605964983739.png

:An additional way I found, was to begin the same way by placing the selected part on another layer.
Then with that layer active, using your lasso tool, draw an area where you want the image to stretch into to create a "container". The go to Edit - Fill - Content Aware Fill.
Make sure you've chosen some of the black area of the selected part as well so the tool knows what to fill the empty area with:

1605965485361.png

This is just me poking around with different tools. They may not work in all circumstances but they seem to work for this.
Any questions, let me know.

- Jeff
 

moots404

New Member
Messages
4
Likes
8
Any time you stretch an area, the underlying texture will stretch with it. I can't think of any way around that. But if you want a certain area elongated, what if you made a selection—similar to the selection you made in your first attachment—and copied that to a new layer. Reposition that new layer using the Move tool, and then use the Patch tool to smooth over the seams. Like this:

View attachment 117148
I really like that idea. I've been using photoshop for over a decade and have never learned or even touched the patch/content aware toolset before, and since posting this I'd been doing research on it and found it can do sorta what I'm looking for. Thank you for that, though, because I'll definitely be using that idea in the future as well.
I had only taken a class in highschool for photoshop one year and learned some of the basics but that was so long ago and on like CS2 or something. I'm also a bit stubborn about trying/learning new tools for some reason and a few years ago I accidentally discovered the smudge tool and couldn't believe I'd been trying to get that same effect by repeatedly using blur tools all that time. I'm constantly improving I think and if you'd like to see some of my art I'll share in showyourwork

Thanks for the pointers, guys !
 
Last edited:

Top