Files
OpenVSP/examples/scripts/TestAreaProj.vspscript
2024-01-22 14:34:25 -08:00

57 lines
1.6 KiB
Plaintext

int main()
{
int failure = 0;
string fid = AddGeom( "POD", "" );
Update();
// Projected Areas
array<int> dirtype = GetIntAnalysisInput( "Projection", "DirectionType" );
dirtype[0] = X_PROJ;
SetIntAnalysisInput( "Projection", "DirectionType", dirtype );
string rid = ExecAnalysis( "Projection" );
PrintResults( rid );
WriteResultsCSVFile( rid, "XProj.csv" );
DeleteGeomVec( GetStringResults( rid, "Mesh_GeomID" ) );
array<double> @double_arr = GetDoubleResults( rid, "Area" );
if ( !closeTo( double_arr[0], 1.256832229736884132e+00, 1e-5 ) )
failure++;
dirtype[0] = Y_PROJ;
SetIntAnalysisInput( "Projection", "DirectionType", dirtype );
rid = ExecAnalysis( "Projection" );
PrintResults( rid );
WriteResultsCSVFile( rid, "YProj.csv" );
DeleteGeomVec( GetStringResults( rid, "Mesh_GeomID" ) );
@double_arr = GetDoubleResults( rid, "Area" );
if ( !closeTo( double_arr[0], 9.699415664302019735e+00, 1e-5 ) )
failure++;
dirtype[0] = Z_PROJ;
SetIntAnalysisInput( "Projection", "DirectionType", dirtype );
rid = ExecAnalysis( "Projection" );
PrintResults( rid );
WriteResultsCSVFile( rid, "ZProj.csv" );
DeleteGeomVec( GetStringResults( rid, "Mesh_GeomID" ) );
@double_arr = GetDoubleResults( rid, "Area" );
if ( !closeTo( double_arr[0], 9.699415664302019735e+00, 1e-5 ) )
failure++;
//==== Check For API Errors ====//
while ( GetNumTotalErrors() > 0 )
{
ErrorObj err = PopLastError();
Print( err.GetErrorString() );
failure++;
}
return failure;
}