So, back in early Oct. I did a bunch of adjustments to the layout of the Connect Ribbon to make the work flow more user friendly. Most of this involved moving the groups from the individual ribbons into pull down menus so they wouldn't take up nearly as much space. Some how I tossed the "Planar Distance" Constraint into my Ribbon and I've been using it effectively to make the protrusion tool work for a few weeks. Today I decided to segregate the dimensional constraints from the other 2D constraints in my customization because one type persists through 3D feature creation and the other does not.
Problem is... I cannot find this Constraint 2D Planar Distance tool anywhere in the original Bentley ribbons and I know I didn't just invent it. What's even more weird is that the keyin half works it doesn't appear in the keyin browser as an option but it does activate the tool and does work!
My most immediate concern is should even be using this tool or is it going to cause some major issues down the road.
Thanks in advance.
You are correct that it is not located within the delivered ribbon. You can find it if you open the "2D Constraints Tools" toolbox.
Based on the description you gave on how you are using the tool I would suggest using the "3D Dimension" tool rather than the "Dimension Plane" tool.
The 3D Dimension tool is bit more robust in that it can handle dimensioning between points(vertexes), edges, and faces.
In your case if you use the 3D dimension tool if you dimension 2 faces, they will also be assumed to be parallel and constrained as such.
I would only recommend the use of the Dimension Plane tool when creating constraints between planes(profiles), not a plane and another object, ie a solid.
So the same problem still exists if I set my profile constraints using the 3D constraints then protrude the profile into my solid(because without a blind protrusion option you have to work back into the solid not out away from it) the constraints get lost and I have to re-define them. To make things worse now that profile if I try to change the offset distance it changes my zero point the profile set point has taken over as the 0,0,0 in my model. This is what drove me to ignore the 3D constraints and only use the 2D constraints to begin with so I guess at this point I need somebody at Bentley to show me how to make the solid below were the 0,0,0 growth point when you change any variable is always the dead center of the cube, and relies I'm going to augment it and add more features and parts to it this is just the start.
The goal is for this to be one solid not multiple solids constrained together with 3D constraints, if somebody drops status to a smart solid I want it to be one body.
Note the entire thing will be driven with variables and variations. I can do it with the 2D planar castrant tool but i'll admit the final product is vary slow and clunky to update changing one variable takes 15-45 seconds to update the solid body which is kinda ridiculous in 2015 work station I'm running. So I assume based on David Trejo-Rodriguez comment the 3D constraints will produce a better more robust model that will update more smoothly? But I cannot get them to work the way I want or without dropping the constraint. Maybe I'm doing things in the incorrect order?
1. I make a construction circle I lock it to the world so it's my cell origin.
2. I make a primitive cube and use 3D constraints to anchor it to the circle (all is well).
3. I make circle constrain to be concentric to the construction circle that I started with, I give it a 3D distance offset to the cube, and I give it a 2D constraint for Radius.
4. I protrude the circle back into the cube.
5. I then change one of the variables that drives the length of the cylinder and nothing happens, I look a the properties and the variable that was tide to the 3D distance offset is broken, I fix it and change the variable again... the profile that I used to set the cylinder stays anchored to the world and the cube block at the other end moves.
Want to end up with...
I attempted to make the above part with all primitives and union the entire thing together. I then added all of the constraints (because if you constrain it first the constraints get broken). The result was a model 2x bigger then when I avoided using the union tool and used protrusion and features to build the complex solid. The resulting shape is also to complex for the variations to re-draw without crashing CE. This is very similar to my experience in legacy feature modeling union was available but never seemed to work right.
Avoiding the 2D Planar constraint seems to be okay other then the 3D dimensional constraint cannot be used between the face of a feature element (like an extruded circle) and the face of a primitive (this seems like a over site). I wouldn't use the features and stick with pure primitives but you cannot array primitives which also seems like an odd over site.
Taking another crack at it without the Union tool and only using protrusion feature to augment the base starting solid is also flaky.
First i try to make a square and protrude it back into the cylinder but the tool is so limited in settings compaired to the legacy feature tools it basically runs through the entire part. In the legacy feature tools you had many more options for blind protrusions and setting distance for how far something would protrude.
Next I decide maybe i can fool it into making the shape by going perpendicular but that doesn't seem to work ether it seems the tool is looking for a surface smaller then the protrusion to extend too.
Please take this as a constructive criticism but the "old" feature tools that are now broken in Connect while the 2D DDD was a bit more clumsy the tools were much more robust and predictable.
I've had pretty good luck making 2D profiles and making moderately simple parametric solids but this model seems to be pushing the limits of the software and it it's not that complex, moreover the exact same parametric model worked in v8i.
I cheated the protrusion tool the way i had in one of my previous attempts that worked when i used 2D Dimensional constraints and the 2D Planar tool. I extruded the square block full length then cut out the middle and fill it back in with a circle protrusion. I then used the 3D dimension tool only to constrain things which at the face seemed to work fine.
However, when i try to change variations it throws up a bunch of warnings and my part explodes. It appears the large body round cylinder is sliding off the part and not staying constrained to the sides of the cube.
In the past i used a circular construction element to draw the first cube and attempted to lock that construction to the world, then made the large circle concentric to the construction element. However, that construction element doesn't seem to hold things still in the world unless i place it last in the model creation, so I left it out.
The E/2 Constraint in the 3rd image is being dropped after i place it and not sticking even tho it'll temperately move the round body to the correct location. You can apply the constraint and it works fine till you apply a variation then it vanishes and the model explodes. Note, i used the 3D Dimensional constraint not the 2D constraints.
Before variation applied....
I attempted to recreate the model and as you can see in the above image I only used a handful of commands.
In trying to recreate your model did find some tips/tricks that you might find useful for future use:
1. Solid of extrusion:
a. started with profile.
b. extruded to get
c. once the initial solid is extruded I used the "Fixed" constraint under 3D constraints to lock the location and orientation of the solid
2. Cut solid to make cylindrical shape
a. Profile used. This is actually a grouped hole profile, you will see why this is important later
Some thing that you might notice is that I don't have a dimension do define the dimensions of the sides of the square. to achieve this what I did was make the length of the side equal to the length of the edge of the extruded solid from (1b) using the "Equal" constraint under 2D Constraint tools, in addition I also used the coincident constraint to constrain the position and orientation of the profile in reference to (1a) from the same set of tools
b. after constraining the profile I further constrained it in 3D space using the 3D Dimension tool
c. using Cut Solid by curves with settings. for the cut depth I used a variable in conjunction with others so that the depth of the cut depends on the overall length and the thickness desired of each end blocks
to get the following
as you can see using a grouped hole profile along with the cut solid tool will remove any solid section within the grouped profile. I found this much easier solution than creating a separate solid then using the subtraction tool to create the cylindrical feature.
3. Protrude end cap
a. profile is just a circle. constraints
b. constrain the profile in 3D space with 3D dimension constraint. this in conjunction with the protrusion tool is I think a better option than extruding a cylinder through a distance then joining it to the main solid
c. using the "Create solid protrusion"
4. creating the interior support rods
a. profile used for the interior support rod. Instead of using distance constraints I used the "Concentric" constraint from 2D constraint tools to constrain the profile in reference to a circular edge from (3c)
b. next I constrained the profile in 3D space by constraining the profile to be coincident with the face of the solid
c. using "create solid protrusion we get the following
the benefit in this workflow is you don't have to know how far the profile is extruded through, the placement of the profile, the protrusion tool will find the interior faces of the solid as necessary.
5. create protrusion for thumb screw/nut
a. in a similar way to (4a) the profile is constrained
b. constrain the profile in 3D space as in (3b)
c. create the protrusion
6. create protrusion for
a. as in (4a) and (5a) the profile is
b. constrain the profile in 3D space. In this case the distance constraint is between the face of the solid form (1c) and the circular profile. another option could be between the circular face created in (5c) and the circular profile.
c. protrude the profile
7. create circular protrusion
a. in a similar was as in previous steps the profile is constrained to be concentric to a circular edge created by the cut in (2c)
b. constrain the profile in 3D space
8. create second circular protrusion
a. similar to (7a) the profile created is
b. constrained the profile in 3d space. in this instance unlike in (6c) the 3D dimension constraint is between the circular face created in (7c) and the circular profile.
This in my opinion is a better method. Using the above image as a reference if you were to increase the value of "thumb screw thickness" to a value greater than "thread extrusion length" the feature (6c) would fail to get created as desired. It would be possible to use expressions in variables to mitigate this if you decide to use the method from (6)
9. create the hole
a. using the "Hole Feature" tool
b. though the hole is created it lacks any constraints so changes to the geometry have to be added. to do this you have to make the profile visible
c. add a 2D concentric constraint. after adding the constraint don't forget to go back and hide the profile, this is done in the same way as (9b) the menu will change and should show a "Hide Input Element" option
10. array the appropriate features
a. for this case I used the rectangular array option. A polar array could be considered but that would require a change in the initial profile (1a) where the center of the square is coincident with the global origin which would require creating construction lines, this is because the point of rotation in the polar array tool cannot be constrained beyond the initial placement so if you set up the model to use the global origin as a center of rotation you don't have to worry about changes in geometry.
For the row and column spacing I just used a variable using expressions that relied on knowing what the length of the edge was, which was set using a variable in (1) and subtracting 2X the offset of the profiles used in (3a)
I. array 1
II array 2
III. array 3
IV. array 4.
I did run into an issue with one instance where even though the angle was set to 0.
If you run into this what you would want to do is investigate the initial profile of the problem feature. In my case I found the following
To fix the issue I just changed the value of Rotation-Z to 0 so when I go back to perform the array
When the completed you should have
You should then be able to use the variable to create variation as desired for use as a parametric cell.
There are a couple things I have found with the union feature in conjunction with the 3D Dimension constraint and other constraints. If the constraint is made between the face of a solid and the profile of another solid the constraint will remain and changes can be made, this includes through variables. In another case if you constrain 2 faces of 2 separate solids by a distance then join them using the union tool the distance constrain is visually becomes lost and locked to the value and changes are not able to be made.
In my view this makes some sense. The reason being is that the profile drives the geometry of the solid.
Take the case of having a block with an extrusion on one side:
In this case I extruded the larger block then drew the profile of the smaller block then extruded it. The coincident constraint is between the faces of the solids
After joining them using the Union tool:
You can see that the constraint is gone. This is where I believe it becomes clear that it makes sense that the constraint is lost. Because the face of the smaller block no longer exists so any constraint between it and another face is not possible. If however you constrained the profile used to create the extrusion then created a union the profile still does exist and the constraint is carried over after a union.
This is more or less the same process I was using, I've been having some issues with constraints being lost and dropped and/or the software complaining about the constraints being too complicated (I don't recall the exact verbiage). I've shifted over working on simpler solids and I'm having some mild success. If you look back to my post on 12-7, I uploaded a test file that includes everything except the array and all the variables/variations and "most" of the associated calculations that are required to fully constrain and build this part. The only issue I see is that the example provided isn't as fully constrained.
Below are pictures of the missing constraints that you don't have in your model and a list example of variations and variables. To be clear I'm not really looking for Bentley to model my parts, I'm looking for understanding of limitations at this point. Un-constrained I can make this part all day long, it's once I start to constrain it in all three dimensions that it has issues. It's as if the software is just very poorly optimized when it works it takes a full order of magnitude longer to process and re-draw over feature modeling in v8i. It works fine and it's smooth up till some point in the process when it starts to go from taking 3-4 seconds to apply a variation to exploding or taking 40-45 seconds to apply a variation.
If feature modeling wasn't so broken in Connect I would honestly prefer to use the legacy tools, as they were easier and didn't require such backwards modeling to create parts being able to make blind protrusions also means adding things like tie rods takes half as many features to create. (Thus half as much computing power?) If I wanted to make one of the large blocks different in size from the other (which is actually the case in a different style) requires extra hoops to model as well were the blind protrusion would simply let me protrude a larger surface off a smaller one and bond them together.
I couldn't have said it better myself.
The only way I can describe it is If you've ever used a HP calculator with Reverse Polish notation; it feels like Microstation went from being a fairly easy to understand basic process of modeling (even with feature solids) to a Reverse Polish method. I can get used to doing everything backwards but the community as a whole would be served well to have developers go back and re-review the legacy tools for feature modeling (not DDD) while the 2D has taken a few steps forward the 3D has taking a lot of steps backwards.
I'll dig into the example model provided tomorrow morning with a fresh cup of coffee.
Grant Wood said:The only way I can describe it is If you've ever used a HP calculator with Reverse Polish notation;
Dude I've been using the same HP-15C since 1982. An incredibly well build calculator thats worth more now than when I bought it!
Once you know how to use one they requires far less steps than a conventional calculator. Wish the same could be said modeling in Connect. But I understand you analogy to thinking backwards.
I agree while DDD has been greatly improved 2D profiles should not be the foundation for 3D design. Just because you can make it work, sometimes, doesn't mean thats how it should work. The way I'm doing it now I design in 3D then have to study it and figure out the best "sides" to build 2D profiles and essentially rebuilt the entire model using a much lengthier process that the original. The long term effect is your thought process gets limited to the constrains and methodology of the software.