wmayer
5b2d712ffe
Mesh: improve OBJ import by allowing arbitrary names for the mtllib file
2022-05-17 15:02:59 +02:00
wmayer
a2c24122c0
Mesh: modernize MeshIO classes
2022-05-17 12:20:22 +02:00
wmayer
79d6e85e6f
Mesh: implemented recommended move constructor and move assignment for Point3d
2022-05-17 11:55:33 +02:00
wmayer
abc5413b34
Mesh: avoid problematic const_cast
2022-05-17 11:54:11 +02:00
wmayer
6a3281438f
Mod: whitespace fixes
2022-05-17 11:51:22 +02:00
Zheng, Lei
8bec44934b
Fix mixed line endings
2022-04-26 12:52:55 -05:00
Chris Hennes
3ecd16e0bd
Mesh: PR6497 move return statement to new line
2022-03-29 12:36:30 -05:00
wmayer
bb8dda44f5
Mesh: include header with export macros
2022-03-24 20:42:15 +01:00
wmayer
585bcb8708
lgtm: [skip ci] FIXME comment
...
Change FIXME or remove it
2022-03-20 16:51:23 +01:00
wmayer
b09135fca7
Mesh: [skip ci] lgtm: Multiplication result converted to larger type
...
Multiplication result may overflow 'float' before it is converted to 'double'.
2022-03-20 15:53:04 +01:00
wmayer
69a5bfd6b1
Mesh: Fix several coverity issues:
...
* CID 350557: Out-of-bounds read (false-positive)
* CID 316517: Uninitialized scalar variable
* CID 316519: Uninitialized scalar variable
* CID 316547: Uninitialized scalar variable
* CID 316556: Uninitialized scalar variable
* CID 350614: Uncaught exception
* CID 350606: Uncaught exception
* CID 332681: Using invalid iterator
2022-03-13 14:58:14 +01:00
wmayer
4a343ab31e
Base/App: fix warnings from code analysers:
...
* convert old-style-casts to explicit C++ casts where possible
* make some implicit conversions explicit
2022-03-06 23:49:30 +01:00
wmayer
4e1ce8a15f
Mesh: overload MeshAlgorithm::NearestFacetOnRay to set a max. angle between facet and ray
2022-02-13 12:46:01 +01:00
wmayer
59e605e6b8
Mesh: modernize C++11
...
* remove redundant void-arg
* use nullptr
* replace deprecated headers
2022-01-26 18:05:02 +01:00
luz paz
8b743d8598
Mesh: translate doxygen from DE to EN
...
For the purpose of making the source documentation uniform, source comments in this file were translated to English.
2022-01-13 17:27:43 +01:00
luzpaz
c0f42cea0e
Points: translate doxygen from DE to EN + fix superfluous whitespace ( #5287 )
...
* Points: translate doxygen from DE to EN + fix superfluous whitespace
For the purpose of making the source documentation uniform, source comments in this file were translated to english.
* Points: remove superfluous whitespace
* Fix left over DE to EN translations (from Cam and Mesh code)
2021-12-25 20:41:12 +01:00
luz paz
3b2cf4713b
Mesh: translate doxygen from DE to EN
...
For the purpose of making the source documentation uniform, source comments in this file were translated to english.
2021-12-22 01:09:52 +01:00
luz paz
d877ee4d47
Make source code comments use gender neutral pronouns
...
The changes also include some grammatical fixes as well.
2021-12-02 16:18:04 -05:00
luz paz
aa143f5a5b
Mesh: Convert comments from DE->EN
...
Bringing uniformity to documenting FreeCAD
2021-11-03 11:13:16 -04:00
wmayer
5abe0ba77f
Mesh: add basic support of 3MF file format
2021-10-22 17:11:16 +02:00
wmayer
508d113e21
Mesh: improve MeshGeomFacet::IntersectWithFacet
2021-10-20 19:42:39 +02:00
wmayer
124d06b7f7
Mesh: extend API to access edges of a facet via Python
2021-10-20 13:01:11 +02:00
wmayer
5c59b8e050
Mesh: [skip ci] add unit tests for coplanar and intersecting triangles
2021-10-19 20:31:39 +02:00
wmayer
fe070903d3
Mesh: add method to get intersection of edges
2021-10-19 19:22:21 +02:00
wmayer
277c5ef9e9
Mesh: [skip ci] update tri-tri-intersection
2021-10-19 15:14:36 +02:00
bartus
6766932b35
Fix linux build: undefined std:string_view
...
Pop 'mesh' library c++ stranderd to c++17
Add required <string_view> header
2021-10-03 14:36:16 +02:00
Chris Hennes
231a3b1d4d
Mesh: remove unused variable in Nastran reader
2021-09-29 16:34:58 -05:00
wmayer
d22c70c9a4
Mesh: add method MeshAlgorithm::GetFacetsBorders
2021-09-29 22:33:45 +02:00
wmayer
c702fd07eb
Mesh: [skip ci] rename MeshAlgorithm::GetMeshBorder to MeshAlgorithm::GetFacetBorder
2021-09-29 19:38:52 +02:00
wmayer
210eac2a09
Mesh: improve function to fix points on edge
2021-09-29 19:32:18 +02:00
wmayer
2b12fe5c1a
Mesh: [skip ci] when points lie exactly on a plane it can happen that a plane fit creates U,V vectors with NaN while W is valid
2021-09-29 12:35:28 +02:00
wmayer
3922a6ac73
Mesh: detect points on edges
2021-09-28 22:30:21 +02:00
Chris Hennes
0a4648101d
[Mesh] Improve unit tests
...
Add a test for the CTRIA3 element, and add code to check the used nodes
and cancel the file load if they don't all exist.
2021-09-25 19:42:00 -05:00
Chris Hennes
d7bf76e3cc
Merge branch 'master' into meshNastranFileFormat
2021-09-25 16:34:33 -05:00
wmayer
8041f98ab7
Mesh: [skip ci] change MeshTopoAlgorithm::SplitOpenEdge to return a boolean to indicate if the operation succeeded or not
2021-09-25 14:52:49 +02:00
Chris Hennes
63369a9c38
[Mesh] Improve NASTRAN input support
...
Adds support for original-NASTRAN fixed-field-width low-precision GRID
element (the existing code assumed space-delimited input).
2021-09-22 11:58:04 -05:00
Chris Hennes
519caa51b5
Merge pull request #5047 from chennes/lgtmMeshEmptyBlocks
...
[Mesh] Implement high-precision NASTRAN GRID* element
2021-09-22 09:22:48 -05:00
Chris Hennes
9b57a7867a
[Mesh] Implement GRID* input in NASTRAN
...
LGTM complained about two empty blocks in the Mesh NASTRAN reader: those
blocks related to the code skipping the input of the high-precision GRID
element. This commit adds support for that element.
2021-09-20 10:32:10 -05:00
wmayer
8cbd92d874
port to MSYS2/clang
2021-09-19 19:49:44 +02:00
wmayer
5694f08f15
Mesh: add function section() to Mesh class
2021-09-16 17:31:45 +02:00
wmayer
2295c4b9a3
Mesh: define the typenames FacetIndex and PointIndex to distinguish between facet and point related indexes
2021-09-14 23:01:29 +02:00
wmayer
a40d37a980
Base: split export/import macros from FCConfig.h and move them to FCGlobal.h
...
The FCGlobal.h can be included in a Global.h header file of an extension module.
The reason is that some IDEs (e.g. QtCreator) fails to detect the export/import macros when only defined in the PreCompiled.h files and thus raise a parser warning.
2021-09-14 16:40:30 +02:00
Megidd Git
74623847b7
Mesh: fix infinite loop when repairing mesh facet indices
2021-09-12 09:13:57 +04:30
Ajinkya Dahale
0fad21daf0
[Mesh] Skip false positive tests for coplanar self-intersections
...
Fixes issue #4732 .
Within the code, a different algorithm is used for intersection checks when
faces are found to be coplanar. That algorithm does not return the "intersection
line", which is used to remove false-positives. This however results in
false-negatives.
2021-08-31 11:11:11 -04:00
wmayer
5479a886df
Mesh: [skip ci] do not make lower case read lines of OBJ file as otherwise it may fail to load the MTL file
2021-03-20 19:19:30 +01:00
wmayer
0fcbe04dcf
Mesh: [skip ci] fix regular expression in MeshInput
2021-03-10 17:49:05 +01:00
wmayer
4a2d131cb6
Mesh: [skip ci] Fix coverity warning
...
Coverity warnings fixed:
CID 316517 (#1 of 1): Uninitialized scalar variable (UNINIT)
13. uninit_use_in_call: Using uninitialized value t. Field t.err is uninitialized when calling push_back
CID 316519 (#1 of 1): Uninitialized scalar variable (UNINIT)
3. uninit_use_in_call: Using uninitialized value v. Field v.tstart is uninitialized when calling push_back
CID 316547 (#1 of 1): Uninitialized scalar variable (UNINIT)
13. uninit_use_in_call: Using uninitialized value t. Field t.err is uninitialized when calling push_back
CID 316556 (#1 of 1): Uninitialized scalar variable (UNINIT)
3. uninit_use_in_call: Using uninitialized value v. Field v.tstart is uninitialized when calling push_back
2021-02-21 15:51:56 +01:00
wmayer
815333c68e
Mesh: [skip ci] implement splitFacet
2021-02-14 00:54:30 +01:00
Chris Hennes
16b8e02969
Correct minimum distance calculation in SplitFacet
...
Found via LGTM.
2021-02-12 21:59:50 +01:00
Chris Hennes
c5c419e55a
LGTM: Eliminate float-to-double overflow warning
...
LGTM complains if this calculation is done from inside the sqrt() call
because it sees the explicit cast to float and assumes that sqrt() is
intended to take a double. By adding an intermediate step it should be
clear to LGTM that the float version of sqrt is intended.
2021-02-09 20:01:13 +01:00