Skip to content

OpenSeesMatlabVisPolyscope¤

Interactive Polyscope visualization interface available as opsMAT.vis.polyscope. It provides consistent in-window controls for model inspection, mode-shape animation, and nodal, frame, shell, plane, and solid response histories.

1
2
3
4
5
6
7
8
opsMAT = OpenSeesMatlab();

% Interactive model viewer
opsMAT.vis.polyscope.plotModel();

% Interactive response viewer
nodeResp = opsMAT.post.getNodalResponse("myODB");
opsMAT.vis.polyscope.plotNodalResponse(nodeResp);

Recommended interactive backend

Use Polyscope for new interactive visualization workflows that require static exploration or animation. Use OpenSeesMatlabVis when you need a regular MATLAB figure or a single-step MATLAB GUI plot.

plotter.OpenSeesMatlabVisPolyscope ¤

Bases: handle

Polyscope visualisation interface for OpenSeesMatlab.

This object is attached to the main vis interface as vis.polyscope, so users can write:

1
2
3
opsmat.vis.polyscope.plotModel();
opsmat.vis.polyscope.plotEigen(eigenData);
opsmat.vis.polyscope.plotNodalResponse(nodeRespData);

Each function opens an interactive Polyscope window with in-window ImGui controls (and ImPlot for nodal-response histories). The default backend is 'openGL3_glfw'; use opts.polyscope.backend = 'openGL_mock' for headless rendering or automated tests.

Methods:

plotModel(opts: struct = struct()) ¤

Open the Polyscope model viewer.

Usage:
1
vis.polyscope.plotModel();

plotEigen(varargin) ¤

Open the Polyscope eigen-mode viewer.

Usage:
1
vis.polyscope.plotEigen(eigenData);

If eigenData is omitted it is collected from the current model. The mode number can be picked directly in the GUI; modeTag only selects the mode shown on startup.

plotNodalResponse(nodeRespData: struct, opts: struct = struct()) ¤

Open the Polyscope nodal-response viewer.

Usage:
1
vis.polyscope.plotNodalResponse(nodeRespData);

Input arguments:

  • nodeRespData (struct) –

    Nodal response data, typically obtained from opsmat.post.getNodalResponse(odbTag). The struct must include an odbTag field so the corresponding model information can be loaded.

plotFrameResponse(frameRespData: struct, respType="", respComponent="", responseLocation="", stepIdx="absMax", opts: struct = struct()) ¤

Open the Polyscope frame-response viewer.

Usage:
1
vis.polyscope.plotFrameResponse(frameRespData);

Input arguments:

  • frameRespData (struct) –

    Frame response data, typically obtained from opsmat.post.getFrameResponse(odbTag). The struct must include an odbTag field so the corresponding model information can be loaded.

plotShellResponse(respData: struct, respType="SecForceAtGP", respComponent="mxx", fiberPoint="top", responseLocation="", stepIdx="absMax", opts: struct = struct()) ¤

Open the Polyscope shell-response viewer.

Usage:
1
vis.polyscope.plotShellResponse(respData);

Input arguments:

  • respData (struct) –

    Shell response data, typically obtained from opsmat.post.getShellResponse(odbTag). The struct must include an odbTag field so the corresponding model information can be loaded.

plotContinuumResponse(respData: struct, eleType="", respType="StressAtGP", respComponent="sxx", responseLocation="", stepIdx="absMax", opts: struct = struct()) ¤

Open the Polyscope continuum-response viewer.

Usage:
1
vis.polyscope.plotContinuumResponse(respData);

Input arguments:

  • respData (struct) –

    Continuum response data, typically obtained from opsmat.post.getContinuumResponse(odbTag). The struct must include an odbTag field so the corresponding model information can be loaded.