Search In
• More options...
Find results that contain...
Find results in...

# Draggable locked in diagonal movement only

## Recommended Posts

Hello,

I was wondering how could I limit a draggable movement only diagonally towards top-left and bottom-right.

Thanks guys!

##### Share on other sites

Hi Michael,

Not sure how practical that will be to implement. You could rotate the bounds by 45 and then rotate the draggable's target by -45 like this:
http://codepen.io/GreenSock/pen/azNxRO

Does that work?

##### Share on other sites

Hey Carl I see what you mean, the codepen example doesn't work though, it throws the Codepen 404 equivalent.

##### Share on other sites

Thank you, yes that is what I was looking for, sometimes we have to think out of the box right?

Really Nice Carl

##### Share on other sites

weird. try this:

See the Pen azNxRO by GreenSock (@GreenSock) on CodePen

Very neat!

##### Share on other sites

• 1 month later...

This is in another way to do it:

Hi Cirox,

You can constrain the shape by doing a little math...

var offset = this.x * Math.tan(45 * Math.PI / 180);
TweenLite.set(drag, { width: this.x, height: offset });
TweenLite.set(handle, { top: offset });

But an even easier approach would be to do it as a ratio. 45 degrees would be 1:1, so just set the height and width equal to each other.
TweenLite.set(drag, { width: this.x, height: this.x });
TweenLite.set(handle, { top: this.x });

CodePen URL:

See the Pen emWwzb?editors=001 by osublake (@osublake) on CodePen

Thanks OSUblake