Morphing Meshes with Conformal Maps

calendar_today

11.10.2025

label

Modeling

mouse

Houdini 21

Description

Smoothly blending mesh surfaces by interpolating corresponding surface positions via conformal parameterizations.

1 Process

The procedure parameterizes both mesh surfaces by solving the Poisson equation with the attribute fill node. The resulting conformal maps are then matched to look up corresponding surface positions, which are stored as attributes. These positions are then linearly interpolated to smoothly blend the surfaces.

2 Code

A point wrangle for point-to-surface correspondence lookup using the conformal maps. It retrieves the map with vertex(), then uses uvdist() to query the target surface and primuv() to sample the exact target surface position pos_1. This target position is then stored in v@pos_1, making it ready for linear blending.

C
        vector map = vertex(0, 'map', i@vtxnum);

int pr;
vector st;
uvdist(1, 'map', map, pr, st);

vector pos_1 = primuv(1, 'P', pr, st);

v@pos_1 = pos_1;
    

This deformation wrangle uses the lerp function to linearly interpolate the point's current position with the target position v@pos_1, controlled by the blend ratio parameter f@bias.

C
        float bias = chf('bias');

pos = lerp(pos, v@pos_1, bias);
    
download

Downloads

smart_display

Videos

Morphing Meshes with Conformal Maps – Houdini Tutorial

link

Related articles

favorite

345

label

Modeling

Adaptive Resampling of Curves

favorite

426

label

Modeling

Applying Scales to Mesh Surfaces

favorite

398

label

Modeling

Approximating subdivision surfaces

favorite

329

label

Modeling

Blending COPs SDFs into 3D Volume

favorite

441

label

Modeling

Branching Subdivision Curves

favorite

301

label

Modeling

Circuit Networks