I got sent a bunch of lenses that are too small for the old frames I have. I thought it might be fun to try 3d printing my own frame arms out of ABS.

Modeling a lens is a bit challenging, or I’m just a bit rusty with freecad. I need a way to wrap/unwrap/flatten the curve to create the contours. For my purpose here I can get away with a rough lens shape that is simply mirrored and lacks some of the complex curves. It just bugs me when I can’t model it properly…

The lens is not uniform thickness. The center is 1.8mm thick while the edges where the arms mount are 1.4mm. I want to try and make a nose piece because this is the one part that fails on these cheap glasses.

Anyways, sharing just because I can.

  • @j4k3OP
    link
    English
    26 months ago

    I’m using principles of 'close enough. I almost exclusively use the Part Design WB.

    Technically I should probably model this in Blender. I know Blender has a way to wrap and unwrap like I hinted. This post was really a fishing attempt to see if anyone here knew of a way to do the same thing in freecad.

    To model this, the first trick is to pick the best origin point. I’m using the screw pivots where the arms fold to hold my X-axis. The inside face of the lens is 146.6mm in diameter and is my primary reference surface for the lens. The shape of the lens is all done by creating sets of 2 sketches that are only used for references. These references are only used to attach a datum plane. The datum planes hold the sketches that pad and pocket the solid shape.

    If I really wanted to make this better I could do so by making more complex sweeps while only building the part with reference to the outside face of the lens, because it is not a perfectly circular dimension. After the surface features are complete for this face, I could use the defeaturing add-on workbench to extract just the outside face from the PD body. With this face by itself, I could create a filled offset in the Part workbench. Then I would be able to cut the circular inside diameter from the X/Y axis to rebuild the 146.6 mm inner face.

    In my experience that tree would have around a 50/50 chance of failing if I tried it. The task would cone down to how well the offset in the Part workbench is calculated. Even with this entire setup, I would not be able to control things like a varied edge finish on different parts of the lens so that I could model the mechanical properties better. I’m not super worried about the surface in freecad because I will need to sand and polish the print anyways.

    Thanks though. Hopefully you can follow the explanation. When I started with freecad years ago, I might have tried something like the draft WB but almost everything belongs in a Part Design workflow. It is simply a matter of knowing how to pick good references, setting your origin well, avoiding referencing off of π as much as possible, and NEVER importing edges or points from 3d geometry.

    • @[email protected]
      link
      fedilink
      36 months ago

      Hey that was mind opening, I never thought about how many different trees I could build and the implications of each… It was always like “I think I could build it this way let’s do it …” and most of the times for “difficult” projects after a couple of failed attempts and start over it would come out fine . It is really interesting the process with which you professionally chose the best one ,im not at a high enough level to be able to replicate the things you said but I can understand the decision you took and why, the likelihood of failure is something nobody teaches on the regular Internet …
      We are definitely built different I hate sanding so much I take in count fractions of mm and I usually account for the shrinking/growing of the object related to the shape filament and direction of prints …😅(Approximation from past prints) I still have to do it but at least I couldn’t have done better … I’m definitely guilty of the last one 😂😂😂 that might be the reason most of my projects end up broken 😅 Yeah the π one is a great advice too it’s an approssimation so its logical that curves that should match don’t …