I thought that recreating the floor might be a tricky approach, and have been skeptical about floor data gettins lost (i.e. CONnr.1 - the new floor will not be joined with the elements the original floor was joined, and other instance parameters that now have to be transferred to the new instance).
The newly generated floor still behaves in a way that applying positive value for the “Cantilever:Concrete” parameter offsets the element edge towards the floor center (inwards)
Something else I have tried some time ago was inversing the curves but that didn´t work as I was trying to modify the existing floor boundary line within the existing floor.
Taking into consideration your valuable input, combining both of these factors (primarily creation of the new instance and curve reversing that defines setting of offset direction), I managed to achieve the main goal: making the boundary line sketch consistent. (However, I did have to remove the "Element Inner Centroid and use another one to fetch model curves at the same time.)
Here is an image:
Here is the script:
FloorBoundaries_SovitekOgMarinCuljak.dyn (52.5 KB)
GIF (Check out how the upper floor has a more consistent shape):
If you have a suggestion on how to transfer all instance parameters and relations to other elements before the original floor instance is deleted, let me know. Here I´m referring to “CONnr.1” mentioned above.
Also, it would be even greater if there was a way to find out (for each model line) whether it is clockwise or counterclockwise. Such as some Python Code (I´m not really sure how to fetch that through the API). In that case, I would not even have to create the new instance, but only dynamically change the positivity and negativity of the value to compensate for when the user creates a floor with “wrongly sketched lines”.
Thank you so much!