A method of grainBoundary.

the boundary coarsened by keeping every n-th vertex along each chain, whatever the shape; MATLAB’s grainBoundary.reduce

Syntax

gB = gB.reduce()

Every second vertex.

gB = gB.reduce(4)

Every fourth vertex.

gB = gB.reduce(2, protect=vertexIds)

These vertices kept as well.

gB = gB.reduce(2, keepGrains=grains.id)

No grain of the list collapsed.

Description

The vertices between the kept ones are dissolved and their segments merged, so the boundary stays connected and keeps its length up to the straightening of the dissolved corners. The junctions, the ends of the chains, and the vertices where the pair of grains changes always stay, so which grains touch, and where, is unchanged. A closed chain keeps at least three vertices. A merged segment inherits grainId, ebsdId and misrotation from the last segment of its run, and its ebsdId says it runs between no one pair of pixels.

It thins a straight run and a corner alike; simplify spends the vertices where the shape needs them and is mostly the better choice.

Input

gB grainBoundary

Keywords

keyword default description
n 2 keep every n-th vertex along each chain; 1 or less leaves the boundary as it is
protect None the ids of the vertices that must stay, on top of the junctions
keepGrains None the ids of the grains that must keep a polygon: a grain that would be left with fewer than three vertices is not coarsened at all; MATLAB does this for every grain, grain2d.reduceBoundary passes all of them

Output

gB grainBoundary, the coarsened boundary

See also

grainBoundary.simplify, grainBoundary.refine, grain2d.reduceBoundary, smoothBoundary

MATLAB’s grainBoundary.reduce

source

Citing this page. This page is part of the documentation of MTEX, a free and open source MATLAB toolbox for analyzing and modeling crystallographic textures. It was written by The MTEX Developers and is published at https://mtex-toolbox.github.io/grainBoundary.reduce_py.html. If you use MTEX, or reuse text or figures from this page, in your research, please cite

F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63

BibTeX
@article{bachmann2010mtex,
  author  = {F. Bachmann and R. Hielscher and H. Schaeben},
  title   = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
  journal = {Solid State Phenomena},
  volume  = {160},
  pages   = {63-68},
  year    = {2010},
  doi     = {10.4028/www.scientific.net/SSP.160.63},
  url     = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}

Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.