File Exchange

image thumbnail

hypersphere / n-sphere

version (2.41 KB) by Michael Völker
Generate n-dimensional Ellipsoid or Sphere


Updated 31 Oct 2012

View License

S = hypersphere( sz )
S = hypersphere( sz, 'fullOrVoid' )
S = hypersphere( sz, matSize )
S = hypersphere( sz, matSize, 'fullOrVoid' )

S is a logical array of size max( sz, matSize ) where "true" (or 1)
defines the points of an n-dimensional ellipsoid or sphere,
with n == length(sz).

The input "sz" defines the size of an ellipsoid:

To create a circle with diameter 101 points:
sz = [101 101 ]

For an ellipse with short axis of 39 points vertical and long axis of 101 points horizontal:
sz = [ 39 101 ]

For a 3D sphere with diameter 101 points:
sz = [101 101 101]

4D hypersphere with diameter 101 points
sz = [101 101 101 101 ]

==> sz may have any size and positive integer values

Use the flag 'void' (default) to have an empty object, e.g. only the line of a circle, or 'full' to have a filled object, e.g. a disc.

The parameter matSize:

You may want to embed the object into the centre of a larger array/matrix.
You can specify matSize the same way as the sz-input.
matSize must have equal length as sz and all( matSize >= sz ).

With sz = [30 1 30 30] and matSize = [100 100 100 100] you embed
a small 3D sphere into a larger 4D array.

Cite As

Michael Völker (2021). hypersphere / n-sphere (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!