Tuesday 7 May 2019

Civil 3D and SAC insanity...once again.

I created a subassembly using SAC2014.
It checks corridor stationing to decide to do some actions.
I have a decision like the following.

math.floor((StationValue-StaStart)/Step) = (StationValue-StaStart)/Step and StationValue>=StaStart and StationValue<=StaEnd

For StationValue=4059, StaStart=4045, Step=2, StaEnd=4059 the result was False !!! because floor was 6 (???!!!) and full double was 7. Insane !!!

I changed to math.round and values became equal so it should turn to True. But i did not !!!???

Being one step before madness i reduced the region less than the StaEnd and then i got it back.
Everything got as expected.
Simple Corridor rebuilding  or region stationing extending by grips does not trully rebuilds that station. Only reducing region stationing that much so that the desired station does not exist and then extending back worked out.

Autodesk's products insanity.

I made a test. Changed SAC code back to "Floor". Reloaded subassembly and rebuilded the corridor. Everything looked as expected so the result was True. But i did not trust it. So i reduced region stationing and then restored it.
Guess what. Now it turned to False. Again. So true rebuild for a station takes place only if it is vanished and restored !!!

Back to "Round" and everything worked fine although it should with "Floor".

Insanity continued...
I did the region stationing changes using the plan view grips.
When finally subassembly worked as expected plan view was immediatelly updated.
But the Cross Section View was not ! I had to move the Sample Line back and forth to update !