With some of the EKL API its impossible to pre-determine the Orientation Boolean Values required to construct the required result. In the case below the only solution is to disable errors and try every solution, this is not efficient.
DisableErrors() Let ioCircle ( Circle ) ioCircle = circleBitgtRadius( ioOuterBoundary , ioCurve , plane( ioCurve ), ioCalcDistance/2 , True , True, 1) If ( ioCircle.Error == True){ ioCircle = circleBitgtRadius( ioOuterBoundary , ioCurve , plane( ioCurve ), ioCalcDistance/2 , True , False, 1)} If ( ioCircle.Error == True){ ioCircle = circleBitgtRadius( ioOuterBoundary , ioCurve , plane( ioCurve ), ioCalcDistance/2 , False , True, 1)} If ( ioCircle.Error == True){ ioCircle = circleBitgtRadius( ioOuterBoundary , ioCurve , plane( ioCurve ), ioCalcDistance/2 , False , False, 1)} EnableErrors()
We would like an additional EKL API that returns a List of valid results.
Let ioList ( List ) ioList = circleBitgtRadius( ioOuterBoundary , ioCurve , plane( ioCurve ), ioCalcDistance/2 , 1)
You can see that the boolean vector orientations have been removed and the final result is a list of valid results. I can now determine if there is more than one valid result which one i need.
Can we expand this to also multi resulting elements?
thanks
Marc