planes in three-dimensional space, stored by unit normals and signed offsets
Syntax
plane = plane3d(N, d)
Planes satisfying dot(N, v) = d.
plane = plane3d(N, v0)
Planes with normal N through v0.
plane = plane3d.byPoints(v)
Least-squares plane through a point cloud.
Description
Normals are normalised internally. A numeric offset is divided by the original normal length, so rescaling both N and d describes the same plane. With unit N, d is the signed distance from the origin, in the units of the positions. Arrays of normals and offsets represent arrays of planes. The normals carry the coordinate frame.
Input
N |
vector3d plane normals, coordinate arrays, or a plane3d to copy |
d |
numeric offsets, or vector3d positions through which the planes pass; default 0 |
Output
plane |
plane3d |
Properties
N |
unit normals as vector3d |
d |
signed distances from the origin |
frame |
coordinate frame of the normals |
shape |
shape of the plane array |
See also
plane3d.byPoints, plane3d.dist, plane3d.project, plane3d.intersect
Members
| byPoints | the plane through points: the least squares fit through their centroid, the normal the smallest principal axis of the cloud |
| cat | cat(a, b, …) is type(a).cat(a, b, …): the list of the operands, MATLAB’s [a, b], the carried attributes joined |
| clip | the polygon the plane cuts out of the box from lo to hi, its corners in order around the normal |
| dist | the signed distance of points to the plane, or the distance of two parallel planes, NaN where the planes meet |
| fit | the plane through points: the least squares fit through their centroid, the normal the smallest principal axis of the cloud |
| frame | the frame of the planes, that of their normals |
| intersect | where the segments from v1 to v2 cross the plane, NaN where they do not |
| plane3d | planes in three-dimensional space, stored by unit normals and signed offsets |
| plot | planes in space drawn as polygons, each clipped by the bounds of the 3D axes |
| project | orthogonally project points onto the planes |
| rotate | a rotation turns the normal, the distance stays |
| shape | the shape of the list of planes |
| size | the number of planes |
| subsref |
Used on
EBSD3Analysis, EBSD3Plotting, Grains3D, RotationImproper
MATLAB’s plane3d_index
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/plane3d_index_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.