plus

Purpose

Minkowski addition for union of polyhedra

Syntax

U + W
U.plus(W)

Description

Computation of Minkowski addition for the union of polyhedra in the same dimension. The algorithm proceeds in the following way:
  1. Compute the Minkowski summation for each of the polyhedron contained in the union to get.
  2. Compute the convex hull of the union.
  3. Compute the set difference between the convex hull and the union.
  4. Compute the set difference between the Minkowski sum for each polyhedron and set obtained in the previous result.
The result is a non-overlapping union of the polyhedra.

Input Arguments

U

Union of polyhedra in the same dimension.

Class: PolyUnion

W

Polyhedron to be summed with the union that is in the same dimension as the union.

Class: Polyhedron

Example(s)

Example 1

Create two polyhedra that form unbounded and non-overlapping union.
 P(1) = Polyhedron('V',[1 0; 0 0],'R',[0 -1;0.3 -1;-0.3 -1]); 

 P(2) = Polyhedron('V',[1 0; 0 0; 0 1; 1 1]); 

 U = PolyUnion('Set',P,'overlaps',false,'bounded',false) 
PolyUnion in the dimension 2 with 2 polyhedra.
Properties of the union: 
  Overlaps: 0
  Bounded: 0
Functions : none
Compute Minkowski addition for full-dimensional and bounded polyhedron ../../../../../../fig/mpt/modules/geometry/unions/@PolyUnion/plus1.png.
 W = Polyhedron('lb',[-0.1, -0.2],'ub',[0.1, 0.2]); 

 Uw = U + W 
PolyUnion in the dimension 2 with 3 polyhedra.
Properties of the union: 
  Overlaps: 0
  Bounded: 0
Functions : none
Plot the new union Uw
 U.plot('color','lightblue'), hold on, Uw.plot 

../../../../../../fig/mpt/modules/geometry/unions/@PolyUnion/plus_img_1.png

Compute Minkowski addition for low-dimensional and bounded polyhedron ../../../../../../fig/mpt/modules/geometry/unions/@PolyUnion/plus2.png.
 S = Polyhedron('lb',[0, -0.2],'ub',[0, 0.2]); 

 Us = U + S 
PolyUnion in the dimension 2 with 3 polyhedra.
Properties of the union: 
  Overlaps: 0
  Bounded: 0
Functions : none
Plot the new union Us
 U.plot('color','lightgreen'), hold on, Us.plot 

../../../../../../fig/mpt/modules/geometry/unions/@PolyUnion/plus_img_2.png

See Also

convexhull, minus


© 2010-2013 Martin Herceg: ETH Zurich, herceg@control.ee.ethz.ch