Multi-sided Bzier surfaces over concave polygonal domains Pter - - PowerPoint PPT Presentation

multi sided b zier surfaces over concave polygonal domains
SMART_READER_LITE
LIVE PREVIEW

Multi-sided Bzier surfaces over concave polygonal domains Pter - - PowerPoint PPT Presentation

Introduction Generalized Bzier patch Concave GB patch Examples Conclusion Multi-sided Bzier surfaces over concave polygonal domains Pter Salvi, Tams Vrady Budapest University of Technology and Economics SMI 2018 Lisbon, June 6 th


slide-1
SLIDE 1

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

Multi-sided Bézier surfaces

  • ver concave polygonal domains

Péter Salvi, Tamás Várady

Budapest University of Technology and Economics

SMI 2018 Lisbon, June 6th–8th

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-2
SLIDE 2

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

Outline

1

Introduction Motivation Previous work

2

Generalized Bézier (GB) patch Control structure Domain & parameterization Blending functions

3

Concave GB patch Reinterpretation Building blocks Additional control

4

Examples

5

Conclusion and future work

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-3
SLIDE 3

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Motivation

Multi-sided patches

Curve network based design

Feature curves Automatic surface generation

Hole filling

E.g. vertex blends Cross-derivative constraints

“Concave” configurations Representation?

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-4
SLIDE 4

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Motivation

Conventional representations used in CAD systems

Trimmed tensor product surfaces

Detailed interior control Continuity problems Different edge types ⇒ inherently asymmetric

Division into smaller quadrilaterals

(Semi-)automatic splitting curves Underdetermined entities Reduced continuity

Our goals:

C ∞ continuity Editing with control points (with interior control) No additional artificial curves

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-5
SLIDE 5

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Previous work

Concave surface representations

Loop and DeRose (1989), Smith and Schaefer (2015)

S-patches – multivariate Bézier patches Beautiful theory Difficult to use

Kato (1991, 2000)

Transfinite surface interpolation Supports holes No internal control Singular blends cause high curvature variation

Pan et al. (2015), Stanko et al. (2016)

Discrete methods minimizing fairness energies

(See comparisons later)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-6
SLIDE 6

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

☛ ✡ ✟ ✠

Generalized Bézier (GB) patch

  • T. Várady, P. Salvi, Gy. Karikó,

A Multi-sided Bézier Patch with a Simple Control Structure. Computer Graphics Forum, Vol. 35(2), pp. 307-317, 2016.

  • T. Várady, P. Salvi, I. Kovács,

Enhancement of a multi-sided Bézier surface representation. Computer Aided Geometric Design, Vol. 55, pp. 69-83, 2017.

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-7
SLIDE 7

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Control structure

Control net derivation from the quadrilateral case

Control grid → n ribbons Degree: d, Layers: l = d

2

  • Control points: C i

j,k

i ∈ [1..n], j ∈ [0..d], k ∈ [0..l − 1]

Weighting functions: µi

j,k

1/4 1 1/2 1/2 1/2 1/2 1 1/2 1/2 1/2 1/2 α α 1 β β α α 1 β β

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-8
SLIDE 8

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Domain & parameterization

Domain

Regular domain in the (u, v) plane Side-based local parameterization functions si and hi

Based on Wachspress barycentric coordinates λi(u, v)

u v s4 h4 h2 s2 s3 h3 s1 h1 s1 h1 h2 s2 s3 h3 s4 h4 s5 h5

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-9
SLIDE 9

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Domain & parameterization

Local parameters

si =

λi λi−1+λi

hi = 1 − λi−1 − λi Barycentric coordinates λi λi ≥ 0 [positivity] n

i=1 λi = 1

[partition of unity] n

i=1 λi(u, v) · Pi = (u, v)

[reproduction] λi(Pj) = δij [Lagrange property]

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-10
SLIDE 10

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Blending functions

Half-Bézier ribbons

Ri(si, hi) =

d

  • j=0

l−1

  • k=0

C i

j,k · µi j,kBi j,k(si, hi)

C i

j,k: j-th CP on side i, layer k

Bi

j,k(si, hi) = Bd j (si) · Bd k (hi)

bivariate Bernstein polynomials µi

j,k rational function of hi, hi±1

1 on side i, 0 on the others

The surface interpolates the ribbons at the boundary (G 1/G 2)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-11
SLIDE 11

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Blending functions

Central weight & patch equation

Weights do not add up to 1 Deficiency ⇒ weight of the central control point: B0(u, v) = 1 −

n

  • i=1

d

  • j=0

l−1

  • k=0

µi

j,kBi j,k(si, hi)

Patch equation: S(u, v) =

n

  • i=1

Ri(si, hi) + C0B0(u, v)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-12
SLIDE 12

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Algorithms

Degree elevation

Linear and bilinear combinations Modifies the surface interior Control net generated by reductions and elevations

Default positions Merging Bézier ribbons

  • f different degrees
  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-13
SLIDE 13

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

☛ ✡ ✟ ✠

Concave GB patch

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-14
SLIDE 14

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Reinterpretation

Problem: ribbon orientation

Convex case: prev. tangent → next tangent Does not work for the concave case Interpolants should point towards the interior of the surface Control point placement?

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-15
SLIDE 15

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Reinterpretation

Independent ribbons

Original constraints of the GB patch:

Common d degree, same l = ⌈d/2⌉ number of layers Corresponding control points of adjacent ribbons are identical

These can be lifted! ⇒ Ribbons become independent entities µi

j,k weight function still ensures the interpolating property

Local di and li values for each ribbon Various possible configurations:

4 + 4 → 4 4 + 4 → 5 9 + 9 → 13 9 + 4 → 12 4 + 4 → 7

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-16
SLIDE 16

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Ribbons

Ri(si, hi) =

di

  • j=0

li−1

  • k=0

C i

j,k · µi j,kBi j,k(si, hi)

(di + 1) × li control points Degrees:

di (edgewise) 2li − 1 (cross-boundary)

Degree elevation:

Independently in the two parametric directions Adding a layer increases the degree by 2

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-17
SLIDE 17

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Blending functions

Blend of C i

j,k is µi j,kBi j,k(si, hi), where

Bi

j,k(si, hi) = Bdi j (si) · B2li−1 k

(hi) µi

j,k =

     αi = h2

i−1/

  • h2

i−1 + h2 i

  • ,

when 2j < d 1, when 2j = d βi = h2

i+1/

  • h2

i+1 + h2 i

  • ,

when 2j > d No central control point ⇒ weight deficiency solved by normalization: S(u, v) = 1 Bsum(u, v) ·

n

  • i=1

Ri(si, hi)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-18
SLIDE 18

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Blending function examples

µ1

0,0B3 0(s1)B3 0(h1)

µ1

1,0B3 1(s1)B3 0(h1)

µ1

1,1B3 1(s1)B3 1(h1)

µ1

0,1B3 0(s1)B3 1(h1)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-19
SLIDE 19

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Domain generation – projection

Project vertices

  • n a best fit plane

Simple Works well on:

Relatively flat objects

Fails for:

Highly curved models

Goals:

Preserve angles Preserve arc lengths

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-20
SLIDE 20

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Domain generation – heuristic algorithm

Normalize the angles Draw an open polygon Distribute the deviation

Proportionally to edges

Better results:

p8=(0,0) p1 p2 p3 p4 p5 p6 p7 v

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-21
SLIDE 21

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Domain generation – validation

The domain may have self-intersections / bottlenecks Minimum segment–segment distance parameter

E.g. 10% of the MBR axis

Enlarge all convex angles

Enlargement factor (e.g. 1.1) Distribute the surplus among the concave angles

Iterate until the domain becomes valid

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-22
SLIDE 22

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Building blocks

Parameterization

Based on harmonic coordinates (computed discretely)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-23
SLIDE 23

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Additional control

Editing with additional control points

“Hollow” areas of low weight

1

Concave corners

2

Areas far from boundaries

1 Concave corner blend:

using B2li −1

1

(hi) weights

2 Central blend:

  • i h2

i (scaled)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-24
SLIDE 24

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

☛ ✡ ✟ ✠

Examples

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-25
SLIDE 25

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 1

S-patch control net (full, “ribbons”)

72

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-26
SLIDE 26

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 1

S-patch vs. GB patch ribbons

72

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-27
SLIDE 27

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 2

Test object #2

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-28
SLIDE 28

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 2

Kato’s transfinite patch vs. GB (mean curvature, contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-29
SLIDE 29

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 3

Test object #3 (mean curvature, contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-30
SLIDE 30

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 3

Test object #3 (isophotes)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-31
SLIDE 31

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 4

Editing with the central control point (contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-32
SLIDE 32

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 5

Network of patches (control networks)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-33
SLIDE 33

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 5

Network of patches (mean curvature, contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-34
SLIDE 34

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 6

Editing – corner CPs (mean curvature, contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-35
SLIDE 35

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion Example 6

Editing – degree elevation (mean curvature, contours)

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-36
SLIDE 36

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

✞ ✝ ☎ ✆

Conclusion

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-37
SLIDE 37

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

Summary

Extension of Generalized Bézier patches Implicit assumptions lifted

Independent degrees / control points

New ribbons & blending weights Concave domain generation & parameterization Additional control points Future work Interior control

How to add more control points? How to define good blending functions?

Alternative parameterization?

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains

slide-38
SLIDE 38

Introduction Generalized Bézier patch Concave GB patch Examples Conclusion

Any questions? Thank you for your attention.

  • P. Salvi, T. Várady

BME Multi-sided Bézier surfaces over concave polygonal domains