I am really trying to stay within the rules, the boundaries, believe me. You can see that my models are very simple and conservative. I have used the model tree and edited the name there. Some editing should be possible. And I think that the system should report an error. Should report an error NOW after the fact even. The situation I see is truly horrifying. You don't want to teach your users to stay away from normal behavior. What happens then is that you have a system that only works because it does not break due to extremely defensive use. My use is in fact extremely defensive. The benefit is that you can see EXACTLY what happened and it should be reproducible.Zolko wrote: ↑Sun Sep 25, 2022 12:55 pmwhat do you mean by "I renamed an Attached To ..." ? These properties are handled by the "place part" function, if you edit them by hand you must be very sure you know what you're doingbernard_01 wrote: ↑Sun Sep 25, 2022 10:46 am I renamed in Z_AxisLinearArm.FCStd an "Attached To" LCS from LCS_A_Axis_RotationalArmPart to LCS_A_Axis_RotationalArmAssembly
Assembly 4 workbench
Forum rules
Be nice to others! Respect the FreeCAD code of conduct!
Be nice to others! Respect the FreeCAD code of conduct!
-
- Posts: 47
- Joined: Sun Mar 24, 2019 9:22 am
Re: Assembly 4 workbench
Re: Assembly 4 workbench - selection filter tools
I liked the idea of the selection tools, so I added them to my global toolbar.
Figured I do some testing. Opened the selection view and activated the edge only filter.
But, clicking on faces, faces showed up in the selection view.
Should I see faces in the selection view with the edge filter set?
If so, when is the filter applied?
Edit: never mind, I see the workbench has to be loaded.
Figured I do some testing. Opened the selection view and activated the edge only filter.
But, clicking on faces, faces showed up in the selection view.
Should I see faces in the selection view with the edge filter set?
If so, when is the filter applied?
Edit: never mind, I see the workbench has to be loaded.
Star Trek II: The Wrath of Khan: Spock: "...His pattern indicates two-dimensional thinking."
Re: Assembly 4 workbench
I never believe anyone saying "believe me". And you didn't answer my question, so I can't help
-
- Posts: 47
- Joined: Sun Mar 24, 2019 9:22 am
Re: Assembly 4 workbench
You don't need to believe be because you can test everything I said. So I am trying to answer your question. I went into the "Model" tab. Then I highlighted the tree node and changed it using the [F2] function key. After editing, the name of the node was changed from "LCS_A_Axis_RotationalArmPart" to "LCS_A_Axis_RotationalArmAssembly". That is all I did. I did not edit anything in the Properties sheet. IMHO if this editing that I did is not supported, then it should be disabled.
BTW I don't know why you took this personally. I am just trying to express that I want to be conformant with the spirit of the system as I see it and not introduce my own ideas. So please see this as a sign of cooperation not confrontation.
Re: Assembly 4 workbench
looks reasonable .... where's your problem then ?bernard_01 wrote: ↑Sun Sep 25, 2022 1:50 pm After editing, the name of the node was changed from "LCS_A_Axis_RotationalArmPart" to "LCS_A_Axis_RotationalArmAssembly". That is all I did
-
- Posts: 47
- Joined: Sun Mar 24, 2019 9:22 am
Re: Assembly 4 workbench
The problem is that the property sheet which I think is the proper way to explore the relationships and start up up the dialogs via [...] buttons shows me the old value and I have no way of finding out what the relationship is because the parent LCS does not exist as shown in the sheet. I cannot rely on my memory to guess which one is correct. This LCS stuff is not trivial, and I need accuracy there to not get confused.Zolko wrote: ↑Sun Sep 25, 2022 1:55 pmlooks reasonable .... where's your problem then ?bernard_01 wrote: ↑Sun Sep 25, 2022 1:50 pm After editing, the name of the node was changed from "LCS_A_Axis_RotationalArmPart" to "LCS_A_Axis_RotationalArmAssembly". That is all I did
In other words, judging by the names, after a rename, the system creates the illusion that the number of LCSs increased, and if I don't keep that in my head, then I am running around in circles trying to eliminate superfluous coordinate systems that don't even exist in reality. That is actually the problem I was facing before I noticed what really happened.
The next thing is that I want to use Python to animate the assembly and then I have the same problem of trying to guess which names to use in Python. So I am basically paralyzed now because I don't know whether what I want to do will ever work.
Last edited by bernard_01 on Sun Sep 25, 2022 2:24 pm, edited 1 time in total.
Re: Assembly 4 workbench
no it doesn't. It shows the actual "Name", and what you have changed is the "Label". Names in FreeCAD are immutable, when a user renames an object only the user-facing Label changes, but not the internal Name. If you want to convince yourself try to reposition the relevant part and you'll see that the LCS shows up with both its Name and Label. And if you want to script your model you're better off using Names rather than Labels.bernard_01 wrote: ↑Sun Sep 25, 2022 2:06 pm The problem is that the property sheet ... shows me the old value
-
- Posts: 47
- Joined: Sun Mar 24, 2019 9:22 am
Re: Assembly 4 workbench
I understand. Now please show me some place in the system where I can see the internal name as you say and the label of it as I changed it in the same property sheet. I need a way to see that association. When I highlight the changed label LCS "LCS_A_Axis_RotationalArmAssembly" in the model tree and then explore its properties in the property sheet then I cannot see the internal name only the Label. So the internal name is hidden here.Zolko wrote: ↑Sun Sep 25, 2022 2:21 pmno it doesn't. It shows the actual "Name", and what you have changed is the "Label". Names in FreeCAD are immutable, when a user renames an object only the user-facing Label changes, but not the internal Name. If you want to convince yourself try to reposition the relevant part and you'll see that the LCS shows up with both its Name and Label. And if you want to script your model you're better off using Names rather than Labels.bernard_01 wrote: ↑Sun Sep 25, 2022 2:06 pm The problem is that the property sheet ... shows me the old value
Re: Assembly 4 workbench
You may be over-complicating it. I used to change all the labels when first learning Assembly4 but found it to be very confusing very quickly as my assemblies became more complex. Renaming is a lot of work, requires maintenance if you want to change it, and clutters the model tree and the assembly panels. Now, all I do is choose a simple meaningful name for the file name to describe either an individual part/body or a sub-assembly. Then I only change the label of the Body and never re-label the assembly links or LCS's. If I want to add something to remind me I use the Label2 property in the Description field for reminders (right click the Property View and Base>Show All to add the label).bernard_01 wrote: ↑Sun Sep 25, 2022 1:17 pm You can see that my models are very simple and conservative.
The other thing I notice in your file is that you are not using the Assembly4 Part and Body containers. These containers include default LCS which are intended for use during assembly. You can use this LCS as the primary assembly interface for the body or sub-assembly and then add any LCS's or hole axes for anything else that attaches to the body. It is important that first sketch in the body take advantage of the default LCS, e.g. if you have a primary mounting hole, pilot, foot, etc. then the first sketch of that feature should coincide with the default LCS. I rarely have to add any LCS's to the Model unless I am using a master sketch as the assembly solver.
I assume that your files will be part of a larger assembly, but I notice that you have all of your bodies or sub-assemblies attached to the Parent Assembly. That means they are all independent of each other which I'm not sure if that is what you want. I.e. if you move one via Placement or Attachment Offset then nothing else moves. They should usually be attached to each other so that if one moves the others move logically with them. The exception is if you are using a master sketch as a solver then you attach all the moving parts to the sketch.
Why not use the Assembly4 animator? It can handle almost any complex animation using Variables and Expressions. And, it conveniently provides an video file for sharing.bernard_01 wrote: ↑Sun Sep 25, 2022 2:06 pm The next thing is that I want to use Python to animate the assembly
My 2 cents and only a humble opinion, but only after 100's of hours building complex assemblies with Assembly4.
"It is a poor workman who blames his tools..."
-
- Posts: 47
- Joined: Sun Mar 24, 2019 9:22 am
Re: Assembly 4 workbench
Your advice is appreciated. However I am coming from a different background. From my perspective you have already capitulated. As we know, one can only have one model in each file. So I need one file per model. And my structure is a 5 axis robot where in fact on every subsequent level when moved, moves all other levels below it as expected!ppemawm wrote: ↑Sun Sep 25, 2022 3:00 pmYou may be over-complicating it. I used to change all the labels when first learning Assembly4 but found it to be very confusing very quickly as my assemblies became more complex. Renaming is a lot of work, requires maintenance if you want to change it, and clutters the model tree and the assembly panels. Now, all I do is choose a simple meaningful name for the file name to describe either an individual part/body or a sub-assembly. Then I only change the name of the Body and never rename the assembly links or LCS's. If I want to add something to remind me I use the Label2 property in the Description field for reminders (right click the Property View and Base>Show All to add the label).bernard_01 wrote: ↑Sun Sep 25, 2022 1:17 pm You can see that my models are very simple and conservative.
The other thing I notice in your file is that you are not using the Assembly4 Part and Body containers. These containers include default LCS which are intended for use during assembly. You can use this LCS as the primary assembly interface for the body or sub-assembly and then add any LCS's or hole axes for anything else that attaches to the body. It is important that first sketch in the body take advantage of the default LCS, e.g. if you have a primary mounting hole, pilot, foot, etc. then the first sketch of that feature should coincide with the default LCS. I rarely have to add any LCS's to the Model unless I am using a master sketch as the assembly solver.
I assume that your files will be part of a larger assembly, but I notice that you have all of your bodies or sub-assemblies attached to the Parent Assembly. That means they are all independent of each other which I'm not sure if that is what you want. I.e. if you move one via Placement or Attachment Offset then nothing else moves. They should usually be attached to each other so that if one moves the others move logically with them. The exception is if you are using a master sketch as a solver then you attach all the moving parts to the sketch.Why not use the Assembly4 animator? It can handle almost any complex animation using Variables and Expressions. And, it conveniently provides an video file for sharing.bernard_01 wrote: ↑Sun Sep 25, 2022 2:06 pm The next thing is that I want to use Python to animate the assembly
My 2 cents and only a humble opinion, but only after 100's of hours building complex assemblies with Assembly4.
It is a system like Russian dolls. This is as EASY as it gets and not over-complicated at all because of the encapsulation. There might be a problem of addressing the internals on lower levels because of the encapsulation, but I will deal with that when I get there.
Sure I can put everything in one file and handle everything using formulas, using the expression engine. and THEN it gets complicated. So you can see there are different ways to achieve the same EFFECT, and there could be endless discussions about what is right and what is wrong.
As to why I do not use the assembly containers - they have become obsolete in later versions of the software - they do not add value.
You can imagine that If I build a robot, then the standard animation will not do the trick. I will use the web interface to animate it driven by an external program.