class steno3d.core.Project

Container of related Steno3D resources for plotting and uploading

Creating projects is the reason the Steno3D MATLAB toolbox exists. A Project contains one or more related Point, Line, Surface, or Volume resources. They can be created and edited using the high-level plotting interface or the low-level command line interface.

Once a Project is created, it can be plotted in MATLAB with the plot() function. This allows an initial visualization to verify the Project is constructed correctly. After the Project is complete in MATLAB, it can be uploaded to with the upload() function. This validates the Project, checks user quotas, and uploads the Project. The URL of the uploaded Project is returned and can also be accessed with the url() function.

Project implements props.HasProps for dynamic, type-checked properties

Required Properties:

Public (props.Bool) - Public visibility on, Default: false

Resources (props.Repeated) - Composite resources the project contains, Type: props.Instance (Class: CompositeResource)

Optional Properties:

Title (props.String) - Content title

Description (props.String) - Content description

Available Methods:

  • upload:

    p.upload() validates and uploads to the project or array of projects p.

    url = p.upload() returns the url or URLs of the uploaded project(s).

  • url:

    url = p.url() returns the url of an uploaded project p or cell array of URLs if p is an array of projects. This method raises an error if a project isn’t uploaded.

  • plot:

    p.plot() plots the project p in a new figure window. If p is an array of multiple projects, each is plotted in a new window.

    p.plot(ax) plots the project(s) p in an existing axes ax.

    ax = p.plot(...) returns ax, the axes handle of the plot or a cell array of axes handles if p is an array of multiple projects.

    It is recommended to call plot with no arguments (not provide ax). This prevents loss of graphics objects unrelated to the project and ensures that uploading the axes will correctly upload the project.


See also steno3d.core.CompositeResource, steno3d.core.UserContent