A method of grainBoundary.

where the line from p to q crosses each segment, MATLAB’s [x, y] = intersect(gB, xy1, xy2): the coordinates per segment, NaN where it is not crossed; segLength=True adds the intercepts between successive crossings along the line

Syntax

x, y = gB.intersect([33500, 4500], [36000, 7500])

The crossings.

x, y, L = gB.intersect([33500, 4500], [36000, 7500], segLength=True)

And the intercept lengths.

n = np.sum(~np.isnan(x))

The number of crossings.

Description

A line through a vertex crosses both segments there, as MATLAB’s tolerance has it, and the intercepts count that crossing once, so none is of zero length. MATLAB returns the intercepts as a third output always; here segLength=True asks for them.

Input

gB grainBoundary
p, q the end points of the line, (x, y) or a vector3d

Keywords

keyword default description
segLength False also return the intercept lengths

Output

x, y the coordinates of the crossing per segment, NaN where none
L the lengths between successive crossings along the line (segLength=True)

See also

grainBoundary.inpolygon

MATLAB’s grainBoundary.intersect

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.intersect_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.