Mathematica 9 is now available
Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2011

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

Search the Archive

Re: Constrain locator

  • To: mathgroup at smc.vnet.net
  • Subject: [mg121726] Re: Constrain locator
  • From: Peter Breitfeld <phbrf at t-online.de>
  • Date: Wed, 28 Sep 2011 02:45:12 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <j5r42k$iac$1@smc.vnet.net>

You my use LocatorPane, which takes a locator and a background, which can
be any graphic. Then a possibility might be:

f0[x_] := x^2
DynamicModule[{p = {1, 1}},
 LocatorPane[Dynamic[p, (p = {#[[1]], f0[#[[1]]]}) &],
  Plot[f0[x], {x, -10, 10},
   PlotRange -> {{-4, 4}, {-1, 10}},
   AspectRatio -> 1,
   Epilog ->
    Inset[
      Graphics@Text[
         Style[NumberForm[#, {4, 2}] & /@ Dynamic[p], Larger], {0,0}],
      {1.5, 9}]]]
 ]

Tom De Vries wrote:

> Hello everyone,
>
> I'm looking for a simple way to constrain a locator to a particular function.
>
> I've seen a few methods given by posters to this group and others.
>
> In programs like Sketchpad and Geogebra you can add a point to a
> function and immediately constrain the point to that function.
> You can then "trace" the point, displaying coordinates, etc.
>
> I'm trying to work within Mathematica if I can,  but this is hard for
> me to implement.
>
> Working through a few examples,  I distilled things down to the
> following snippet of code.
> It puts a point on the function y = x^2 and allows the point to be
> dragged along it.
>
> f0[x_] := x^2;
>
> DynamicModule[{p = {1, 1}},
>  loc := Locator[Dynamic[p, (p = {#[[1]], f0[#[[1]]]}) &]];
>  Show[{Plot[f0[x], {x, -10, 10}], Graphics[{loc}]},
>   PlotRange -> {{-4, 4}, {-1, 10}},
>   AspectRatio -> 1]
>  ]
>
> I would be grateful for a few things...
>
> A)  a little help on exactly how this works...!
> B)  changing the display of the locator to a point on the function
> C)  displaying the coordinate of the point
>
> I appreciate the input given by members of this group.
>
> Sorry for the trivial question, but it sure would help with a lot of
> things I am trying to teach at the junior/high school level.
>
> Tom
>

-- 
_________________________________________________________________
Peter Breitfeld, Bad Saulgau, Germany -- http://www.pBreitfeld.de




  • Prev by Date: Re: A fast way to compare two vectors
  • Next by Date: Re: How to distribute specific tasks to specific subkernels?
  • Previous by thread: Re: Constrain locator
  • Next by thread: algebraic simplification