This repository has been archived by the owner on Jun 10, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 16
/
changelog.txt
127 lines (107 loc) · 5.74 KB
/
changelog.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
#### Release: 5.1.1 ####
New Features:
* Support input and output resqml2 standards
* change build organization: remove "ringmesh" folder
* remove multiconfiguration imposed in CMAKE
Bug fix:
* Fix geomodel_copy in 2D
* remove the try for RINGMESH GUI with nbind
Improvements:
* geogram release 1.6.11
#### Release: 5.1.0 ####
New Features:
* New (command-line) executable to edit GeoModel name.
* Possibility to toggle off each validity check.
* New executable to tetrahedralize an input GeoModel
* Add new colormaps
* Split IO GeoModel factories in two disctint factories:
* one to register extensions that can be loaded
* one to register extensions that can be saved
* Addition of fully operational Cartesian grids (with Attributes)
Bug fix:
* In the computation of lines and corners from surfaces
Improvements:
* Change default colormap for attributes
* Reorganize CMake architecture (using SuperProject)
* Add new geometrical tests
#### Release: 5.0.0 ####
Major change:
* Add support of 2D GeoModel:
* User can use GeoModel2D and GeoModel3D, they follow the same boundary representation design as before
* Meshes can be defined using only 2 coordinates
New Features:
* Add support to Mac OS using Clang (Unix Makefile and Xcode project). Works
with the internal eclipse project.
* Add import of SVG file for GeoModel2D.
We only read pathes and they should be flat. There is a command to flatten pathes in Inkscape.
* Add a GeoModel2D builder from projection of GeoModel3D on a given plane.
* Add objects to iterate using range-loop like for integers and GeoModelMeshEntities:
objects are range for integers, region_range for Regions etc.
* Generic factory:
* the key is template
* the instantiated classes can have different constructor arguments (type and number)
* Use of clang-format to format C++ code
Bug fix:
* Error in computation of polygon area (for 3D concave polygons)
* Crash when removing the first object in RINGMeshView object tree
* Crash when calling mesh entity removal for the second time
Improvements:
* Include new geogram release 1.4.10
* Export attributes to TSolid file.
* Use std::tuple for output only values, these values are no longer taken as parameter.
* Use of variadic template for RINGMesh Exceptions. Useful to write long description messages
involving the output of string, double, int etc.
* Simplify GeoModel io file hierarchy.
* Add exact predicates into 2d geometric intersections.
* Convert tinyxml2 and zlib into corresponding hgsub
#### Release: 4.1.0 ####
New Features:
* New thread safe logger
Each call to Logger::XXX will output consistently in the console in multithreading environment
The Logger uses variadic templates, you can use as many parameters as you want in the function.
* Add possibility to run specific validity check on GeoModels (topology, geometry, all, ...)
* ASCII surface STL export
* First implementation of a stratigraphic column
* Add Feflow export using .fem file. Support wells as discrete fractures and mixed element mesh.
* Add symmetric entity relationships management, an entity is the boundary of another entity
and the reverse is automatically set. Same things for the parents/child relation
* New version of the .gm file format which not contains the GEOL_FEATURE on Mesh Entities anymore.
* Export to gmsh file format (V2).
* Add MeshSet, a mesh composed from all the other mesh types (PointSet, Line, Surface and Volume).
Bug fix:
* Crash when GeoModelMesh was initialized before the GeoModelMeshEntity geometries were set.
* Cannot delete Mesh in RINGMeshView
* Fix crash on RINGMeshView exit (Logger was still register)
* RINGMesh now compiles when TetGen cmake option is set to off
* GeoModelMeshVertices was not cleared after a tetrahedralize step
Improvements:
* Removal of the Universe (only necessary for Gocad import/export).
* Refactoring of the io to have smaller files
* Explicit distinction between the denomination of GeoModelMeshEntity and GeoModelGeologicalEntity:
Now, gmme_t are used to identify a GeoModelMeshEntity (with and index and a type)
gmge_t are used to identify a GeoModelGeologicalEntity (with an index and a type)
User who want to use GeoModelEntity has now to give a particular attention on which kind on GeoModelEntity
he is working.
* EntityType are not a std::string anymore but an abstract class. GeologicalEntityType and MeshEntityType inherit
from EntityType.
* Remove MeshAllD and inherited classes, user should only use Mesh0D, Mesh1D, Mesh2D or Mesh3D.
The GeoModelMesh has been modified according this modification.
* Improve some designs by using the NRVO/RVO (Named Return Value Optimization)
* Use C++11 smartpointers for all the pointers allocated on the heap
* Remove complex inheritance design of the GeogramMesh and GeogramMeshBuilder classes
* Add naming distinction between a facet (a boundary polygon of a cell) and a polygon (a surface mesh element)
* Mesh Entities have no longer a GEOL_FEATURE.
* Refactoring of the GeoModel graphics
* Create enums for classifying cells (CellType) and polygons (PolygonType).
Deprecated:
* Remove support of .ogm
* Remove support of .mesh and .meshb
Architecture:
* All third party files (zlib, geogram) are now in a "third_party" directory at the RINGMesh root.
* Removal of ThreeJS third party.
* Add formatter settings for Visual Studio 2013 (12.0) and Visual Studio 2015(14.0).
Formatters are uniform between Visual and Eclipse.
* A cmake configuration file was created to ease the integration of RINGMesh in other
software which is generated by cmake.
This file is cmake/RINGMeshConfig.cmake. See doxygen documentation
(doc/dox/cmake_integration.dox) for more details.