0.2-06 - 2014-02-18
* Now dudi.plot allows to specify the number of points for reconstructed outlines
* Now if a 'pch.points' is passed to dudi.plot, it properly defines the pch of the points, and is no longer based on the factor provided (if any).
* dudi.plot gains a 'legend' argument.
* A bug in pca2shp related to the specification of the number of points has been corrected
* A bug in sampling points in the three methods has been corrected
* Argument "zoom.plot" now works but needs (so far) "center.origin" to be set TRUE.
* A bug in coo.plot has been corrected. Now when the nb of points in coo is <= 100, points are plotted by default, unless points is set FALSE.
* hqual gains an argument 'legend.title', and now samples one of the outline within the Coo to ease qualitative reconstruction throughut the dataset
* hquant now calculates much deviations much faster (on 120 points), gains an argument 'legend.title', plus various slight improvements in the code.
* import.img.Conte now looks for the first point downwards (not leftwards). Ie, the first point will be found in the bottom of the images.
0.2-05 - 2014-02-05
* A CITATION file has been added
* The frequent "Error in img[1, ] : incorrect number of dimensions" has been detailed in the help.file ?import.jpg
0.2-04 - 2013-05-06
* A new method : clust, to perform hierarchical clustering ; so far it should be considered as a preliminary version.
* Momocs now requires the ape package.
0.2-03 - 2013-02-26
* Some emergency fixes but the maintainer do not have time not contract to work on until a few months.
* Due to deprecated packages handling images, only black and white images are supported so far.
0.2-02 - 2012-10-02
* Corrected some minor bugs
* Some additions to help files
0.2-01 - 2012-10-17
* Lot of changes for this version, including:
* Coe class replaces former Nef and now handles eFourier, rFourier and tFourier methods.
* hqual, hquant, hpow and hcontrib (formerly harm.qual, harm.quant, etc.), morpho.space, dudi.plot, etc. now handles efourier, tfourier and rfourier through the "method" argument.
* Worked a lot on helpfiles.
* A vignette called "A graphical introduction to Momocs".
0.1-04 + 0.1-05 (Not released)
* hquant now has a dist.method argument.
* show(Coe) improved
* (e, r, t)fourier ("", .i) now do some checks.
* new tfourier/t.fourier.i components $x1 et $y1 are used to fit the orig/reco shapes.
* hist(Coe) and boxplot(Coe) now handles all three methods
* boxplot(Coe). New argument "vencenter0" to center vertically y=0.
* coo.perim. New function. Returns coo perimeter.
* coo.perim.pts. New function. Returns curv. abscissa for all points of a coo.
* coo.force2close. New function. Like it says.
* edi. New function. Calculates euclidean intermediates.
* coo.sample.int. Given a coo, calculates intermediates on the true curv. abscissa*
* meanShapes. Calculates average shapes on Coe objects.
* New function. morpho.space. Calculates morphological spaces with many options.
* dudi.plot. Plotting shapes is now handled by morpho.space.
* pca2shp and dudi.plot. Added the argument "rotate.shp" to rotate shapes when plotting the morphological space.
* pca. Changed "subset" for "subset.fac" and "subset.lev" and corrected a minor bug.
* PC.contrib. New function.
* pix2chc. New function. Converts "pixel" coordinates to chain-coded coordinates.
* chc2pix. New function. The opposite operation.
* Coo2chc. New function. Writes a .chc file from a Coo object (e.g. to use with SHAPE suite).
* chc2Coo. New function. The opposite operation.
* Nef2nef. New function. Writes a .nef file from a Nef object (to use with SHAPE suite).
* nef2Nef. New function. The opposite operation.
* coo.plot. Added a "centroid", "lwd" and default arguments.
* coo.draw. Added "lwd" and "lty" argument.
* Coo-class. Corrected some minor bugs.
* Coo-class. Removed slot @scale from Coo class.
* Coo-class. Added setters "[<-".
* Coo-class. Now Coo objects can be passed to Coo builder.
* Datasets. Resaved hearts and bot accordingly.
* slide(Coo). Corrected a bug.
* coo.scale. Corrected a minor bug ; and if scale is missing the centroid size is used.
* coo.centpost. New function. Returns the centroid position of the coo.
* coo.centsize. New function. Returns the centroid size of the coo.
* Coo-class. Added slot @coo.closed. Changed the show(Coo) accordingly.
* is.closed. New function. Checks if outlines are closed or not.
* coo.unclose. New function. Unclose an outline (if it is closed).
* Coo-class. New methods: close(Coo) & unclose(Coo), like it says.
* efourier. Now accepts (nb.h=-1), which sets nb.h to the highest possible value and has a "silent" argument.
* coo.ldk. New function. Used to define landmarks on a single coo.
* defLandmarks. New method. To define landmarks on Coo objects.
* ed. New function. Returns euclidean distance.
* edm.nearest2. New function. Given two matrices returns the shortest distance for every point of m1 to any point of m2 and the corresponding row index for m2.
* edm.nearest. New function. Same as edm.nearest2, but only returns shortest distances found.
* plot(Coo) and stack(Coo) are now the former plot(Coo, met="stack").
* diapo(Coo) is now the former plot(Coo, met="single").
* panel(Coo) is now the former plot(Coo, met="panel").
* Added landmarks plotting in plot methods for Coo.
* Added names support in panel(Coo).
* dev.segments. New function. Draw segments when passed as a matrix and with a color argument for every segment.
* Started utilities for arrays with A.mshape, returns the mean shape of an array of landmarks coordinates.
* A.plot. Plots an array with options (Momocs' equivalent to plotshapes{shapes}).
* A.draw. Add segments corresponding to shapes. A.plot and A.draw are landmarks equivalent of coo.plot and coo.draw.
* A.points. Add points, typically landmarks, given as an array, on an existing plot.
* defLandmarks(Coo). New method. Provides an user interface to defines landmarks.
* cooLandmarks(Coo). New method. Retrieve landmarks coordinates (if defined) from a Coo object.
* vecs.param. New function. Returns ratio of norms and signed angle between two vectors provided as four numeric.
* coo.baseline. New function. Returns a coo aligned on a baseline, e.g. c(-0.5, 0) ; c(0.5; 0) for Bookstein's
* baseline(Coo). Coo method for defining a baseline when landmarks have been defined.
* procGPAalign. Use procGPA{shapes} to perform a Procrustes alignment on a Coo object.
* Consequently, shapes package is now required.
* coo.rotate.center. New function. Rotates a coo with a given center of rotation.
* show(Coo). Corrected a small bug for plotting shapes with less than 10 points.
* a2l. New function. Converts an array to a list.
* Coo builder. Now accepts arrays.
* coo.list.panel. Corrected a bug when dim[1] == 1
0.1-03 - 2012-09-04 (Not released)
* coo.plot. New argument: "first.point = TRUE". Whether to draw the first point.
* coo.plot. Corrected a very minor bug when met="stack".
* coo.draw. New function. Adds a shape on the active plot
* Coo.plot. Corrected some minor bugs.
* efourier. Corrected a (very small) bug
* coo.list.panel. Added "density = NULL" and "angle = 45" parameters.
* manova.nef. Corrected one bug concerning the selection of the number of harmonics to retain.
* dudi.plot. Removed the obsolete "lwd.star=0.25".
* dudi.plot. Corrected bugs for arguments "cex.points, clabel".
* Coo builder. If "names" of the coo provided is NULL, then create these names.
* import.img.Conte. Added "auto=TRUE, plot=TRUE" parameters.
* import.multi1.jpg. New function to help to extract outlines from images with more than one mask.
* Coo. Changed slot @ldk from 'numeric' to 'list'
* coo.oscillo. Added two arguments "ref=TRUE, ref.nb=8" to add some reference points on the oscillo curves and on the shape.
* New method: slide on Coo.
* Corrected bugs on the align, scale, sample, center, align methods for Coo objects.
* eFourier. Corrected a bug when EFA performed without normalization.
* coo.scale. Slight change on code, no visible change.
* New function. l2a, converts a list to an array.
* New dataset. hearts: 450 outline of hand-drawn hearts by 15 different persons.
0.1-02 - 2012-08-21
* Package almost entirely rewritten
0.1 & 0.1-01 - 2012-05-01
* Initial release