MathGroup Archive 2011

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Curve Tracking and fetching Locator coordinates

  • To: mathgroup at smc.vnet.net
  • Subject: [mg119471] Re: Curve Tracking and fetching Locator coordinates
  • From: Armand Tamzarian <mike.honeychurch at gmail.com>
  • Date: Sun, 5 Jun 2011 07:03:57 -0400 (EDT)
  • References: <isd0rs$1mk$1@smc.vnet.net>

On Jun 4, 8:19 pm, Just A Stranger <forpeopleidontk... at gmail.com>
wrote:
> Hello, I'm trying to figure out how to constrain a locator's movement along
> a curve, but then fetch the coordinates of the locator to use in a
> calculation.
>
> The documentation has an example of a Locator moving along a circle, but
> it's strange, because the way they do it using Normalize seems to make it
> not clear how to access the coordinates of the locator.
>
> This is the example code from the Locator documentation:
>
> DynamicModule[{pt = {1, 0}},
>  Graphics[{Circle[], Locator[Dynamic[pt, (pt = Normalize[#]) &]]},
>   PlotRange -> 2]]
>
> I'm guessing the normalize function is being applied to the locator
> position, and turning it into a unit vector (not entirely clear on how that
> works in the code though). That has the effect of tracking the locator on a
> unit circe But there is no variable for the locator positon. pt is simply a
> list of constants {1,0} (although, I don't understand that entirely either,
> because it also appears to be set to simply being a Normalize function)
>
> Anyway, if someone could give me a hint as to what is going on in that code
> I would much appreciate it (documentation seems sparse on the locator)
>
> Barring that could someone just give me a quick hack for fetching the
> locator's coordinates when it is being tracked along a circle (or better yet
> if it is being tracked along an arbitrary curve.)?
>
> Admittedly I have a foggy grasp about how Dynamic modules work, I'm able to
> do basic stuff, but it starts to get unwieldy if I branch out.
>
> Thank you for any help :)

If you just want to get the points as you move along the circle then
this will do it:

DynamicModule[{pt = {1, 0}}, {Graphics[{Circle[],
    Locator[Dynamic[pt, (pt = Normalize[#]) &]]}, PlotRange -> 2],
  Dynamic[pt]}]

Mike


  • Prev by Date: Re: ContourPlot ColorFunction Question
  • Next by Date: Re: Curve Tracking and fetching Locator coordinates
  • Previous by thread: Curve Tracking and fetching Locator coordinates
  • Next by thread: Re: Curve Tracking and fetching Locator coordinates