As someone that has learned FreeCAD/slicing/printing and someone that can set feed, speed, and sizzle bacon with a side of chips, I’m not as proficient/experienced with machine tools as I am with design and printing, but for the time I’ve spent doing both, the total learning curve is about equivalent in my opinion.
See, the thing is, with 3d printing functional stuff, you can’t just grab a file and print like this. It sounds plausible in theory, but it is honestly a recipe for a Darwin award when handling tiny explosives (primers technically are) like ammunition for firearms. This can be difficult for many people to grasp, but consumer 3d printers are accurate, but not precision machines. This constraint of accuracy without precision is important. In the most basic explanation, the movements of the printer begin by assuming a 0 (x) and 0 (y) position. All movements assume they are relevant to this 0,0 location and absolute. There is always variance in this 0,0 location.
If you get deep into the weeds, there are also several factors that make every 3d printer’s motion system unique to where two files will never print exactly the same between two machines. It does not matter at the tolerances of most parts people share, but this is usually at least 0.1mm-0.5mm tolerances. For something like a gun, or other precision mechanism, you really need a design tolerance of 0.01mm to 0.05mm. This kind of tolerance is beyond the capability of most cheap machines and beyond the kinds of tolerances that can be shared in files with other people and have any kind of relevance. The reason this matters is because the printed parts need to interface with external toleranced parts like the steel barrel. It is very possible to print these parts, but the technique requires skill. One could start scaling a part to try and solve this issue. However, in almost all cases, the X Y and Z axis will have different tolerance ranges that need to be accounted for in the design.
The actual functional way to do this requires designing your own parts. Most people that are sharing stuff like gun prints are really just showing off their chops. A fool might try and just print the stuff, but fools rarely get very far on their own. I might take such a file as a baseline to further play around with in design, but I am far more likely to place the part in FreeCAD and use it as a visual reference only while I rebuild the item from scratch. I can easily dial in 0.01mm tolerances, but I do so in reverse. I print many unit tests and adjust my design measurements until the test prints match my real world measurements. I’ve spent thousands of hours in CAD learning to design well. I can easily design something like a functioning gun. I do not support others doing so or showing off such content because I think it is irresponsible. This is why the general community consensus, and I banned (real) gun related content from !3dprinting@lemmy.world. I love functional printing and design at these levels, but the subject of guns is not conducive for a healthy general 3d printing community. Not to mention, it is the kind of thing some foolish kid might try without a full understanding of design, and accuracy versus precision.
Systems like a CNC mill use absolute position motion systems. With these, there is no assumed relative position; if the motion command fails to produce the specified movement there is direct feedback and error handling. Closed loop linear motion systems are far more expensive and/or difficult to realize. These are the basis of any real concern. The ability to print something truly robust enough to function like a gun is a matter of quite skilled learning and practice in the real world.
Quick notes - you can’t print everything you need to make a firearm, or, more correctly, you can’t print everything you need to make a firearm that works more than once. In the case of the ubiquitous Glock, you’re printing the frame, which is the serialized part, and therefore the entire ‘gun’ under US law. Once you have that, you can buy all the other parts with cash and no ID check (in most states). Without very, very expensive metal-printing technology, you can’t print, e.g., a barrel, or a slide.
Second, resin printing is extremely precise. Some resin printers are +/- .0001"; that’s more than accurate enough for firearms. That said, resin prints aren’t durable enough to be used for guns; you would want something glass-reinforced for a Glock frame, or an AR-15 lower receiver.
Prices for printing are far, far lower than CNC costs. The smallest metal-cutting CNC mill that I’m aware of starts at about $60,000, and that’s for the bare machine. Tooling is going to cost several times that. If you’re a professional gunsmith, it might make sense to buy one, if you do a lot of slide milling (for optics, or cuts to reduce the weight), or if you’re making a lot of custom muzzle brakes, but gunsmithing doesn’t tend to be a very lucrative career.
As someone that has learned FreeCAD/slicing/printing and someone that can set feed, speed, and sizzle bacon with a side of chips, I’m not as proficient/experienced with machine tools as I am with design and printing, but for the time I’ve spent doing both, the total learning curve is about equivalent in my opinion.
See, the thing is, with 3d printing functional stuff, you can’t just grab a file and print like this. It sounds plausible in theory, but it is honestly a recipe for a Darwin award when handling tiny explosives (primers technically are) like ammunition for firearms. This can be difficult for many people to grasp, but consumer 3d printers are accurate, but not precision machines. This constraint of accuracy without precision is important. In the most basic explanation, the movements of the printer begin by assuming a 0 (x) and 0 (y) position. All movements assume they are relevant to this 0,0 location and absolute. There is always variance in this 0,0 location.
If you get deep into the weeds, there are also several factors that make every 3d printer’s motion system unique to where two files will never print exactly the same between two machines. It does not matter at the tolerances of most parts people share, but this is usually at least 0.1mm-0.5mm tolerances. For something like a gun, or other precision mechanism, you really need a design tolerance of 0.01mm to 0.05mm. This kind of tolerance is beyond the capability of most cheap machines and beyond the kinds of tolerances that can be shared in files with other people and have any kind of relevance. The reason this matters is because the printed parts need to interface with external toleranced parts like the steel barrel. It is very possible to print these parts, but the technique requires skill. One could start scaling a part to try and solve this issue. However, in almost all cases, the X Y and Z axis will have different tolerance ranges that need to be accounted for in the design.
The actual functional way to do this requires designing your own parts. Most people that are sharing stuff like gun prints are really just showing off their chops. A fool might try and just print the stuff, but fools rarely get very far on their own. I might take such a file as a baseline to further play around with in design, but I am far more likely to place the part in FreeCAD and use it as a visual reference only while I rebuild the item from scratch. I can easily dial in 0.01mm tolerances, but I do so in reverse. I print many unit tests and adjust my design measurements until the test prints match my real world measurements. I’ve spent thousands of hours in CAD learning to design well. I can easily design something like a functioning gun. I do not support others doing so or showing off such content because I think it is irresponsible. This is why the general community consensus, and I banned (real) gun related content from !3dprinting@lemmy.world. I love functional printing and design at these levels, but the subject of guns is not conducive for a healthy general 3d printing community. Not to mention, it is the kind of thing some foolish kid might try without a full understanding of design, and accuracy versus precision.
Systems like a CNC mill use absolute position motion systems. With these, there is no assumed relative position; if the motion command fails to produce the specified movement there is direct feedback and error handling. Closed loop linear motion systems are far more expensive and/or difficult to realize. These are the basis of any real concern. The ability to print something truly robust enough to function like a gun is a matter of quite skilled learning and practice in the real world.
Quick notes - you can’t print everything you need to make a firearm, or, more correctly, you can’t print everything you need to make a firearm that works more than once. In the case of the ubiquitous Glock, you’re printing the frame, which is the serialized part, and therefore the entire ‘gun’ under US law. Once you have that, you can buy all the other parts with cash and no ID check (in most states). Without very, very expensive metal-printing technology, you can’t print, e.g., a barrel, or a slide.
Second, resin printing is extremely precise. Some resin printers are +/- .0001"; that’s more than accurate enough for firearms. That said, resin prints aren’t durable enough to be used for guns; you would want something glass-reinforced for a Glock frame, or an AR-15 lower receiver.
Prices for printing are far, far lower than CNC costs. The smallest metal-cutting CNC mill that I’m aware of starts at about $60,000, and that’s for the bare machine. Tooling is going to cost several times that. If you’re a professional gunsmith, it might make sense to buy one, if you do a lot of slide milling (for optics, or cuts to reduce the weight), or if you’re making a lot of custom muzzle brakes, but gunsmithing doesn’t tend to be a very lucrative career.