OpenVSP API Documentation  3.37.0
Functions
Visualization Functions

The following group of functions allow for the OpenVSP GUI to be manipulated through the API. Click here to return to the main page. More...

Functions

void vsp::InitGUI ()
 
void vsp::StartGUI ()
 
void vsp::EnableStopGUIMenuItem ()
 
void vsp::DisableStopGUIMenuItem ()
 
void vsp::StopGUI ()
 
void vsp::PopupMsg (const std::string &msg)
 
void vsp::UpdateGUI ()
 
bool vsp::IsGUIBuild ()
 
void vsp::Lock ()
 
void vsp::Unlock ()
 
void vsp::ScreenGrab (const string &fname, int w, int h, bool transparentBG, bool autocrop=false)
 
void vsp::SetViewAxis (bool vaxis)
 
void vsp::SetShowBorders (bool brdr)
 
void vsp::SetGeomDrawType (const string &geom_id, int type)
 
void vsp::SetGeomDisplayType (const string &geom_id, int type)
 
void vsp::SetBackground (double r, double g, double b)
 
void vsp::SetGUIElementDisable (int e, bool state)
 
void vsp::SetGUIScreenDisable (int s, bool state)
 
void vsp::SetGeomScreenDisable (int s, bool state)
 

Detailed Description

Function Documentation

◆ DisableStopGUIMenuItem()

void vsp::DisableStopGUIMenuItem ( )

Disable Stop GUI Menu Item from the OpenVSP GUI.

This reverses the operation of EnableStopGUIMenuItem.

void InitGUI()
void StartGUI()
void EnableStopGUIMenuItem()
See also
InitGUI, EnableStopGUIMenuItem

◆ EnableStopGUIMenuItem()

void vsp::EnableStopGUIMenuItem ( )

Enable Stop GUI Menu Item from the OpenVSP GUI.

Typically used for the blocking-mode OpenVSP GUI from the API.

This will add a "Stop GUI" option to the file pulldown menu and will also cause the exit button on the window frame to have the same effect. When selected, these options will stop the OpenVSP GUI event loop, returning control to the API program. OpenVSP will not terminate, the model will remain in memory and will be responsive to subsequent API calls.

See also
InitGUI, DisableStopGUIMenuItem

◆ InitGUI()

void vsp::InitGUI ( )

Initialize the GUI so it can be called from the API. Must be called before other GUI related API calls. In a multi-threaded environment, this must be called from the main thread only.

See also
StartGUI

◆ IsGUIBuild()

bool vsp::IsGUIBuild ( )

Test if the current OpenVSP build includes graphics capabilities.

if ( IsGUIBuild() )
{
Print( "OpenVSP build is graphics capable." );
}
else
{
Print( "OpenVSP build is not graphics capable." );
}
bool IsGUIBuild()
Returns
bool True if the current OpenVSP build includes graphics capabilities. False otherwise.

◆ Lock()

void vsp::Lock ( )

Obtain the lock on the OpenVSP GUI event loop. This will prevent the interactive GUI from updating or accepting user input until the lock is released – thereby allowing longer-time commands including analyses to execute without the chance of the OpenVSP state changing during execution.

string pod_id = AddGeom( "POD" );
Lock();
string rid = ExecAnalysis( "CompGeom" );
array<string>@ mesh_id_vec = GetStringResults( rid, "Mesh_GeomID" );
DeleteGeomVec( mesh_id_vec );
std::string ExecAnalysis(const std::string &analysis)
std::string AddGeom(const std::string &type, const std::string &parent=std::string())
void DeleteGeomVec(const std::vector< std::string > &del_vec)
const std::vector< std::string > & GetStringResults(const std::string &id, const std::string &name, int index=0)
void Lock()
void Unlock()
See also
Unlock

◆ PopupMsg()

void vsp::PopupMsg ( const std::string &  msg)

Cause OpenVSP to display a popup message.

PopupMsg( "This is a popup message." );
void PopupMsg(const std::string &msg)
Parameters
[in]msgstring Message to display.

◆ ScreenGrab()

void vsp::ScreenGrab ( const string &  fname,
int  w,
int  h,
bool  transparentBG,
bool  autocrop = false 
)

Capture the specified screen and save to file. Note, VSP_USE_FLTK must be defined

int screenw = 2000; // Set screenshot width and height
int screenh = 2000;
string fname = "test_screen_grab.png";
ScreenGrab( fname, screenw, screenh, true, true ); // Take PNG screenshot
void ScreenGrab(const string &fname, int w, int h, bool transparentBG, bool autocrop=false)
Parameters
[in]fnamestring Output file name
[in]wint Width of screen grab
[in]hint Height of screen grab
[in]transparentBGbool Transparent background flag
[in]autocropbool Automatically crop transparent background flag

◆ SetBackground()

void vsp::SetBackground ( double  r,
double  g,
double  b 
)

Set the background color

SetBackground( 1.0, 1.0, 1.0 ); // Set background to bright white
void SetBackground(double r, double g, double b)
Parameters
[in]rRed 8-bit unsigned integer (range: 0-255)
[in]gGreen 8-bit unsigned integer (range: 0-255)
[in]bBlue 8-bit unsigned integer (range: 0-255)

◆ SetGeomDisplayType()

void vsp::SetGeomDisplayType ( const string &  geom_id,
int  type 
)

Set the display type of the specified goemetry

string pid = AddGeom( "POD" ); // Add Pod for testing
SetGeomDisplayType( pid, DISPLAY_DEGEN_PLATE ); // Make pod appear as Bezier plate (Degen Geom)
@ DISPLAY_DEGEN_PLATE
Definition: APIDefines.h:320
void SetGeomDisplayType(const string &geom_id, int type)
See also
DISPLAY_TYPE
Parameters
[in]geom_idstring Geom ID
[in]typeDisplay type enum (i.e. DISPLAY_BEZIER)

◆ SetGeomDrawType()

void vsp::SetGeomDrawType ( const string &  geom_id,
int  type 
)

Set the draw type of the specified goemetry

string pid = AddGeom( "POD", "" ); // Add Pod for testing
SetGeomDrawType( pid, GEOM_DRAW_SHADE ); // Make pod appear as shaded
@ GEOM_DRAW_SHADE
Definition: APIDefines.h:330
void SetGeomDrawType(const string &geom_id, int type)
See also
DRAW_TYPE
Parameters
[in]geom_idstring Geom ID
[in]typeDraw type enum (i.e. GEOM_DRAW_SHADE)

◆ SetGeomScreenDisable()

void vsp::SetGeomScreenDisable ( int  s,
bool  state 
)

Set whether geom screen is disabled

@ ALL_GEOM_SCREENS
Definition: APIDefines.h:764
void SetGeomScreenDisable(int s, bool state)
Parameters
[in]eint GUI_GEOM_SCREEN enum for geom screen
[in]statebool True to disable geom screen

◆ SetGUIElementDisable()

void vsp::SetGUIElementDisable ( int  e,
bool  state 
)

Set whether all instances of GUI device type are disabled

@ GDEV_INPUT
Definition: APIDefines.h:705
void SetGUIElementDisable(int e, bool state)
Parameters
[in]eint GDEV enum for GUI device type
[in]statebool True to disable GUI device type

◆ SetGUIScreenDisable()

void vsp::SetGUIScreenDisable ( int  s,
bool  state 
)

Set whether screen is disabled

@ VSP_CFD_MESH_SCREEN
Definition: APIDefines.h:778
void SetGUIScreenDisable(int s, bool state)
Parameters
[in]eint GUI_VSP_SCREEN enum for screen
[in]statebool True to disable screen

◆ SetShowBorders()

void vsp::SetShowBorders ( bool  brdr)

Toggle viewing the border frame

SetShowBorders( false ); // Turn off red/black border on active window
void SetShowBorders(bool brdr)
Parameters
[in]brdrTrue to show the border frame, false to hide the border frame

◆ SetViewAxis()

void vsp::SetViewAxis ( bool  vaxis)

Toggle viewing the axis

SetViewAxis( false ); // Turn off axis marker in corner of viewscreen
void SetViewAxis(bool vaxis)
Parameters
[in]vaxisTrue to show the axis, false to hide the axis

◆ StartGUI()

void vsp::StartGUI ( )

Launch the interactive OpenVSP GUI. In a multi-threaded environment, this must be called from the main thread only. This starts the GUI event loop. It will also show the main screen and screens displayed when StopGUI() was previously called.

See also
InitGUI

◆ StopGUI()

void vsp::StopGUI ( )

Stop OpenVSP GUI event loop and hide screens. Keep OpenVSP running and in memory.

void StopGUI()
See also
InitGUI, StartGUI

◆ Unlock()

void vsp::Unlock ( )

Release the lock on the OpenVSP GUI event loop.

string pod_id = AddGeom( "POD" );
Lock();
string rid = ExecAnalysis( "CompGeom" );
array<string>@ mesh_id_vec = GetStringResults( rid, "Mesh_GeomID" );
DeleteGeomVec( mesh_id_vec );
See also
Lock

◆ UpdateGUI()

void vsp::UpdateGUI ( )

Tell OpenVSP that the GUI needs to be updated.

string pod_id = AddGeom( "POD" );
string length = FindParm( pod_id, "Length", "Design" );
SetParmVal( length, 13.0 );
std::string FindParm(const std::string &parm_container_id, const std::string &parm_name, const std::string &group_name)
double SetParmVal(const std::string &parm_id, double val)
void UpdateGUI()
See also
InitGUI, StartGUI