OpenVSP API Documentation 3.39.0
 
Loading...
Searching...
No Matches
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 ( )
extern

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 ( )
extern

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 ( )
extern

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 ( )
extern

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 ( )
extern

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)
extern

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 )
extern

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 )
extern

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 )
extern

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:356
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 )
extern

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:366
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 )
extern

Set whether geom screen is disabled

@ ALL_GEOM_SCREENS
Definition APIDefines.h:800
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 )
extern

Set whether all instances of GUI device type are disabled

@ GDEV_INPUT
Definition APIDefines.h:741
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 )
extern

Set whether screen is disabled

@ VSP_CFD_MESH_SCREEN
Definition APIDefines.h:816
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)
extern

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)
extern

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 ( )
extern

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 ( )
extern

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

void StopGUI()
See also
InitGUI, StartGUI

◆ Unlock()

void vsp::Unlock ( )
extern

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 ( )
extern

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