Dogbone script?

Hi,

Does anyone have or know of a script that will make these in this way?

I’ve probably modeled that 4000 times by now and I’m sick of doing it :wink:


maybe for Rhino itself, it seems like what should/could happen if entering a negative number for a fillet (?)

I do, I’ll dig it out next week.

— Dale

2 Likes

Great! thanks Dale… I look forward to it

Hi @jeff_hammond,

Use Rhino’s PackageManager command to install the Garage. Then, run the OverCut command.

– Dale

9 Likes

Hey Dale… Thanks.

I’m wanting to do it on solids… I superhacked something together for proof of concept

(I mean, I’ve actually been using this at work and it’s a lot better already compared to doing it manually… It makes a cylinder with the seam oriented away from the corner then I just boolean difference it)

import rhinoscriptsyntax as rs

diameter = .13
rad = diameter/2

   
p1 = rs.GetPoint("Base Point")
d1 = rs.AddTextDot("1", p1)
p2 = rs.GetPoint("2nd point")
d2 = rs.AddTextDot("2", p2)
p3 = rs.GetPoint("3rd point")
d3 = rs.AddTextDot("3", p3)
p4 = rs.GetPoint("Height")
d4 = rs.AddTextDot("4", p4)

height = rs.Distance(p1,p4)

vec1 = rs.VectorCreate(p2,p1)
vec2 = rs.VectorCreate(p3,p1)

vec1 = rs.VectorUnitize(vec1)
vec2 = rs.VectorUnitize(vec2)

vec3 = rs.VectorCreate(p4,p1)
  
bis = rs.VectorAdd(vec1, vec2)
bis = rs.VectorUnitize(bis)

bis = bis * rad

cpt = rs.MoveObject(p1,bis)
cptC = rs.PointCoordinates(cpt)

bisplane = rs.PlaneFromNormal(cptC, vec3, bis)

cutter = rs.AddCylinder(bisplane, height, rad, True)

rs.DeleteObjects([d1, d2, d3, d4, cpt])

you have to click 4 points for it to work… it’d be a lot cooler if you could just select the edge or the two surfaces but I couldn’t figure out how to do that (I couldn’t even figure out how to select two surfaces of a larger poly surface lol)

idk, if anyone wants to church it up some, feel free.


I do have the opposite problem. I do receive files from the clients who have applied some “dogbone” holes at the corners and I do need to remove them to have only vertical/horizontal lines without any holes in the corners. It is there a way to remove this kind of holes from 3d parts? Like DeleteHole command or something similar? Right now I do need to extract the edges, remove the dogbone holes, connect the edges, make extrusion, replace the original parts with the newly created ones.

@pascal

do we have the 2d script for this? does this only work on 3d?
having issues getting the .py script i have for this to work in rhino 8?

… there’s no “python script” menu bar on the tools like I’m used to

I had to do in rhino 7
and then weirdly tried to copy the linework from 7 into my ongoing 8 file and it was not a regular paste? any advice here?

hi @dale

is there anyway of using the overcut command to insert dogbones on exterior corners?

Ive got internal cutouts with interior corners that are showing as exterior corners on the make2d versions.

Thanks
Tilly

Hi @Tilly,

I’ll need a sample model. Make sure to highlight the area in need.

Thanks,

– Dale

Dogbone_Sample.3dm (3.1 MB)

Hi @Dave_Rindner

Ive included both the panel in 3D and the make2d copy of it. You can see that there are internal cutouts in the panel that will beed dogbones at the corners. However on the make2d copy, these internal cutouts show as a simple closed curve with only external corners, which the overcut command doesnt read.

image

Incase someone needs, compas wood has dogbone for panels. There are two types: a) optimal corner one, b) translational one (you need that when geometry is small or cutting tool is big)

2 Likes

Compass Wood it is not working on my system. Windows11 and Rhino7 here. I do drag the components in the Grasshopper canvas and nothing happens. Do you have a fix for this? I do made a recording if you need to see what happens.

Hi,

It is only for Rhino8. This is because it is written using Python and scripteditor which is shipped from R8. Can you install R8?

Unfortunately not, because I do have a lot of components/scripts/definitions that are not compatible with Rhino8.