Scale

Scale[g,s]

represents graphics primitives g scaled by a factor s.

Scale[g,s,{x,y,}]

scales with the point {x,y,} kept fixed.

Scale[g,{sx,sy,},]

scales by different factors along different axes.

Details

  • Scale[g,s] scales with the center of the bounding box of g kept fixed.
  • You can specify special points such as {Left,Bottom} within the bounding box for g to be kept fixed.
  • The x position can be specified as Left, Center, or Right; the y position as Bottom, Center, or Top.
  • Explicit coordinates {x,y} are taken to be in the coordinate system of the graphic in which Scale[] appears.
  • For objects specified with scaled coordinates Scaled[{x,y}], Scale effectively applies its transformation to the corresponding ordinary coordinates.
  • Scale can modify the regions allocated to Text and Inset objects, but does not directly affect their contents, and does not scale fonts or other textual elements. »
  • Normal[expr] if possible replaces all Scale[gi,] constructs by versions of the gi in which the coordinates have explicitly been transformed.

Examples

open allclose all

Basic Examples  (2)

Transform a 2D shape:

Transform a 3D shape:

Scope  (6)

Transformation applied to a 2D shape:

Transformation applied to a 3D shape:

The transformations can be nested:

Apply transformation to scaled coordinates:

Keep the point fixed:

Keep the top-left corner of the circle's bounding box fixed:

Generalizations & Extensions  (2)

Use Scale to flip text along the axis:

Flip along the axis:

The size of text is affected by Scale only when it is specified using Scaled:

Properties & Relations  (1)

When possible, Normal will transform the coordinates explicitly:

Possible Issues  (1)

By default, scaling in 2D is done to keep the center of the bounding box fixed:

Explicitly set the origin to be fixed:

Neat Examples  (1)

Projections of a cylinder:

Introduced in 2007
 (6.0)
 |
Updated in 2008
 (7.0)