451 lines (358 with data), 16.1 kB
Summary of important user-visible changes for releases of the geometry package
===============================================================================
geometry-4.1.0 Release Date: 16-03-2024 Release Manager: Juan Pablo Carbajal
===============================================================================
* Added new functions to detect intersetions and points inside 3d polygons.
* ispolycw that allows for two cell array inputs (px and py), see https://savannah.gnu.org/patch/?10297
* Fixed compilation error with g++ v11, see https://savannah.gnu.org/bugs/?60884
* Fixed failing test in joinPolygons
===============================================================================
geometry-4.0.0 Release Date: 03-02-2020 Release Manager: Juan Pablo Carbajal
===============================================================================
As of this version, geometry does not contain any matgeom functionality.
It contains all the extra functions that we have been adding to geometry,
in particular matlab compatible functionality for the mapping package.
It might need that you do not need geometry anymore and instead you need to
install matgeom to get the functionality you were using.
Geometry was an attempt to port MatGeom (a geometry package developed
for Matlab) to Octave, improving docstrings and updating to octave's special
features when possible.
Over time it became almost impossible to keep geometry in sync with the
upstream developments of MatGeom.
Hence I have decided to separate matgeom from geometry.
My apologize for the troubles caused, this is the way I learn, by doing.
Moreover, the @svg class is not working anymore. I leave it in the package
but it should be considered broken. Will fix in future versions.
** Functions have been modified
clipPolygon:
- Accepts boolean operation as strings or as integer.
- Accepts a box [xmin xmax ymin ymax] as clipping polygon.
** Added Functions
drawFilledPolygon
===============================================================================
geometry-3.0.0 Release Date: 27-03-2017 Release Manager: Juan Pablo Carbajal
===============================================================================
This version of the package is not backward compatible for the following
reasons:
** Functions have changed their name
beltproblem --> beltProblem
closed_path --> closedPath
shapearea --> shapeArea
shapecentroid --> shapeCentroid
shapeplot --> plotShape
shapetransform --> transformShape
simplifypolygon --> simplifyPoligon
simplifyPolyline --> simplifyPolyline
** Functions that are in GNU Octave core since 4.0.1
rad2deg deg2rad
** Added Functions
isAxisHandle isPolygonCCW isPolygonCW_Clipper joinPolygons polygon2patch
orientPolygon boundedVoronoi2d drawGraphEdges clipGraph grAdjacentEdges
grAdjacentNodes grEdgeLengths centroidalVoronoi2d clipGraphPolygon
cvtUpdate intersectEdgePolygon intersectLinePolygon isPointInPolygon
polygonBounds polygonContains convexHull minimumCaliperDiameter
grShortestPath drawNodeLabels nndist createRotation3dLineAngle drawPlane3d
rotation3dAxisAndAngle boxToMesh checkMeshAdjacentFaces
clipConvexPolyhedronHP clipMeshVertices createDodecahedron
createDurerPolyhedron createIcosahedron createMengerSponge createOctahedron
createRhombododecahedron createSoccerBall createTetrahedron
createTetrakaidecahedron cylinderMesh drawFaceNormals drawPolyhedron
ellipsoidMesh faceCentroids faceNormal intersectLineMesh3d intersectPlaneMesh
mergeCoplanarFaces meshAdjacencyMatrix meshDihedralAngles meshEdgeFaces
meshEdgeLength meshEdges meshFace meshFaceAdjacency meshFaceEdges
meshFaceNumber meshFacePolygons meshSurfaceArea meshVolume minConvexHull
polyhedra polyhedronCentroid polyhedronMeanBreadth polyhedronNormalAngle
polyhedronSlice readMesh_off removeMeshVertices smoothMesh sphereMesh
steinerPolytope subdivideMesh surfToMesh tetrahedronVolume torusMesh
triangulateFaces trimMesh trimeshEdgeFaces trimeshMeanBreadth
trimeshSurfaceArea vertexNormal distancePoints clipLine3d
drawLine3d eulerAnglesToRotation3d intersectLineSphere linePosition3d
recenterTransform3d transformLine3d transformVector3d intersectPolylines
clipPolyline clipPolyline_clipper clipPolygon clipPolygon_clipper
** Improved Functions
drawPolygon is more efficent when drawing polygons in cells and now it takes
an axis handle as first argument (optional). Added demo and tests
intersectEdges accepts tolerance as third argument
polygon2patch demo fixed, missing third argument for patch.
===============================================================================
geometry-2.1.1 Release Date: 2016-03-24 Release Manager: Juan Pablo Carbajal
===============================================================================
** Added Functions
fillPolygon rectAsPolygon
** Improved Functions
drawShape was not working due to missing functions. they have all been added
now.
==============================================================================
geometry-2.1.0 Release Date: 2016-02-04 Release Manager: Juan Pablo Carbajal
===============================================================================
** Added Functions
projPointOnPolyline: the function is added for compatibility, but it is just
a wrapper of distancePointPolyline.
findClosestPoint
** Improved Functions
distancePointPolyline is now updated with a spee dup of 100x. It also calculates
the projections, so projPointOnPolyline is obsolete.
===============================================================================
geometry-2.0.0 Release Date: 2015-04-27 Release Manager: Juan Pablo Carbajal
===============================================================================
** Geometry 2.0.0 is not compatible with versions of octave older
than 4.0. Thi si due to inputParser being used in the functions
curve2polyline, cov2ellipse and simplifypolyline. If you do not
need this functions you should no problems using octave > 3.6.0
** Removed functions
oc_polybol is not part of geomtry anymore. This function is part of
the octclip package.
** Added Functions
planePoint
** Bug Fixes:
- polynomialCurveSetFit had debug entries, now removed.
** Other changes:
- closed_path demo code was improved.
===============================================================================
geometry-1.7.0 Release Date: 2013-04-07 Release Manager: Juan Pablo Carbajal
===============================================================================
** Added Functions
box3dVolume cart2cyl circle3dPoint cyl2cart
drawCircle3d drawPoint3d createScaling3d drawCube
createCube drawSphericalTriangle drawTorus revolutionSurface
drawVector3d spheres drawPolyline drawPolynomialCurve
polynomialCurveCentroid polynomialCurveDerivative
polynomialCurveFit polynomialCurvePoint polynomialCurveSetFit
polygonPoint polygonSubcurve
** Bug Fixes:
- cov2ellipse scale and orientation of axis.
===============================================================================
geometry-1.6.0 Release Date: 2012-10-12 Release Manager: Juan Pablo Carbajal
===============================================================================
** geometry doesn't autoloads anymore
** Added Functions
anglePoints3d angles3d boxes3d geom3d_Contents
lines3d planes3d points3d polygons3d vectors3d
graphs_Contents meshes3d_Contents angleSort3d createPlane
intersectLinePlane normalizePlane planeNormal planePosition
projPointOnPlane sph2cart2 vectorAngle3d distancePointLine3d
cart2sph2d createRotationOx createRotationOy createRotationOz
createTranslation3d drawAxis3d drawCylinder drawSphere
polygonArea3d transformPoint3d drawBox3d drawEdge3d drawMesh
createCubeOctahedron boundingBox3d cart2sph2 circle3dOrigin
circle3dPosition drawCircleArc3d drawPolygon3d drawSphericalEdge
drawSphericalPolygon intersectPlaneSphere sph2cart2d
** Updated functions
distancePoints
** Bug Fixes:
- drawArrow was not working due to porting errors.
===============================================================================
geometry-1.5.0 Release Date: 2012-06-05 Release Manager: Juan Pablo Carbajal
===============================================================================
* Added functions:
- cov2ellipse & ellipse2cov: transform between ellipses and covariances matrices.
- beltproblem : Finds the four lines tangent to two circles with given centers and
radii. This is the solution to the belt problem in 2D.
- curveval : Evaluates a polynomial curve defined as a 2-by-N matrix.
- curve2polyline : Converts a polynomial curve into a polyline by the adaptive
sampling method.
- simplifypolyline : Ramer-Douglas-Peucker algorithm to simplify polylines.
- parametrize : Estimate a parametrization of a polygon/line based on the distance
between the points.
- curvature : Estimation of the curvature of a polygon/line based on polynomial
approximation.
- reversePolygon and reversePolyline : reverse the orders of the points in
of polygon/line.
- supportFunction : Compute support function of a polygon.
- distancePointPolygon , distancePointPolyline , distancePolygons ,
expandPolygon , medialAxisConvex , polygonLoops , polygonSelfIntersections
polylineSelfIntersections , splitPolygons
- close_path : given a set of points in the plane calculate a piecewise linear
simple path that passes through all points.
* Changed functions:
- distancePointEdge : Now the function computes the distance between all points
and all edges. A third optional argument provides
backward compatibility.
* Solved bugs:
- simplifypolygon returned empty polygons when points are repeated, i.e when
the polygon is not correctly formed.
- Removed installation warnings.
===============================================================================
geometry-1.4.1 Release Date: 2012-03-24 Release Manager: Juan Pablo Carbajal
===============================================================================
* Renamed functions
- Contents renamed to geom2d_Contents to avoid clashes.
* Deprecated functions
- svgload, svgnormalize, svgpath2polygon: Use the methods in class svg.
* Bug fixes
- @svg/path2polygon
- Fix addpath/rmpath installation warnings
- Fix octclip/src/Makefile
- Fix shapecentriod for piece-wise polynomial shapes.
* Known issues
- simplifypolygon returns empty polygons when points are repeated, i.e when
the polygon is not correctly formed.
===============================================================================
geometry-1.4.0 Release Date: 2012-01-25 Release Manager: Juan Pablo Carbajal
===============================================================================
* Added basic geometric graphs creation and manipulation.
===============================================================================
geometry-1.3.0 Release Date: 2011-11-24 Release Manager: Juan Pablo Carbajal
===============================================================================
* Geometry merged with octCLIP.
* Geometry autoloads.
===============================================================================
geometry-1.2.2 Release Date: 2011-11-04 Release Manager: Juan Pablo Carbajal
===============================================================================
* Improved SVG interface. Thanks to jwe and carandraug.
* Adding files to manipulate and convert 2D shapes defined with smooth
polynomials.
shape2polygon
shapearea
shapecentroid
shapeplot
shapetransform
* Inverted the order in the NEWS file. New entries are on top.
===============================================================================
geometry-1.2.1 Release Date: 2011-11-02 Release Manager: Juan Pablo Carbajal
===============================================================================
* Adding SVG object and demo for data2geom (converting SVG to msh format)
===============================================================================
geometry-1.2.0 Release Date: 2011-10-21 Release Manager: Juan Pablo Carbajal
===============================================================================
* All geom2d added
createCircle
createDirectedCircle
createEdge
medianLine
Contents
bisector
cartesianLine
drawArrow
edges2d
lines2d
orthogonalLine
parallelLine
projPointOnLine
drawCenteredEdge
drawCircle
drawCircleArc
drawEllipse
drawEllipseArc
drawLabels
drawOrientedBox
drawParabola
drawRect
drawShape
circles2d
ellipses2d
createVector
inertiaEllipse
changelog.txt
readme.txt
hexagonalGrid
squareGrid
triangleGrid
intersectCircles
intersectEdges
intersectLineCircle
isLeftOriented
isPointInCircle
isPointInEllipse
isPointOnCircle
isPointOnLine
edgeLength
edgePosition
edgeToLine
circleArcAsCurve
circleAsPolygon
crackPattern
crackPattern2
distancePointEdge
distancePointLine
ellipseAsPolygon
enclosingCircle
radicalAxis
reverseEdge
reverseLine
===============================================================================
geometry-1.1.3 Release Date: 2011-10-13 Release Manager: Juan Pablo Carbajal
===============================================================================
* Continue to add geom2d from matGeom (transforms and points2d)
createBasisTransform
createHomothecy
createLineReflection
createRotation
createScaling
createTranslation
transformPoint
transforms2d
fitAffineTransform2d
transformEdge
transformLine
centroid
distancePoints
midPoint
polarPoint
drawPoint
isCounterClockwise
minDistancePoints
pointOnLine
points2d
intersectLineEdge
isPointOnEdge
===============================================================================
geometry-1.1.2 Release Date: 2011-10-09 Release Manager: Juan Pablo Carbajal
===============================================================================
* Continue to add geom2d from matGeom (rays and vectors)
createRay
drawEdge
drawRay
isParallel
isPerpendicular
isPointOnRay
normalizeVector
rays2d
rotateVector
transformVector
vectorNorm
vectors2d
===============================================================================
geometry-1.1.1 Release Date: 2011-10-06 Release Manager: Juan Pablo Carbajal
===============================================================================
* Continue to add geom2d from matGeom (boxes and clips)
cbezier2poly
boxes2d
clipEdge
clipLine
clipPoints
drawBezierCurve
drawBox
clipRay
intersectBoxes
intersectLines
linePosition
mergeBoxes
randomPointInBox
drawLine
===============================================================================
geometry-1.1.0 Release Date: 2011-10-04 Release Manager: Juan Pablo Carbajal
===============================================================================
* Starting to add geom2d from matGeom
angle2Points
angle3Points
angleAbsDiff
angleDiff
angles2d
angleSort
createLine
deg2rad
edgeAngle
lineAngle
normalizeAngle
rad2deg
vectorAngle
===============================================================================
geometry-1.0.1 Release Date: 2011-09-27 Release Manager: Juan Pablo Carbajal
===============================================================================
Improvements to the docstrings of all functions.
===============================================================================
geometry-1.0.0 Release Date: 2011-09-26 Release Manager: Juan Pablo Carbajal
===============================================================================
** First official release.
===============================================================================