Integrating window shapes to facades

calendar_today

23.06.2022

label

Architecture

mouse

Houdini 19.0

1 Introduction

In this example we integrate random rectangular curves into a quad mesh.

2 Code

A primitive wrangle integrates the window shapes by adding vertices for each point of the respective curve from the second input.

int seed = point(0, 'curvenum', i@ptnum);
int index = int(rand(i@primrow, seed) * nprimitives(1));

int pts[] = primpoints(1, index);
append(pts, pts[0]);

int pts_window[];

foreach(int pt; pts){
    vector pos_pt = point(1, 'P', pt) + {0.5, 0.5, 0.0};
    vector pos_pr = primuv(0, 'P', i@primnum, pos_pt);
    int pt_add = addpoint(0, pos_pr);
    addvertex(0, i@primnum, pt_add);
    append(pts_window, pt_add);
}

int pts_prim[] = primpoints(0, i@primnum);
addvertex(0, i@primnum, pts_prim[-1]);

int prim_add = addprim(0, 'poly', pts_window);
setprimgroup(0, 'window', prim_add, 1, 'set');
download

Downloads