Commit Graph

15134 Commits

Author SHA1 Message Date
pekkaroi
14df76cbc2 Path: Optimize output of OCL dropcutter algo. 2018-11-04 14:49:21 -03:00
Abdullah Tahiri
da890f2863 Sketcher: Allow driven constraints when autoredundancy removal and autorecomputes active
==========================================================================================

https://forum.freecadweb.org/viewtopic.php?f=3&t=31998#p266626
2018-11-04 14:46:37 -03:00
DeepSOIC
0cd1066abc Part: Attacher: fix blocking error message
fix #3662
for now, just allow accepting attachment even if attachment is faulty
2018-11-04 14:45:49 -03:00
Abdullah Tahiri
eac4352b75 Sketcher: Trim bug
==================

Trim tool fails to generate coincidence upon trimming an arc of ellipse at the end of the arc.

https://forum.freecadweb.org/viewtopic.php?f=3&t=31594&start=50#p266765
2018-11-04 14:43:24 -03:00
Abdullah Tahiri
20faec46ec Sketcher: Fillet radius estimation improvement 2018-11-04 14:43:24 -03:00
Abdullah Tahiri
3e85954f6d Part: Geometry tangent with Vector3d overload 2018-11-04 14:43:24 -03:00
Abdullah Tahiri
f202961a6c Sketcher: SketchObject Debug disabled by default 2018-11-04 14:43:24 -03:00
Abdullah Tahiri
c454e1c908 Sketcher: Add DEBUG macro to SketchObject 2018-11-04 14:43:24 -03:00
Abdullah Tahiri
01bac7854f Sketcher: Intercurve fillet Improvement and delete constraint on point fix
==========================================================================

Intercurve fillet uses endpoint constraints for improved accuracy, but before this
commit was only considering a coincident constraint. Now it also considers an endpoint
tangency or perpendicular.

delConstraintOnPoint with coincidentonly=false, was not checking endpoint perpendiculars and
would therefore fail to delete them.

https://forum.freecadweb.org/viewtopic.php?f=3&t=31594&start=30#p265731
2018-11-04 14:43:24 -03:00
Abdullah Tahiri
843f636d85 Sketcher: Expose mass datum commands to python 2018-11-04 14:41:20 -03:00
Abdullah Tahiri
7129b3ca0e Sketcher: Mass operations on dimensionals
=========================================

This commit introduces two functions to operate on all datum constraints exclusively:

- Make all datum constraints driving or not driving, depending on the argument.
- Move all datum constraints at the end of the constraint list.

The practical use an ongoing effort towards improving the block constraint behaviour, that will be defered to 0.19
2018-11-04 14:41:20 -03:00
Abdullah Tahiri
21f2e79021 Sketcher: Refactor code relating to dimensional constraint checks 2018-11-04 14:41:20 -03:00
Abdullah Tahiri
66bcaf5405 Sketcher: Made constraints aware of whether they are dimensionals or not
========================================================================

Centralise the knowledge on whether a constraint is dimensional or not within the constraint
2018-11-04 14:41:20 -03:00
marvellouschandan
1b8d40323d Indentation error solved 2018-11-04 14:38:45 -03:00
marvellouschandan
34ced24ad9 Resolved issue: Exporting rectangular section to ifc 2018-11-04 14:38:45 -03:00
Yorik van Havre
fc4ad4b28b Draft: Fixed py3 bug in getSVG 2018-11-04 15:36:07 -02:00
wmayer
07810aed49 fix blocking of SelectionObserver 2018-11-04 11:54:40 +01:00
luz.paz
c7785267a7 Misc. typos and whitespace
Found via `codespell -q 3 --skip="*.po,*.ts,./.git,./src/3rdParty,./src/CXX,./src/zipios++,./src/Mod/Assembly/App/opendcm,./ChangeLog.txt" -I ../fc-word-whitelist.txt` and `grep`. Excess whitespace auto-removed by Atom editor.
2018-11-03 16:13:06 -03:00
wmayer
57cfc06c4d fix gcc8 build failure 2018-11-02 18:57:43 +01:00
Yorik van Havre
80c6100dd8 Draft: Fixed wrong Placement of Draft Wire - fixes #3558 2018-11-01 14:42:52 -03:00
Przemo Firszt
ae9fdfd724 Fix COPR build and remove fedora specific xdg files
Signed-off-by: Przemo Firszt <przemo@firszt.eu>
2018-11-01 10:50:07 -03:00
wmayer
b662ee77a7 Improve TaskAttacher dialog:
+ correct handling of active document
+ properly handle case if the view provider or document is deleted while the dialog is still open
2018-10-31 14:29:42 +01:00
wmayer
0a4eae24bc add/extend helper classes to safely access documents, document objects or view providers 2018-10-31 14:27:28 +01:00
wmayer
42601fc4e4 add/extend helper classes to savely access document, document objects or view providers 2018-10-31 11:24:45 +01:00
wmayer
c50f6aea53 add an assert to several Command methods to be notified in debug mode if no active document exists 2018-10-31 11:21:33 +01:00
wmayer
36271b4052 move from deprecated boost.signals to boost.signals2 library 2018-10-30 19:09:03 +01:00
wmayer
5536470348 improve whitespaces 2018-10-30 13:48:00 +01:00
Abdullah Tahiri
c04ee53aff Sketcher: Trimming support bug
==============================

OCCT Geom2dAPI_InterCurveCurve based intersector does not detect intersection with the endpoint of a tangent line:
https://tracker.dev.opencascade.org/view.php?id=30217

This is a work-around that introduces endpoints of secondary curves as intersections, and uses projection to reject
projections further away than precision::confusion().

fixes #2463
2018-10-30 13:41:40 +01:00
wandererfan
3ec9b798bf Fix BSpline/Circle conversion 2018-10-30 13:25:33 +01:00
wandererfan
47f4a9dacb Add formatter for gp_Pnt 2018-10-30 13:25:33 +01:00
wmayer
aca61e829d fixes -Winconsistent-missing-override 2018-10-30 13:21:59 +01:00
kreso-t
2e1524bc15 Path: Adaptive - set as standard feature
- i.e. removed from experimental features
2018-10-29 23:29:08 +01:00
kreso-t
4032bd302a Path: Adaptive - fix for path cleaning
- fix for side-effect introduced by last change
(completely collinear paths were filtered out)
2018-10-29 23:29:08 +01:00
Clemens Weissbacher
fffca1f2ee py3: OpenSCAD: fix type cast 2018-10-29 17:18:13 +01:00
Clemens Weissbacher
befb3ea8a8 py3: OpenSCAD: use io.open more explicit 2018-10-29 17:17:53 +01:00
wmayer
04372041e1 leave license field and url of a Part container empty to avoid possible confusion with imported 3rd-party STEP/IGES models 2018-10-29 15:24:12 +01:00
wandererfan
0352559266 Fix spurious error message
-  in FeatureGroove, the check for multiple
   solids in result was checking the wrong
   variable.
2018-10-29 10:29:23 -03:00
kreso-t
9d60ced83d Path: Adaptive - finishing path improvements
- fixed bug in path cleaning (artifacts on the finish path)
- increased path discretization resolution
2018-10-29 10:28:54 -03:00
wmayer
f513305916 fix crash with Py3 when releasing memory buffer 2018-10-29 11:59:34 +01:00
wmayer
0e1cfea354 fixes 0003657: automatic rotation disabled by default 2018-10-28 20:45:02 +01:00
wmayer
4520aeb5ea fix -Wunused-private-field 2018-10-28 18:58:38 +01:00
Abdullah Tahiri
7abc5fec65 Sketcher: Fillet UI command Improved exception handling 2018-10-28 18:35:41 +01:00
Abdullah Tahiri
6c7684b2c7 Sketcher: Fillet extended CAD kernel information 2018-10-28 18:35:27 +01:00
Abdullah Tahiri
a93a5e9c93 Sketcher: Use transparent exception mechanism for fillets
=========================================================

This ensures that the exception back in the c++ that invoked python retains the type of exception and can be properly catched.
2018-10-28 18:34:50 +01:00
Abdullah Tahiri
578ea97647 Part: Geometry use CADKernelError exception for OCCT
====================================================

Part of the geometry was using CADKernelError and part was using RunTimeError exceptions, so unify criteria.

Runtime is very generic and does not need to stem from OCCT.

- Also rename of a typo basic to basis, to be coherent with OCCT terminology
2018-10-28 18:34:36 +01:00
Abdullah Tahiri
af581dc689 Sketcher: GUI command updated to support filleting of bounded curves 2018-10-28 18:34:23 +01:00
Abdullah Tahiri
026459675c Sketcher: Support for filleting bounded curves
==============================================

Generally, bounded curves require that the curves are coincident at one point, the vertex to be filleted.

Trimmed curves, like combinations of line segments, arcs of conics, do not require it, as they are able to extend the trimmed
curve using the basis curve. However, they work fine when there is such a coincidence.
2018-10-28 18:34:12 +01:00
Abdullah Tahiri
0554944923 Part: Geometry New Bounded-Trimmed-curve inheritance
====================================================

The new hierarchy is as this:
GeomArcOfConic:GeomTrimmedCurve:GeomBoundedCurve:GeomCurve

A bounded curve is one having a start and endpoint, like an arc, a line segment, or a b-spline

A trimmed curve is one arising from trimming a basis curve, line an arc or a line segment, but NOT a b-spline.

An arc of Conic is one arising from a conic section, line an arc, but neither a line segment, nor a b-spline.

This new hierarchy enables a more consistent handling of geometry and it is closer to the OCCT hierarchy.
2018-10-28 18:33:58 +01:00
Abdullah Tahiri
e5521fe0e1 Part: Geometry - refactoring of intersection code 2018-10-28 18:33:45 +01:00
Abdullah Tahiri
ae3ad1f84c Part: Geometry - intersection - checkendpoints
===============================================

Extrema algorithms sometimes fails when coincident endpoints

I am not sure if it is a bug in OCCT or it is just not intended.

This commits adds an extra check to add endpoints if within tolerance.
https://forum.freecadweb.org/viewtopic.php?f=10&t=31700
2018-10-28 18:33:32 +01:00