OpenVSPAPI  3.19.0
openvsp_as.h
Go to the documentation of this file.
1 
182 
185 class string
186 {
187 public:
188 #ifndef DOXYGEN_SHOULD_SKIP_THIS
189  // Methods
190  string& operator=(const string&in);
191  string& operator+=(const string&in);
192  bool operator==(const string&in) const;
193  int operator>(const string&in) const;
194  string operator+(const string&in) const;
195  uint length() const;
196  void resize(uint);
197  uint get_length() const;
198  void set_length(uint);
199  bool isEmpty() const;
200  uint8& operator[](uint);
201  const uint8& operator[](uint) const;
202  string& operator=(double);
203  string& operator+=(double);
204  string operator+(double) const;
205  string operator+(double) const;
206  string& operator=(float);
207  string& operator+=(float);
208  string operator+(float) const;
209  string operator+(float) const;
210  string& operator=(int64);
211  string& operator+=(int64);
212  string operator+(int64) const;
213  string operator+(int64) const;
214  string& operator=(uint64);
215  string& operator+=(uint64);
216  string operator+(uint64) const;
217  string operator+(uint64) const;
218  string& operator=(bool);
219  string& operator+=(bool);
220  string operator+(bool) const;
221  string operator+(bool) const;
222  string substr(uint start = 0, int count = - 1) const;
223  int findFirst(const string&in, uint start = 0) const;
224  int findFirstOf(const string&in, uint start = 0) const;
225  int findFirstNotOf(const string&in, uint start = 0) const;
226  int findLast(const string&in, int start = - 1) const;
227  int findLastOf(const string&in, int start = - 1) const;
228  int findLastNotOf(const string&in, int start = - 1) const;
229  void insert(uint pos, const string&in other);
230  void erase(uint pos, int count = - 1);
231  uint size() const;
232  bool empty() const;
233  int find(const string&in, uint start = 0) const;
234  int rfind(const string&in, int start = - 1) const;
235  string[]@ split(const string&in) const;
236 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
237 };
238 
239 
241 
243 template<typename T>
244 class array
245 {
246 public:
247 #ifndef DOXYGEN_SHOULD_SKIP_THIS
248  // Methods
249  T& operator[](uint index);
250  const T& operator[](uint index) const;
251  T[]& operator=(const T[]&in);
252  void insertAt(uint index, const T&in value);
253  void insertAt(uint index, const T[]&inout arr);
254  void insertLast(const T&in value);
255  void removeAt(uint index);
256  void removeLast();
257  void removeRange(uint start, uint count);
258  uint length() const;
259  void reserve(uint length);
260  void resize(uint length);
261  void sortAsc();
262  void sortAsc(uint startAt, uint count);
263  void sortDesc();
264  void sortDesc(uint startAt, uint count);
265  void reverse();
266  int find(const T&in value) const;
267  int find(uint startAt, const T&in value) const;
268  int findByRef(const T&in value) const;
269  int findByRef(uint startAt, const T&in value) const;
270  bool operator==(const T[]&in) const;
271  bool isEmpty() const;
272  uint get_length() const;
273  void set_length(uint);
274  uint size() const;
275  bool empty() const;
276  void push_back(const T&in);
277  void pop_back();
278  void insert(uint index, const T&in value);
279  void insert(uint index, const T[]&inout arr);
280  void erase(uint);
281 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
282 };
283 
284 
286 
288 class file
289 {
290 public:
291 #ifndef DOXYGEN_SHOULD_SKIP_THIS
292  // Properties
293  bool mostSignificantByteFirst;
294  // Methods
295  int open(const string&in, const string&in);
296  int close();
297  int getSize() const;
298  bool isEndOfFile() const;
299  string readString(uint);
300  string readLine();
301  int64 readInt(uint);
302  uint64 readUInt(uint);
303  float readFloat();
304  double readDouble();
305  int writeString(const string&in);
306  int writeInt(int64, uint);
307  int writeUInt(uint64, uint);
308  int writeFloat(float);
309  int writeDouble(double);
310  int getPos() const;
311  int setPos(int);
312  int movePos(int);
313 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
314 };
315 
316 
318 
320 class any
321 {
322 public:
323 #ifndef DOXYGEN_SHOULD_SKIP_THIS
324  // Methods
325  any& operator=(any&in);
326  void store(?&in);
327  void store(const int64&in);
328  void store(const double&in);
329  bool retrieve(?&out);
330  bool retrieve(int64&out);
331  bool retrieve(double&out);
332 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
333 };
334 
335 
337 
341 class vec3d
342 {
343 public:
344  // Methods
345 
349  double& operator[](int) const;
350 
355  double x() const;
356 
361  double y() const;
362 
367  double z() const;
368 
376  vec3d& set_xyz(double x, double y, double z);
377 
383  vec3d& set_x(double x);
384 
390  vec3d& set_y(double y);
391 
397  vec3d& set_z(double z);
398 
406  void rotate_x(double cos_alpha, double sin_alpha);
407 
415  void rotate_y(double cos_alpha, double sin_alpha);
416 
424  void rotate_z(double cos_alpha, double sin_alpha);
425 
430  void scale_x(double scale);
431 
436  void scale_y(double scale);
437 
442  void scale_z(double scale);
443 
448  void offset_x(double offset);
449 
454  void offset_y(double offset);
455 
460  void offset_z(double offset);
461 
467  void rotate_z_zero_x(double cos_alpha, double sin_alpha);
468 
474  void rotate_z_zero_y(double cos_alpha, double sin_alpha);
475 
480  vec3d reflect_xy();
481 
486  vec3d reflect_xz();
487 
492  vec3d reflect_yz();
493 
497  vec3d operator+(const vec3d&in) const;
498 
502  vec3d operator-(const vec3d&in) const;
503 
507  vec3d operator*(double b) const;
508 
512  vec3d operator*(const vec3d&in) const;
513 
517  vec3d operator/(double b) const;
518 
523  double mag() const;
524 
528  void normalize();
529 };
530 
531 
533 
536 class Matrix4d
537 {
538 public:
539  // Methods
540 
545  void loadIdentity();
546 
554  void translatef(const double&in x, const double&in y, const double&in z);
555 
560  void rotateX(const double&in ang);
561 
566  void rotateY(const double&in ang);
567 
572  void rotateZ(const double&in ang);
573 
579  void rotate(const double&in ang, const vec3d&in axis);
580 
585  void scale(const double&in scale);
586 
591  vec3d xform(const vec3d&in v);
592 
597  vec3d getAngles();
598 
602  void loadXZRef();
603 
607  void loadXYRef();
608 
612  void loadYZRef();
613 
617  void affineInverse();
618 
625  void buildXForm(const vec3d&in pos, const vec3d&in rot, const vec3d&in cent_rot);
626 };
627 
628 
630 
633 class ErrorObj
634 {
635 public:
636  // Methods
637 
644 
649  string GetErrorString();
650 };
651 
652 
658 {
659  ABS = 0,
660  REL = 1
661 };
662 
668 {
671 };
672 
678 {
679  ANG_RAD = 0,
680  ANG_DEG = 1
681 };
682 
688 {
695 };
696 
702 {
706 };
707 
713 {
717 };
718 
724 {
726  BOR_UPPER = 1,
727  BOR_LOWER = 2,
729 };
730 
736 {
737  MAX_CAMB = 0,
739 };
740 
746 {
753 };
754 
760 {
787 };
788 
794 {
808 };
809 
815 {
822 };
823 
829 {
832 };
833 
839 {
861 };
862 
868 {
872 };
873 
879 {
888  CFD_STL_TYPE = 128,
890  CFD_TRI_TYPE = 512,
891  CFD_OBJ_TYPE = 1024,
892  CFD_DAT_TYPE = 2048,
893  CFD_KEY_TYPE = 4096,
894  CFD_GMSH_TYPE = 8192,
895  CFD_SRF_TYPE = 16384,
896  CFD_TKEY_TYPE = 32768,
901  CFD_FACET_TYPE = 1048576,
902  CFD_CURV_TYPE = 2097152,
903  CFD_PLOT3D_TYPE = 4194304
904 };
905 
911 {
917 };
918 
924 {
925  SET_3D = 0,
926  SET_2D = 1
927 };
928 
934 {
935  X_DIR = 0,
936  Y_DIR = 1,
937  Z_DIR = 2
938 };
939 
945 {
950 };
951 
957 {
963 };
964 
970 {
971  VSP_OK = 0,
993 };
994 
1000 {
1006 };
1007 
1013 {
1024  EXPORT_X3D = 10,
1028  EXPORT_BEM = 14,
1029  EXPORT_DXF = 15,
1031  EXPORT_SVG = 17,
1033  EXPORT_OBJ = 19,
1038 };
1039 
1045 {
1052 };
1053 
1059 {
1070 };
1071 
1077 {
1079  FEA_BEAM = 1,
1081 };
1082 
1088 {
1090  FEA_RIB = 1,
1091  FEA_SPAR = 2,
1093  FEA_DOME = 4,
1096  FEA_SKIN = 7,
1098 };
1099 
1105 {
1106  XY_BODY = 0,
1107  YZ_BODY = 1,
1108  XZ_BODY = 2,
1109  XY_ABS = 3,
1110  YZ_ABS = 4,
1111  XZ_ABS = 5,
1113 };
1114 
1120 {
1121  SI_UNIT = 0,
1122  CGS_UNIT = 1,
1123  MPA_UNIT = 2,
1124  BFT_UNIT = 3,
1126 };
1127 
1133 {
1144 };
1145 
1151 {
1166 };
1167 
1173 {
1176 };
1177 
1182 enum GDEV
1183 {
1184  GDEV_TAB = 0,
1207  GDEV_YGAP = 24,
1213 };
1214 
1220 {
1221  MALE = 0,
1222  FEMALE = 1
1223 };
1224 
1230 {
1239 };
1240 
1246 {
1250 };
1251 
1257 {
1262 };
1263 
1269 {
1270  LEN_MM = 0,
1271  LEN_CM = 1,
1272  LEN_M = 2,
1273  LEN_IN = 3,
1274  LEN_FT = 4,
1275  LEN_YD = 5,
1277 };
1278 
1284 {
1291 };
1292 
1298 {
1305 };
1306 
1312 {
1319 };
1320 
1326 {
1327  LINEAR = 0,
1328  PCHIP = 1,
1329  CEDIT = 2,
1331 };
1332 
1338 {
1350 };
1351 
1357 {
1362 };
1363 
1369 {
1370  X_PROJ = 0,
1371  Y_PROJ = 1,
1372  Z_PROJ = 2,
1374  VEC_PROJ = 4,
1376 };
1377 
1383 {
1387 };
1388 
1394 {
1398 };
1399 
1405 {
1412  PROP_CLI = 6,
1414 };
1415 
1421 {
1425 };
1426 
1432 {
1434  INT_DATA = 0,
1439 };
1440 
1446 {
1451 };
1452 
1458 {
1465 };
1466 
1472 {
1473  SET_ALL = 0,
1477 };
1478 
1484 {
1488 };
1489 
1495 {
1496  INSIDE = 0,
1497  OUTSIDE = 1,
1498  NONE = 2
1499 };
1500 
1506 {
1507  CONST_U = 0,
1508  CONST_W = 1
1509 };
1510 
1516 {
1517  SS_LINE = 0,
1523 };
1524 
1530 {
1531  SYM_XY = 1,
1532  SYM_XZ = 2,
1533  SYM_YZ = 4,
1535  SYM_ROT_Y = 16,
1536  SYM_ROT_Z = 32,
1539 };
1540 
1546 {
1547  SYM_NONE = 0,
1548  SYM_RL = 1
1549 };
1550 
1556 {
1561 };
1562 
1568 {
1576 };
1577 
1583 {
1584  VIEW_1 = 0,
1587  VIEW_4 = 3
1588 };
1589 
1595 {
1596  ROT_0 = 0,
1597  ROT_90 = 1,
1598  ROT_180 = 2,
1599  ROT_270 = 3
1600 };
1601 
1607 {
1610  VIEW_TOP = 2,
1615 };
1616 
1622 {
1624  PANEL = 1
1625 };
1626 
1632 {
1636 };
1637 
1643 {
1648 };
1649 
1655 {
1662 };
1663 
1669 {
1675 };
1676 
1682 {
1692 };
1693 
1699 {
1712 };
1713 
1719 {
1720  XDDM_VAR = 0,
1722 };
1723 
1729 {
1736 };
1737 
1743 {
1745  XS_POINT = 0,
1755  XS_WEDGE = 10,
1765 };
1766 
1772 {
1776 };
1777 
1783 {
1785  TRIM_X = 1,
1788 };
1789 
1795 {
1802 };
1803 
1809 {
1813 };
1814 
1815 string formatInt(int64 val, const string&in options = "", uint width = 0);
1816 string formatUInt(uint64 val, const string&in options = "", uint width = 0);
1817 string formatFloat(double val, const string&in options = "", uint width = 0, uint precision = 0);
1818 int64 parseInt(const string&in, uint base = 10, uint&out byteCount = 0);
1819 uint64 parseUInt(const string&in, uint base = 10, uint&out byteCount = 0);
1820 double parseFloat(const string&in, uint&out byteCount = 0);
1821 string join(const string[]&in, const string&in);
1822 float fpFromIEEE(uint);
1823 uint fpToIEEE(float);
1824 double fpFromIEEE(uint64);
1825 uint64 fpToIEEE(double);
1826 bool closeTo(float, float, float = 0.00001f);
1827 bool closeTo(double, double, double = 0.0000000001);
1828 float cos(float);
1829 float sin(float);
1830 float tan(float);
1831 float acos(float);
1832 float asin(float);
1833 float atan(float);
1834 float atan2(float, float);
1835 float cosh(float);
1836 float sinh(float);
1837 float tanh(float);
1838 float log(float);
1839 float log10(float);
1840 float pow(float, float);
1841 float sqrt(float);
1842 float ceil(float);
1843 float abs(float);
1844 float floor(float);
1845 float fraction(float);
1846 
1858 double dist(const vec3d&in a, const vec3d&in b);
1859 
1871 double dist_squared(const vec3d&in a, const vec3d&in b);
1872 
1883 double dot(const vec3d&in a, const vec3d&in b);
1884 
1895 vec3d cross(const vec3d&in a, const vec3d&in b);
1896 
1907 double angle(const vec3d&in a, const vec3d&in b);
1908 
1920 double signed_angle(const vec3d&in a, const vec3d&in b, const vec3d&in ref);
1921 
1933 double cos_angle(const vec3d&in a, const vec3d&in b);
1934 
1946 vec3d RotateArbAxis(const vec3d&in p, double theta, const vec3d&in axis);
1947 
1960 string AddParm(int type, const string&in name, const string&in group);
1961 
1970 string GetCurrCustomGeom();
1971 
1981 string GetCustomParm(int index);
1982 
1998 int AddGui(int type, const string&in label = string ( ), const string&in parm_name = string ( ), const string&in group_name = string ( ), double range = 10.0);
1999 
2009 void UpdateGui(int gui_id, const string&in parm_id);
2010 
2019 string AddXSecSurf();
2020 
2029 void RemoveXSecSurf(const string&in xsec_id);
2030 
2038 void ClearXSecSurfs();
2039 
2049 void SkinXSecSurf(bool closed_flag = false);
2050 
2060 void CloneSurf(int index, Matrix4d&in mat);
2061 
2071 void TransformSurf(int index, Matrix4d&in mat);
2072 
2083 void SetVspSurfType(int type, int surf_index = - 1);
2084 
2095 void SetVspSurfCfdType(int type, int surf_index = - 1);
2096 
2106 void SetCustomXSecLoc(const string&in xsec_id, const vec3d&in loc);
2107 
2117 vec3d GetCustomXSecLoc(const string&in xsec_id);
2118 
2128 void SetCustomXSecRot(const string&in xsec_id, const vec3d&in rot);
2129 
2139 vec3d GetCustomXSecRot(const string&in xsec_id);
2140 
2150 bool CheckClearTriggerEvent(int gui_id);
2151 
2170 void SetupCustomDefaultSource(int type, int surf_index, double l1, double r1, double u1, double w1, double l2 = 0, double r2 = 0, double u2 = 0, double w2 = 0);
2171 
2180 
2191 void SetCustomCenter(double x, double y, double z);
2192 
2204 string AppendXSec(const string&in xsec_surf_id, int type);
2205 
2217 string AppendCustomXSec(const string&in xsec_surf_id, int type);
2218 
2229 void CutCustomXSec(const string&in xsec_surf_id, int index);
2230 
2241 void CopyCustomXSec(const string&in xsec_surf_id, int index);
2242 
2253 void PasteCustomXSec(const string&in xsec_surf_id, int index);
2254 
2266 string InsertCustomXSec(const string&in xsec_surf_id, int type, int index);
2267 
2277 void AddInput(const string&in parm_id, const string&in var_name);
2278 
2288 void AddOutput(const string&in parm_id, const string&in var_name);
2289 
2299 void SetVar(const string&in var_name, double val);
2300 
2310 double GetVar(const string&in var_name);
2311 
2320 bool GetErrorLastCallFlag();
2321 
2330 int GetNumTotalErrors();
2331 
2341 
2351 
2363 void ScreenGrab(const string&in file_name, int w, int h, bool transparentBG);
2364 
2373 void SetViewAxis(bool vaxis);
2374 
2383 void SetShowBorders(bool brdr);
2384 
2395 void SetGeomDrawType(const string&in geom_id, int type);
2396 
2407 void SetGeomDisplayType(const string&in geom_id, int type);
2408 
2419 void SetBackground(double r, double g, double b);
2420 
2428 void Update();
2429 
2438 void VSPExit(int error_code);
2439 
2447 void ClearVSPModel();
2448 
2457 string GetVSPFileName();
2458 
2467 void ReadVSPFile(const string&in file_name);
2468 
2478 void WriteVSPFile(const string&in file_name, int set);
2479 
2488 void SetVSP3FileName(const string&in file_name);
2489 
2500 void InsertVSPFile(const string&in file_name, const string&in parent);
2501 
2513 void ExportFile(const string&in file_name, int write_set_index, int file_type);
2514 
2527 string ImportFile(const string&in file_name, int file_type, const string&in parent);
2528 
2537 void ReadApplyDESFile(const string&in file_name);
2538 
2547 void WriteDESFile(const string&in file_name);
2548 
2557 void ReadApplyXDDMFile(const string&in file_name);
2558 
2567 void WriteXDDMFile(const string&in file_name);
2568 
2577 int GetNumDesignVars();
2578 
2589 void AddDesignVar(const string&in parm_id, int type);
2590 
2598 void DeleteAllDesignVars();
2599 
2609 string GetDesignVar(int index);
2610 
2621 int GetDesignVarType(int index);
2622 
2634 string ComputeMassProps(int set, int num_slices);
2635 
2648 string ComputeCompGeom(int set, bool half_mesh, int file_export_types);
2649 
2665 string ComputePlaneSlice(int set, int num_slices, const vec3d&in norm, bool auto_bnd, double start_bnd = 0, double end_bnd = 0);
2666 
2677 void ComputeDegenGeom(int set, int file_type);
2678 
2689 void SetComputationFileName(int file_type, const string&in file_name);
2690 
2701 void ComputeCFDMesh(int set, int file_type);
2702 
2713 void SetCFDMeshVal(int type, double val);
2714 
2725 void SetCFDWakeFlag(const string&in geom_id, bool flag);
2726 
2734 void DeleteAllCFDSources();
2735 
2743 void AddDefaultSources();
2744 
2764 void AddCFDSource(int type, const string&in geom_id, int surf_index, double l1, double r1, double u1, double w1, double l2 = 0, double r2 = 0, double u2 = 0, double w2 = 0);
2765 
2774 int GetNumAnalysis();
2775 
2784 string[]@ ListAnalysis();
2785 
2795 string[]@ GetAnalysisInputNames(const string&in analysis);
2796 
2806 string ExecAnalysis(const string&in analysis);
2807 
2818 int GetNumAnalysisInputData(const string&in analysis, const string&in name);
2819 
2831 int GetAnalysisInputType(const string&in analysis, const string&in name);
2832 
2845 int[]@ GetIntAnalysisInput(const string&in analysis, const string&in name, int index = 0);
2846 
2859 double[]@ GetDoubleAnalysisInput(const string&in analysis, const string&in name, int index = 0);
2860 
2873 string[]@ GetStringAnalysisInput(const string&in analysis, const string&in name, int index = 0);
2874 
2887 vec3d[]@ GetVec3dAnalysisInput(const string&in analysis, const string&in name, int index = 0);
2888 
2897 void PrintAnalysisInputs(const string&in analysis);
2898 
2907 void SetAnalysisInputDefaults(const string&in analysis);
2908 
2920 void SetIntAnalysisInput(const string&in analysis, const string&in name, int[]@ indata_arr, int index = 0);
2921 
2933 void SetDoubleAnalysisInput(const string&in analysis, const string&in name, double[]@ indata_arr, int index = 0);
2934 
2946 void SetStringAnalysisInput(const string&in analysis, const string&in name, string[]@ indata_arr, int index = 0);
2947 
2959 void SetVec3dAnalysisInput(const string&in analysis, const string&in name, vec3d[]@ indata_arr, int index = 0);
2960 
2970 int GetNumResults(const string&in name);
2971 
2981 string GetResultsName(const string&in results_id);
2982 
2993 string FindResultsID(const string&in name, int index = 0);
2994 
3004 string FindLatestResultsID(const string&in name);
3005 
3016 int GetNumData(const string&in results_id, const string&in data_name);
3017 
3029 int GetResultsType(const string&in results_id, const string&in data_name);
3030 
3039 string[]@ GetAllResultsNames();
3040 
3050 string[]@ GetAllDataNames(const string&in results_id);
3051 
3063 int[]@ GetIntResults(const string&in id, const string&in name, int index = 0);
3064 
3076 double[]@ GetDoubleResults(const string&in id, const string&in name, int index = 0);
3077 
3089 double[]@[]@ GetDoubleMatResults(const string&in id, const string&in name, int index = 0);
3090 
3102 string[]@ GetStringResults(const string&in id, const string&in name, int index = 0);
3103 
3115 vec3d[]@ GetVec3dResults(const string&in id, const string&in name, int index = 0);
3116 
3127 string CreateGeomResults(const string&in geom_id, const string&in name);
3128 
3136 void DeleteAllResults();
3137 
3146 void DeleteResult(const string&in id);
3147 
3157 void WriteResultsCSVFile(const string&in id, const string&in file_name);
3158 
3167 void PrintResults(const string&in id);
3168 
3176 void WriteTestResults();
3177 
3186 string[]@ GetGeomTypes();
3187 
3197 string AddGeom(const string&in type, const string&in parent = string ( ));
3198 
3208 void UpdateGeom(const string&in geom_id);
3209 
3218 void DeleteGeom(const string&in geom_id);
3219 
3228 void DeleteGeomVec(string[]@ del_arr);
3229 
3239 void CutGeomToClipboard(const string&in geom_id);
3240 
3250 void CopyGeomToClipboard(const string&in geom_id);
3251 
3261 string[]@ PasteGeomClipboard(const string&in parent_id = "");
3262 
3271 string[]@ FindGeoms();
3272 
3282 string[]@ FindGeomsWithName(const string&in name);
3283 
3293 void SetGeomName(const string&in geom_id, const string&in name);
3294 
3304 string GetGeomName(const string&in geom_id);
3305 
3315 string[]@ GetGeomParmIDs(const string&in geom_id);
3316 
3326 string GetGeomTypeName(const string&in geom_id);
3327 
3337 int GetNumMainSurfs(const string&in geom_id);
3338 
3351 string AddSubSurf(const string&in geom_id, int type, int surfindex = 0);
3352 
3362 void DeleteSubSurf(const string&in geom_id, const string&in sub_id);
3363 
3372 void DeleteSubSurf(const string&in sub_id);
3373 
3384 string GetSubSurf(const string&in geom_id, int index);
3385 
3396 string[]@ GetSubSurf(const string&in geom_id, const string&in name);
3397 
3408 void SetSubSurfName(const string&in geom_id, const string&in sub_id, const string&in name);
3409 
3419 void SetSubSurfName(const string&in sub_id, const string&in name);
3420 
3431 string GetSubSurfName(const string&in geom_id, const string&in sub_id);
3432 
3442 string GetSubSurfName(const string&in sub_id);
3443 
3453 int GetSubSurfIndex(const string&in sub_id);
3454 
3464 string[]@ GetSubSurfIDVec(const string&in geom_id);
3465 
3474 string[]@ GetAllSubSurfIDs();
3475 
3485 int GetNumSubSurf(const string&in geom_id);
3486 
3497 int GetSubSurfType(const string&in sub_id);
3498 
3508 string[]@ GetSubSurfParmIDs(const string&in sub_id);
3509 
3524 
3534 
3546 
3555 void AddAllToVSPAEROControlSurfaceGroup(int CSGroupIndex);
3556 
3565 void RemoveAllFromVSPAEROControlSurfaceGroup(int CSGroupIndex);
3566 
3576 string[]@ GetActiveCSNameVec(int CSGroupIndex);
3577 
3586 string[]@ GetCompleteCSNameVec();
3587 
3597 string[]@ GetAvailableCSNameVec(int CSGroupIndex);
3598 
3608 void SetVSPAEROControlGroupName(const string&in name, int CSGroupIndex);
3609 
3618 string GetVSPAEROControlGroupName(int CSGroupIndex);
3619 
3632 void AddSelectedToCSGroup(int[]@ selected, int CSGroupIndex);
3633 
3646 void RemoveSelectedFromCSGroup(int[]@ selected, int CSGroupIndex);
3647 
3656 string GetVSPAERORefWingID();
3657 
3666 string SetVSPAERORefWingID(const string&in geom_id);
3667 
3681 void SetDriverGroup(const string&in geom_id, int section_index, int driver_0, int driver_1, int driver_2);
3682 
3692 int GetNumXSecSurfs(const string&in geom_id);
3693 
3704 string GetXSecSurf(const string&in geom_id, int index);
3705 
3715 int GetNumXSec(const string&in xsec_surf_id);
3716 
3727 string GetXSec(const string&in xsec_surf_id, int xsec_index);
3728 
3740 void ChangeXSecShape(const string&in xsec_surf_id, int xsec_index, int type);
3741 
3751 void SetXSecSurfGlobalXForm(const string&in xsec_surf_id, const Matrix4d&in mat);
3752 
3762 Matrix4d GetXSecSurfGlobalXForm(const string&in xsec_surf_id);
3763 
3774 void CutXSec(const string&in geom_id, int index);
3775 
3786 void CopyXSec(const string&in geom_id, int index);
3787 
3798 void PasteXSec(const string&in geom_id, int index);
3799 
3811 void InsertXSec(const string&in geom_id, int index, int type);
3812 
3823 int GetXSecShape(const string&in xsec_id);
3824 
3834 double GetXSecWidth(const string&in xsec_id);
3835 
3845 double GetXSecHeight(const string&in xsec_id);
3846 
3857 void SetXSecWidthHeight(const string&in xsec_id, double w, double h);
3858 
3868 string[]@ GetXSecParmIDs(const string&in xsec_id);
3869 
3880 string GetXSecParm(const string&in xsec_id, const string&in name);
3881 
3892 vec3d[]@ ReadFileXSec(const string&in xsec_id, const string&in file_name);
3893 
3903 void SetXSecPnts(const string&in xsec_id, vec3d[]@ pnt_arr);
3904 
3915 vec3d ComputeXSecPnt(const string&in xsec_id, double fract);
3916 
3927 vec3d ComputeXSecTan(const string&in xsec_id, double fract);
3928 
3937 void ResetXSecSkinParms(const string&in xsec_id);
3938 
3948 void SetXSecContinuity(const string&in xsec_id, int cx);
3949 
3964 void SetXSecTanAngles(const string&in xsec_id, int side, double top, double right = - 1.0e12, double bottom = - 1.0e12, double left = - 1.0e12);
3965 
3980 void SetXSecTanSlews(const string&in xsec_id, int side, double top, double right = - 1.0e12, double bottom = - 1.0e12, double left = - 1.0e12);
3981 
3996 void SetXSecTanStrengths(const string&in xsec_id, int side, double top, double right = - 1.0e12, double bottom = - 1.0e12, double left = - 1.0e12);
3997 
4012 void SetXSecCurvatures(const string&in xsec_id, int side, double top, double right = - 1.0e12, double bottom = - 1.0e12, double left = - 1.0e12);
4013 
4023 void ReadFileAirfoil(const string&in xsec_id, const string&in file_name);
4024 
4035 void SetAirfoilPnts(const string&in xsec_id, vec3d[]@ up_pnt_vec, vec3d[]@ low_pnt_vec);
4036 
4051 vec3d[]@ GetHersheyBarLiftDist(const int npts, const double alpha, const double Vinf, const double span, bool full_span_flag = false);
4052 
4067 vec3d[]@ GetHersheyBarDragDist(const int npts, const double alpha, const double Vinf, const double span, bool full_span_flag = false);
4068 
4082 vec3d[]@ GetVKTAirfoilPnts(const int npts, const double alpha, const double epsilon, const double kappa, const double tau);
4083 
4098 double[]@ GetVKTAirfoilCpDist(const double alpha, const double epsilon, const double kappa, const double tau, vec3d[]@ xydata);
4099 
4114 vec3d[]@ GetEllipsoidSurfPnts(const vec3d&in center, const vec3d&in abc_rad, int u_npts = 20, int w_npts = 20);
4115 
4125 vec3d[]@ GetFeatureLinePnts(const string&in geom_id);
4126 
4141 double[]@ GetEllipsoidCpDist(vec3d[]@ surf_pnt_arr, const vec3d&in abc_rad, const vec3d&in V_inf);
4142 
4153 vec3d[]@ GetAirfoilUpperPnts(const string&in xsec_id);
4154 
4165 vec3d[]@ GetAirfoilLowerPnts(const string&in xsec_id);
4166 
4177 double[]@ GetUpperCSTCoefs(const string&in xsec_id);
4178 
4189 double[]@ GetLowerCSTCoefs(const string&in xsec_id);
4190 
4201 int GetUpperCSTDegree(const string&in xsec_id);
4202 
4213 int GetLowerCSTDegree(const string&in xsec_id);
4214 
4226 void SetUpperCST(const string&in xsec_id, int deg, double[]@ coeff_arr);
4227 
4239 void SetLowerCST(const string&in xsec_id, int deg, double[]@ coeff_arr);
4240 
4250 void PromoteCSTUpper(const string&in xsec_id);
4251 
4261 void PromoteCSTLower(const string&in xsec_id);
4262 
4272 void DemoteCSTUpper(const string&in xsec_id);
4273 
4283 void DemoteCSTLower(const string&in xsec_id);
4284 
4295 void FitAfCST(const string&in xsec_surf_id, int xsec_index, int deg);
4296 
4308 void WriteBezierAirfoil(const string&in file_name, const string&in geom_id, const double foilsurf_u);
4309 
4321 void WriteSeligAirfoil(const string&in file_name, const string&in geom_id, const double foilsurf_u);
4322 
4333 vec3d[]@ GetAirfoilCoordinates(const string&in geom_id, const double foilsurf_u);
4334 
4344 void EditXSecInitShape(const string&in xsec_id);
4345 
4356 void EditXSecConvertTo(const string&in xsec_id, const int&in newtype);
4357 
4367 double[]@ GetEditXSecUVec(const string&in xsec_id);
4368 
4379 vec3d[]@ GetEditXSecCtrlVec(const string&in xsec_id, const bool non_dimensional = true);
4380 
4393 void SetEditXSecPnts(const string&in xsec_id, double[]@ u_vec, vec3d[]@ control_pts);
4394 
4406 void EditXSecDelPnt(const string&in xsec_id, const int&in indx);
4407 
4418 int EditXSecSplit01(const string&in xsec_id, const double&in u);
4419 
4431 void MoveEditXSecPnt(const string&in xsec_id, const int&in indx, const vec3d&in new_pnt);
4432 
4442 void ConvertXSecToEdit(const string&in geom_id, const int&in indx = 0);
4443 
4454 void ChangeBORXSecShape(const string&in geom_id, int type);
4455 
4465 int GetBORXSecShape(const string&in geom_id);
4466 
4476 int GetNumSets();
4477 
4488 void SetSetName(int index, const string&in name);
4489 
4500 string GetSetName(int index);
4501 
4512 string[]@ GetGeomSetAtIndex(int index);
4513 
4523 string[]@ GetGeomSet(const string&in name);
4524 
4534 int GetSetIndex(const string&in name);
4535 
4546 bool GetSetFlag(const string&in geom_id, int set_index);
4547 
4558 void SetSetFlag(const string&in geom_id, int set_index, bool flag);
4559 
4569 void ScaleSet(int set_index, double scale);
4570 
4582 void RotateSet(int set_index, double x_rot_deg, double y_rot_deg, double z_rot_deg);
4583 
4593 void TranslateSet(int set_index, const vec3d&in translation_vec);
4594 
4610 void TransformSet(int set_index, const vec3d&in translation_vec, double x_rot_deg, double y_rot_deg, double z_rot_deg, double scale, bool scale_translations_flag);
4611 
4621 bool ValidParm(const string&in id);
4622 
4634 double SetParmVal(const string&in parm_id, double val);
4635 
4649 double SetParmValLimits(const string&in parm_id, double val, double lower_limit, double upper_limit);
4650 
4662 double SetParmValUpdate(const string&in parm_id, double val);
4663 
4677 double SetParmVal(const string&in geom_id, const string&in name, const string&in group, double val);
4678 
4692 double SetParmValUpdate(const string&in geom_id, const string&in parm_name, const string&in parm_group_name, double val);
4693 
4703 double GetParmVal(const string&in parm_id);
4704 
4717 double GetParmVal(const string&in geom_id, const string&in name, const string&in group);
4718 
4728 int GetIntParmVal(const string&in parm_id);
4729 
4739 bool GetBoolParmVal(const string&in parm_id);
4740 
4751 void SetParmUpperLimit(const string&in parm_id, double val);
4752 
4762 double GetParmUpperLimit(const string&in parm_id);
4763 
4774 void SetParmLowerLimit(const string&in parm_id, double val);
4775 
4785 double GetParmLowerLimit(const string&in parm_id);
4786 
4797 int GetParmType(const string&in parm_id);
4798 
4808 string GetParmName(const string&in parm_id);
4809 
4819 string GetParmGroupName(const string&in parm_id);
4820 
4830 string GetParmDisplayGroupName(const string&in parm_id);
4831 
4841 string GetParmContainer(const string&in parm_id);
4842 
4852 void SetParmDescript(const string&in parm_id, const string&in desc);
4853 
4865 string FindParm(const string&in parm_container_id, const string&in parm_name, const string&in group_name);
4866 
4878 string GetParm(const string&in geom_id, const string&in name, const string&in group);
4879 
4888 string[]@ FindContainers();
4889 
4899 string[]@ FindContainersWithName(const string&in name);
4900 
4912 string FindContainer(const string&in name, int index);
4913 
4923 string GetContainerName(const string&in parm_container_id);
4924 
4934 string[]@ FindContainerGroupNames(const string&in parm_container_id);
4935 
4945 string[]@ FindContainerParmIDs(const string&in parm_container_id);
4946 
4957 double ComputeMinClearanceDistance(const string&in geom_id, int set);
4958 
4971 double SnapParm(const string&in parm_id, double target_min_dist, bool inc_flag, int set);
4972 
4981 void AddVarPresetGroup(const string&in group_name);
4982 
4991 void AddVarPresetSetting(const string&in setting_name);
4992 
5001 void AddVarPresetParm(const string&in parm_ID);
5002 
5012 void AddVarPresetParm(const string&in parm_ID, const string&in group_name);
5013 
5023 void EditVarPresetParm(const string&in parm_ID, double parm_val);
5024 
5036 void EditVarPresetParm(const string&in parm_ID, double parm_val, const string&in group_name, const string&in setting_name);
5037 
5046 void DeleteVarPresetParm(const string&in parm_ID);
5047 
5057 void DeleteVarPresetParm(const string&in parm_ID, const string&in group_name);
5058 
5068 void SwitchVarPreset(const string&in group_name, const string&in setting_name);
5069 
5080 bool DeleteVarPresetSet(const string&in group_name, const string&in setting_name);
5081 
5090 string GetCurrentGroupName();
5091 
5100 string GetCurrentSettingName();
5101 
5110 string[]@ GetVarPresetGroupNames();
5111 
5121 string[]@ GetVarPresetSettingNamesWName(const string&in group_name);
5122 
5132 string[]@ GetVarPresetSettingNamesWIndex(int group_index);
5133 
5142 double[]@ GetVarPresetParmVals();
5143 
5154 double[]@ GetVarPresetParmValsWNames(const string&in group_name, const string&in setting_name);
5155 
5164 string[]@ GetVarPresetParmIDs();
5165 
5175 string[]@ GetVarPresetParmIDsWName(const string&in group_name);
5176 
5190 void SetPCurve(const string&in geom_id, const int&in pcurveid, double[]@ tvec, double[]@ valvec, const int&in newtype);
5191 
5203 void PCurveConvertTo(const string&in geom_id, const int&in pcurveid, const int&in newtype);
5204 
5216 int PCurveGetType(const string&in geom_id, const int&in pcurveid);
5217 
5228 double[]@ PCurveGetTVec(const string&in geom_id, const int&in pcurveid);
5229 
5240 double[]@ PCurveGetValVec(const string&in geom_id, const int&in pcurveid);
5241 
5252 void PCurveDeletePt(const string&in geom_id, const int&in pcurveid, const int&in indx);
5253 
5265 int PCurveSplit(const string&in geom_id, const int&in pcurveid, const double&in tsplit);
5266 
5278 void AddExcrescence(const string&in excresName, const int&in excresType, const double&in excresVal);
5279 
5288 void DeleteExcrescence(const int&in excresName);
5289 
5297 void UpdateParasiteDrag();
5298 
5310 void WriteAtmosphereCSVFile(const string&in file_name, const int&in atmos_type);
5311 
5328 void CalcAtmosphere(const double&in alt, const double&in delta_temp, const int&in atmos_type, double&out temp, double&out pres, double&out pres_ratio, double&out rho_ratio);
5329 
5338 void WriteBodyFFCSVFile(const string&in file_name);
5339 
5348 void WriteWingFFCSVFile(const string&in file_name);
5349 
5358 void WriteCfEqnCSVFile(const string&in file_name);
5359 
5368 void WritePartialCfMethodCSVFile(const string&in file_name);
5369 
5382 vec3d CompPnt01(const string&in geom_id, const int&in surf_indx, const double&in u, const double&in w);
5383 
5396 vec3d CompNorm01(const string&in geom_id, const int&in surf_indx, const double&in u, const double&in w);
5397 
5410 vec3d CompTanU01(const string&in geom_id, const int&in surf_indx, const double&in u, const double&in w);
5411 
5424 vec3d CompTanW01(const string&in geom_id, const int&in surf_indx, const double&in u, const double&in w);
5425 
5441 void CompCurvature01(const string&in geom_id, const int&in surf_indx, const double&in u, const double&in w, double&out k1, double&out k2, double&out ka, double&out kg);
5442 
5458 double ProjPnt01(const string&in geom_id, const int&in surf_indx, const vec3d&in pt, double&out u, double&out w);
5459 
5475 double ProjPnt01I(const string&in geom_id, const vec3d&in pt, int&out surf_indx, double&out u, double&out w);
5476 
5495 double ProjPnt01Guess(const string&in geom_id, const int&in surf_indx, const vec3d&in pt, const double&in u0, const double&in w0, double&out u, double&out w);
5496 
5508 void GetUWTess01(const string&in geom_id, int&in surf_indx, double[]@ us, double[]@ ws);
5509 
5522 vec3d[]@ CompVecPnt01(const string&in geom_id, const int&in surf_indx, double[]@ us, double[]@ ws);
5523 
5536 vec3d[]@ CompVecNorm01(const string&in geom_id, const int&in surf_indx, double[]@ us, double[]@ ws);
5537 
5553 void CompVecCurvature01(const string&in geom_id, const int&in surf_indx, double[]@ us, double[]@ ws, double[]@ k1s, double[]@ k2s, double[]@ kas, double[]@ kgs);
5554 
5570 void ProjVecPnt01(const string&in geom_id, int&in surf_indx, vec3d[]@ pts, double[]@ us, double[]@ ws, double[]@ ds);
5571 
5590 void ProjVecPnt01Guess(const string&in geom_id, int&in surf_indx, vec3d[]@ pts, double[]@ u0s, double[]@ w0s, double[]@ us, double[]@ ws, double[]@ ds);
5591 
5609 string AddRuler(const string&in startgeomid, int startsurfindx, double startu, double startw, const string&in endgeomid, int endsurfindx, double endu, double endw, const string&in name);
5610 
5619 string[]@ GetAllRulers();
5620 
5629 void DelRuler(const string&in id);
5630 
5638 void DeleteAllRulers();
5639 
5653 string AddProbe(const string&in geomid, int surfindx, double u, double w, const string&in name);
5654 
5663 string[]@ GetAllProbes();
5664 
5673 void DelProbe(const string&in id);
5674 
5682 void DeleteAllProbes();
5683 
5695 int AddFeaStruct(const string&in geom_id, bool init_skin = true, int surfindex = 0);
5696 
5706 void DeleteFeaStruct(const string&in geom_id, int fea_struct_ind);
5707 
5718 string GetFeaStructID(const string&in geom_id, int fea_struct_ind);
5719 
5729 int GetFeaStructIndex(const string&in struct_id);
5730 
5740 string GetFeaStructParentGeomID(const string&in struct_id);
5741 
5752 string GetFeaStructName(const string&in geom_id, int fea_struct_ind);
5753 
5764 void SetFeaStructName(const string&in geom_id, int fea_struct_ind, const string&in name);
5765 
5775 void SetFeaPartName(const string&in part_id, const string&in name);
5776 
5790 void SetFeaMeshVal(const string&in geom_id, int fea_struct_ind, int type, double val);
5791 
5803 void SetFeaMeshFileName(const string&in geom_id, int fea_struct_id, int file_type, const string&in file_name);
5804 
5816 void ComputeFeaMesh(const string&in geom_id, int fea_struct_ind, int file_type);
5817 
5828 void ComputeFeaMesh(const string&in struct_id, int file_type);
5829 
5842 string AddFeaPart(const string&in geom_id, int fea_struct_id, int type);
5843 
5854 void DeleteFeaPart(const string&in geom_id, int fea_struct_id, const string&in part_id);
5855 
5868 string AddFeaSubSurf(const string&in geom_id, int fea_struct_id, int type);
5869 
5880 void DeleteFeaSubSurf(const string&in geom_id, int fea_struct_id, const string&in ss_id);
5881 
5890 string AddFeaMaterial();
5891 
5903 string AddFeaProperty(int property_type = 0);
5904 
5914 void Print(const string&in data, bool new_line = true);
5915 
5925 void Print(const vec3d&in data, bool new_line = true);
5926 
5936 void Print(double data, bool new_line = true);
5937 
5947 void Print(int data, bool new_line = true);
5948 
5959 double Min(double x, double y);
5960 
5971 double Max(double x, double y);
5972 
5982 double Rad2Deg(double r);
5983 
5993 double Deg2Rad(double d);
5994 
6003 string GetVSPVersion();
6004 
6014 string GetVSPExePath();
6015 
6024 void VSPCheckSetup();
6025 
6033 void VSPRenew();
6034 
6044 
6045 
void rotate_x(double cos_alpha, double sin_alpha)
ErrorObj GetLastError()
void CutCustomXSec(const string &in xsec_surf_id, int index)
EXCRES_TYPE
Definition: openvsp_as.h:999
void SetXSecTanSlews(const string &in xsec_id, int side, double top, double right=- 1.0e12, double bottom=- 1.0e12, double left=- 1.0e12)
void SetParmLowerLimit(const string &in parm_id, double val)
void GetUWTess01(const string &in geom_id, int &in surf_indx, double[]@ us, double[]@ ws)
void CloneSurf(int index, Matrix4d &in mat)
WING_BLEND
Definition: openvsp_as.h:1681
FF_B_EQN
Definition: openvsp_as.h:1132
string GetVSPFileName()
void SetCustomCenter(double x, double y, double z)
VSPAERO_STABILITY_TYPE
Definition: openvsp_as.h:1642
void loadXZRef()
void scale_y(double scale)
VIEW_TYPE
Definition: openvsp_as.h:1606
void CalcAtmosphere(const double &in alt, const double &in delta_temp, const int &in atmos_type, double &out temp, double &out pres, double &out pres_ratio, double &out rho_ratio)
void SetBackground(double r, double g, double b)
double [] GetEllipsoidCpDist(vec3d[]@ surf_pnt_arr, const vec3d &in abc_rad, const vec3d &in V_inf)
void DeleteAllProbes()
string [] FindGeomsWithName(const string &in name)
vec3d cross(const vec3d &in a, const vec3d &in b)
string CreateGeomResults(const string &in geom_id, const string &in name)
void DeleteGeomVec(string[]@ del_arr)
void DeleteAllCFDSources()
vec3d xform(const vec3d &in v)
void SetIntAnalysisInput(const string &in analysis, const string &in name, int[]@ indata_arr, int index=0)
XSEC_TRIM_TYPE
Definition: openvsp_as.h:1782
double mag() const
void scale_x(double scale)
string AddFeaSubSurf(const string &in geom_id, int fea_struct_id, int type)
string [] FindContainerGroupNames(const string &in parm_container_id)
void SetLowerCST(const string &in xsec_id, int deg, double[]@ coeff_arr)
ANG_UNITS
Definition: openvsp_as.h:677
VSPAERO_ANALYSIS_METHOD
Definition: openvsp_as.h:1621
int GetLowerCSTDegree(const string &in xsec_id)
double GetXSecWidth(const string &in xsec_id)
AngelScript ScriptExtension for representing the C++ std::FILE.
Definition: openvsp_as.h:288
string GetCurrentGroupName()
double signed_angle(const vec3d &in a, const vec3d &in b, const vec3d &in ref)
void SetCFDMeshVal(int type, double val)
vec3d [] GetAirfoilLowerPnts(const string &in xsec_id)
CF_LAM_EQN
Definition: openvsp_as.h:828
int GetIntParmVal(const string &in parm_id)
int [] GetIntResults(const string &in id, const string &in name, int index=0)
void AddDefaultSources()
DIR_INDEX
Definition: openvsp_as.h:933
A class for representing 4x4 matricies.
Definition: openvsp_as.h:536
string GetParmContainer(const string &in parm_id)
string AppendXSec(const string &in xsec_surf_id, int type)
void SetVec3dAnalysisInput(const string &in analysis, const string &in name, vec3d[]@ indata_arr, int index=0)
VIEW_ROT
Definition: openvsp_as.h:1594
void ScreenGrab(const string &in file_name, int w, int h, bool transparentBG)
bool GetBoolParmVal(const string &in parm_id)
int GetNumSubSurf(const string &in geom_id)
string [] GetAllDataNames(const string &in results_id)
vec3d operator-(const vec3d &in) const
void rotate_z_zero_x(double cos_alpha, double sin_alpha)
double [] PCurveGetValVec(const string &in geom_id, const int &in pcurveid)
string GetCustomParm(int index)
void offset_x(double offset)
vec3d & set_z(double z)
void SkinXSecSurf(bool closed_flag=false)
void VSPExit(int error_code)
vec3d [] GetHersheyBarDragDist(const int npts, const double alpha, const double Vinf, const double span, bool full_span_flag=false)
string GetFeaStructParentGeomID(const string &in struct_id)
string [] GetSubSurfIDVec(const string &in geom_id)
XSEC_CRV_TYPE
Definition: openvsp_as.h:1742
VSP_SURF_TYPE
Definition: openvsp_as.h:1668
FEA_UNIT_TYPE
Definition: openvsp_as.h:1119
void TranslateSet(int set_index, const vec3d &in translation_vec)
vec3d reflect_yz()
string GetSubSurf(const string &in geom_id, int index)
int GetSetIndex(const string &in name)
void translatef(const double &in x, const double &in y, const double &in z)
TEMP_UNITS
Definition: openvsp_as.h:1555
string FindContainer(const string &in name, int index)
void TransformSurf(int index, Matrix4d &in mat)
void ReadFileAirfoil(const string &in xsec_id, const string &in file_name)
ATTACH_ROT_TYPE
Definition: openvsp_as.h:701
CF_TURB_EQN
Definition: openvsp_as.h:838
string [] ListAnalysis()
vec3d [] GetVec3dResults(const string &in id, const string &in name, int index=0)
AngelScript ScriptExtension for representing the C++ std::vector.
Definition: openvsp_as.h:244
void UpdateParasiteDrag()
FEA_SLICE_TYPE
Definition: openvsp_as.h:1104
void AddAllToVSPAEROControlSurfaceGroup(int CSGroupIndex)
void rotate_z_zero_y(double cos_alpha, double sin_alpha)
double GetParmVal(const string &in parm_id)
void PasteXSec(const string &in geom_id, int index)
vec3d [] GetVec3dAnalysisInput(const string &in analysis, const string &in name, int index=0)
void AddExcrescence(const string &in excresName, const int &in excresType, const double &in excresVal)
FEA_PART_TYPE
Definition: openvsp_as.h:1087
double [] GetVKTAirfoilCpDist(const double alpha, const double epsilon, const double kappa, const double tau, vec3d[]@ xydata)
void normalize()
double [] GetEditXSecUVec(const string &in xsec_id)
string [] GetAllSubSurfIDs()
void ExportFile(const string &in file_name, int write_set_index, int file_type)
void DeleteVarPresetParm(const string &in parm_ID)
vec3d [] GetVKTAirfoilPnts(const int npts, const double alpha, const double epsilon, const double kappa, const double tau)
string AddXSecSurf()
FEA_PART_ELEMENT_TYPE
Definition: openvsp_as.h:1076
void SetFeaMeshFileName(const string &in geom_id, int fea_struct_id, int file_type, const string &in file_name)
int GetNumMainSurfs(const string &in geom_id)
void DemoteCSTLower(const string &in xsec_id)
void SetFeaPartName(const string &in part_id, const string &in name)
int [] GetIntAnalysisInput(const string &in analysis, const string &in name, int index=0)
void WriteBodyFFCSVFile(const string &in file_name)
string AddRuler(const string &in startgeomid, int startsurfindx, double startu, double startw, const string &in endgeomid, int endsurfindx, double endu, double endw, const string &in name)
double GetParmUpperLimit(const string &in parm_id)
string GetVSPAEROControlGroupName(int CSGroupIndex)
void PrintAnalysisInputs(const string &in analysis)
COMPUTATION_FILE_TYPE
Definition: openvsp_as.h:878
void DelProbe(const string &in id)
SUBSURF_INOUT
Definition: openvsp_as.h:1494
void EditXSecDelPnt(const string &in xsec_id, const int &in indx)
string [] FindContainersWithName(const string &in name)
REF_WING_TYPE
Definition: openvsp_as.h:1420
void SetGeomDrawType(const string &in geom_id, int type)
vec3d ComputeXSecPnt(const string &in xsec_id, double fract)
void WriteSeligAirfoil(const string &in file_name, const string &in geom_id, const double foilsurf_u)
vec3d reflect_xy()
RES_GEOM_TYPE
Definition: openvsp_as.h:1445
string ComputeMassProps(int set, int num_slices)
vec3d [] CompVecNorm01(const string &in geom_id, const int &in surf_indx, double[]@ us, double[]@ ws)
string AddFeaProperty(int property_type=0)
string FindResultsID(const string &in name, int index=0)
void scale(const double &in scale)
void CutGeomToClipboard(const string &in geom_id)
A class for representing 3D vectors.
Definition: openvsp_as.h:341
double cos_angle(const vec3d &in a, const vec3d &in b)
RES_DATA_TYPE
Definition: openvsp_as.h:1431
RHO_UNITS
Definition: openvsp_as.h:1457
void AddVarPresetParm(const string &in parm_ID)
string [] GetVarPresetParmIDsWName(const string &in group_name)
void TransformSet(int set_index, const vec3d &in translation_vec, double x_rot_deg, double y_rot_deg, double z_rot_deg, double scale, bool scale_translations_flag)
int GetNumSets()
VSP_SURF_CFD_TYPE
Definition: openvsp_as.h:1654
void FitAfCST(const string &in xsec_surf_id, int xsec_index, int deg)
double SetParmValUpdate(const string &in parm_id, double val)
void PromoteCSTUpper(const string &in xsec_id)
void SetXSecTanAngles(const string &in xsec_id, int side, double top, double right=- 1.0e12, double bottom=- 1.0e12, double left=- 1.0e12)
vec3d operator/(double b) const
void DeleteSubSurf(const string &in geom_id, const string &in sub_id)
void UpdateGui(int gui_id, const string &in parm_id)
void DeleteGeom(const string &in geom_id)
void SetDoubleAnalysisInput(const string &in analysis, const string &in name, double[]@ indata_arr, int index=0)
void loadIdentity()
int GetNumXSecSurfs(const string &in geom_id)
void SetVspSurfType(int type, int surf_index=- 1)
string GetVSPExePath()
XSEC_WIDTH_SHIFT
Definition: openvsp_as.h:1808
void SetVSP3FileName(const string &in file_name)
int GetNumAnalysisInputData(const string &in analysis, const string &in name)
string [] FindGeoms()
XSEC_SIDES_TYPE
Definition: openvsp_as.h:1771
double SetParmVal(const string &in parm_id, double val)
void SetCFDWakeFlag(const string &in geom_id, bool flag)
GDEV
Definition: openvsp_as.h:1182
void PrintResults(const string &in id)
double z() const
void ScaleSet(int set_index, double scale)
string ComputeCompGeom(int set, bool half_mesh, int file_export_types)
double [] GetDoubleResults(const string &in id, const string &in name, int index=0)
void RemoveXSecSurf(const string &in xsec_id)
string AppendCustomXSec(const string &in xsec_surf_id, int type)
void SetStringAnalysisInput(const string &in analysis, const string &in name, string[]@ indata_arr, int index=0)
int GetNumControlSurfaceGroups()
vec3d [] GetEllipsoidSurfPnts(const vec3d &in center, const vec3d &in abc_rad, int u_npts=20, int w_npts=20)
vec3d & set_x(double x)
vec3d CompTanW01(const string &in geom_id, const int &in surf_indx, const double &in u, const double &in w)
double dist(const vec3d &in a, const vec3d &in b)
void WriteCfEqnCSVFile(const string &in file_name)
int AddFeaStruct(const string &in geom_id, bool init_skin=true, int surfindex=0)
vec3d [] CompVecPnt01(const string &in geom_id, const int &in surf_indx, double[]@ us, double[]@ ws)
VSPAERO_PRECONDITION
Definition: openvsp_as.h:1631
string GetDesignVar(int index)
string GetResultsName(const string &in results_id)
void ProjVecPnt01Guess(const string &in geom_id, int &in surf_indx, vec3d[]@ pts, double[]@ u0s, double[]@ w0s, double[]@ us, double[]@ ws, double[]@ ds)
vec3d [] GetEditXSecCtrlVec(const string &in xsec_id, const bool non_dimensional=true)
bool CheckClearTriggerEvent(int gui_id)
double & operator[](int) const
void DeleteResult(const string &in id)
FF_W_EQN
Definition: openvsp_as.h:1150
int GetDesignVarType(int index)
vec3d GetCustomXSecRot(const string &in xsec_id)
void SetSubSurfName(const string &in geom_id, const string &in sub_id, const string &in name)
int GetResultsType(const string &in results_id, const string &in data_name)
double Max(double x, double y)
INTERSECT_EXPORT_TYPE
Definition: openvsp_as.h:1256
string AddFeaMaterial()
void SetupCustomDefaultSource(int type, int surf_index, double l1, double r1, double u1, double w1, double l2=0, double r2=0, double u2=0, double w2=0)
SUBSURF_TYPE
Definition: openvsp_as.h:1515
int GetUpperCSTDegree(const string &in xsec_id)
double [] PCurveGetTVec(const string &in geom_id, const int &in pcurveid)
double SnapParm(const string &in parm_id, double target_min_dist, bool inc_flag, int set)
Matrix4d GetXSecSurfGlobalXForm(const string &in xsec_surf_id)
bool GetSetFlag(const string &in geom_id, int set_index)
vec3d GetCustomXSecLoc(const string &in xsec_id)
double GetParmLowerLimit(const string &in parm_id)
double dot(const vec3d &in a, const vec3d &in b)
void SetFeaMeshVal(const string &in geom_id, int fea_struct_ind, int type, double val)
double x() const
double SetParmValLimits(const string &in parm_id, double val, double lower_limit, double upper_limit)
void WriteAtmosphereCSVFile(const string &in file_name, const int &in atmos_type)
string [] GetAllRulers()
void AddDesignVar(const string &in parm_id, int type)
string ComputePlaneSlice(int set, int num_slices, const vec3d &in norm, bool auto_bnd, double start_bnd=0, double end_bnd=0)
void Print(const string &in data, bool new_line=true)
void RemoveSelectedFromCSGroup(int[]@ selected, int CSGroupIndex)
vec3d [] GetAirfoilCoordinates(const string &in geom_id, const double foilsurf_u)
void rotateX(const double &in ang)
void WriteWingFFCSVFile(const string &in file_name)
string InsertCustomXSec(const string &in xsec_surf_id, int type, int index)
double angle(const vec3d &in a, const vec3d &in b)
void EditXSecInitShape(const string &in xsec_id)
double [] GetUpperCSTCoefs(const string &in xsec_id)
string [] GetGeomTypes()
int CreateVSPAEROControlSurfaceGroup()
string [] GetVarPresetSettingNamesWIndex(int group_index)
string GetFeaStructID(const string &in geom_id, int fea_struct_ind)
double Min(double x, double y)
void SetXSecSurfGlobalXForm(const string &in xsec_surf_id, const Matrix4d &in mat)
double ProjPnt01Guess(const string &in geom_id, const int &in surf_indx, const vec3d &in pt, const double &in u0, const double &in w0, double &out u, double &out w)
string [] GetVarPresetParmIDs()
string GetParmName(const string &in parm_id)
vec3d getAngles()
string [] GetAllResultsNames()
void SetXSecWidthHeight(const string &in xsec_id, double w, double h)
double ComputeMinClearanceDistance(const string &in geom_id, int set)
string [] GetCompleteCSNameVec()
int GetBORXSecShape(const string &in geom_id)
void CompVecCurvature01(const string &in geom_id, const int &in surf_indx, double[]@ us, double[]@ ws, double[]@ k1s, double[]@ k2s, double[]@ kas, double[]@ kgs)
void loadYZRef()
void VSPCheckSetup()
string GetParmDisplayGroupName(const string &in parm_id)
void buildXForm(const vec3d &in pos, const vec3d &in rot, const vec3d &in cent_rot)
string SetVSPAERORefWingID(const string &in geom_id)
string [] GetAnalysisInputNames(const string &in analysis)
int GetNumAnalysis()
void loadXYRef()
void scale_z(double scale)
void DelRuler(const string &in id)
void RemoveAllFromVSPAEROControlSurfaceGroup(int CSGroupIndex)
void rotate(const double &in ang, const vec3d &in axis)
VIEW_NUM
Definition: openvsp_as.h:1582
string GetSubSurfName(const string &in geom_id, const string &in sub_id)
void CompCurvature01(const string &in geom_id, const int &in surf_indx, const double &in u, const double &in w, double &out k1, double &out k2, double &out ka, double &out kg)
CFD_CONTROL_TYPE
Definition: openvsp_as.h:759
FREESTREAM_PD_UNITS
Definition: openvsp_as.h:1172
string [] GetAllProbes()
string GetGeomName(const string &in geom_id)
vec3d operator+(const vec3d &in) const
int GetSubSurfIndex(const string &in sub_id)
ERROR_CODE
Definition: openvsp_as.h:969
void offset_y(double offset)
string [] GetStringResults(const string &in id, const string &in name, int index=0)
void SetDriverGroup(const string &in geom_id, int section_index, int driver_0, int driver_1, int driver_2)
string GetVSPVersion()
void SetAirfoilPnts(const string &in xsec_id, vec3d[]@ up_pnt_vec, vec3d[]@ low_pnt_vec)
EXPORT_TYPE
Definition: openvsp_as.h:1012
void AutoGroupVSPAEROControlSurfaces()
string AddGeom(const string &in type, const string &in parent=string())
void offset_z(double offset)
string FindLatestResultsID(const string &in name)
VEL_UNITS
Definition: openvsp_as.h:1567
void WriteBezierAirfoil(const string &in file_name, const string &in geom_id, const double foilsurf_u)
void SetPCurve(const string &in geom_id, const int &in pcurveid, double[]@ tvec, double[]@ valvec, const int &in newtype)
string [] GetGeomParmIDs(const string &in geom_id)
void SetXSecContinuity(const string &in xsec_id, int cx)
string [] GetVarPresetGroupNames()
PRES_UNITS
Definition: openvsp_as.h:1337
int PCurveGetType(const string &in geom_id, const int &in pcurveid)
void Update()
string GetXSecParm(const string &in xsec_id, const string &in name)
string GetXSec(const string &in xsec_surf_id, int xsec_index)
XSEC_TYPE
Definition: openvsp_as.h:1794
string [] GetAvailableCSNameVec(int CSGroupIndex)
DELIM_TYPE
Definition: openvsp_as.h:910
string FindParm(const string &in parm_container_id, const string &in parm_name, const string &in group_name)
vec3d CompPnt01(const string &in geom_id, const int &in surf_indx, const double &in u, const double &in w)
ABS_REL_FLAG
Definition: openvsp_as.h:657
void rotateY(const double &in ang)
void CopyCustomXSec(const string &in xsec_surf_id, int index)
int GetNumData(const string &in results_id, const string &in data_name)
DISPLAY_TYPE
Definition: openvsp_as.h:944
void SetVspSurfCfdType(int type, int surf_index=- 1)
string [] GetXSecParmIDs(const string &in xsec_id)
string AddFeaPart(const string &in geom_id, int fea_struct_id, int type)
void ClearVSPModel()
int GetNumDesignVars()
vec3d [] GetHersheyBarLiftDist(const int npts, const double alpha, const double Vinf, const double span, bool full_span_flag=false)
void ClearXSecSurfs()
void ComputeCFDMesh(int set, int file_type)
IMPORT_TYPE
Definition: openvsp_as.h:1229
void InsertVSPFile(const string &in file_name, const string &in parent)
void SetXSecPnts(const string &in xsec_id, vec3d[]@ pnt_arr)
int EditXSecSplit01(const string &in xsec_id, const double &in u)
SYM_XSEC_TYPE
Definition: openvsp_as.h:1545
SUBSURF_INCLUDE
Definition: openvsp_as.h:1483
WING_DRIVERS
Definition: openvsp_as.h:1698
void SwitchVarPreset(const string &in group_name, const string &in setting_name)
string [] FindContainerParmIDs(const string &in parm_container_id)
double y() const
DRAW_TYPE
Definition: openvsp_as.h:956
void SetSetName(int index, const string &in name)
string GetGeomTypeName(const string &in geom_id)
SYM_FLAG
Definition: openvsp_as.h:1529
vec3d [] ReadFileXSec(const string &in xsec_id, const string &in file_name)
void WriteTestResults()
ErrorObj PopLastError()
SET_TYPE
Definition: openvsp_as.h:1471
double Deg2Rad(double d)
double Rad2Deg(double r)
vec3d CompNorm01(const string &in geom_id, const int &in surf_indx, const double &in u, const double &in w)
CFD_MESH_SOURCE_TYPE
Definition: openvsp_as.h:814
void ReadApplyXDDMFile(const string &in file_name)
void ProjVecPnt01(const string &in geom_id, int &in surf_indx, vec3d[]@ pts, double[]@ us, double[]@ ws, double[]@ ds)
void SetViewAxis(bool vaxis)
void affineInverse()
ATTACH_TRANS_TYPE
Definition: openvsp_as.h:712
DIMENSION_SET
Definition: openvsp_as.h:923
string ExecAnalysis(const string &in analysis)
bool DeleteVarPresetSet(const string &in group_name, const string &in setting_name)
string AddProbe(const string &in geomid, int surfindx, double u, double w, const string &in name)
PATCH_TYPE
Definition: openvsp_as.h:1311
MASS_UNIT
Definition: openvsp_as.h:1283
double GetXSecHeight(const string &in xsec_id)
AngelScript ScriptExtension for representing generic container that can hold any value.
Definition: openvsp_as.h:320
A class for representing API Errors.
Definition: openvsp_as.h:633
bool GetErrorLastCallFlag()
void DeleteAllResults()
BOR_MODE
Definition: openvsp_as.h:723
void ResetXSecSkinParms(const string &in xsec_id)
vec3d [] GetProxyVec3dArray()
int GetAnalysisInputType(const string &in analysis, const string &in name)
CAMBER_INPUT_FLAG
Definition: openvsp_as.h:735
void WriteDESFile(const string &in file_name)
int GetNumTotalErrors()
string GetFeaStructName(const string &in geom_id, int fea_struct_ind)
void SetShowBorders(bool brdr)
PROJ_BNDY_TYPE
Definition: openvsp_as.h:1356
XDDM_QUANTITY_TYPE
Definition: openvsp_as.h:1718
CAP_TYPE
Definition: openvsp_as.h:745
string GetXSecSurf(const string &in geom_id, int index)
XSEC_CLOSE_TYPE
Definition: openvsp_as.h:1728
PROJ_TGT_TYPE
Definition: openvsp_as.h:1382
string [] GetActiveCSNameVec(int CSGroupIndex)
void ComputeDegenGeom(int set, int file_type)
vec3d [] GetAirfoilUpperPnts(const string &in xsec_id)
vec3d reflect_xz()
void AddVarPresetGroup(const string &in group_name)
double ProjPnt01(const string &in geom_id, const int &in surf_indx, const vec3d &in pt, double &out u, double &out w)
void SetFeaStructName(const string &in geom_id, int fea_struct_ind, const string &in name)
int GetParmType(const string &in parm_id)
string GetCurrentSettingName()
void SetSetFlag(const string &in geom_id, int set_index, bool flag)
void DeleteAllDesignVars()
vec3d ComputeXSecTan(const string &in xsec_id, double fract)
int AddGui(int type, const string &in label=string(), const string &in parm_name=string(), const string &in group_name=string(), double range=10.0)
FEA_CROSS_SECT_TYPE
Definition: openvsp_as.h:1044
int GetXSecShape(const string &in xsec_id)
void WriteVSPFile(const string &in file_name, int set)
SUBSURF_LINE_TYPE
Definition: openvsp_as.h:1505
int GetSubSurfType(const string &in sub_id)
FEA_EXPORT_TYPE
Definition: openvsp_as.h:1058
void SetAnalysisInputDefaults(const string &in analysis)
string GetSetName(int index)
void ChangeXSecShape(const string &in xsec_surf_id, int xsec_index, int type)
void CopyXSec(const string &in geom_id, int index)
void CutXSec(const string &in geom_id, int index)
void SetUpperCST(const string &in xsec_id, int deg, double[]@ coeff_arr)
string GetCurrCustomGeom()
void DemoteCSTUpper(const string &in xsec_id)
void ClearAllCustomDefaultSources()
void DeleteExcrescence(const int &in excresName)
double dist_squared(const vec3d &in a, const vec3d &in b)
double [] GetDoubleAnalysisInput(const string &in analysis, const string &in name, int index=0)
void SetCustomXSecRot(const string &in xsec_id, const vec3d &in rot)
void AddVarPresetSetting(const string &in setting_name)
COLLISION_ERRORS
Definition: openvsp_as.h:867
void AddCFDSource(int type, const string &in geom_id, int surf_index, double l1, double r1, double u1, double w1, double l2=0, double r2=0, double u2=0, double w2=0)
void DeleteFeaPart(const string &in geom_id, int fea_struct_id, const string &in part_id)
void SetCustomXSecLoc(const string &in xsec_id, const vec3d &in loc)
void PromoteCSTLower(const string &in xsec_id)
void InsertXSec(const string &in geom_id, int index, int type)
void SetParmDescript(const string &in parm_id, const string &in desc)
int GetNumXSec(const string &in xsec_surf_id)
void PCurveDeletePt(const string &in geom_id, const int &in pcurveid, const int &in indx)
string GetParmGroupName(const string &in parm_id)
void UpdateGeom(const string &in geom_id)
string [] GetGeomSet(const string &in name)
bool ValidParm(const string &in id)
void SetParmUpperLimit(const string &in parm_id, double val)
INIT_EDIT_XSEC_TYPE
Definition: openvsp_as.h:1245
void PCurveConvertTo(const string &in geom_id, const int &in pcurveid, const int &in newtype)
string GetErrorString()
double [] GetVarPresetParmVals()
void DeleteFeaSubSurf(const string &in geom_id, int fea_struct_id, const string &in ss_id)
string [] GetVarPresetSettingNamesWName(const string &in group_name)
void rotate_y(double cos_alpha, double sin_alpha)
void ConvertXSecToEdit(const string &in geom_id, const int &in indx=0)
vec3d & set_xyz(double x, double y, double z)
void rotate_z(double cos_alpha, double sin_alpha)
string AddParm(int type, const string &in name, const string &in group)
double [] GetVarPresetParmValsWNames(const string &in group_name, const string &in setting_name)
vec3d [] GetFeatureLinePnts(const string &in geom_id)
void DeleteFeaStruct(const string &in geom_id, int fea_struct_ind)
AIRFOIL_EXPORT_TYPE
Definition: openvsp_as.h:667
AngelScript ScriptExtension for representing the C++ std::string.
Definition: openvsp_as.h:185
void MoveEditXSecPnt(const string &in xsec_id, const int &in indx, const vec3d &in new_pnt)
void SetGeomDisplayType(const string &in geom_id, int type)
void SetXSecTanStrengths(const string &in xsec_id, int side, double top, double right=- 1.0e12, double bottom=- 1.0e12, double left=- 1.0e12)
void DeleteAllRulers()
void WriteResultsCSVFile(const string &in id, const string &in file_name)
void SetEditXSecPnts(const string &in xsec_id, double[]@ u_vec, vec3d[]@ control_pts)
double [] GetLowerCSTCoefs(const string &in xsec_id)
void EditVarPresetParm(const string &in parm_ID, double parm_val)
ERROR_CODE GetErrorCode()
PROP_PCURVE
Definition: openvsp_as.h:1404
void EditXSecConvertTo(const string &in xsec_id, const int &in newtype)
void WritePartialCfMethodCSVFile(const string &in file_name)
void SetGeomName(const string &in geom_id, const string &in name)
void ChangeBORXSecShape(const string &in geom_id, int type)
vec3d operator *(double b) const
void VSPRenew()
double [][] GetDoubleMatResults(const string &in id, const string &in name, int index=0)
PCURV_TYPE
Definition: openvsp_as.h:1325
PROP_MODE
Definition: openvsp_as.h:1393
double ProjPnt01I(const string &in geom_id, const vec3d &in pt, int &out surf_indx, double &out u, double &out w)
void SetXSecCurvatures(const string &in xsec_id, int side, double top, double right=- 1.0e12, double bottom=- 1.0e12, double left=- 1.0e12)
GENDER
Definition: openvsp_as.h:1219
int PCurveSplit(const string &in geom_id, const int &in pcurveid, const double &in tsplit)
void ReadVSPFile(const string &in file_name)
void SetVSPAEROControlGroupName(const string &in name, int CSGroupIndex)
string GetVSPAERORefWingID()
string [] GetStringAnalysisInput(const string &in analysis, const string &in name, int index=0)
vec3d CompTanU01(const string &in geom_id, const int &in surf_indx, const double &in u, const double &in w)
string ImportFile(const string &in file_name, int file_type, const string &in parent)
string GetContainerName(const string &in parm_container_id)
ATMOS_TYPE
Definition: openvsp_as.h:687
void CopyGeomToClipboard(const string &in geom_id)
PROJ_DIR_TYPE
Definition: openvsp_as.h:1368
vec3d & set_y(double y)
void RotateSet(int set_index, double x_rot_deg, double y_rot_deg, double z_rot_deg)
vec3d RotateArbAxis(const vec3d &in p, double theta, const vec3d &in axis)
void PasteCustomXSec(const string &in xsec_surf_id, int index)
CFD_MESH_EXPORT_TYPE
Definition: openvsp_as.h:793
void rotateZ(const double &in ang)
LEN_UNITS
Definition: openvsp_as.h:1268
void SetComputationFileName(int file_type, const string &in file_name)
string [] FindContainers()
int GetFeaStructIndex(const string &in struct_id)
string GetParm(const string &in geom_id, const string &in name, const string &in group)
int GetNumResults(const string &in name)
string [] PasteGeomClipboard(const string &in parent_id="")
void ComputeFeaMesh(const string &in geom_id, int fea_struct_ind, int file_type)
string [] GetGeomSetAtIndex(int index)
string AddSubSurf(const string &in geom_id, int type, int surfindex=0)
string [] GetSubSurfParmIDs(const string &in sub_id)
void ReadApplyDESFile(const string &in file_name)
void AddSelectedToCSGroup(int[]@ selected, int CSGroupIndex)
void WriteXDDMFile(const string &in file_name)
PARM_TYPE
Definition: openvsp_as.h:1297