Commit Graph

48 Commits

Author SHA1 Message Date
wmayer
3590b65b33 issue #0003921: Crash when opening document with datum point intersecting line and plane 2019-06-16 19:31:06 +02:00
Abdullah Tahiri
a56658489b Part: Make 3rd party libraries into PCH 2019-05-02 07:09:22 +02:00
wmayer
43bdef67d6 continue PCH on Part module 2019-05-01 16:10:38 +02:00
wmayer
f581d5c8cb PVS: V560 A part of conditional expression is always true 2019-02-17 13:56:48 +01:00
wmayer
e02695b91f Replace Base::Exception with appropriate subclass 2018-11-14 19:45:20 +01:00
DeepSOIC
38df1ae742 Part, PartDesign, Attacher: fix a few problems with infinite shapes
To throw an error instead of returning a semi-infinite result that kills rendering.
fixes #3439
2018-09-13 13:12:55 +02:00
DeepSOIC
eb8629d077 Part: Attacher: fix flip-sides for O-X-Y-like attachment modes
fixes #2519
2018-09-13 13:03:06 +02:00
wmayer
0bc5699b59 fix -Wparentheses 2018-08-19 12:28:05 +02:00
Markus Lampert
0b40519f3f Changed all catch types to references for polymorphic exceptions. 2018-08-08 15:45:30 +02:00
luz.paz
7a09a5774e More misc. typos 2018-05-19 12:17:52 -04:00
luz.paz
8690d870a5 Misc. typos
+ stepcode typo submitted upsream https://github.com/stepcode/stepcode/pull/372
2018-01-07 18:41:29 -02:00
Peter Lama
926b844409 Rename superPlacement property to AttachmentOffset
The name Attachment Offset gives a better picture of what the
property does.
2017-11-05 16:41:25 +01:00
wmayer
2611f072b7 allow to attach a sketch to any kind of planar surfaces, not only planes 2017-09-23 22:46:54 +02:00
DeepSOIC
e70a1678f8 fix warning 2017-09-10 18:32:06 +02:00
DeepSOIC
0f92c3e559 Part: Attacher3D: new modes - align axes
New attachment modes:
"Align O-Z-X"
"Align O-Z-Y"
"Align O-X-Y"
"Align O-X-Z"
"Align O-Y-Z"
"Align O-Y-X"
They allow to attach a sketch by picking origin point and sketch axes
directions.
2017-09-10 18:31:54 +02:00
DeepSOIC
f8feb18a07 Part: Attacher1D: new attachment mode "Normal to face"
addresses #3175
https://freecadweb.org/tracker/view.php?id=3175

Also, renames Datum Line's "Normal" attachment mode to "Normal to edge"
in Gui, for the name to be specific.
2017-09-10 18:31:25 +02:00
DeepSOIC
576294d30f Part: Attacher: fix normal-to-path vertex usage, #3175
Modes affected:
* NormalToEdge ("Z tangent to edge", "Normal to edge"),
* Tangent

In these attachment modes, if vertex is linked first, the origin was
supposed to be placed on the vertex, but it was placed on the edge
instead, due to a bug. This commit fixes the bug.

Projects will be broken, which use above mentioned attachment modes, and
link Vertex as first reference, and the vertex does not lie on the edge.
To repair a project, edit the corresponding attachments, and swap the
order of references.
2017-09-10 18:31:11 +02:00
Abdullah Tahiri
e3b47cac97 Correct copy-paste typos in exception throwing 2017-04-28 15:46:30 +02:00
Abdullah Tahiri
9cfca05c90 Change all exceptions thrown within AttachExtension::positionBySupport from Base::Exception to a meaningful derivative 2017-04-28 15:46:13 +02:00
Kunda
99c99006b8 source typo fixes pt4 (only on py3 merged code) 2017-03-02 13:47:21 +01:00
wmayer
3114df352d in forward declaration replace class keyword when struct is expected
comment out unused parameters
2016-12-29 17:52:39 +01:00
wmayer
68ea7fdac5 fix coverity issues 2016-10-08 17:43:30 +02:00
wmayer
4ba53881b5 fix Coverity issues 2016-08-22 15:33:54 +02:00
wmayer
e8b36592c0 fix Coverity issues 2016-08-21 18:46:40 +02:00
Wolfgang E. Sanyer
7f4a437cc2 This commit adds getShape and setShape to TopoShape 2016-08-06 23:42:55 +02:00
Mateusz Skowroński
f1077748fa Fix some GCC warnings. 2016-05-19 22:22:12 +02:00
DeepSOIC
71f70eb855 AttachEngine: fix crash when referenced objects get deleted
... by verifying if the pointers equal to objects contained in all open
documents. Not terribly good, but I can't think of a situation where
doing this search might cause trouble.
2016-05-14 02:14:51 +03:00
DeepSOIC
162378220d Attacher: preparations for Py interface of shape type system
+ add getModeByName to AttachEngine
2016-05-13 19:54:44 +03:00
DeepSOIC
53bd9b674b Attacher: fix wrong inertial calculation on solids
was using surface calculation instead of volume...
2016-05-13 19:54:44 +03:00
DeepSOIC
6ffa0c9b37 Attacher: initialize member variables
They got garbage values on creation, as was revealed when testing Py
interface.
2016-05-13 19:54:44 +03:00
wmayer
1ccab846e2 + apply f3nix:fix-gcc-warnings-1 2016-05-08 12:00:26 +02:00
DeepSOIC
505ec6a26d Attacher: change suggestion routine interface
When another bit of information was needed to be extracted from mode
suggestion routine, it felt like listMapModes had too many arguments.
So, the arguments have been collapsed into a struct. This triggered a
few namespace-related changes, which lead to massive search-and-replace
changes all over FreeCAD.

So the only functional change carried out is the addition of reference
types readout to info returned by suggestor.
2016-05-07 11:24:41 +02:00
DeepSOIC
9d19bf023a Attacher: new modes: Inertia CS, Inertia axes
Modes added:
3D and plane attachment: Inertia CS
Line attachment: Inertia axes
This commit may serve a good example of how to add new attachment modes.
2016-05-07 11:24:41 +02:00
DeepSOIC
d12141d1fb Attacher: new mode: center of mass (point attacment) 2016-05-07 11:24:41 +02:00
DeepSOIC
2b057ef192 Attacher: for reachable modes, display what's to add
For grayed out modes in list, show what's needed to get to the mode.
Like so:
"Normal to edge (add Vertex)"
2016-05-07 11:24:41 +02:00
DeepSOIC
e6911adc50 Attacher: display modes that can be reached
Attachment mode list used to display only the modes that fit current
references. Now, modes that can be reached by adding more references are
listed too, but grayed out.
2016-05-07 11:24:41 +02:00
DeepSOIC
314617f16a Attacher: create special source file to contain attacher strings 2016-04-21 20:55:42 +03:00
DeepSOIC
d6a3d1b140 Attacher: fix superPlacement applied twice in some cases
superPlacement was applied twice on line and point attachment modes that
re-use 3d attachment modes code. Fixed.
2016-04-21 20:55:42 +03:00
DeepSOIC
431373823d Attacher: split Attacher3d and AttacherPlane
Even though they share all the functionality now, I split them, to allow
independent user-friendly mode names.
2016-04-21 20:55:42 +03:00
wmayer
5de9696365 + fix warnings:
-Wsign-compare, -Wunused-variable, -Wunused-function, -Wswitch
+ fix Qt issues
2016-04-13 14:26:38 +02:00
Stefan Tröger
4119bb7adc Fix compilation issue in Attacher code 2016-04-12 18:12:24 +02:00
Alexander Golubev
8bca27463e Part/Attacher: remove a couple of no more valid asserts 2016-04-12 18:12:18 +02:00
Alexander Golubev
797d6d3a11 App/Origin: big refactoring
- Rebase App::Origin on App::DocumentObject
 - Keep all control over the Origin structure inside the Origin and it's
   ViewProvider
 - Add OriginFeature class as common base for App::Plane and App::Line
 - Rebase App::Plane and App::Line on top of newly created class and
   move to the file.
 - Change Origin's ViewProvider API associated with temporary display
 - Lots of associated changes to files
 - Several minor fixes
 - Lots of new bugs
2016-04-12 18:12:18 +02:00
Stefan Tröger
d2f4410c1e fix datum crash when origin is selected 2016-04-12 18:12:13 +02:00
DeepSOIC
98717f010a Attacher: proximity modes
The modes that base on distToShape:
* a line that connects the closest points,
* the actual points
2016-04-12 18:12:12 +02:00
DeepSOIC
40592e6055 Attacher: line and point AttachEngines. Other changes.
* propose attachment modes
* refactor setUp and Copy
* split off postprocessing from 3D to reuse in 1D and 0D calculations
* AttachableObject: fix error printout in onChange
* AttachableObject: no more defaults to Attacher3D
* implementation of lines and points attachment (some of the proposed modes).
* refactor getShapeType, add getShapeType(obj, sub); add a flag to eRefType enum, indicating that referenced thing is a whole object that has placement.
* change readLinks to be static, and obtain shape types in the process.
* test mode enums lengths equality
* extend ObjectXY to work on conics.
* Fix upside-down sketches attached as TangentPlane on most shapes.
* Fix crash when a shape of unlisted type is in the links.
* fix attaching to datum lines go crazy because of infinities.
* abs->fabs
* support for App::Line
* Add namespace qualifiers to TYPESYSTEM_SOURCE-like stuff
2016-04-12 18:12:12 +02:00
DeepSOIC
ad01411efc Attacher: fix crash of suggestor on compounds 2016-04-12 18:12:12 +02:00
DeepSOIC
42ecc24ec5 Sketcher: new attachment engine 2016-04-12 18:12:12 +02:00