wmayer
1a97aa2e26
fixes #0002994 : Validate Sketch's missing coincidence tool finds false positives
2017-04-10 17:17:40 +02:00
Abdullah Tahiri
4fd2e0df3c
Sketcher: using copy in addGeometry instead of clone to avoid that python users inadvertendly generate two geometries with the same Geometry tag
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
fdf040f5b7
Sketcher: Carbon Copy
...
=====================
Carbon copy checks for parallel planes, translated origin and rotated axes, so that it can provide flipping detection when using reverse mappings.
This commit enables you to press CTRL will activating the tool in order to bypass this checks. Without the checks you will get a sketch exactly as the one
you want to copy, there are no corrections at all. This enables you to copy a profile on a new plane at a different direction for example for lofting purposes.
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
2bd65d9439
Sketcher: Fix sketchobject copy/clone
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
e8a0776778
Sketcher: Updated resource file
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
58a891ab94
Sketcher: Bspline knot multiplicity icons
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
03d242e202
Sketcher: New function to reuse of python exception message text in the UI
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
19565c3270
Sketcher: Carbon Copy - inform user of the limitations and disallow selection
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
d96c1a8fa9
Sketcher: Carbon Copy - refactoring of code
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
1c26996b11
Sketcher: Carbon Copy aware of sketch orientation and location
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
f9a9cc4eaf
Sketcher: Carbon copy using copy instead of clone
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
182b647493
Sketcher: CarbonCopy link values via expression engine
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
11a0970b91
Sketcher: SketchObject basic carbon copy functionality - without expressions engine
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
0ad91f79bd
Sketcher: Carbon Copy toolbar command
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
6917d314b8
Sketcher: Updating resource file
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
3d67071659
Sketcher: Carbon copy icons
2017-04-10 08:57:25 +02:00
Abdullah Tahiri
3cfef62381
Sketcher: Carbon copy Python command
2017-04-10 08:57:25 +02:00
wmayer
35884fd3c2
fix -Wsign-compare
2017-04-08 13:57:29 +02:00
Abdullah Tahiri
5e65fa4319
Sketcher: Only Reference constraints allowable on construction points like bspline knots
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
d27599bfdc
Sketcher: Increase/Decrease knot multiplicity toolbar commands adapted to provide more meaningful error messages
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
ceace33db4
Sketcher: SketchObject Modifyknotmultplicity adapted to raise exceptions on errors
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
9e2eea6bbd
Sketcher: Adapt increase multiplicity toolbar command to use unique identifier
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
86932a6f01
Sketcher: Decrease multiplicity command adaptation to unique identifier
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
bc71a0fc82
Sketcher: Adapt modify knot multiplicity code to preserve the unique identifier
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
5e28c49417
Sketcher: Clear knot selection after multiplicity operation
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
5072938482
Sketcher: OCC checks for knot functionality
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
dc34f7e9fb
Sketcher: Dropdown toolbar button for increase/decrease BSpline knot multiplicity
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
f6f92b428d
Sketcher: BSpline Decrease knot multiplity toolbar command
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
0907281146
Sketcher: SketchObject BSpline reduce knot multiplicity
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
b6688f2da2
Sketcher: Increase knot multiplicity auto-reconstruction of pole circles for UI user
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
5fe623beb5
Sketcher: Expose Internal Geometry for BSplines
...
===============================================
New convenience for the user. If the first pole is radius length constraint, then any newly exposed internal geometry is created with equality constraint to the first pole.
This is really convenient in the case the user is working with polynomic bsplines, as any operation involving losing/gaining a pole (for example increase in multiplicity of a knot).
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
28396fdd54
Sketcher: Assertion on solver bspline control point creation to expose any potential index miscalculation and memory overflow
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
af71924a98
Sketcher: Increase multiplicity command - no creation of unsolicited internal geometry
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
c260e2d2b7
Sketcher: Fixing crash on undoing knot multiplicity increase
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
1e8181cbe0
Sketcher: TestSketcherApp.py fix AppConveyor sporadic failures
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
6a451abb8b
Sketcher: Curvature comb general representation scale fix
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
301d50771d
Sketcher: Cleaning up BSpline knot multiplicity increase SketchObject implementation
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
a34ada692d
Sketcher: BSpline creation adapted to the more flexible python constructor
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
7a2760695a
Sketcher: SketchObject - Python command to increase knot multiplicity
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
929c825791
Sketcher: SketchObject functionality to increase knot multiplicity
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
6f46ce747b
Sketcher: Enable reuse of constraint helper functions in other toolbars
...
=======================================================================
bool checkBothExternal(int GeoId1, int GeoId2);
void getIdsFromName(const std::string &name, const Sketcher::SketchObject* Obj, int &GeoId, Sketcher::PointPos &PosId);
bool inline isVertex(int GeoId, Sketcher::PointPos PosId);
bool inline isEdge(int GeoId, Sketcher::PointPos PosId);
bool isSimpleVertex(const Sketcher::SketchObject* Obj, int GeoId, Sketcher::PointPos PosId);
bool IsPointAlreadyOnCurve(int GeoIdCurve, int GeoIdPoint, Sketcher::PointPos PosIdPoint, Sketcher::SketchObject* Obj);
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
0a9e647a01
Sketcher: Add toolbar command to increase knot multiplicity
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
f36721e529
Sketcher: Enable showing knots on BSpline creation
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
77e1d1327c
Sketcher: Bspline toolbar command show/hide knot multiplicity geometry information layer
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
e9c508f467
Sketcher: Bspline knot multiplicity geometry information layer
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
6b81627949
Sketcher: Bspline - SketchObject - Delete Unused geometry extended to knots
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
aaeb0c3407
Sketcher: Ensure that no point is set as construction by mistake/user mistake
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
33be143f48
Sketcher: Solver bypass of knotpoints
...
Internal geometry knot points, which were added as fixed parameters to the solver according to a previous commit, are tracked in the corresponding bspline as solver level,
without being a parameter to the solver, and upon solving, the position thereof is updated by means of OCC functionality.
This allows to show the knot points and solidarily move them when moving a bspline.
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
65b7e606e5
Sketcher: Construction points added as fixed parameters
2017-04-08 12:58:06 +02:00
Abdullah Tahiri
e66187695f
Sketcher: SketchObject Expose internal geometry extended to knots
...
=================================================================
Very important remark:
Until now, points could not be construction = true.
For now on, if a point is construction = true, the solver will ignore it.
2017-04-08 12:58:06 +02:00