You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
In my home I have a radiator in my bathroom that consists of rectangular horizontal tubes welded on two vertical round tubes. The horizontal tubes attract a lot of dust but are difficult to clean as the distance between them is to small to get your fingers in between them. Therefore I designed a tool to push a cleaning towel in between the tubes.
The code looks like this:
functionDxy(currentPoint,dx,dy){letnewPoint=[];newPoint[0]=currentPoint[0]+dx;newPoint[1]=currentPoint[1]+dy;returnnewPoint}functionDx(currentPoint,dx){letnewPoint=[];newPoint[0]=currentPoint[0]+dx;newPoint[1]=currentPoint[1];returnnewPoint}functionDy(currentPoint,dy){letnewPoint=[];newPoint[0]=currentPoint[0];newPoint[1]=currentPoint[1]+dy;returnnewPoint}letfingerDepth=22;// how far the prongs stick into the radiatorletfingerSpace=16;// the width of the radiator elements, hence space between fingersletfingerThickness=8;// the thickness of the fingers or prongs that stick into the radiatorlethandDepth=22;lethandleLength=90;lethandleWidth=30;lethandleDist=((5*fingerThickness+4*fingerSpace)-handleWidth)/2;letfingerRadius=2;lethandRadius=8;lethandleThickness=10;letholeRadius=6;letfirstHoleY=8;letholeChamfer=1;letp0=[0,0];// finger 1letp1=Dy(p0,fingerDepth);letp2=Dx(p1,fingerThickness);letp3=Dy(p2,-fingerDepth);letp4=Dx(p3,fingerSpace);// finger 2letp5=Dy(p4,fingerDepth);letp6=Dx(p5,fingerThickness);letp7=Dy(p6,-fingerDepth);letp8=Dx(p7,fingerSpace);//finger 3letp9=Dy(p8,fingerDepth);letp10=Dx(p9,fingerThickness);letp11=Dy(p10,-fingerDepth);letp12=Dx(p11,fingerSpace);//finger 4letp13=Dy(p12,fingerDepth);letp14=Dx(p13,fingerThickness);letp15=Dy(p14,-fingerDepth);letp16=Dx(p15,fingerSpace);//finger 5letp17=Dy(p16,fingerDepth);letp18=Dx(p17,fingerThickness);letp19=Dy(p18,-fingerDepth);// hand and handleletp20=Dy(p19,-handDepth);letp21=Dx(p20,-handleDist);letp22=Dy(p21,-handleLength);letp23=Dx(p22,-handleWidth);letp24=Dy(p23,handleLength);letp25=Dx(p24,-handleDist);letp26=Dy(p25,handDepth);// sketch of contourletcleanerContour=newSketch(p0).LineTo(p1).Fillet(fingerRadius).LineTo(p2).Fillet(fingerRadius).LineTo(p3).Fillet(fingerRadius).LineTo(p4).Fillet(fingerRadius).LineTo(p5).Fillet(fingerRadius).LineTo(p6).Fillet(fingerRadius).LineTo(p7).Fillet(fingerRadius).LineTo(p8).Fillet(fingerRadius).LineTo(p9).Fillet(fingerRadius).LineTo(p10).Fillet(fingerRadius).LineTo(p11).Fillet(fingerRadius).LineTo(p12).Fillet(fingerRadius).LineTo(p13).Fillet(fingerRadius).LineTo(p14).Fillet(fingerRadius).LineTo(p15).Fillet(fingerRadius).LineTo(p16).Fillet(fingerRadius).LineTo(p17).Fillet(fingerRadius).LineTo(p18).Fillet(fingerRadius).LineTo(p19).LineTo(p20).Fillet(handRadius).LineTo(p21).Fillet(handRadius).LineTo(p22).Fillet(handRadius).LineTo(p23).Fillet(handRadius).LineTo(p24).Fillet(handRadius).LineTo(p25).Fillet(handRadius).LineTo(p0).End(true).Face(true);// Extrude contour and bevel edgeshandle=Extrude(cleanerContour,[0,0,handleThickness]);handle=FilletEdges(handle,fingerRadius,[2,3]);// define centers for holes to make handle lighterletc1=[(handleDist+handleWidth/2),-holeRadius*firstHoleY,-0.5*handleThickness];letc2=[(handleDist+handleWidth/2),-holeRadius*(firstHoleY+3),-0.5*handleThickness];letc3=[(handleDist+handleWidth/2),-holeRadius*(firstHoleY+6),-0.5*handleThickness];letc4=[(handleDist+handleWidth/2),-holeRadius*(firstHoleY+9),-0.5*handleThickness];letholeCylinder=Cylinder(holeRadius,handleThickness*2);lethole_01=Translate(c1,holeCylinder);lethole_02=Translate(c2,holeCylinder);lethole_03=Translate(c3,holeCylinder);lethole_04=Translate(c4,holeCylinder);handle_light=Difference(handle,[hole_01,hole_02,hole_03,hole_04],false,0.2,false);handle_light=ChamferEdges(handle_light,holeChamfer,[53,54,55,56,96,97,98,99]);
Just to experience the difference I modelled the same shape in OnShape. It looks like this:
The file can be found on OnShape if you search for 'radiator-cleaner'. Feel free to create a copy and modify it for your own purposes.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
In my home I have a radiator in my bathroom that consists of rectangular horizontal tubes welded on two vertical round tubes. The horizontal tubes attract a lot of dust but are difficult to clean as the distance between them is to small to get your fingers in between them. Therefore I designed a tool to push a cleaning towel in between the tubes.
The code looks like this:
Just to experience the difference I modelled the same shape in OnShape. It looks like this:
The file can be found on OnShape if you search for 'radiator-cleaner'. Feel free to create a copy and modify it for your own purposes.
Beta Was this translation helpful? Give feedback.
All reactions