

If you want to whip up something quick, I reccommend you use that. Note that as of 28/12/21 v0.2.0, the pythonqt branch has more and better features than rpc.

The rpc approach has been merged to the master branch.

Can extend xflr5 to any programming language which uses rpc and msgpack.This means that we finally have an "xflrpy" python library. The approach uses the very light and very fast rpclib library to establish a local server which can communicate with and external python process. This is the stuff I started working on recently. It is difficult to use external optimization libraries within the interpreter.
#XFLR5 HALF WING CODE#
The above problem also means there is no abstraction and well-defined objects which make the code difficult to read and extend.(These might be critical for optimization) Everything has to be exposed under the main function which means there is little to no chance of multithreading, doing complex loops or IO operations.It requires PythonQt as dependency which is a fairly large library.The main library is not well-maintained/documented and has been replaced by better tools like PySide6 (this doesn't have an embedded option tho).It is easier and safer to expose more Qt objects to python.Has entire Python classes with signals and everything exposed in the custom interpreter.This version comes with an embedded python interpreter within xflr5 itself. There are two approaches that I explored: pythonqt: Which means there exist even more tools like shiboken Luckily for us, xflr5 is written using Qt Some standard ways of exposing C code to python include using wrappers like SWIG,īoost and PyBind11. Making APIs is fun and there is a pandemic going around so I was bored. It would be very powerful with a good API and that is the goal of this project.Īlso. xflr5 has one of the most intuitive and responsive frontends while being feature rich at the same time. But all these softwares either have good frontends or backends but not both.
#XFLR5 HALF WING SOFTWARE#
I understand that are already software like openVSP/SUAVE which do similar stuff. This repository is aimed at exposing a neatĪnd equally powerful python API for xflr5 to make it easier for scripting/automation I undertook this project while learning a bit of C++. Set analysis and display settings including animation.Get targeted results from operating points.Select, delete, rename, export airfoils.Set geometry properties for airfoils including individual coordinates.Set and get airfoils from direct design.Set and get apps (xfoil, plane-design, foil-design, inverse-design).The current version (v0.5.0) has limited features but is continuosly expanding. The original software is capable of the design and low-fidelity analysis of airfoils and model aircraft and was created by created by André Deperrois. Xflrpy is a python enabled version of xflr5 with support for scripting and design optimization using a python package. Any and every contribution/constructive criticism is welcome. There might be breaking changes without updating the major version until the first release. As a result there are not many features or refined code practices as of yet. This repository is under initial development phase.
