123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103 |
- # Version tracking
- Version | Short description
- --------|----------------------------------------------------------------------
- 1.1.7 | Switch build for static library to cmake.
- 1.1.6 | Major boolean robustness fix, drop CGAL dependency for AABB/distances
- 1.1.5 | Bug fix in booleans
- 1.1.4 | Edge collapsing and linear program solving
- 1.1.3 | Bug fixes in active set and boundary_conditions
- 1.1.1 | PLY file format support
- 1.1.0 | Mesh boolean operations using CGAL and cork, implementing [Attene 14]
- 1.0.3 | Bone heat method
- 1.0.2 | Bug fix in winding number code
- 1.0.1 | Bug fixes and more CGAL support
- 1.0.0 | Major beta release: many renames, tutorial, triangle, org. build
- ## Version 1.0 Changes ##
- Our beta release marks our confidence that this library can be used outside of
- casual experimenting. To maintain order, we have made a few changes which
- current users should read and adapt their code accordingly.
- ### Renamed functions ###
- The following table lists functions which have changed name as of version
- 1.0.0:
- Old | New
- -------------------------------- | -------------------------------------
- `igl::add_barycenter` | `igl::false_barycentric_subdivision`
- `igl::areamatrix` | `igl::vector_area_matrix`
- `igl::barycentric2global` | `igl::barycentric_to_global`
- `igl::boundary_faces` | `igl::boundary_facets`
- `igl::boundary_vertices_sorted` | `igl::boundary_loop`
- `igl::cotangent` | `igl::cotmatrix_entries`
- `igl::edgetopology` | `igl::edge_topology`
- `igl::gradMat` | `igl::grad`
- `igl::is_manifold` | `igl::is_edge_manifold`
- `igl::mexStream` | `igl::MexStream`
- `igl::moveFV` | `igl::average_onto_vertices`
- `igl::moveVF` | `igl::average_onto_faces`
- `igl::plot_vector` | `igl::print_vector`
- `igl::pos` | `igl::HalfEdgeIterator`
- `igl::plane_project` | `igl::project_isometrically_to_plane`
- `igl::project_points_mesh` | `igl::line_mesh_intersection`
- `igl::read` | `igl::read_triangle_mesh`
- `igl::removeDuplicates.cpp` | `igl::remove_duplicates`
- `igl::removeUnreferenced` | `igl::remove_unreferenced`
- `igl::tt` | `igl::triangle_triangle_adjacency`
- `igl::vf` | `igl::vertex_triangle_adjacency`
- `igl::write` | `igl::write_triangle_mesh`
- `igl::manifold_patches` | `igl::orientable_patches`
- `igl::selfintersect` | `igl::remesh_self_intersections`
- `igl::project_mesh` | `igl::line_mesh_intersection`
- `igl::triangulate` | `igl::polygon_mesh_to_triangle_mesh`
- `igl::is_manifold` | `igl::is_edge_manifold`
- `igl::triangle_wrapper` | `igl::triangulate`
- ### Miscellaneous ###
- - To match interfaces provided by (all) other quadratic optimization
- libraries, `igl::min_quad_with_fixed` and `igl::active_set` now expect as
- input twice the quadratic coefficients matrix, i.e. the Hessian. For
- example, `igl::min_quad_with_fixed(H,B,...)` minimizes $\frac{1}{2}x^T H
- x+x^T B$.
- - We have inverted the `IGL_HEADER_ONLY` macro to `IGL_STATIC_LIBRARY`. To
- compile using libigl as a header-only library, simply include headers and
- libigl in the header search path. To link to libigl, you must define the
- `IGL_STATIC_LIBRARY` macro at compile time and link to the `libigl*.a`
- libraries.
- - Building libigl as a static library is now more organized. There is a
- `build/` directory with Makefiles for the main library (`Makefile`) and each
- dependency (e.g. `Makefile_mosek` for `libiglmosek.a`)
- - `igl::polar_svd` now always returns a rotation in `R`, never a reflection.
- This mirrors the behavior of `igl::polar_svd3x3`. Consequently the `T`
- part may have negative skews.
- - We have organized the static
- - The previous `igl::grad` function, which computed the per-triangle gradient
- of a per-vertex scalar function has been replaced. Now `igl::grad` computes
- the linear operator (previous computed using `igl::gradMat`). The gradient
- values can still be recovered by multiplying the operator against the scalar
- field as a vector and reshaping to have gradients per row.
- - `MASSMATRIX_*` has become `MASSMATRIX_TYPE_*`
- - The function `igl::project_normals`, which cast a line for each vertex of
- mesh _A_ in the normal direction and found the closest intersection along
- these lines with mesh _B_, has been removed.
- 0.4.6 Generalized Winding Numbers
- 0.4.5 CGAL extra: mesh selfintersection
- 0.4.4 STL file format support
- 0.4.3 ARAP implementation
- 0.4.1 Migrated much of the FAST code including extra for Sifakis' 3x3 svd
- 0.4.0 Release under MPL2 license
- 0.3.7 Embree2.0 support
- 0.3.6 boost extra, patches, mosek 7 support, libiglbbw (mosek optional)
- 0.3.5 More examples, naive primitive sorting
- 0.3.3 Many more examples, ambient occlusion with Embree.
- 0.3.1 Linearly dependent constraints in min_quad_with_fixed, SparseQR buggy
- 0.3.0 Better active set method support
- 0.2.3 More explicits, active set method, opengl/anttweakbar guards
- 0.2.2 More explicit instanciations, faster sorts and uniques
- 0.2.1 Bug fixes in barycenter and doublearea found by Martin Bisson
- 0.2.0 XML serializer more stable and fixed bug in remove_duplicate_vertices
- 0.1.8 Embree and xml (windows only) extras
- 0.1.5 Compilation on windows, bug fix for compilation with cygwin
- 0.1.1 Alpha release with core functions, extras, examples
|