Commit Graph

14176 Commits

Author SHA1 Message Date
Abdullah Tahiri
de9e7cc942 Part: Improvement to closest parameter determination when the projection does not exist in the trimmer curve 2018-07-29 13:44:06 +02:00
Abdullah Tahiri
97f375296b Sketcher: Sketch Analysis tool and autoconstraining algorithms
A series of algorithms to detect missing constraints and create them.

Each of the algorithms is divided in different steps for maximum flexibility:

    /// There is a first type of routines, simple routines, which work in the following order:
    /// Detect - (Analyse) - [Get] - [Set] - Make
    ///
    /// The Detect step just identifies possible missing constraints.
    ///
    /// The Analyse, which is not available for all the routines, operates in detected constraints of the same routine, to
    /// look for alternatives. For example, a general pointonpoint detection leads to a search for coincident constraints, which
    /// can be later run via Analyse if it is intended to convert endpoint coincidence to endpoint perpendicular and tangent constraints.
    ///
    /// The Get retrieves the result of the analysis as a vector of ConstraintIds, indicating the suggested constraints. This step is intended
    /// for enabling the user to check the result of the analysis, rather than applying it. If only applying is intended, this step is not necessary
    /// as the Make will operate on the result of the Detect - Analyse directly.
    ///
    /// The Set changes the detected result. It modifies the SketchAnalysis object. It only modifies the SketchObject as far as the SketchAnalysis is changed.
    /// It does not apply any changes to the sketch. It is intended so as to enable the user to change the result that will be applied.
    ///
    /// Neither the Detect, nor the Analyse, nor the Get steps modify the Sketch geometry.
    ///
    /// Make applies the constraints stored internally in the SketchAnalysis object.

It includes an automatic constraining algorithm for coincidences, horizontals/verticals and equality:

    /// A second type of routines, complex routines, are thought for running fully automatic and they Detect, Analyse and Make.
    /// They may also apply a variaty of types of Constraints.

It also includes some helper functions, like autoRemoveRedundants
2018-07-29 13:44:06 +02:00
tomate44
b40c1f16b5 add a missing check for OCC version 2018-07-29 11:50:08 +02:00
tomate44
3c049e44f1 cleanup of defeaturing in Part Gui 2018-07-29 11:50:07 +02:00
tomate44
d5db3ff588 add OCC defeaturing to PartWB Gui 2018-07-29 11:50:07 +02:00
tomate44
1f63d6a103 add python binding of OCC defeaturing 2018-07-29 11:50:06 +02:00
tomate44
4a0ea3c0ec add OCC defeaturing to TopoShape 2018-07-29 11:50:06 +02:00
wmayer
e6658ed3f3 expose methods to Python to change navi cube settings 2018-07-29 11:32:54 +02:00
Eivind Kvedalen
c2ada8eacd Fix for issue #3541: Normalize xDir vector for Hole feature to correct hole diameter. 2018-07-29 01:03:17 +02:00
wmayer
2ca81da42f fixes #0003538: MacOSX 10.13 not in the 'About FreeCAD' dialog 2018-07-28 16:06:15 +02:00
luz.paz
23b30518b9 PartDesign: fixes for Qt 5.11
Similiar to changes made in 7e63a33b8b
CC @efferre79
2018-07-28 15:32:43 +02:00
Przemo Firszt
c6c55cb6c3 Change method of counting commits
The count of commits in unshallowed copy should always match the actual
number of commits in the master repository, so the is no need for
workarounds.

Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2018-07-28 15:25:35 +02:00
Przemo Firszt
9d419b8a40 Add libspnav to fedora spec 2018-07-28 15:25:34 +02:00
wmayer
61a6fbe6d2 fix -Wunused 2018-07-28 12:56:31 +02:00
wmayer
c2ab3f02cd remove undesired dependency of Mesh to Part module 2018-07-28 11:58:39 +02:00
wmayer
039e972a4b implement fast mesh rendering for Qt5 port (7x faster) 2018-07-28 11:08:03 +02:00
Yorik van Havre
db4f47cf28 Arch: other small bugfix in IFC exporter 2018-07-27 17:07:44 -03:00
Yorik van Havre
ee154d9203 Arch: Fixed storey height bug in IFC export 2018-07-27 16:41:20 -03:00
luz.paz
0576524144 Misc. code comment typo fixes
Found via `codespell -q 3 -I ../fc-word-whitelist.txt --skip="*.ts,*.po,./src/3rdParty,./src/Mod/Assembly/App/opendcm,./.git,./src/zipios++"`
2018-07-27 10:39:43 -03:00
Philipp Tenbrock
4c188ec0f5 Fixed DAE export of groups including sub-groups and sub-parts 2018-07-27 10:39:00 -03:00
wandererfan
e267eac7bb Fix #3329 globalPosition in Stl export 2018-07-27 10:37:06 -03:00
Yorik van Havre
e45a3674f0 Arch: bugfixes in IFC exporter 2018-07-26 19:23:48 -03:00
wandererfan
c28f95d9f5 Export DocObjectPy/TopoShapePy to Dxf (Import module) 2018-07-26 10:02:25 -03:00
wmayer
6cc1524a0d Mesh improvements:
+ support of Simple Model Format (smf)
+ improve reading of STL files (reduce by ~70%)
2018-07-26 13:19:35 +02:00
Yorik van Havre
98af9aabd9 Draft: Snap to BuildingPart base points 2018-07-25 20:25:11 -03:00
Yorik van Havre
78fea67043 Arch: bugfix in IFC exporter 2018-07-25 20:24:50 -03:00
wmayer
d4987d088f add option to drag at cursor instead of view center 2018-07-25 22:36:35 +02:00
wmayer
6e8b60589f add brnading option to show full version number in splash screen 2018-07-25 22:26:54 +02:00
wmayer
6c51cdd663 minor changes 2018-07-25 21:49:21 +02:00
wmayer
fa89e3b951 add url handler to handle certains protocols differently 2018-07-25 21:48:55 +02:00
wmayer
d3ef6905ff + add option to switch off precompiled header 2018-07-25 20:17:11 +02:00
wmayer
08fcd58e9d + raise exception instead of crashing when trying to access curvature info via Python 2018-07-25 20:12:55 +02:00
wmayer
6b9a3bf93c fix possible crash in Quarter viewer 2018-07-25 19:50:25 +02:00
wmayer
b7ac2807fe Merge branch 'master' of https://github.com/FreeCAD/FreeCAD 2018-07-25 18:01:02 +02:00
wmayer
65879dfe63 + Improve mesh selection (precompute projection matrix and use polygon bounding box) 2018-07-25 18:00:42 +02:00
Yorik van Havre
2b04db09e3 Merge branch 'master' of github.com:FreeCAD/FreeCAD 2018-07-25 12:56:20 -03:00
Yorik van Havre
d034c0083c Draft: Added variable to be able to start Move command in copy mode 2018-07-25 12:55:55 -03:00
Yorik van Havre
f6fdad4d07 Part: Fixed wording in ShapeBuilder messages 2018-07-25 12:55:27 -03:00
wmayer
1fcfbcf1ab + move implementation of Base::ifstream and Base::ofstream to header and remove export macro.
This is needed for VS 2013 to avoid that it exports methods of the base class and thus causing linker errors for modules that link FreeCADBase
2018-07-25 17:50:30 +02:00
wmayer
3b3e4fd4ce minor fix 2018-07-25 17:49:28 +02:00
wmayer
806ad88c5a + implement a faster method to multiply vector with matrix
+ add convenience method to transform a point array
2018-07-25 17:31:11 +02:00
wmayer
b298e63bcc + implement direct and queued mode in console class 2018-07-25 17:25:32 +02:00
wmayer
b13f1562a3 handling of UTF-8 in zipios++ on Win32 2018-07-25 16:57:38 +02:00
wmayer
6b6bde1bab use correct spelling of Windows header 2018-07-25 16:49:37 +02:00
Yorik van Havre
1885036139 Arch: Added preference option for screen helpers color (axes, grids, etc...) 2018-07-25 10:56:12 -03:00
Yorik van Havre
111c0496b4 Draft: Minor bugfix 2018-07-24 17:10:18 -03:00
Yorik van Havre
64c760f537 Added Standard Code property to all components 2018-07-24 11:58:55 -03:00
Yorik van Havre
4394862794 Arch: Reorganizing structural profiles + added eurocode timber sizes 2018-07-24 11:58:34 -03:00
Yorik van Havre
7bac2a610a Arch: minor bugfix 2018-07-23 21:13:14 -03:00
Yorik van Havre
acf18c193c Arch: Minor fixes in Materials 2018-07-23 19:43:04 -03:00