# Linear pattern - invalid body

**URL:** <https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264>\
**Category:** Modeling Questions\
**Created:** [February 8, 2026, 7:18pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264 "2026-02-08T19:18:37Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![kreso93](https://avatars.discourse-cdn.com/v4/letter/k/a87d85/32.png) [@kreso93](https://discourse.shapr3d.com/u/kreso93)\
**Post date:** [February 8, 2026, 7:18pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/1 "2026-02-08T19:18:38Z")

</div>

Hi,

I’m learning shapr3d. I’m trying to place a repeating pattern on a cylinder. Steps that I did

Create a sketch of a circle, extrude it.  
Created a straight line going through the middle of the cylinder  
Projected the line so I can get a a subface  
Repeated the line process.  
Extrude that subface

I’d like to repeat the extruded bit for x times, but whenever I select the faces and do a pattern, it says resulting body is invalid.¸It only gives me max of two objects in a pattern, no matter what the spacing is

 ![image](https://us1.discourse-cdn.com/flex002/uploads/shapr3d/original/3X/b/2/b2cef3d8d02d8a556940488364d7d5b7a085090b.jpeg)

Is there a better, “Shapr3d” way to do this? If I copy the subfaces and align them one by one, I get the desired result, but I don’t really like it.

---

<div class="post-metadata">

**Author:** ![Xdrakosha](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.shapr3d.com/xdrakosha/32/24881_2.png) [@Xdrakosha](https://discourse.shapr3d.com/u/Xdrakosha)\
**Post date:** [February 8, 2026, 7:55pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/2 "2026-02-08T19:55:31Z")

</div>

> [@kreso93](#):
>
> subface

I’m not sure I fully understand you. Is that what you’re trying to achieve?

 ![image](https://us1.discourse-cdn.com/flex002/uploads/shapr3d/original/3X/b/f/bfa5eed36a38d132d26ae6b0aa53c59b0aa530a9.jpeg)

---

<div class="post-metadata">

**Author:** ![kreso93](https://avatars.discourse-cdn.com/v4/letter/k/a87d85/32.png) [@kreso93](https://discourse.shapr3d.com/u/kreso93)\
**Post date:** [February 8, 2026, 10:34pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/3 "2026-02-08T22:34:45Z")

</div>

Yes, but it’s constantly failing… Saying the shape is invalid. I can just copy paste them and it works, but still, not the way I’d like to solve it… How did you make those “threads”, the same way as I did or differently?

---

<div class="post-metadata">

**Author:** ![Xdrakosha](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.shapr3d.com/xdrakosha/32/24881_2.png) [@Xdrakosha](https://discourse.shapr3d.com/u/Xdrakosha)\
**Post date:** [February 8, 2026, 10:46pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/4 "2026-02-08T22:46:59Z")

</div>

> [@kreso93](#):
>
> How did you make those “threads”

---

<div class="post-metadata">

**Author:** ![kreso93](https://avatars.discourse-cdn.com/v4/letter/k/a87d85/32.png) [@kreso93](https://discourse.shapr3d.com/u/kreso93)\
**Post date:** [February 8, 2026, 11:01pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/5 "2026-02-08T23:01:16Z")

</div>

Great, didnt think of that. I drew a line through the middle of the cylinder and used project to get it on its sides and then extruded.

I’ll give this approach a try tomorrow, seems way easier, thanks!

---

<div class="post-metadata">

**Author:** ![Xdrakosha](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.shapr3d.com/xdrakosha/32/24881_2.png) [@Xdrakosha](https://discourse.shapr3d.com/u/Xdrakosha)\
**Post date:** [February 8, 2026, 11:02pm UTC](https://discourse.shapr3d.com/t/linear-pattern-invalid-body/40264/6 "2026-02-08T23:02:33Z")

</div>

> [@kreso93](#):
>
> I drew a line through the middle of the cylinder and used project to get it on its sides and then extruded.

Sounds unnecessarily overcomplicated 🙂

But I’m sure I could make it work even your way — I still don’t clearly understand how you tried to accomplish the task. If you can share the project, maybe I’ll be able to see what you’re doing wrong.
