Skip to content

Sweep missing surfaces in rounded corners #1866

@JoshuaDietz

Description

@JoshuaDietz

I have the following cadquery code:

def container_base_profile():
    width = 42.5
    half_width = width / 2
    profile = cq.Workplane("XY").polyline([(0, 0), (half_width - 2.95, 0), (half_width - 2.15, 0.8), (half_width - 2.15, 2.6), (half_width, 4.75), (half_width, 5), (0, 5)]).close()
    
    temp_box = (cq.Workplane("XZ")
                .rect(42.5, 42.5)
                .extrude(1)  
                .edges("|Y") 
                .fillet(7.5))

    top_view = temp_box.faces(">Y").wires().val()

    result = profile.sweep(top_view)

    return result

show_object(container_base_profile())

Which produces the following result

Image

As you can see, the result looks good except for the missing faces in the corners.
Does anyone have an idea how to fix these faces?
I've read multiple times that its usually better to use a loft instead. I will try that next but I'm still curious if there's a solution for the missing faces. I've already tried:

  • profile.sweep(top_view, makeSolid=True)
  • profile.sweep(top_view, isFrenet=True)
  • result = result.shell(0.1).shell(-0.1)

All without any success.

Additionally I'd be intrested in other suggestions to make the path to sweep along. Doing the extrude and then choosing the wires of the face seems overly complicated, but after hours of trial & error this was the only working solution that I could come up with

For reference here's a picture of the sketch and the path along which the sketch is swept:

Image

Thank you for your help :)

Metadata

Metadata

Assignees

No one assigned

    Labels

    questionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions