Skip to content

MatGeom v1.2

Compare
Choose a tag to compare
@dlegland dlegland released this 07 Jun 11:20
· 530 commits to master since this release

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