MathGroup Archive 2011

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

Search the Archive

Re: reducing the size of a Manipulate slider control, problem when using ImageSize

  • To: mathgroup at smc.vnet.net
  • Subject: [mg123426] Re: reducing the size of a Manipulate slider control, problem when using ImageSize
  • From: Tomas Garza <tgarza10 at msn.com>
  • Date: Wed, 7 Dec 2011 06:13:18 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com

Yes, I think it's a good idea to experiment with different approaches. As for the Module inside my Manipulate, you're right; it's not necessary and only reflects on my habit of starting anything with a Module so as to have all variables properly localized. In this example there are no variables other than the controls.
-Tomas

> Date: Tue, 6 Dec 2011 03:14:21 -0500
> From: cy56 at comcast.net
> Subject: Re: reducing the size of a Manipulate slider control, problem when using ImageSize
> To: mathgroup at smc.vnet.net
>
> On 2011-12-05 10:32:05 +0000, Tomas Garza said:
> It's not necessarily redundant, since you might want to have different
> sizes for the sliders (or whatever control you use). Take a look at
> this example:
>
> Column[
>  {
>   Style["Different size sliders in the same row", 13, "Label"],
>  
>   Manipulate[
>    Module[
>     {},
>    
>     Graphics[
>      {
>       {Line[{p1, p2, p3, p1}], Yellow, Disk[p1, 0.05]},
>      
>       Style[Text["A", p1], Background -> White, Bold, Italic, 12, "Label"],
>       Style[Text["B", p2], Background -> White, Bold, Italic, 12, "Label"],
>       Style[Text["C", p3], Background -> White, Bold, Italic, 12, "Label"]
>       },
>      PlotRange -> {{-0.2, 1.2}, {-0.2, 1}},
>      Axes -> True
>      ]
>     ],
>   
>    Row[
>     {
>      Spacer[35],
>      Control[{{p1, {0, 0}, "A"}, {0, 0}, {1, 1}, ImageSize -> 25}],
>      Spacer[50],
>      Control[{{p2, {1, 0}, "B"}, {0, 0}, {1, 1}, ImageSize -> 50}],
>      Spacer[50],
>      Control[{{p3, {0.5, 0.5}, "C"}, {0, 0}, {1, 1}, ImageSize -> 75}]
>      }
>     ]  (* Row *)
>    ]  (* Manipulate *)
>   }
>  ]  (* Column *)
>
> Thanks, that's good to know. It looks like Manipulate will accept the
> following, too. Here the Row[ ] of controls seems to be accepted as a
> valid set of control specifications, so we don't need the Module.
>
> Column[
>  {
>   Style["Different size sliders in the same row", 13, "Label"],
>  
>   Manipulate[
>    Graphics[
>     {
>      {Line[{p1, p2, p3, p1}], Yellow, Disk[p1, 0.05]},
>     
>      Style[Text["A", p1], Background -> White, Bold, Italic, 12, "Label"],
>      Style[Text["B", p2], Background -> White, Bold, Italic, 12, "Label"],
>      Style[Text["C", p3], Background -> White, Bold, Italic, 12, "Label"]
>      },
>     PlotRange -> {{-0.2, 1.2}, {-0.2, 1}},
>     Axes -> True
>     ],
>   
>    Row[
>     {
>      Spacer[35],
>      {p1, {0, 0}, {1, 1}},
>      Spacer[50],
>      Control[{{p2, {1, 0}, "B"}, {0, 0}, {1, 1}, ImageSize -> 50}],
>      Spacer[50],
>      Control[{{p3, {0.5, 0.5}, "C"}, {0, 0}, {1, 1}, ImageSize -> 75}]
>      }
>     ]  (* Row *)
>    ]  (* Manipulate *)
>   }
>  ]  (* Column *)
>
>
> Also, I managed to get it down to the following, just to experiment
> with the different labelling options. Might as well use FrameLabel
> instead of going through the trouble of setting up a Row, although you
> still have to fuss with the nested curly brackets to specify which side
> you want the label on.
>
> Manipulate[
>  Graphics[
>   {
>    {Line[{p1, p2, p3, p1}], Yellow, Disk[p1, 0.05]},
>   
>    Style[Text["A", p1], Background -> White, Bold, Italic, 12, "Label"],
>    Style[Text["B", p2], Background -> White, Bold, Italic, 12, "Label"],
>    Style[Text["C", p3], Background -> White, Bold, Italic, 12, "Label"]
>    },
>   PlotRange -> {{-0.2, 1.2}, {-0.2, 1}},
>   Axes -> True,
>   PlotLabel -> "Triangle points via 2D sliders"
>   ],
> 
>  Item["2D sliders in a column", ControlPlacement -> Center],
> 
>  {p1, {0, 0}, {1, 1}},
>  {p2, {0, 0}, {1, 1}},
>  {p3, {0, 0}, {1, 1}},
> 
>  ControlPlacement -> Left,
>  FrameLabel -> {{"", ""}, {"", "Moving labelled points via 2D sliders"}}
>  ]
>


  • Prev by Date: Re: reducing the size of a Manipulate slider control, problem when using ImageSize
  • Next by Date: Re: Ragged region boundary
  • Previous by thread: Re: reducing the size of a Manipulate slider control, problem when using ImageSize
  • Next by thread: Re: reducing the size of a Manipulate slider control, problem when using ImageSize