Description: This is an implementation of geodesic (shortest path) algorithm for triangular mesh (triangulated surface) first described by Mitchell, Mount and Papadimitriou in 1987[1] with some minor improvements, extensions and simplifications. The algorithm has O(n^2 log n) worst-case time complexity, but in practice can work with million-node meshes in reasonable time.
To Search:
File list (Check if you may need any files):
geom3d
......\geom3d
......\......\anglePoints3d.m
......\......\angles3d.m
......\......\angleSort3d.m
......\......\box3dVolume.m
......\......\boxes3d.m
......\......\cart2cyl.m
......\......\cart2sph2.m
......\......\cart2sph2d.m
......\......\changelog.txt
......\......\changes.txt
......\......\circle3dOrigin.m
......\......\circle3dPoint.m
......\......\circle3dPosition.m
......\......\circles3d.m
......\......\clipLine3d.m
......\......\clipPoints3d.m
......\......\clipPolygon3dHP.m
......\......\composeTransforms3d.m
......\......\Contents.m
......\......\createBasisTransform3d.m
......\......\createEulerAnglesRotation.m
......\......\createLine3d.m
......\......\createPlane.m
......\......\createRotation3dLineAngle.m
......\......\createRotationOx.m
......\......\createRotationOy.m
......\......\createRotationOz.m
......\......\createScaling3d.m
......\......\createSphere.m
......\......\createTranslation3d.m
......\......\cyl2cart.m
......\......\dihedralAngle.m
......\......\distanceLines3d.m
......\......\distancePointLine3d.m
......\......\distancePointPlane.m
......\......\distancePoints3d.m
......\......\drawAxis3d.m
......\......\drawAxisCube.m
......\......\drawBox3d.m
......\......\drawCircle3d.m
......\......\drawCircleArc3d.m
......\......\drawCube.m
......\......\drawCuboid.m
......\......\drawCurve3d.m
......\......\drawCylinder.m
......\......\drawEdge3d.m
......\......\drawEllipse3d.m
......\......\drawEllipsoid.m
......\......\drawGrid3d.m
......\......\drawLine3d.m
......\......\drawPartialPatch.m
......\......\drawPlane3d.m
......\......\drawPoint3d.m
......\......\drawPolyline3d.m
......\......\drawSphere.m
......\......\drawSphericalTriangle.m
......\......\drawSurfPatch.m
......\......\drawTorus.m
......\......\eulerAnglesToRotation3d.m
......\......\fillPolygon3d.m
......\......\inertiaEllipsoid.m
......\......\intersectBoxes3d.m
......\......\intersectEdgePlane.m
......\......\intersectLineCylinder.m
......\......\intersectLinePlane.m
......\......\intersectLinePolygon3d.m
......\......\intersectLineSphere.m
......\......\intersectLineTriangle3d.m
......\......\intersectPlaneLine.m
......\......\intersectPlanes.m
......\......\intersectPlaneSphere.m
......\......\intersectRayPolygon3d.m
......\......\isBelowPlane.m
......\......\isCoplanar.m
......\......\isParallel3d.m
......\......\isPerpendicular3d.m
......\......\linePosition3d.m
......\......\lines3d.m
......\......\medianPlane.m
......\......\mergeBoxes3d.m
......\......\midPoint3d.m
......\......\normalize3d.m
......\......\normalizePlane.m
......\......\normalizeVector3d.m
......\......\planeNormal.m
......\......\planePoint.m
......\......\planePosition.m
......\......\planes3d.m
......\......\point3dBounds.m
......\......\points3d.m
......\......\polygon3dNormalAngle.m
......\......\polygonCentroid3d.m
......\......\polygons3d.m
......\......\private
......\......\.......\localToGlobal3d.m
......\......\projPointOnPlane.m
......\......\randomAngle3d.m
......\......\randomPointInBox3d.m