I’ve created a DB for a mechanical condenser with side mounted and top mounted fans.
The base point is 0,0 in the centre of the block and the width and depth of the condenser is defined by linear stretch pairs with the middle of the stretch points in the middle of width & depth.
The size of the fans top and side are scaled independently proportional to the depth of the condenser with different visibility states for 1 fan top mount, 1 fan side mount, 2 fan top mount, 2 fan side mount, 3 fan top mount, 3 fan side mount, 4 fan top mount, 4 fan side mount, 4 fan top (2 x 2 configuration) and 2 fan (packaged) options. The block was all fine at this stage and I had 10 visibility states for the block which was manageable.
My problem was that after the block was created I was asked to add piping connections to the block. I want to have the option of showing the connections in the top right, bottom right, bottom left and top right corners. Rather than have a lot of different visibility states I thought that I’d just show the connections in one corner (it moves proportional to the width of the condenser) and I’d just be able to use a flip state and rotate to place them in the corner that I wanted them to go in. All good so far.
When the connections are in there original locations they move with the width of the condenser as I want them to. My problem is that if I rotate or flip the connections they loose the connection with the width of the condenser (i.e. if the width increases or decreases the connections stubbornly stay in their original locations rather than moving to adjust to the new width of the block).
This doesn’t make much sense to me.
Is there some sort of arcane logic that DB’s go through (like Brackets, Order, Multiplication, Division, Addition then Subtraction in mathematics?) to determine what moves and the flip/rotate states monkey with it?
Ideally I’d have liked to include the piping connections with the original stretch action on the condenser but seeing as it was added on later I had to make do with a move action.
Can I add the 10 piping elements to the 3 elements included in the original stretch command? I don’t know if you can do this but I’d like it if you could do it somehow?
Do I have to start again by adding the piping elements to the original stretch and then build up the block again from scratch (something that I am loath to do as there are about 40 different actions happening in the block and a far few visibility states).
Is there any easy way out of this?