component sketches don't move with component

component sketches don't move with component

pludikar
Collaborator Collaborator
6,874 Views
30 Replies
Message 1 of 31

component sketches don't move with component

pludikar
Collaborator
Collaborator

Hi,

 

When you create a copy of a component and paste new, then move the component into a new position, the sketch associated with the new component remains in the original location.  Unless I'm missing something, this surely defeats the purpose of having a separate coordinate origin for components.  Shouldn't the sketch be tied to the component origin, and if that moves, then the sketch should move with it.

 

I've illustrated this in the attached drawing here  - it seems like odd, counter-intuitive behaviour - is this the way it's supposed to work?

 

BTW - With a more complex component I got a "failed to get owner occurrence transform" error when I pasted new.  I know this was reported over a year ago (see here) - I discovered that if you open the offending yellow history event then close it - it goes away (at least it did for me).  is it still on your todo list to fix?

 

Peter

I'm not an expert, but I know enough to be very, very dangerous.

Life long R&D Engineer (retired after 30+ years in Military Communications, Aerospace Robotics and Transport Automation).
6,875 Views
30 Replies
Replies (30)
Message 21 of 31

HughesTooling
Consultant
Consultant

@pludikar wrote:

@HughesTooling

Hi Mark,

 

Many thanks for the link to Patrick Rainsberry's video and nesting script - I already knew about his dogbone script (credit should mostly go to Casey Rogers), but this was very helpful.  The downside of the script, and hence back to the original discussion is that Patrick's nester script relies on planar joints between cabinet parts and the 4x8 (or whatever) stock.  As you can't have a component joined to two separate components in different locations and orientations, it means you have to remove all the joints in the cabinet before using the nester.

 

This makes F360 unnecessarily cumbersome, and I don't think it needs to be that way.

 

Peter


There's talk of work going into nesting once sheetmetal has been released but we'll have to wait and see if it works for something like your cabinet making. Really what's needed is a nesting workspace where the joints from the model workspace are ignored and you're free to move and nest parts with effecting your assembly.

 

Mark

Mark Hughes
Owner, Hughes Tooling
Did you find this post helpful? Feel free to Like this post.
Did your question get successfully answered? Then click on the ACCEPT SOLUTION button.

EESignature


0 Likes
Message 22 of 31

TrippyLighting
Consultant
Consultant

Yes, that happens to me too. This is an ages old bug in the preview the Combine tool code.

 

This vid I made about a year ago shows the same effect at 2:18 minutes into the vid.

 

@jeff_strater is that actually a recognized bug ?


EESignature

0 Likes
Message 23 of 31

pludikar
Collaborator
Collaborator

@TrippyLighting@HughesTooling@jeff_strater

 

Dear all,

 

Unless I've totally got hold of the wrong end, I suspect that my main issue is with save/capture position.  IMHO it has the characteristics of only saving partial positional information, that is the new positions of the bodies and not the component and it's various elements.

 

In the screencast below, I've created a drawer and I show that if you move the parent component all the children go along with it - exactly as I would expect.  These are all related components, and relate to the front panel, which is the parent drawer component/assembly - they are not joined - they just use the same coordinate origin as the parent component (drawer).  However, the sketch remains in the original location, if you edit it (this is still bizarre to me).  If you then move the sketch relative to the location, the mirrored left side gets mislocated - deleting the last captured position and renewing it puts everything back as it should be.  

 

This indicates to me that capture position incompletely saves.  There should be no reason why a user should need to go back and delete the saved position element in the timeline, and then reapply it.  It smells wrong!  It shouldn't break the component/assembly model just because you change the location of the profile sketch.

 

Is there any reason why F360 has a "capture location" at all?  It makes absolutely no sense to me because you can't do much without the new location being saved.  I'm sure there are some instances where it's useful, but if I move a component, I do it for a reason and the additional action of capturing position ought to be superfluous.  It seems to me to be far more logical to just automatically update the origin of the component, and everything will tag along with it.  For the odd occasion where you don't want to save position, I would either ctrl-z, or have a command option when you move.

 

Peter

 

 

 

I'm not an expert, but I know enough to be very, very dangerous.

Life long R&D Engineer (retired after 30+ years in Military Communications, Aerospace Robotics and Transport Automation).
Message 24 of 31

TrippyLighting
Consultant
Consultant

There are cases where the capture position function comes in handy, but for assembly work I rarely use it.

Sometimes if a model is a bit more complex when I want to assemble it (using joints) I don't get a good selection to pick for the joint origin. IN that case I move the component and capture the location, so I have access to the feature for selection the joint origin. Then however I often simply delete the capture position feature from the timeline. Once it's properly assemble I don't need that feature anymore.

 

I'd have to go through my models and find a good use case for the capture position feature.

 

As to your screencast:

 

1. Roll the timeline back to before the two capture position features.

2. Richt-click on the drawer assembly (component group) and apply a rigid group joint.

3. Move the timeline marker forward step bey step and see what happens.

 

In other words before moving the entire drawer assembly, you should have assembled it by some means. 

 


EESignature

0 Likes
Message 25 of 31

jeff_strater
Community Manager
Community Manager

Yeah, @TrippyLighting, we realize that requiring the Capture Position for a simple Joint is overkill.  There are a very few, very corner cases where this is needed, but really, in 99% of the cases it is not necessary.  We are planning to remove that.  When that happens, you will be able to move components around, create a simple Joint, and not get the prompt to capture the position, and not have to go back and delete that feature from the timeline.  Of course, for As-Built Joints, we absolutely need that Capture.

 

Jeff

 


Jeff Strater
Engineering Director
Message 26 of 31

TrippyLighting
Consultant
Consultant

@jeff_strater wrote:

... We are planning to remove that....   


Very cool! My post was not meant to criticize in case it came across like it. It really isn't that big of a deal.

 


@jeff_strater wrote:

...  Of course, for As-Built Joints, we absolutely need that Capture.\ 

 


 

Yes, that is one very good use case to the capture position feature.

 

Also, it you want to use a rigid group joint on several components that are not designed in place or have been imported and use align to move them into place. Then you also need to capture the position before you use the rigid group joint.

 


EESignature

0 Likes
Message 27 of 31

jeff_strater
Community Manager
Community Manager

no, @TrippyLighting I did not take it as criticism at all.  Your post just reminded me that we have talked about fixing that one, because, while it is not a big deal, it is an annoyance that many people run into

 

Jeff

 


Jeff Strater
Engineering Director
0 Likes
Message 28 of 31

michaelwilkinsonP94CN
Participant
Participant

Thanks for the workaround, although rather complex for an actual workflow...

 

A solution could be to create a checkbox "break all references" or "make independent" , thus breaking any prior references and create an unbound and unique component whos sketches are bound to the component's origin, not the parent object's origin... 

 

Essentially when it says "select parent", say "none", and the new component would be treated exactly as if it was an external .F3D file, instead of being bound to any other components.

 

In fact, someone could automate it with a script, perhaps: Lisp anyone?

> Save the target component to .F3D

> Import Component

> Place origin, select x axis, select y axis, select Z, or use placement hat.

0 Likes
Message 29 of 31

Cameron_Greatorex
Participant
Participant

I'm surprised this topic is still open, and parametrically defined axes drift to new locations when components are added to assemblies when more than one copy of the component is present.

 

This is just flat out bad coding. Please fix this devs. Being competitive in CAD/CAE markets is hard enough as it is, even without the unnecessary head scratching.

0 Likes
Message 30 of 31

TrippyLighting
Consultant
Consultant

@Cameron_Greatorex wrote:

..., and parametrically defined axes drift to new locations when components are added to assemblies when more than one copy of the component is present.

 


Huh ?

I work in assemblies wit thousands of components and that hasn't happened to me. Care to elaborate?


EESignature

0 Likes
Message 31 of 31

Cameron_Greatorex
Participant
Participant
Perhaps I shouldn't have spoken, because this problem has already stolen
enough of my time.

The solution I found that worked is: don't use the component editor inside
an assembly to make joint datums. For some reason, while in component
editing mode, making an axis, and sketching a line along the axis (why the
axis cannot be used for an "As-Built Joint" is also beyond me), then
creating the As-Built Joint (while not forgetting to use the component
origin as the pivot), results in an arbitrary offset sketch and axis on
duplicates.

In other words, create the joints when you make components in their own
window, not in assemblies. This is how I fixed it.
0 Likes