I'm not sure I'm following you, but I'll try to help. I assume that the train cars are all configurations of a single Part file? If so, create your first configuration with the desired cars in each position. Right-click on one of them in the tree and choose "Configure component" from the drop-down. That will bring up a simplified design table where you can add configurations and choose which configuration of this Part you want to use in each. Do this for each car.
If this isn't what you want, please explain further.
The train cars are individual assemblies that need to be mated on both sides. If it was a part I could just have different configurations and the mates on both sides would stay joined.
You can two planes, one on each side (can control it via a sketch). And then can mate using those planes only.
Just to give a visual of what Deepak was mentioning. I made mine just individual configured parts instead of assemblies but the principal should apply the same. Basically if you have your planes defined by the far surfaces of the part/assembly and then mate based on those, regardless of the changing size of the parts they will always stay relative to one another.
PS: I could have actually made the boxes look somewhat like train cars but laziness
In a part with configurations the mates do not break since the plane is actually based off the same geometry and is the same plane.... In an assy this is not the case. This is why I like configurations, for the ability to hot swap out versions of a part and the mates do not fail. Assume the train cars are complex assemblies. and them the planes are not the same name and the mates break.
I tried it again but instead of making an assembly with the 3 boxes I made each of the boxes as an assembly with the planes being applied at the assembly level. Then I turned the 3 Sub-Assemblies into one large assembly and setup the same way and it worked perfectly fine?
Just as a follow-up. If your sub-assemblies are using Suppressed/Unsupressed components instead of a major surface that changes (as usage for the plane references), have the planes in the sub-assembly based off your standard 3 planes and be a configured offset distance based on the train car length.
What I would do is to set up one train and save, then right click the sub-assembly (train car) and select "Replace Component" then it will pull in another car to replace the one, then do a save as copy. That is a pretty quick way, unless you want to only have one file and be able to just hit the different configurations and it'll change, that's a lot more work and then you would need to suppress one car add another car and add mates to the new car........
Replace component works very well with named planes in each of the car assemblies... ie... front and back plane of the for shorter and longer cars. I have been able to have the reference geometry the same name in different parts and not break mates during the swap. This solution would produce 16 independent top level assemblies that I would need to maintain. I am looking for a more manageable solution.
Not sure why you would worry about 16 separate files or one file with 16 separate sub-assembly info - either way it takes maintenance - I have often had issues with assemblies with multiple configured sub-assemblies of not rebuilding correctly and as a long time user I wouldn't do it nor recommend it.. -
Anytime your dealing with information inside of information which is connected to some other sub-assembly way down the feature tree of another assembly you're asking for a rough row to hoe, as SW gets very tired before it's done with the first row and there's 15 more to go..
It surely don't matter how you do it, I'll still wish you the best, good luck.
1 assembly with 16 variations, I am assuming the changes come in the "x" dimension only?
In other words length of part is determining factor.
Make a mid plane in center for each "part".
Align your parts in your assembly in the "y" & "z" directions.(Faces? mated to each other and all of the wheels on the same plane.
Here is how I would approach the configuration side. Start with 1 assembly version with all 4 cars as you want them. Use a plane in the assembly as a "master" plane. Mate using distance to your mid planes of every part with the master plane.
Once you have established this "basic" assembly. Create a design table in the assembly to drive the master to part plane dimension. From here it is as simple as changing center dimensions based on overall length.
Since you have the lengths of the cars already create a cheat sheet of the difference in lengths from car to car so when changing the mates in your assembly you have a rough number of what you need to change it to.
I added the above picture to show what I am talking about. The center lines would be your planes. as your car length increases or decreases the dimension in the "x" has to change, hence the design table setup.
I have used this before in spacing of conveyor equipment that is configurable. It works pretty well and should work for what you are trying to accomplish.
I don't think you're going to find a better way than suppressing unneeded sub-assemblies and inserting and mating the ones you need for each configuration of the main assembly. Then it's very simple to switch back and forth between configurations with the recent Configurations toolbar (the Configuration and Display State toolbars are the only ones I use in Parts and Assemblies).
Glenn Schroeder mentioned the same thing I did if you want it in one file - the only thing I want to add is.......
Configurations are great and they work very well depending how they're set up, but just a little tid bit, don't go more than one or two levels deep with the configurations, not sure where to tell you to stop, but somewhere beyond 1 config there SW stops rebuilding cleanly....
Retrieving data ...