Interactive Parquet Deformation
This interactive visualization demonstrates parquet deformation, morphing a starting shape into an ending shape through a tessellated grid. Users can select predefined curves, drag control points, or click edges to alter the shapes symmetrically, with the deformation rendered via `d3.curveBasis` and `d3.line` from D3 v4. The SVG output displays the tiled parquet background and the two editable shape containers, with a tooltip providing feedback. The code uses `d3.interpolate` to progressively transform the shapes, showcasing a geometric puzzle inspired by Escher's tessellations.
AI-generated descriptionThis block is a recreation (and a continuation of 2 and 1) inspired by parquet deformation, which consists on progressively transform a shape into another one (cf. www.theguardian.com/[...]/crazy-paving-the-twisted-world-of-parquet-deformations or http://www.tess-elation.co.uk/parquet-deformations). The progressive shape transformation is provided by d3-interpolate.
You can modify the starting shape and the ending shape, by choosing among predefined curves, drag&droping control points, or clicking an edge to change its control points in a symetric way.
I came to parquet deformation because the Voronoï layout makes a tessellation of the 2D plane, as the parquet does. Parquet deformation is also closely linked to Escher's researches and amazing drawings (cf. Google or http://en.tessellations-nicolas.com/method.php).
Acknowledgments to:
- <a href='https://d3js.org/'>D3.js</a> (v.4)
- <a href='http://blockbuilder.org'>blockbuilder.org</a>