# Predetermined procedure order for a dynamic component failure?

The Z Position (height), of a dynamic component, is entered into the dynamic “Component Options” by of a table.
The X Position of the dynamic component is determined using the “CURRENT(“Z”)” function in the attributes.
Because of the order in which the coordinates are determined in the attributes, X - Y then Z, the Z coordinate doesn’t return the current position that has been entered, it returns the Z position previously entered.

Stair Mockup Test.skp (142.9 KB)

This Model demonstrates the issue.

This is important because I am attempting to repair issues with my Dynamic stair case that is now broken.
With the help Pythagoreas and Tom Kluyskens from Trimble.

Just use Z, not current(“z”)

I will give it a shot when I get a chance this morning.
Thanks!

Thanks, it looks like this is going to work.
It did in the test so far.

Ge zijt in goede handen, dan!

Thou are in good hands, then!

Oddly enough applying the math, where a=Z; b=X and c=Y axes, and the height Z and length Y are known.
Using x=sqrt((yy)-(zz)), the point does not end up in the projected spot in the rail where it should.
I must have the angle (rotation) slightly off on the rail, see the uploaded portion of the model.

Well I will have to see if I can’t increase the accuracy of the rotation.

You may find this helpful. Had a go with stair railings a while back.

Hopefully this is understandable: How I corrected the Adjustable stairs:

Revised with input from with the help Pythagoras and Tom Kluyskens from Trimble.

I re-approached this dynamic component from a new angle, pardon the pun, previously I had laboriously worked out the points for each subcomponent based on the height of the stage. When the component broke with the upgrade from 2017 to 2018, I was frantic for new approach, it had been a huge job to work out all the points individually, by trial and error.

There had to be a way to calculate the points using the Pythagorean Theorem or it’s derivatives. The following two formulas were determined to be the answer: Figure 1: For the stair step “Rails”: a= known height; c= known length; C= known angle 90deg.
For the “Steps”: c= known length; A= known angle; C= known angle.

First, I needed to have the angle of the stair step rails be calculated for each height entered.

The formula is; sin A=a/c,( arcsin for the answer in degrees ) . The height is passed by way of the attribute netheight and the optionIndex() function . RotY= asin(netheight/c)x-1, (asin is arcsine, to give us the angle in degrees; c the length of side c; and multiplied by -1 to give us the correct direction of the rotation.).

Now I will have the correct angle of the stairway for each height entered.

Second, I needed the position of each step for each height. This is more complex because I need the position on the Z(vertical) axis and on the X(length) axis and they must be determined separately.

The formula for Position Z is; a=sin(A)c . In this model Z=sin(Rail 2!RotY)c, ( Rail 2!RotY is the Rotation of Y from sub-component Rail 2; c the length of side c).

The formula for Position X is; **
b=cos(A)c** . Interestingly enough, the formula is exactly the same but substitutes the cosine for the sine.

Plotting these in for the X and Z positions gives us the position of the step and the length of c needs to be calculated for each step separately.

Also due to minor placement errors correctional additions had to be inserted into the formulas for the steps.