Separating Projects Into Separate Files

Separating Projects Into Separate Files

travis.true08
Enthusiast Enthusiast
3,349 Views
5 Replies
Message 1 of 6

Separating Projects Into Separate Files

travis.true08
Enthusiast
Enthusiast

I'm working on this project with nearly 20 different components (some of those components are duplicates). My global-scope timeline is getting lengthy, and I'm noticing that my components aren't decoupled as much as they could be. Would it be wise to separate the majority of those components out into separate files, and then link them into a final assembly file?

 

My project is a video game controller. I've got a generic button component that I'd like to use to poke holes into the faceplate component. I was thinking about putting the generic button into one component, and have the faceplate/baseplate components in another file since they're cut from the same extruded body component. In order to make the button holes in the faceplate using that generic button as a reference, I'd import the button component from its own file as a reference.

 

Does that sounds like a decent workflow, or are there any caveats that I'm overlooking?

 

0 Likes
Accepted solutions (1)
3,350 Views
5 Replies
Replies (5)
Message 2 of 6

TrippyLighting
Consultant
Consultant

Can you share your model ?


EESignature

0 Likes
Message 3 of 6

jeff_strater
Community Manager
Community Manager
Accepted solution

@travis.true08, I think I understand the question you are asking here:  You have created your design using all "local components" (I hesitate to use the label that some use that this is a "top/down" methodology - to me, that is a separate concept).  But, now, for any number of reasons, you are thinking you'd like to maybe have some of those components as standalone designs, either because:

  • You want to reuse that component in another design
  • As you indicate in your post, your timeline is getting too unwieldy and you'd like to simplify it

Today, there are not great tools for addressing either of these workflows, but coming very soon, there will be one new capability that will help with the first requirement.

 

Today, if you want to reuse the component, your only real option is to select the component, and choose "Save Copy As", or "Export" that component.  This will create a standalone version of that component, which can be re-used in other designs.  The main problems with this approach is that it breaks associativity with the original component, and there can be some strange artifacts of this approach when you have cross-component references.  That is the focus of the new enhancement releasing soon.  

 

At the moment, there is no easy way to simplify your timeline by replacing a local component with an external one.  You can do it, it's just hard and error-prone.  You would basically have to:

  • Save Copy As to get an external representation of the component
  • in your top-level model, delete all the features that make up this component, and fix up any errors that result
  • insert the saved design, and re-apply any inter-component relationships (primarily Joints, but also could be cross-component references)

What's coming soon:

We are adding a new feature called "Derived Component" to address the first requirement.  This is a feature that will allow you to associatively pull geometry from a top level model into another design.  There are many uses for this, but one use could be to create an external version of a component.  The advantage of this is that this relationship is associative, so any changes to your top-level model would propagate to the derived design.

 

As of today, we do not have any plan to solve the second workflow, although it would be nice to do so.  We call this process "externalize", and ideally it would be a one-step process that would take a local component, push it out to a new design, and replace all instances of that component in the top level with the new component.  Unfortunately, that is a very big project, and has not been funded yet.

 


Jeff Strater
Engineering Director
0 Likes
Message 4 of 6

TrippyLighting
Consultant
Consultant

@jeff_strater wrote:

... ideally it would be a one-step process that would take a local component, push it out to a new design, and replace all instances of that component in the top level with the new component.  ...

 


This would likely also require a specific design workflow in order for the exported component to actually have al the necessary details. I can very easily create a component that when exported will have yellow features in it.


EESignature

0 Likes
Message 5 of 6

travis.true08
Enthusiast
Enthusiast

Hey Trippy,

 

Sorry for the late reply (very busy weekend). I don't have the design file on-hand at the moment, but it was that video game controller that you gave me advice on a while back at the beginning of the year.

0 Likes
Message 6 of 6

travis.true08
Enthusiast
Enthusiast

Thank you for the heads-up, @jeff_strater. It sounds like the workflows don't have ideal solutions, but there are features coming along that will at least partially address this in the future. That's great to know!

0 Likes