Commit Graph

362 Commits

Author SHA1 Message Date
Abdullah Tahiri
167240e197 Sketcher: BSpline solver Internal Geometry for poles 2017-01-10 23:34:49 +01:00
Abdullah Tahiri
0f8db07e90 Sketcher: Constraint Third Redefinition for internal geometry
=============================================================

Internal alignment of BSplines requires an extra index for unbounded same-type internal geometry (poles, probably also in the future knots).

Value shall not be used, as it interferes with the update mechanism for constraint values.

An alternative solution would be to add another int to all the constraints just for this case.

As internal geometry does not use Third, it seems reasonable to reuse it for this indexing purpose.
2017-01-10 23:26:28 +01:00
Abdullah Tahiri
b0dc19eca9 Part: Fixes triggered by Werner's comments on my branch 2017-01-10 20:05:18 +01:00
Abdullah Tahiri
ddd8ce238c Sketcher: Enable BSpline creation in SketchObjectPy 2017-01-05 21:52:35 +01:00
Abdullah Tahiri
49cffc495f Sketcher: BSpline basic SketchObject support 2017-01-05 21:45:47 +01:00
Abdullah Tahiri
41889bab50 Sketcher: BSpline solver sketch basic implementation
====================================================

Creation of solver geometry definitions from Part::BSpline geometries and update of solved geometry back.
2017-01-05 12:01:11 +01:00
Abdullah Tahiri
f35432a734 Sketcher: BSpline FreeGCS geometry definition
=============================================

multiplicities, degree and periodic are left as non-parameters of the solver, while still allowing certain manipulations to be effected from the solver
in certain situations (for example modifying the multiplicity of start/end nodes when applying G1,G2,G3 constraints between BSplines).
2017-01-05 11:58:35 +01:00
wmayer
a421803c09 fix whitespaces 2016-12-28 14:22:42 +01:00
wwmayer
52a65710f8 Merge pull request #401 from abdullahtahiriyo/parabola_2017
Parabola 2017
2016-12-28 13:48:13 +01:00
Abdullah Tahiri
19f6417434 Sketcher: Arc Of Parabola - Symmetry tool 2016-12-28 01:25:33 +01:00
Abdullah Tahiri
1508cc6ab4 Sketcher: Arc Of Hyperbola - Symmetry tool 2016-12-27 02:13:23 +01:00
Abdullah Tahiri
31470f6013 Sketcher: Copy/Clone and Array support for Arcs of Parabola and Hyperbola 2016-12-26 23:23:34 +01:00
Abdullah Tahiri
9dffe12182 Sketcher: Arc Of Parabola - Delete unused internal geometry on deletion 2016-12-26 22:06:40 +01:00
Abdullah Tahiri
addd13f2ca Sketcher: Arc Of Hyperbola - Delete unused internal geometry on deletion 2016-12-26 19:42:57 +01:00
Abdullah Tahiri
3aef32152f Sketcher: fix compilation warnings 2016-12-26 19:19:10 +01:00
Abdullah Tahiri
e78fbfcd10 Sketcher: Parabola fix y axis in parabola rules constraint 2016-12-24 19:23:53 +01:00
Abdullah Tahiri
11808acad1 Sketcher: Parabola solver equality constraint 2016-12-24 02:39:02 +01:00
Abdullah Tahiri
84b6e97f2d Sketcher: Point on Object solver constraint 2016-12-24 01:14:15 +01:00
Abdullah Tahiri
4f3d3ff68a Sketcher: Parabola Skech geometry update fix 2016-12-22 16:10:53 +01:00
Abdullah Tahiri
f3106a7cf2 Sketcher: Parabola Expose Internal Geometry
==========================================

Also automatically on creation
2016-12-22 16:10:52 +01:00
Abdullah Tahiri
3932a2f37d Sketcher: Focus solver internal geometry 2016-12-22 16:10:52 +01:00
Abdullah Tahiri
bb068fa7a4 Sketcher: Parabola Arc rules solver constraint 2016-12-22 16:10:33 +01:00
wmayer
4db3591e68 fix CIDs 129192, 129078 2016-12-18 12:42:43 +01:00
wmayer
90b9ba81cf fix CIDs 154877, 154878, 154879, 154880, 154881, 154882, 154885 2016-12-18 12:15:26 +01:00
Abdullah Tahiri
369f1f9368 Sketcher: Enable Parabola creation in SketchObjectPy 2016-12-18 00:46:01 +01:00
Abdullah Tahiri
0e0b6f9306 Sketcher: Parabola SketchObject basic functionality
===================================================

Except Trimming & Expose Internal Geometry, that will be added separately.
2016-12-18 00:41:40 +01:00
Abdullah Tahiri
717b053f1d Sketcher: Parabola Solver Sketch Implementation
===============================================

Main Sketch solver parabola addition and update, with exception of the rules of the parabola arc, that will be implemented with the solver constraints.
2016-12-18 00:03:57 +01:00
Abdullah Tahiri
b60aca1eca Sketcher: Freegcs Parabola geometry definition 2016-12-17 20:12:16 +01:00
wmayer
19c9a9f819 remove superfluous Qt includes 2016-12-13 14:33:16 +01:00
wmayer
273f3995c0 add class GeomArcOfConic to reduce code duplication 2016-12-04 14:20:56 +01:00
wmayer
c74ba63283 implement Line class 2016-12-01 00:04:13 +01:00
Abdullah Tahiri
2d063d7811 Sketcher: Fixing compilation warnings 2016-11-27 18:45:33 +01:00
Abdullah Tahiri
90ac981339 Sketcher: Hyperbola added supported type
========================================

Allows to restore a saved hyperbola in a sketch.
2016-11-27 18:45:33 +01:00
DeepSOIC
e61174ad00 Sketcher: Hyperbola: fix minor diameter ends swapping
Quick and dirty, but seems to work.
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
27ea3fd0e2 fix partials 2016-11-27 18:45:33 +01:00
Abdullah Tahiri
76ec75a980 fix in minor axis Expose Internal Geometry for hyperbola 2016-11-27 18:45:33 +01:00
Abdullah Tahiri
cbfc4f02a0 Hyperbola InternalAlignment
Focus is working.
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
298153aecd Solver InternalAlignment: Change to diameters instead of radii to be able to draw asymptotes
GCS and Sketch.cpp support
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
fabe61c23b Hyperbola: InternalAlignment solver constraints 2016-11-27 18:45:33 +01:00
DeepSOIC
44e814e973 Sketcher: solver: transplant all arc kinds to use CurveValue constraint
arc and arc of ellipse
2016-11-27 18:45:33 +01:00
DeepSOIC
bfb1f731fe Sketcher: solver: implement Value for all other curves
for line, circle, and ellipse.
Compiles, but untested.
2016-11-27 18:45:33 +01:00
DeepSOIC
132fd77d0f Sketcher: Hyperbola: fix major radius formula 2016-11-27 18:45:33 +01:00
DeepSOIC
0f27f81062 Sketcher: solver: Value constraint
(morphed from hyperbola arc range constraint)
(compiles, but untested)
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
86e12e1e3b Conflict resolution 2016-11-27 18:45:33 +01:00
Abdullah Tahiri
6b59712292 Hyperbola solver equality constraint
The Ellipse radii solver constraint was reused generalised to MajorAxisConic class.

UI representation of the Equality sign not yet handled (appears on the origin).
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
463c7f86ea Hyperbola: Support for moving the center of the hyperbola 2016-11-27 18:45:33 +01:00
Abdullah Tahiri
31d803d46b Hyperbola PointOnObject UI Constraint
You can add a point to be on the hyperbola and it will lock to it.

The endpoints of the hyperbola go crazy because of the

HyperbolicArcRangeToEndPoints code that is the one of Ellipse <= Awaiting DeepSOIC help ;)
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
cb5981fceb In Part:Geometry:
- Fixing Hyperbola classes to get CCW emulation (like Ellipse classes).

In Sketcher:
- The Sketcher representation deals with the right branch of the Hyperbola only.
- Solver model is: Center, Focus1 (focus of the right branch), minor radius (b).
- HyperbolicArcRangeToEndPoints code is the one of Ellipse <= Awaiting DeepSOIC help ;)
- ConstraintPointOnHyperbola solver constraint is now implemented and should be working.
- No InternalAligment constraints implemented yet.
2016-11-27 18:45:33 +01:00
Abdullah Tahiri
e928e418ec Sketcher: New Feature: Hyperbola/ArcOfHyperbola
===============================================

- ArcOfHyperbola creation method
- Solver representation (undefined moving)
- SketchObjectPyImp (here we still miss the Part->Partdesign conversion)
- Sketch validation for hyperbola
- Hyperbola creation method: shows the "proof of concept", but it is very buggy!!

Notes:
- Missing icons, probably missing geo normal curve implementation - rebasing -
- Fixes to adapt Hyperbola to Derivector implementation and make it compile
2016-11-27 18:45:33 +01:00
wmayer
706094fbc2 clear expression when setting constraint non-driving 2016-11-11 12:33:20 +01:00