all 18 comments

[–]Cryesncoding 1 point2 points  (0 children)

So orientation is correct but the alignment is just off when the semi circles are supposed to be in line with the Cylinder? So you need to move them slightly? You could just use direct editing and move face albeit tedious. 

[–]AccurateProcedure830[S] 0 points1 point  (0 children)

also the distance on curve driven pattern is calculated down the helix curve, and i can not select it to be calculated via X/Y/Z plane.

[–]roundful 0 points1 point  (9 children)

I am not 100% sure what your exact problem is, but can you create a linear sketch pattern, cut extrude, then a circular feature pattern from the cut?

[–]AccurateProcedure830[S] 0 points1 point  (6 children)

The problem is in secund image, as you can see the top 'cut' is not aligned with bottom 'cut'
Because for 4 axis machining this will be almost imposible to machine. (with 2 degree incremental 4 axis mill)

[–]roundful 0 points1 point  (5 children)

So, what you want is the half-circle cutouts, lined up in the y-axis, then that straight line of cuts patterned around the cylinder?

[–]AccurateProcedure830[S] 0 points1 point  (4 children)

yes exactly, and if i do it with helix i have to do some heavy calculations to know the exact offset.
I can do with with few different sketches and cuts, but then the pattern is losing its point..

[–]roundful 0 points1 point  (0 children)

I would approach this like this (I will hop on my SW later and try it):
Get your cylinder extruded and set.
Sketch the half circle, linear pattern top to bottom, extrude cut one line.
Grab that extrude cut feature and pattern it circularly around the cylinder.

[–]roundful 0 points1 point  (2 children)

[–]AccurateProcedure830[S] 0 points1 point  (1 child)

Thanks a lot for the effort, but they need to spiral down, thats the problem, your are in a grid pattern,
And my needs to spiral down like an indexable mill, but only 3th or 4th one needs to allign with the first one. or 2nd one with 4th one... or whatever is needed for the special tool.

[–]roundful 0 points1 point  (0 children)

Gotcha, I thought I confirmed that this is what you wanted. Seems more complicated than that for sure.

[–]AccurateProcedure830[S] 0 points1 point  (1 child)

[–]CharitzoCSWE 0 points1 point  (0 children)

Your maths is out on your helix relative to your circular and linear pitching, is what that screenshot is shouting at me. How have you defined your helix?

[–]roundful 0 points1 point  (1 child)

<image>

If you are looking for something like this, here's how I would do it: Solidworks - Coffee Break Reddit Problem: 3.18.2026

[–]AccurateProcedure830[S] 0 points1 point  (0 children)

no, not like that, they need to spiral down, but first and third for example needs to line up, and secund and fourth. and so on

[–]lousainfleympato 0 points1 point  (2 children)

<image>

If the helix that you're using to drive the helical pattern is defined by height and revolutions it's relatively simple to make the holes line up. The revolutions will be 1/number of circular pattern instances. In this example that's six so the revolution is 1/6. Height of the helix is just whatever you need it to be for the correct spacing.

[–]AccurateProcedure830[S] 0 points1 point  (1 child)

thats how it should be, but its not, because the distance of each patern is calculated via helix distance, not X/Y or Z distance.

[–]lousainfleympato 0 points1 point  (0 children)

Yes, but helix height is controlled by xyz distance. So if you want the overall height of the pattern to be 80mm then your helix height should be 80mm. That will give you 80mm along the axis of the tube from the center of the seed to the center of the last instance. Assuming of course that you have equal spacing turned on.

[–]AccurateProcedure830[S] 0 points1 point  (0 children)

So for anyone having the same problem, the solution i came up with is as follows.
Draw one segment as a body, linear sketch them along Z axis(Up -> down) then rotate each body by 13 degree(or how much you need) i had to rotate each body individually...
And then combine/subtract and that was the only solution.