Welcome to the Onshape forum! Ask questions and join in the discussions about everything Onshape.
First time visiting? Here are some places to start:- Looking for a certain topic? Check out the categories filter or use Search (upper right).
- Need support? Ask a question to our Community Support category.
- Please submit support tickets for bugs but you can request improvements in the Product Feedback category.
- Be respectful, on topic and if you see a problem, Flag it.
If you would like to contact our Community Manager personally, feel free to send a private message or an email.
Large tile layout challenge

I've asked a couple questions related to this larger problem and while those had great answers (thanks!) I keep hitting subsequent roadblocks. I'm wondering if there's a completely different way to do what I'm trying to do or a small tweak that will get me there.
Scenario: I want to trial layout a tile pattern over about 1500sq ft of a building that has a complex floor plan. The 4 unique rectilinear tiles are laid out in a repeating, 12 tile, "Ashler" pattern with 1/8" gaps between each tile. Other than an oddly shaped perimeter, the building has two main direction flows that meet at a 45deg angle and the pattern should be mirrored and rotated at that point.
Example: slate | question
Problem: I'm stumped as to how to do this. I've tried:
- created the 4 unique tile parts and then, in an assembly, mated them up in the 12-tile pattern, grouped that and used a linear pattern to cover every aspect of the floor plan. Repeated this for the mirrored/rotated pattern. The example assembly has a trimmed down version of the linear patterns. I then tried creating various floor plan parts (or negatives) and adding them to the assembly in an attempt to "mask" or "clip" the tile parts down to just the floor area. As it seems, assemblies are not meant to modify or create parts so that wasn't really working. Even layering floor plan negatives as visual masks wasn't going to work due to tile pattern overlap.
- in a part studio, sketch one instance of the tile pattern, extrude to get 12 tile parts and then linear pattern two sets of those (mirrored and at 45 deg to each other). I tried a Boolean intersect to clip the linear patterns to the floorplan outline parts, but it turns out that intersect parts really have to ALL intersect or you get nothing. The tiles of course, do not intersect at all.
- With all y'all's help I found that if I lay all the tiles out with a linear pattern in a sketch, I can use the floorplan in the sketch and an intersect extrude (thanks @lana) to get the correctly trimmed tile parts. From there I'm set. Unfortunately, the linear pattern operation bails saying it would create too much geometry for just part of the pattern needed to cover the floor plan (6x11 repeat of a 12-rectangle layout). So, while that approach works, it doesn't scale enough.
Question: Where can I go from here? Is there another approach I can take completely? I don't actually need the end geometry, we just want to look at it and see if there are problem places (e.g., tiny tile slivers, goofy intersections, …). I thought of trying Wrap or some such but a) not really sure how that would work and b) we do need a reasonably accurate relationship between the tiles and the floor/walls to get a good representation. Are there other approaches?
Thanks for reading this far…
Best Answer
-
S1mon Member Posts: 3,188 PRO
Building on what @MDesign said, make a part which is the Asher pattern with some thin cuts which aren't all the way through for the grout. Then pattern that part. Patterning the composite parts is probably more overhead than necessary. Patterning a larger part is probably less challenging for the system.
It looks like @wayne_sauder managed to make it work for one part of the floor plan. Seems like his approach also would work.
1
Answers
I'm not sure if I understand everything, but take a look at this. It's incomplete and will not be a fast document, but it might get you there.
Slate-Copy
In the case of the linear sketch pattern… I might suggest eliminating the gap between tiles since your just looking for problem places. This will reduce your sketch entity count by almost half. which might help.
An alternative idea might be to develop the base repeating pattern as one 'part' with extrudes that go "almost" through the the pattern to create the gaps. this will keep it as one part and then pattern that pattern as you need.
clear as mud? lol.
if theres a specific need to be able to see through the grout, I'd have to spend more time thinking on it.
Building on what @MDesign said, make a part which is the Asher pattern with some thin cuts which aren't all the way through for the grout. Then pattern that part. Patterning the composite parts is probably more overhead than necessary. Patterning a larger part is probably less challenging for the system.
It looks like @wayne_sauder managed to make it work for one part of the floor plan. Seems like his approach also would work.
FWIW… this sort of thing is much better handled by programs similar to AutoCAD and Revit and creating a custom hatch pattern for them. Any particular reason why Onshape is being used for Building Modeling?
@MDesign, that's great. Essentially make a mask/negative of the floor plan and remove that. I wonder about using "merge with all" when it comes to doing the second part of the floor plan. I'll give it a try and see. Might have to spec all the tiles in the merge scope. Not the end of the world.
I'm using Onshape because it's most familiar and I already have the floorplan setup (cause it's most familiar). I've been playing with other programs but needed to get a sense sooner than I could get up to speed in other environments. While it might be a bit square peg, round hole, it also leads me to learn more about Onshape which I can then apply to the main things I do with it. I do agree that building modeling is not all that great in Onshape. Then again, many of the building modeling apps seem to make assumptions that don't match this building so…
@S1mon D'oh. Of course. I've no need to have the individual tiles as parts. That will really improve perf.
Thanks all.
@jeff_mcaffer the part pattern allows joining/adding operation so you don’t have to do any Boolean and select a bunch of parts. This image is a random part that was 2 way patterned. In one feature and the part list never grew to more than 1. Not sure why there appears to be edges in the middle of it. But it serves as an example nonetheless of how I pictured your tile layout working.
Kudos to you for exploring and expanding your skill set with varied types of project. I love that.
Interesting. Seems like using Add with the part pattern requires that the parts all intersect. Natively the tiles don't but I could add a "grout" substrate part and use that to merge them all into one part. That might help with the perf I'm seeing now. As it is, the full render takes about 6s according to the perf tools. It seems to want to render frequently… In any event, I think we have what we need to get this job done. I'll play around with it a bit more in my "spare time" (hah!) to simplify and improve perf.
As an aside, re the dilemmas of tool choice, level of control/detail is critical. I have the same building model in Chief Architect (for example) and while I may be able to do a basic tile layout, I doubt very much I could experiment with the detail required for the 45deg transition as shown here (ignore the little spike on the corner tile). With Onshape I was able to setup multiple configurations for different approaches to the corner transition, as well as offsets to shift the whole pattern along the 22.5deg corner midline to left/right/center justify the tile pattern in the hallway and see how that affects doorways etc 50ft away.
With this setup, we can, in real time (ignoring the render delays), adjust during a design discussion to see what works best. FWIW, slate | iteration 4 has the full floor/tile plan. (some configurations are broken as we started ignoring ones we didn't like and made random breaking changes to the surrounding parts).
Anyway, thanks again all. The community makes platforms like Onshape awesome.
The add option in all feature creation tools simply requires parts to be touching and not necessarily intersecting.The edges of your Asher base pattern are missing half the grout to complete that pattern and allow that add function to do its thing. I may play with your file for my own study and share it to demonstrate some "cleaner" ways to do what you need next time.
In Revit you can explore those mitered areas with ease. I'm not familiar with chief architect.. It would not be a 3d visual of a tile/grount pattern but it would get the job done with a 2d pattern filling any surface you need it to with the ability to move and rotate the pattern as you see fit.
Did some performance testing on your file and discovered a significant performance hit when using a 2nd direction with the pattern part add feature. There's about a 200% hit in performance of that feature vs just using 2 separate part pattern adds. Only tested using your file. I'm interested to see if its consistent, and if so that's definitely something to be mindful of
Thanks @MDesign. Great insight on the perf in particular. I'll mess around with that and see. That would help as we're still iterating on some other aspects of the layout.