# AS 3: Restricting cursor area in Interactive Image Pan

**URL:** https://forum.kirupa.com/t/as-3-restricting-cursor-area-in-interactive-image-pan/301715
**Category:** Uncategorized
**Created:** [December 14, 2009, 5:54pm UTC](https://forum.kirupa.com/t/as-3-restricting-cursor-area-in-interactive-image-pan/301715 "2009-12-14T17:54:22Z")
**Posts on this page:** 1
**Page:** 1

<div class="post-metadata">

### Author: ![d0c3031](https://avatars.discourse-cdn.com/v4/letter/d/f0a364/32.png) [@d0c3031](https://forum.kirupa.com/u/d0c3031)
#### Post date: [December 14, 2009, 5:54pm UTC](https://forum.kirupa.com/t/as-3-restricting-cursor-area-in-interactive-image-pan/301715/1 "2009-12-14T17:54:22Z")

</div>

Hi I know that the image panning has been done to death on these forums, but I was curious if anyone had an AS3 version Krilnon code

from this post titled:  
AS 2: Restricting cursor area in Interactive Image Pan

here is what Krilnon posted to use in AS 2

Thanks

[LEFT][COLOR=#0000FF]import[/COLOR] flash.[COLOR=#000080]geom[/COLOR].[COLOR=#000080]Rectangle[/COLOR];

[COLOR=#0000FF]this[/COLOR].[COLOR=#0000FF]onMouseMove[/COLOR] = [COLOR=#000000] **function** [/COLOR]COLOR=#000000[/COLOR] [COLOR=#000000]{[/COLOR]  
constrainedMove[COLOR=#000000]([/COLOR]bg\_mc, [COLOR=#000080]4[/COLOR], [COLOR=#000080]1[/COLOR], [COLOR=#000000] **new** [/COLOR] Rectangle[COLOR=#000000]([/COLOR][COLOR=#000080]0[/COLOR], [COLOR=#000080]0[/COLOR], [COLOR=#0000FF]Stage[/COLOR].[COLOR=#0000FF]width[/COLOR] / [COLOR=#000080]2[/COLOR], [COLOR=#0000FF]Stage[/COLOR].[COLOR=#0000FF]height[/COLOR][COLOR=#000000])[/COLOR][COLOR=#000000])[/COLOR];  
[COLOR=#000000]}[/COLOR];  
[COLOR=#000000] **function** [/COLOR] constrainedMove[COLOR=#000000]([/COLOR][COLOR=#0000FF]target[/COLOR]:[COLOR=#0000FF]MovieClip[/COLOR], speed:[COLOR=#0000FF]Number[/COLOR], dir:[COLOR=#0000FF]Number[/COLOR], rectangle:Rectangle[COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]  
[COLOR=#0000FF]if[/COLOR][COLOR=#000000]([/COLOR]!rectangle.[COLOR=#000080]contains[/COLOR][COLOR=#000000]([/COLOR][COLOR=#0000FF]\_xmouse[/COLOR], [COLOR=#0000FF]\_ymouse[/COLOR][COLOR=#000000])[/COLOR][COLOR=#000000])[/COLOR] [COLOR=#0000FF]return[/COLOR];

```
[COLOR=#000000] **var** [/COLOR] mousePercent:[COLOR=#0000FF]Number[/COLOR] = [COLOR=#000000]([/COLOR][COLOR=#0000FF]_xmouse[/COLOR] - rectangle.[COLOR=#000080]x[/COLOR][COLOR=#000000])[/COLOR] / rectangle.[COLOR=#0000FF]width[/COLOR];
[COLOR=#000000] **var** [/COLOR] mSpeed:[COLOR=#0000FF]Number[/COLOR];
[COLOR=#0000FF]if[/COLOR] [COLOR=#000000]([/COLOR]dir == [COLOR=#000080]1[/COLOR][COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]
    mSpeed = [COLOR=#000080]1[/COLOR]-mousePercent;
[COLOR=#000000]}[/COLOR] [COLOR=#0000FF]else[/COLOR] [COLOR=#000000]{[/COLOR]
    mSpeed = mousePercent;
[COLOR=#000000]}[/COLOR]

[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]destX[/COLOR] = [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]round[/COLOR][COLOR=#000000]([/COLOR]-[COLOR=#000000]([/COLOR][COLOR=#000000]([/COLOR][COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]_width[/COLOR] - [COLOR=#0000FF]Stage[/COLOR].[COLOR=#0000FF]width[/COLOR][COLOR=#000000])[/COLOR] * mSpeed[COLOR=#000000])[/COLOR][COLOR=#000000])[/COLOR];
[COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]onEnterFrame[/COLOR] = [COLOR=#000000] **function** [/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]
    [COLOR=#0000FF]if[/COLOR] [COLOR=#000000]([/COLOR][COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]_x[/COLOR] == [COLOR=#0000FF]target[/COLOR].[COLOR=#000080]destX[/COLOR][COLOR=#000000])[/COLOR] [COLOR=#000000]{[/COLOR]
        [COLOR=#0000FF]delete[/COLOR] [COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]onEnterFrame[/COLOR];
    [COLOR=#000000]}[/COLOR] [COLOR=#0000FF]else[/COLOR] [COLOR=#000000]{[/COLOR]
        [COLOR=#0000FF]target[/COLOR].[COLOR=#0000FF]_x[/COLOR] -= [COLOR=#0000FF]Math[/COLOR].[COLOR=#0000FF]ceil[/COLOR][COLOR=#000000]([/COLOR][COLOR=#000000]([/COLOR][COLOR=#0000FF]target[/COLOR]._x-[COLOR=#0000FF]target[/COLOR].[COLOR=#000080]destX[/COLOR][COLOR=#000000])[/COLOR]*[COLOR=#000000]([/COLOR]speed/[COLOR=#000080]100[/COLOR][COLOR=#000000])[/COLOR][COLOR=#000000])[/COLOR];
    [COLOR=#000000]}[/COLOR]
[COLOR=#000000]}[/COLOR];

```

[COLOR=#000000]}[/COLOR]  
[/LEFT]
