Commit Graph

407 Commits

Author SHA1 Message Date
wwmayer
6bf065c097 + fix many minor warnings, activate -Wall for gcc 2015-08-02 22:32:18 +02:00
wmayer
c2c83a353b + harmonize XercesC cmake variables with official check 2015-07-28 14:17:49 +02:00
wmayer
d2b7b730d3 + replace deprecated PYTHON_INCLUDE_PATH 2015-07-25 18:29:42 +02:00
wmayer
f85fa0325a + write out product name if defined to IGES/STEP files 2015-07-11 14:05:47 +02:00
blobfish
96f88a4dca Part: ModelRefine: don't call edgefuse perform directly 2015-07-02 10:26:02 +02:00
wmayer
7d9ed104ae + implement Geometry.copy for Python 2015-06-15 21:28:29 +02:00
Ian Rees
33e0441c39 Cleaning up compile warnings, mainly in Sketcher
fabs() instead of std::abs(), add cmath include
2015-06-04 18:12:39 +02:00
DeepSOIC
9e73137623 Part: new tools - JoinFeatures (Connect, Embed and Cutout)
Attributions:
Mark (quick61) - icons
Yorik - help with internationalization
Everyone who appeared in forum thread "A new Part tool is being born...
JoinFeatures!" - for endorsement!
http://forum.freecadweb.org/viewtopic.php?f=22&t=11112
2015-06-04 09:47:59 +02:00
wmayer
24f41d9ab7 + raise exceptions in TopoShape::makeOffsetShape if needed 2015-05-15 20:20:37 +02:00
wmayer
72fd1d2677 + whitespace improvement 2015-05-15 20:07:55 +02:00
blobfish
408cbdea1b Part: Offset: fill rework. 2015-05-15 20:00:47 +02:00
blobfish
ca4510c939 Part: ModelRefine: fix for bug# 2097 2015-05-15 18:06:33 +02:00
wmayer
e01fc4cb18 + add method getPolesAndWeights() to NURBS surfaces and curves 2015-05-09 00:58:07 +02:00
wmayer
7090587e45 + improve doc string 2015-05-04 15:20:23 +02:00
wmayer
859d76faf8 + fixes #0002075: Analysis of FreeCAD by PVS-Studio static analyzer 2015-05-01 16:56:31 +02:00
wmayer
8caf6275a5 + fix Part.__sortEdges__, check for object type in Part.Wire 2015-04-10 18:25:31 +02:00
wmayer
7118689243 + fix memory leak in toBiArcs 2015-04-05 17:19:04 +02:00
wmayer
ac5392cd42 + remove leftover 2015-04-05 16:50:58 +02:00
wmayer
997e21f749 + integrate biarcs algorithm 2015-04-05 14:10:03 +02:00
wmayer
a8a09e8e80 + fixes #0002033: boolean failure, model refine 2015-04-03 07:39:17 +02:00
blobfish
06a34cc3ec Part: ModelRefine: catch bspline isEqual exception 2015-03-22 18:43:39 +01:00
wmayer
897591f765 + add methods to get GProps from curves and surfaces 2015-03-22 18:39:49 +01:00
Sebastian Hoogen
b9bcda349f add shape.proximity(shape) 2015-03-21 13:29:30 +01:00
wmayer
5bde5ae011 + fix doc string of Part.makeLoft 2015-02-25 21:36:40 +01:00
wmayer
e66d828a7d + check for correct OCC version 2015-02-23 16:05:17 +01:00
wmayer
d5aa035c90 + fix for OCC 6.3 2015-02-22 18:41:18 +01:00
wmayer
178b7f8e6e + make argument of multiFuse const reference 2015-02-21 12:48:12 +01:00
Sebastian Hoogen
9a758221ee add TopoShape::multiFuse method
to fuse multiple shapes at once.
2015-02-21 12:35:21 +01:00
Sebastian Hoogen
bc6f86ea90 Use multiple tool shapes for MultiFuse Feature
issue #1971
2015-02-21 12:35:20 +01:00
DeepSOIC
1bbc764e9e Sketcher: fix reversed geometry and rotated arcs
Fixes a bug where an arc, ellipse, or arc-of-ellipse, being reversed in
XY plane, behaved badly in sketcher (see forum thread "Sketch: how to
handle reversed external arcs?"
http://forum.freecadweb.org/viewtopic.php?f=10&t=9130 ).
Also fixes a problem with rotated arcs (see forum thread "Rotating Arc
in Sketcher"
http://forum.freecadweb.org/viewtopic.php?f=22&t=9145#p74262 ).

This is done by adding an emulation flag to a few methods in
Part::GeomXXX, which makes the shape to pretend being non-reversed
(CCW). This causes endpoints of reversed arcs of circles lineked as
external geometry to swap, causing broken sketches sometimes.
2015-02-17 12:27:31 +01:00
Sebastian Hoogen
fcabea8d92 meshing was removed from StlTransfer
with OCCT CR0025357 issue #1906
2015-02-12 13:46:14 +01:00
Sebastian Hoogen
b54dd77a50 rename python classes for shapes and
implememnt __getstate__ and __setstate__ to enable pickling
issue #1948
2015-02-04 17:07:29 +01:00
Sebastian Hoogen
56c055c269 Set offset mode for extrusion draft 2015-01-20 11:30:13 +01:00
wmayer
8eb3847cf4 + fixes #0001922: occ exception during python shell.makeHalfSpace 2015-01-16 23:11:07 +01:00
wmayer
f2cd83fa78 + add toShape() to Part.Point, allow to pass Part.Point in Part.Vertex 2015-01-15 11:39:53 +01:00
wmayer
37c881c9b5 + do not throw exception from inside signal handler to get useful stack trace for segmentation faults 2015-01-13 22:01:59 +01:00
wmayer
801bfa8936 + fixes #0001662: IGES does not export correctly 2015-01-11 12:14:41 +01:00
Sebastian Hoogen
d7e4c54a1e issue #1450 2015-01-10 12:09:00 -02:00
wmayer
7301f4ba60 + fixes #0001652: Proper support of units for all geometric primitives 2015-01-07 15:31:07 +01:00
wmayer
b76601b068 + fixes #0000763: Bad IGS import 2015-01-05 16:28:40 +01:00
wmayer
d57de8c6d3 + minor optimization 2015-01-02 12:26:29 +01:00
Abdullah Tahiri
948eb8e636 Part: Extension of Geometry::Curve
Part: Extension of Geometry::Curve to wrap more functions of OCC

Apart from:
    bool tangent(double u, gp_Dir&) const;
that was already implemented, now it also implements:
    Base::Vector3d pointAtParameter(double u) const;
    Base::Vector3d firstDerivativeAtParameter(double u) const;
    Base::Vector3d secondDerivativeAtParameter(double u) const;
    bool normal(double u, gp_Dir& dir) const;
    bool closestParameter(Base::Vector3d point, double &u);

i.e. apart from giving the tangent vector for a given curve at parameter value u,
it also gives:
   - The point cartesian coordinates of the curve point at parameter value u
   - The vector of the first derivative at parameter value u
   - The vector of the second derivative at parameter value u
   - The normal vector to the curve at parameter value u
   - The parameter value of a curve closest ot a given point

Code cleanup: Changing Trim functionality of Ellipse to use OCC calculations

Part Curve functions extension: closestParameterToBasicCurve

It provides the parameter of the curve closest to a given point. If the curve is a Trimmed curve, the parameter of the basic underlaying curve closest to the point is provided.
2015-01-02 11:48:28 +01:00
wmayer
d0af6efecb + fixes #0001889: Crash when undoing move of base object of a part fillet 2015-01-01 21:05:19 +01:00
wmayer
55127da4f2 + fixes #0001878: model refine exception 2014-12-28 18:10:02 +01:00
wmayer
d4019e96f7 + fixes #0001874: Scripted constraints not evaluated correctly 2014-12-23 15:32:03 +01:00
wmayer
f84da6b6fd + fix build failure 2014-12-21 11:21:32 +01:00
Abdullah Tahiri
a551765bbe Part Module New Feature: Hyperbola & ArcOfHyperbola
- Completed Hyperbola c++ implementation and python wrapper
- Created ArOfHyperbola c++ and python wrapper implementation
2014-12-21 00:54:07 +01:00
Abdullah Tahiri
3d87ef6b4f Part Module New Feature: Parabola & ArcOfParabola
- Completed Parabola c++ implementation and python wrapper implementation
- Created ArOfParabola c++ and python wrapper implementation
2014-12-21 00:51:24 +01:00
wmayer
9c101f2ffb + remove Makefile.am, remove some leftovers, avoid including unneeded headers in GCS.cpp 2014-12-20 14:06:54 +01:00
Abdullah Tahiri
4946eddc6b Sketcher New Feature: Ellipse support
- Ellipse introduction button via (center,majaxis extreme, a point in edge), ellipse is always CCW so that Z axis goes in the positive direction of the sketch
- Backwards compatibility with files of previous versions of ellipse not defining a phi angle
- Art by Jim (all the icons you see and the XPMs shown on creation of an ellipse)
- Element Widget support for ellipses
- Box selection for ellipses
- Point on Ellipse constraint based on the gardener's method based on Ulrich's function proposal (radcan simplified, i.e. with simplify_radical sage function)
- Tangent: Ellipse to Line based on DeepSOIC's geometric formulation (radcan simplified)

Sketcher New Feature: Internal Alignment Constraint
- The element to which internal alignment is applied has to be selected last.
- All other elements are added in the order of priority, taking into account existing elements
- Art by Jim (beautiful icons).

Sketcher New Feature: Tool to show/hide/restore the internal geometry of an element
- New functionality for show/hide internal geometry:
  toggles between hiding all unused internal geometry elements and showing all internal geometry.
  The restore function is implicit to the showing all internal geometry

Sketcher New Feature: Arc of Ellipse support
- Part::Geometry + Python implementation
- ArcOfEllipse creation method
- Art by Jim (all the icons you see and the XPMs shown on creation of arc of ellipse elements)
- Sketcher Element widget for ArcOfEllipse.

Bug fix: Select elements associated to constraints works now for foci internal alignment constraints
2014-12-20 12:33:29 +01:00