Locator
詳細とオプション
- Locator[{x,y},Automatic]は,ロケータオブジェクトのデフォルトである「十字カーソル」を使用する.
- Locator[Dynamic[{x,y}]]は,ロケータオブジェクトが動かされると x と y の値をリセットする.Locator[{x,y}]はリセットしない.
- Locator[Dynamic[{x,y}],None]は,目に見えるような位置を示す直接表現は行わないが,Point[Dynamic[{x,y}]]のような構造と一緒に使うことができる. »
- Deploy[expr]内のLocatorオブジェクトは,例えばSliderオブジェクトのようにインタラクティブに操作することができる. »
- obj が自己の絶対サイズを定義しなければ,ロケータとして使用されるときのサイズは,LocatorのImageSizeオプションを使って指定することができる.
- ImageSizeの設定値は,Tiny,Small,Medium,Large,あるいは印刷用ポイント数での明示的な値である. »
- ロケータオブジェクトの中心は,obj のAlignmentPointオプションの設定か,デフォルトで obj の境界ボックスの中心であるとみなされる.
- 次のオプションが使用できる.
-
Appearance Automatic ロケータの基本的な外観 AutoAction False マウスがグラフィックスの上に置かれたときに自動的に動かすかどうか Enabled Automatic ロケータを有効にするか,無効(灰色表示)にするか ImageSize Automatic 表示するロケータオブジェクトの大きさ LocatorRegion Automatic どこにロケータオブジェクトを移動させるか - Locator[]はLocator[Scaled[{0.5,0.5}]]と等価である. »
- Locatorを使って,変数の値をロケータの位置で決めるようにManipulateの変数のコントロールを指定することができる. »
例題
すべて開く すべて閉じる例 (3)
Graphics[Locator[{0, 0}], PlotRange -> 2]DynamicModule[{p = {0.5, 0.5}}, {Graphics[Locator[Dynamic[p]], PlotRange -> 2], Dynamic[p]}]Manipulateにロケータを置く:
Manipulate[Graphics[Line[{{0, 0}, p}], PlotRange -> 2], {{p, {1, 1}}, Locator}]スコープ (7)
ロケータのコンテンツ (4)
Graphics[Locator[{0, 0}, Style["X", FontSize -> 48]], PlotRange -> 2]l = Graphics[{Red, Table[Circle[{0, 0}, i], {i, 3}]}, ImageSize -> 20];Graphics[Locator[{0, 0}, l], PlotRange -> 1]Deploy[DynamicModule[{p = {1, 0}}, Graphics[{PointSize[0.1], Dynamic@Point[p], Locator[Dynamic[p], None]}, PlotRange -> 1.5]]]Graphics[Locator[]]ロケータのコントロール (3)
Deployを使ってインタラクティブなグラフィックスの編集はできなくするが,ロケータ自体のインタラクティビティは残す:
Deploy[DynamicModule[{p = {0, 0}}, Graphics[Locator[Dynamic[p]], PlotRange -> 2]]]ロケータの動きはDynamicで制限することができる:
Deploy[DynamicModule[{p = {1, 0}}, Graphics[{Red, Disk[], Locator[Dynamic[p, (p = Normalize[#])&]]}, PlotRange -> 1.5]]]ロケータにスケールされた(Scaled)座標を使う:
DynamicModule[{p = Scaled[{0.5, 0.5}]}, {Framed@Graphics[Locator[Dynamic[p]], PlotRange -> 2], Dynamic[p]}]オプション (11)
Appearance (1)
AutoAction (2)
デフォルトで,ロケータをドラッグするまでロケータの値は変更されない:
DynamicModule[{p = {0.5, 0.5}}, {Graphics[Locator[Dynamic[p]], PlotRange -> 2], Dynamic[p]}]値をAutoActionにすると,ロケータの値はマウスがロケータ上に来ると変わるようになる:
DynamicModule[{p = {0.5, 0.5}}, {Graphics[Locator[Dynamic[p], AutoAction -> True], PlotRange -> 2], Dynamic[p]}]Background (2)
Enabled (2)
ImageSize (2)
LocatorRegion (2)
デフォルトで,LocatorはPlotRange内に制限されている:
Framed@Graphics[Locator[{0, 0}], PlotRange -> 1, ImagePadding -> 20, Frame -> True]LocatorRegion->Fullを使ってグラフィックス全体にアクセスする:
Framed@Graphics[Locator[{0, 0}, LocatorRegion -> Full], PlotRange -> 1, ImagePadding -> 20, Frame -> True]アプリケーション (2)
DynamicModule[{pt = {1, 0}}, Graphics[{Circle[], Locator[Dynamic[pt, (pt = Normalize[#])&]]}, PlotRange -> 2]]DynamicModule[{p1 = {0, 0}, p2 = {1, 1}}, {Dynamic@Graphics[{Arrow[{p1, p2}], Locator[Dynamic[p1]], Locator[Dynamic[p2]]}, PlotRange -> 2], Dynamic[Grid[{{"Length:", EuclideanDistance[p1, p2]}, {"Slope:", 1 / Divide@@(p2 - p1)}}]]}]特性と関係 (2)
Deployを使ってグラフィックスをインタラクティブに制限し,同時にロケータはアクティブにしておく:
Deploy[Graphics[{Cyan, Disk[], Locator[{1, 1}]}, PlotRange -> 1.1]]LocatorPaneを使って複雑なオブジェクト上でロケータを使う:
DynamicModule[{pts = {{0, 0}, {1, 1}, {2, 0}, {3, 2}}}, LocatorPane[Dynamic[pts], Dynamic[Plot[InterpolatingPolynomial[pts, x], {x, 0, 3}, PlotRange -> 3]]]]考えられる問題 (1)
おもしろい例題 (3)
DynamicModule[{p = {1, 1}}, Graphics[{Locator[Dynamic[p]], Dynamic[Table[Point[s p], {s, 2, 4}]]}, PlotRange -> 5]]DynamicModule[{v1 = {2, 0}, v2 = {-1, 1}}, Dynamic@Graphics[{Circle[], Red, GeometricTransformation[Circle[], Transpose[{v1, v2}]], Green, Line[{{0, 0}, v1}], Line[{{0, 0}, v2}], Locator[Dynamic[v1]], Locator[Dynamic[v2]]}, PlotRange -> 3]]ロケータの位置で定義されたマッピング用のジュリア(Julia)集合を計算する:
DynamicModule[{pt = {0.25, 0.25}, julia}, julia[z_] := Abs@Table[NestWhile[# ^ 2 + z&, j + I i, Abs[#] < 4&, 1, 20], {i, -1, 1, .05}, {j, -1, 1, .05}];Framed@Dynamic@Graphics[{Raster[julia[Complex@@pt], {pt - {.5, .5}, pt + {.5, .5}}], Locator[Dynamic[pt]]}, PlotRange -> 1]]テクニカルノート
関連するガイド
関連するワークフロー
- ロケータのコントロールを使う
テキスト
Wolfram Research (2007), Locator, Wolfram言語関数, https://reference.wolfram.com/language/ref/Locator.html.
CMS
Wolfram Language. 2007. "Locator." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/Locator.html.
APA
Wolfram Language. (2007). Locator. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/Locator.html
BibTeX
@misc{reference.wolfram_2026_locator, author="Wolfram Research", title="{Locator}", year="2007", howpublished="\url{https://reference.wolfram.com/language/ref/Locator.html}", note=[Accessed: 11-July-2026]}
BibLaTeX
@online{reference.wolfram_2026_locator, organization={Wolfram Research}, title={Locator}, year={2007}, url={https://reference.wolfram.com/language/ref/Locator.html}, note=[Accessed: 11-July-2026]}