MatGeom v1.2
MatGeom 1.2.0 - 2018-06-07
MatGeom is a library for geometric computing with Matlab. It is organized is several modules.
Installation: the script "setupMatGeom" should properly install the whole library.
Added
- (meshes3d) added several functions fore reading/writing 3D meshes in PLY and OFF formats
- (meshes3d) added splitMesh function to split a mesh into its connected components (thanks to oqilipo)
- (meshes3d) added concatenateMesh function (thanks to oqilipo)
- (meshes3d) added triangulatePolygonPair.m and update triangulateCurvePair.m
- (meshes3d) added distancePointMesh function
- (meshes3d) added curveToMesh
- (meshes3d) added boxToMesh (thanks to oqilipo)
- (meshes3d) added isPointInMesh
- (geom3d) added fitCircle3d and fitEllipse3d (thanks to oqilipo)
- (geom3d) added intersectThreePlanes (thanks to Roozbeh)
- (geom3d) added distPointTriangle3d
- (geom3d) added clipEdge3d
- (geom3d) added createRotationVector3d and createRotationVectorPoint3d (thanks to oqilipo)
- (geom3d) added projLineOnPlane function (thanks to oqilipo)
- (geom3d) added crossProduct3d
- (geom3d) added cylinderSurfaceArea
- (geom3d) added edgeToLine3d conversion function
- (polygons2d) add polygonInertiaEllipse.m and polygonSecondAreaMoments.m
- (polygons2d) added polygonOuterNormal and polygonCurvature functions
- (polygons2d) added resamplePolygonByLength.m and resamplePolylineByLength.m
- (polygons2d) added function boxToPolygon
- (geom3d) added some files from geom2d in private directories to prevent missing file errors
- (graphs) added clipMesh2dPolygon.m
Changed
- (meshes3d) much faster centroid calculation for the 3D triangle mesh case
- (meshes3d) added a 'trimMesh' option to clipMeshVertices
- (meshes3d) unification of the parsing of some mesh functions
- (meshes3d) checkMeshAdjacentFaces.m: compute edge array if it is not specified
- (meshes3d) rename several functions: meshNormal -> meshVertexNormals, faceNormal -> meshFaceNormals...
- (geom3d) createScaling3d can now specifiy center of scaling
- (geom3d) added axes handle input for drawPoint3d.m
- (geom3d) distanceLines3d.m: added psb to compute coordinates of closest points on lines
- (geom2d) rewrite createBasisTransform3d.m
- (geom2d) improved accuracy of isParallel and isPerpendicular
- (geom2d) createLine can now create a line based on angle and distance to origin (thanks to Roozbeh)
- (geom2d) circleToPolygon.m and ellipseToPolygon.m now returns polygons with distinct end vertices
- (geom2d) updates in drawPoints (thanks to JuanPi)
- (geom2d) circumCenter now supports multiple points as input
- (geom2d) rewrite createBasisTransform.m
- (polygons2d) improved precision in intersectEdgePolygon
- (polygons2d) the intersectPolylines.m function does not use the private function "interX" anymore
- (graphs) replaced drawGraphFaces.m by fillGraphFaces.m and update it
- (graphs) updates centroidalVoronoi2d
- several updates in function headers
- removed some deprecated files
Fixed
- (geom2d) fixed dependency to deprecated functions in drawShape
- many small bugs fixed...