|
1 | 1 | ## Change history |
2 | 2 |
|
3 | | -### [2023/04/27] |
| 3 | +### [3.0.0 - 2023/06/28] |
| 4 | + |
| 5 | +[2023/06/28] |
| 6 | +* Added the property WorkingFolder to DxfDocument.SupportFolders. When a file is loaded or saved, it will hold the full path where the file resides, by default it points to the current System.Environment.CurrentDirectory when the DxfDocument was created. |
| 7 | +* Now you can change the Name and Style properties of LinetypeShapeSegment classes. |
| 8 | +* Deleted the TextStyle constructors public TextStyle(string font) and public TextStyle(string fontFamily, FontStyle fontStyle), now you must also provide the table name. |
| 9 | +* Deleted the ShapeStyle constructor public ShapeStyle(string file), now you must also provide the table name. |
| 10 | + |
| 11 | +[2023/04/27] |
4 | 12 | * Removed the taget frameworks netstandard2.1, netcoreapp3.1, and net5.0. Manually edit the netDxf.proj if you need them. |
5 | 13 | * Reworked how the references to a TableObject are tracked. Now they are internally stored in a dictionary instead of a list. While this will make adding entities to the document a little slower removing them will be much faster. See the sample TableObjectReferences(). |
6 | 14 | * Add the method GetReferences to classes that inherit from TableObject. It returns the same list as the GetReferences method of its respective collection. See the sample TableObjectReferences(). |
|
9 | 17 | * (fixed) Removing dimension entities with no associated block. This is the case of dimensions whick block has left null to force the program that loads the resulting DXF to generate its own dimension block. |
10 | 18 | * (fixed) Error when loading a closed periodic spline from a DXF without weights. |
11 | 19 |
|
12 | | -### [2023/03/05] |
| 20 | +[2023/03/05] |
13 | 21 | * Changed the default target framework 'net45' for 'net48'. The library is compatible will all 4.x net framework versions. |
14 | 22 | * Renamed the constant 'NET45' with 'NET4X' in netDxf.csproj. This constant must be applicable when compiling against any net framework 4.x versions. |
15 | 23 | * Normalizing a zero vector will return the Zero vector instead of NaN. |
|
26 | 34 | * (fixed) Workaround for possible bad formatted tolerance string representations. |
27 | 35 | * (fixed) The vectors that define the start and end angle for 3 point angular dimensions can be parallel. This restriction still true for angular 2 line dimensions. |
28 | 36 |
|
29 | | -### [2022/11/02] |
| 37 | +[2022/11/02] |
30 | 38 | * Fixed a bug in the AciColor.FromHsl method, under certain circumstances the RGB values where not calculated correctly. |
31 | 39 |
|
32 | | -### [2022/11/01] |
| 40 | +[2022/11/01] |
33 | 41 | * Workaround for bad DXF files that contain polyface with invalid geometry, they will be removed. |
34 | 42 | * Workaround for bad DXF files that contains entities without handles. This may derive in unexpected side effects. |
35 | 43 | * Workaround for bad DXF files lacking BLOCK_RECORD tables for the defined blocks. The default block record values will be given what may have other side effects. |
|
38 | 46 | * Added NET 6.0 as a target framework. |
39 | 47 | * Updated netDxf solution for Visual Studio 2022. The solution file is still usable by Visual Studio 2019 but it does not support NET 6.0. |
40 | 48 |
|
41 | | -### [2022/05/27] |
| 49 | +[2022/05/27] |
42 | 50 | * Added the Matrix3.Reflection method that builds a reflection matrix for a mirror plane that passes through the origin. See sample ReflectionMatrix(). |
43 | 51 | * Added the Matrix4.Reflection method that builds a reflection matrix for a mirror plane that passes through an arbitrary point. See sample ReflectionMatrix(). |
44 | 52 | * Corrected the comments in the Ellipse.Center property. |
45 | 53 | * (fixed) In the Ellipse.SetAxis method the validity checks must be performed with the arguments of the method not the actual major and minor axis of the ellipse. |
46 | 54 |
|
47 | | -### [2022/04/19] |
| 55 | +[2022/04/19] |
48 | 56 | * Added more GTE classes. See the Samples for GTE classes |
49 | 57 | * Deleted the SplineVertex class. Now the Spline constructors take two lists: a Vector3 to define the controls points and a double array to define the weights. |
50 | 58 | * PolygonMesh entities are now capable to handle closed in U and/or V surfaces. |
51 | 59 |
|
52 | | -### [2022/04/10] |
| 60 | +[2022/04/10] |
53 | 61 | * Added CalculateTangent for Quadratic and Cubic Bezier curves. |
54 | 62 | * Added PolygonMesh entity. See PolygonMesh() sample. |
55 | 63 | * Added the drawing variables SurfU and SurfV. |
|
58 | 66 | * (fixed) Some issues when reading and writing attributes and attribute definitions, related with the fit and aligned Alignment property. |
59 | 67 | * (fixed) Attribute and AttributeDefinition properties IsBackward and IsUpsideDown were not written nor read. |
60 | 68 |
|
61 | | -### [2022/02/13] |
| 69 | +[2022/02/13] |
62 | 70 | * Cleanup code when reading and writing some dimension style variables and overrides. |
63 | 71 | * (fixed) Issue when writing the header variable $DIMAPOST. |
64 | 72 | * (fixed) Some issues with reading and writing dimension style overrides. |
65 | 73 |
|
66 | | -### [2022/01/26] |
| 74 | +[2022/01/26] |
67 | 75 | * The Polyline2D and Polyline3D Explode method will preserve the smooth type. |
68 | 76 | * Deleted the references to the ImageDefinitionReactor from the ImageDefinition they will be created when the DXF is saved. |
69 | 77 | * (fixed) Issues, introduced in the last two updates, when saving Polyline2D, Polyline3D, and PolyfaceMesh entities that were part of a Block. |
70 | 78 |
|
71 | | -### [2021/12/06] |
| 79 | +[2021/12/06] |
72 | 80 | * Rename Face3d to Face3D. |
73 | 81 | * Rename Face3dEdgeFlags to Face3DEdgeFlags. |
74 | 82 | * Rename DxfDocument.Entities.Faces3d to DxfDocument.Entities.Faces3D. |
|
94 | 102 | * The SmoothType (None, Quadratic, or Cubic) can now be set for Polyline2D entity (formerly LwPolyline) and Polyline3D (formerly Polyline). |
95 | 103 | * Updated the file "netDxf Documentation.chm". |
96 | 104 |
|
97 | | -### [2021/10/24] |
| 105 | +[2021/10/24] |
98 | 106 | * The internal blocks that start with "*U" or "*T" can be safely renamed. They are internally created to represent dynamic blocks, arrays, and tables; although the information of those objects is lost when importing the DXF, the block that represent its graphical appearance is imported. |
99 | 107 | * PolyfaceMesh vertexes are now a list of Vector3. The additional information that the DXF requires will be generated when the file is saved. |
100 | 108 | * Deleted the PolyfaceMeshVertex class, there is no use for it anymore. |
|
115 | 123 | * (fixed) Workaround for multiline styles with no name in bad formated DXF files. |
116 | 124 | * (fixed) The precision argument of the Arc.PolygonalVertexes method represents the number of vertexes genarated not the number of division, as it is the case of similar methods of other entities. |
117 | 125 |
|
118 | | -### [2021/09/18] |
| 126 | +[2021/09/18] |
119 | 127 | * Leader entitities with less than two vertices will be deleted when loading a DXF file. |
120 | 128 | * (fixed) Changed the default DxfDocument comment to show that netDxf is licensed under MIT. |
121 | 129 | * (fixed) Possible out of range error for the LuPrec header variable when reading a DXF file. Out of range values will default to 4. |
|
124 | 132 | * (fixed) The default linetype will be given to a layer state if the specified one in the DXF is not found. |
125 | 133 | * (fixed) Complex linetypes assigned to a layer were not properly initialized. |
126 | 134 |
|
127 | | -### [2021/06/20] |
| 135 | +[2021/06/20] |
128 | 136 | * Loading AutoCad2000 (AC1015) or AutoCad2004 (AC1018) DXF files containing non-ASCII characters will work once again. Additionally the Net Standard 2.1 build requires a reference to the external library "System.Text.Encoding.CodePages". |
129 | 137 |
|
130 | | -### [2021/05/23] |
| 138 | +[2021/05/23] |
131 | 139 | * Added two methods to the MathHelper class to transform object 2d coordinates to world coordinates given the entity normal and elevation. |
132 | 140 | * Added two methods to the MathHelper class to transform world coordinates to object 2d coordinates given the entity normal, they also return as an out parameter the average Z axis value of the transformed points. |
133 | 141 | * Deleted netDxf.nuspec file. |
|
138 | 146 | Also a call to the Update method is not done automatically. It is needed to reflect the actual properties and style of the Leader, but there might be special cases when it is needed to have control over it. |
139 | 147 | See "AssignAnnotationToLeader()" sample. |
140 | 148 |
|
141 | | -### [2021/05/02] |
| 149 | +[2021/05/02] |
142 | 150 | * Added netDxf.nuspec file. |
143 | 151 | * Ellipses with its major axis smaller than its minor axis are not allowed. |
144 | 152 | * Streams with not accessible Position property are not supported. |
145 | 153 | * (fixed) LayerState containing a non existent layer will not be added. |
146 | 154 | This behaviour differs when the LayerState comes from an external LAS file, in the latter case the non existent layer is added to the document. This is to allow the LAS file to be used layers templates. |
147 | 155 | Additionally if the LayerState points to a non existent linetype, the default "Standard" will be assigned. |
148 | 156 |
|
149 | | -### [2021/03/27] |
| 157 | +[2021/03/27] |
150 | 158 | * The netDxf library is now licensed under the MIT License. |
151 | 159 | * Updated solution file to Visual Studio 2019. |
152 | 160 | * netDxf targets multiple frameworks, predefined frameworks for Net Framework 4.5, Net Standard 2.1, Net Core 3.1, and NET 5.0. |
|
162 | 170 | It doesn't seems to play any role, open a new issue at GitHub if non-ASCII characters does not show up correctly. |
163 | 171 | This will avoid the use of additional libraries to handle the encoding code pages. |
164 | 172 |
|
165 | | -### [2.4.2 - 2021/03/23] |
| 173 | +### [2.4.2 - 2021/03/23] |
166 | 174 | * Now the ShapeStyle does not require the SHP file to read the shape information only the SHX must be present. |
167 | 175 | * The Insert Sync method will not modify any value assigned to the attribute Value property. |
168 | 176 | * (fixed) A couple errors when writing the style overrides of a dimension to the extended data. |
|
0 commit comments