With pyhtonnet 2.5.2 (and earlier), you need to pass in dummy placeholders when calling some specific functions, namely any function with the out keyword as an argument. For the GetFirstOrderData, there are 5 out parameters so there needs to be 5 dummy values passed into the function. The output for a function like this will always be the out parameters + 1 (the actual return from the function):
There are some functions, specifically the AddRay() in the IBatchRayTrace interface where pythonnet won’t be able to actually dynamically cast the dummy placeholders to the correct object type so you’ll need to explicitly pass in a System.Double or a System.Int value (this is because there are multiple methods called AddRay() in the same parent interface and the desired method become ambiguous). You also need to make sure you pass in ZOSAPI enums if the method requires it.
I have the same probleme, even when I try the above I get :