Jump to content
Mr. Bram1 Kerkhofs1

Drill hole through multiple parts, finding parts of imported geometries

Recommended Posts

Hi

Currently I'm modelling everything of my project in Caeses and I came to the point where I'm installing the bearings for my application. Since the bearings will have to be aligned correctly and fast I'm applying a Chockfast layer underneath the bearing which is supported by a aluminium plate.
The bearing housing is imported (source: www.skf.com) and already has some bolt holes, so I'm trying to get a hole in the Chockfast and the aluminium plate in order to see on the other side where my bolts will be.

 

I had following challenges:

  • How to find the bolt hole from the imported bearing housing
  • How to make subsequent layers
  • How to get a hole in all these layers

After some thinking I came up with the following strategy:

  1. Feature Definition BearingScaling: scales and transforms the imported bearing + housing to my desired scale (from mm to dm (don't ask me why ^_^ )) and combines them in one brep.
     
  2. Feature Definition BearingPositioningFrame: Locate the bolt holes by getting the locations the starting/ending points of some carefully picked edges on the BREP from the imported geometry. This way you get the general dimensions. This feature definition creates 2 points which are the centre points of the bolt holes.
     
  3. Feature Definition support: Make 4 points on the outer sides of the bearing housing. Create a rectangular plane with these points. Create a Brep which extrudes this plane and closes it (so it's a beam). This is layer 1. Create again 4 points exactly like for layer 1, but you add the thickness, so they are positioned on the outer part of layer 1. Proceed with these points similar as to layer 1 (make plan, brep, extrude) this is layer 2. Add all these layers to an fobjectlist of Layers (so when an additional layer comes you just add it to this list). Then you make a brep of a circular axis (which will be the bolt hole) and you make a copy of it which you translate (I need 2 bolt holes) and you add it to an objectlist of Bolt holes. All of the above you put on not-visible (".isVisible(0)"). Then you make a new brep with as input the objectlist with the layers, you add a boolean operation "ExlusiveOr" with the object list of bolt holes and tadaaa, you should have your bolt holes.

Up until the boolean operation everything went well. The input list for the layers does give the desired result, the list for the bolt holes makes the boolean operation fail. So I needed to repeat the boolean operation manually for each bolt hole or make loop which iterates through the bolt hole list in order to get the boolean operation to succeed. Besides this, there is still a plane in the end, in between the two layers, which isn't removed (see picture).

 

Note: I realize that in order to make the second layer I could use the plane of layer 1 with the commando: .getSurface(#numberHere), but I can't find out what the number is of the plane that I want. I could find it with trail and error, but than we don't have a generalized solution, so I rather opt to just make a new plane.

So my questions are:

  • Is there a better/faster/easier strategy to get the desired result?
  • How do I remove the plane which is blocking my bolts?
  • How do I get the number of the surface I need to make Layer 2

Have a nice day

Bram

 

DrillHoles.fdbc

post-555-0-92210800-1485165524_thumb.png

post-555-0-60427000-1485165533_thumb.png

Share this post


Link to post
Share on other sites

Hi Bram,

 

in the first step you are trying to connect two closed BReps (AISFree and BSFree), but since the initial BReps are already closed it is causing your problem later on. If you would leave one of the Breps open and try to connect them, you would see that it will not work. So to solve this issue there are two options:

 

I would recommend either having the two layers of the support plate as two separate Breps, which both can get the bolt hole by using the boolean operation difference. Or the second way is, to create the two layer in one BRep with two following extrude edges to plane operations and cut the bolt holes out after that.

 

I attached the second option as an example. Depending what you want to do with your project after you have set it up (CFD, FEM) one way might be more suitable than the other.

 

Cheers,

Simon

DrillHoles.fdbc

Share this post


Link to post
Share on other sites

Hi Simon

Thanks for your reply.

I'm afraid that the breps in the project that you uploaded don't have any sources (it gives an error). The second technique I didn't get, how do you protrude 2 times in a brep, since you want to make physically 2 different layers?

But I got the first technque.

So instead of creating one Brep and trying to protrude it all at once, I should just add the boolean operation "difference" to all the different breps. Since I got a list of all breps I could make it with the following code line:

//FreeSupportls is the list of the Layers, FreeEndBoltHoles is the list of the holes.

foreach (fbrep Source in FreeSupportls)
foreach (fbrep Difference in FreeEndBoltHoles)
Source.addOperation(brepBoolean([Difference],"Difference",NULL,true,NULL,NULL))
endfor
endfor

And it worked!
Thanks for your help

Cheers
Bram

Share this post


Link to post
Share on other sites

Hi,

 

sorry I uploaded the wrong file.

 

The second way does not really give you two different layers, at least internally there is no surface between the two layers. That is just the ways Breps work within CAESES and as I said depending on what you want to do with your CAD Model after designing it that might be suitable for you. For example if you wanted to do a CFD computation the internal model would not really madder.

 

But again the way you have done it, is the only way how to have two separate layers. 

 

If you have any more questions just let me know.

 

Cheers,

Simon

DrillHoles(1).fdbc

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...