Home > matGeom > meshes3d > polyhedronMeanBreadth.m

polyhedronMeanBreadth

PURPOSE ^

POLYHEDRONMEANBREADTH Mean breadth of a convex polyhedron.

SYNOPSIS ^

function breadth = polyhedronMeanBreadth(vertices, edges, faces)

DESCRIPTION ^

POLYHEDRONMEANBREADTH Mean breadth of a convex polyhedron.

   BREADTH = polyhedronMeanBreadth(V, E, F)
   Return the mean breadth (average of polyhedron caliper diameter over
   all direction) of a convex polyhedron.

   The mean breadth is computed using the sum, over the edges of the
   polyhedron, of the edge dihedral angles multiplied by the edge length, 
   the final sum being divided by (4*PI).

   Note: the function assumes that the faces are correctly oriented. The
   face vertices should be indexed counter-clockwise when considering the
   supporting plane of the plane, with the outer normal oriented outwards
   of the polyhedron.

   Typical values for classical polyhedra are:
     cube side a               breadth = (3/2)*a
     cuboid sides a, b, c      breadth = (a+b+c)/2
     tetrahedron side a        breadth = 0.9123*a
     octaedron side a          beradth = 1.175*a
     dodecahedron, side a      breadth = 15*arctan(2)*a/(2*pi)
     icosaehdron, side a       breadth = 15*arcsin(2/3)*a/(2*pi)

   Example
   [v e f] = createCube;
   polyhedronMeanBreadth(v, e, f)
   ans = 
       1.5

   See also
   meshes3d, meshEdgeFaces, meshDihedralAngles, checkMeshAdjacentFaces
   trimeshMeanBreadth

   References
   Stoyan D., Kendall W.S., Mecke J. (1995) "Stochastic Geometry and its
       Applications", John Wiley and Sons, p. 26
   Ohser, J., Muescklich, F. (2000) "Statistical Analysis of
       Microstructures in Materials Sciences", John Wiley and Sons, p.352

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function breadth = polyhedronMeanBreadth(vertices, edges, faces)
0002 %POLYHEDRONMEANBREADTH Mean breadth of a convex polyhedron.
0003 %
0004 %   BREADTH = polyhedronMeanBreadth(V, E, F)
0005 %   Return the mean breadth (average of polyhedron caliper diameter over
0006 %   all direction) of a convex polyhedron.
0007 %
0008 %   The mean breadth is computed using the sum, over the edges of the
0009 %   polyhedron, of the edge dihedral angles multiplied by the edge length,
0010 %   the final sum being divided by (4*PI).
0011 %
0012 %   Note: the function assumes that the faces are correctly oriented. The
0013 %   face vertices should be indexed counter-clockwise when considering the
0014 %   supporting plane of the plane, with the outer normal oriented outwards
0015 %   of the polyhedron.
0016 %
0017 %   Typical values for classical polyhedra are:
0018 %     cube side a               breadth = (3/2)*a
0019 %     cuboid sides a, b, c      breadth = (a+b+c)/2
0020 %     tetrahedron side a        breadth = 0.9123*a
0021 %     octaedron side a          beradth = 1.175*a
0022 %     dodecahedron, side a      breadth = 15*arctan(2)*a/(2*pi)
0023 %     icosaehdron, side a       breadth = 15*arcsin(2/3)*a/(2*pi)
0024 %
0025 %   Example
0026 %   [v e f] = createCube;
0027 %   polyhedronMeanBreadth(v, e, f)
0028 %   ans =
0029 %       1.5
0030 %
0031 %   See also
0032 %   meshes3d, meshEdgeFaces, meshDihedralAngles, checkMeshAdjacentFaces
0033 %   trimeshMeanBreadth
0034 %
0035 %   References
0036 %   Stoyan D., Kendall W.S., Mecke J. (1995) "Stochastic Geometry and its
0037 %       Applications", John Wiley and Sons, p. 26
0038 %   Ohser, J., Muescklich, F. (2000) "Statistical Analysis of
0039 %       Microstructures in Materials Sciences", John Wiley and Sons, p.352
0040 
0041 % ------
0042 % Author: David Legland
0043 % E-mail: david.legland@inrae.fr
0044 % Created: 2010-10-04, using Matlab 7.9.0.529 (R2009b)
0045 % Copyright 2010-2024 INRA - Cepia Software Platform
0046 
0047 % compute dihedral angle of each edge
0048 alpha = meshDihedralAngles(vertices, edges, faces);
0049 
0050 % compute length of each edge
0051 lengths = meshEdgeLength(vertices, edges);
0052 
0053 % compute product of length by angles
0054 breadth = sum(alpha.*lengths)/(4*pi);

Generated on Thu 21-Nov-2024 11:30:22 by m2html © 2003-2022