1 of 24

RepulsionPak: Deformation-Driven Element Packing with Repulsion Forces�Graphics Interface 2018�IEEE Transaction on Visualization and Computer Graphics 2019

Reza Adhitya Saputra

Craig S. Kaplan

Paul Asente

University of Waterloo

University of Waterloo

Adobe Research

2 of 24

Outline

  • 1. Introduction

  • 2. Method

  • 3. result

3 of 24

1. Introduction

4 of 24

Element Packing

  • Goal:
    • Fill a container shape with deformable instances of geometric elements selected from a library, creating a 2D artistic composition.
  • Applications:
    • Advertising and product packaging

Example.

5 of 24

RepusionPak

  • RepulsionPak is a technique to packing elements using a physical simulation, in which each element is represented by a mass-spring system called an element mesh.
  • Forces don’t act directly on elements, but their mesh vertices.
  • During the simulation, these mesh vertices are spread apart but remain connected using elastic springs, effectively creating an element representation that can bee packed and deformed.

6 of 24

2. Method

7 of 24

System Overview

  • Starts by preprocessing the elements, creating additional space around each to enforce the spacing distance, and fitting a triangle mesh over each element .
  • Initial element placement.
  • Perform a physics simulation on the meshes, making them simultaneously grow and repel other.
  • Simulation ends when either the elements occupy a sufficient proportion of container area, or when some number of simulation steps fail to significantly reduce the negative space.
  • Placing small secondary elements in large pockets of negative space.
  • Final SVG output is created by using barycentric coordinates to map each each element’s paths from the element’s initial mesh into the deformed mesh produced through simulation.�

8 of 24

9 of 24

Preprocessing

  • For each element

constructs mesh.

10 of 24

Preprocessing

  •  

11 of 24

Simulation

  •  

12 of 24

Simulation

  •  

13 of 24

Simulation

  •  

14 of 24

Simulation

  •  

15 of 24

Simulation

  •  

16 of 24

Simulation

  •  

17 of 24

Element Growth

  •  

18 of 24

Stopping Criteria

  • First, specifies the desired positive space ratio at which the simulation immediately terminates.

  • Second, we stop the simulation when the element meshes are no�longer able to maneuver enough to consume the remaining negative space.��

19 of 24

Secondary Elements

  • seed the container with secondary elements by finding points that are far from any existing element mesh.�

(d) -> (e)

20 of 24

3. Result

21 of 24

Data and statistics for RepulsionPak results

22 of 24

23 of 24

24 of 24

Video