# `plot`::`Pyramid`

Pyramids and frustums of pyramids

MuPAD® notebooks will be removed in a future release. Use MATLAB® live scripts instead.

MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.

## Syntax

```plot::Pyramid(`br`, `[bx, by, bz]`, <`tr`>, `[tx, ty, tz]`, <`a = amin .. amax`>, `options`)
```

## Description

```plot::Pyramid(br, [ bx, by, bz], [ tx, ty, tz])``` creates a pyramid stretching from the regular base plane with a circumcircle of radius br and center ```[bx, by, bz]``` to the top ```[tx, ty, tz]```.

```plot::Pyramid(br, [ bx, by, bz], tr, [ tx, ty, tz])``` creates a frustum of pyramid from the base with center ```[bx, by, bz]``` to the top with center ```[tx, ty, tz]```. The radius of the circumcircle of the regular base is `br`. The radius of the circumcircle of the regular top is `tr`.

The optional “top radius” `tr` for creating a frustum may also be specified as the attribute ```TopRadius = tr```.

Note that only pyramids with a regular base can be created with `plot::Pyramid`. For other bases, use a `plot::SurfaceSet` primitive.

## Attributes

AttributePurposeDefault Value
`AffectViewingBox`influence of objects on the `ViewingBox` of a scene`TRUE`
`Angle`rotation angle`0`
`Base`base center of cones, cylinders, pyramids and prisms[`0`, `0`, `0`]
`BaseX`x-coordinate of top center of cones, cylinders, pyramids and prisms`0`
`BaseY`y-coordinate of top center of cones, cylinders, pyramids and prisms`0`
`BaseZ`z-coordinate of top center of cones, cylinders, pyramids and prisms`0`
`BaseRadius`base radius of cones/conical frustums and pyramids/frustums of pyramids`1`
`Color`the main color`RGB::Red`
`Edges`Number of Edges`4`
`Filled`filled or transparent areas and surfaces`TRUE`
`FillColor`color of areas and surfaces`RGB::Red`
`FillColor2`second color of areas and surfaces for color blends`RGB::CornflowerBlue`
`FillColorType`surface filling types`Dichromatic`
`FillColorFunction`functional area/surface coloring
`FillColorDirection`the direction of color transitions on surfaces[`0`, `0`, `1`]
`FillColorDirectionX`x-component of the direction of color transitions on surfaces`0`
`FillColorDirectionY`y-component of the direction of color transitions on surfaces`0`
`FillColorDirectionZ`z-component of the direction of color transitions on surfaces`1`
`Frames`the number of frames in an animation`50`
`Legend`makes a legend entry
`LegendText`short explanatory text for legend
`LegendEntry`add this object to the legend?`FALSE`
`LineColor`color of lines`RGB::Black.[0.25]`
`LineWidth`width of lines`0.35`
`LineColor2`color of lines`RGB::DeepPink`
`LineStyle`solid, dashed or dotted lines?`Solid`
`LinesVisible`visibility of lines`TRUE`
`LineColorType`line coloring types`Flat`
`LineColorFunction`functional line coloring
`LineColorDirection`the direction of color transitions on lines[`0`, `0`, `1`]
`LineColorDirectionX`x-component of the direction of color transitions on lines`0`
`LineColorDirectionY`y-component of the direction of color transitions on lines`0`
`LineColorDirectionZ`z-component of the direction of color transitions on lines`1`
`Name`the name of a plot object (for browser and legend)
`Normal`normal vector of circles and discs, etc. in 3D[`0`, `0`, `0`]
`NormalX`normal vector of circles and discs, etc. in 3D, x-component`0`
`NormalY`normal vector of circles and discs, etc. in 3D, y-component`0`
`NormalZ`normal vector of circles and discs, etc. in 3D, z-component`0`
`ParameterEnd`end value of the animation parameter
`ParameterName`name of the animation parameter
`ParameterBegin`initial value of the animation parameter
`ParameterRange`range of the animation parameter
`PointSize`the size of points`1.5`
`PointStyle`the presentation style of points`FilledCircles`
`PointsVisible`visibility of mesh points`FALSE`
`Shading`smooth color blend of surfaces`Smooth`
`TimeEnd`end time of the animation`10.0`
`TimeBegin`start time of the animation`0.0`
`TimeRange`the real time span of an animation`0.0` .. `10.0`
`Title`object title
`TitleFont`font of object titles[`" sans-serif "`, `11`]
`TitlePosition`position of object titles
`TitleAlignment`horizontal alignment of titles w.r.t. their coordinates`Center`
`TitlePositionX`position of object titles, x component
`TitlePositionY`position of object titles, y component
`TitlePositionZ`position of object titles, z component
`Top`top center of cones, cylinders, pyramids and prisms[`0`, `0`, `1`]
`TopX`base and top center of cones, cylinders, pyramids and prisms`0`
`TopY`base and top center of cones, cylinders, pyramids and prisms`0`
`TopZ`base and top center of cones, cylinders, pyramids and prisms`1`
`TopRadius`top radius of cones/conical frustums and pyramids/frustums of pyramids`0`
`Visible`visibility`TRUE`
`VisibleAfter`object visible after this time value
`VisibleBefore`object visible until this time value
`VisibleFromTo`object visible during this time range
`VisibleAfterEnd`object visible after its animation time ended?`TRUE`
`VisibleBeforeBegin`object visible before its animation time starts?`TRUE`

## Examples

### Example 1

We draw a pyramid with base radius 6:

`plot(plot::Pyramid(6, [0, 0, 0], [0, 0, 10])):`

### Example 2

We create a frustum of pyramid by specifying a non-zero top radius:

```br := 16: base := [3, 4, 5]: tr:= 7: top := [11, 12, 13]: plot(plot::Pyramid(br, base, tr, top)):```

`delete br, base, tr, top, n:`

### Example 3

Bottom and top radii and centers can be animated:

```plot(plot::Pyramid(sin(a)^2, [sin(2*a), cos(2*a), 0], cos(a)^2, [cos(2*a), sin(2*a), 1], a = 0..PI)):```

### Example 4

Additionally, the orientation of the edges of the base can be changed with the rotation angle `Angle`:

```plot(plot::Pyramid(1/2, Angle=0), plot::Pyramid(1/2, Angle=PI/4, FillColor2=RGB::Yellow))```

## Parameters

 `br` The radius of the circumcircle of the regular base. This must be a real numerical value or an arithmetical expression of the animation parameter `a`. `br` is equivalent to the attribute `BaseRadius`. `bx`, `by`, `bz` The lower center point. The coordinates `bx`, `by`, `bz` must be real numerical values or arithmetical expressions of the animation parameter `a`. `bx`, `by`, `bz` are equivalent to the attributes `BaseX`, `BaseY`, `BaseZ`. `tr` The radius of the circumcircle of the regular top of the frustum of pyramid. This must be a real numerical value or an arithmetical expression of the animation parameter `a`. If no top radius is specified, a pyramid with top radius tr = 0 is created. `tr` is equivalent to the attribute `TopRadius`. `tx`, `ty`, `tz` The upper center point. The coordinates `tx`, `ty`, `tz` must be real numerical values or arithmetical expressions of the animation parameter `a`. `tx`, `ty`, `tz` are equivalent to the attributes `TopX`, `TopY`, `TopZ`. `a` Animation parameter, specified as `a```` = amin..amax```, where `amin` is the initial parameter value, and `amax` is the final parameter value.