how to project rooftiles on a primitive? [SOLVED]

   2380   3   2
User Avatar
Member
22 posts
Joined: Nov. 2012
Offline
Hello,

i'm building a rooftile generator. But i can't wrap my head around it.
My idea was to move each primitive to the origin and orient it so i can project the points on it and then use the copy sop to copy the tiles on it. As a test i did the folowing steps:
1 create a grid.
2 transform the grid arbitrary for testing purposes
3 add a primitive normal
4 create a left attribute by calculating the cross(@N, {0,1,0});
5 create a up attribute by calculating the cross(@left, @N)
6 move the prim to the origin by using the primitive node with Do Transformations on and match normals

7 here i want to calculate the rotation angles. But i can't get the correct angles so it matches the grid in step 1

after step 7 i want to measure the bounds and project the points on the primitive and copy the tiles

any ideas?

with kind regards,

gilbert
Edited by mmwizard - July 26, 2017 09:02:03
User Avatar
Member
22 posts
Joined: Nov. 2012
Offline
Well i solved it by myself. In short, i took another aproach by going trough the folowing steps:
1 for each primitive i order the points to lefttop, leftbottom, righttop and rightbottom.
2 calculate height and width using the vectors from step 1.
3 calculate county and countx by using the tilesize
4 find stepsize and direction
5 create points.
User Avatar
Member
733 posts
Joined: Sept. 2013
Offline
You can also turn primitives into roof tiles.

Attachments:
roof_tiles.hipnc (91.4 KB)

https://procegen.konstantinmagnus.de/ [procegen.konstantinmagnus.de]
User Avatar
Member
22 posts
Joined: Nov. 2012
Offline
Well that is a great solution. Only i think this does not fit my needs. What i want is to rough out the general shape of my building and then select the roof primitives to place the rooftiles on. This can be a straight roof but also a L, T or + shaped roof. But it is definitly interesting to see youre aproach. Thank you…
  • Quick Links