Commit Graph

112 Commits

Author SHA1 Message Date
Zheng, Lei
007254681d assembly: shorten some code 2018-07-04 07:39:00 +08:00
Zheng, Lei
e3bdfffec7 assembly: add 'Offset' property to AsmElement 2018-07-03 17:38:57 +08:00
Zheng, Lei
fba1254627 assembly: enable auto solve on active transaction 2018-07-03 17:37:37 +08:00
Zheng, Lei
f5dd9d42f2 assembly: sync getSubObjects() API changes 2018-06-30 13:47:09 +08:00
Zheng, Lei
735d6ac260 assembly: fix adding constraint in sub-assembly 2018-06-23 07:52:21 +08:00
Zheng, Lei
042c43ddd2 assembly: prevent deleting constraint group 2018-06-04 12:03:41 +08:00
Zheng, Lei
4b1a3b9de6 assembly: add support for Origin 2018-06-03 12:37:32 +08:00
Zheng, Lei
200ad8795f assembly: support color and visibility override 2018-05-24 15:27:20 +08:00
Zheng, Lei
61ccdf5bac assembly: fix Part.getShape() for Assembly container 2018-05-21 19:07:18 +08:00
Zheng, Lei
287642d34a assembly: fix workplane command activation 2018-04-19 18:01:12 +08:00
Zheng, Lei
508fcd7713 assembly: support dropObjectEx API changes 2018-03-26 11:50:01 +08:00
Zheng, Lei
951a1f5b81 assembly: support sketch object internal geometries 2018-02-18 12:50:40 +08:00
Zheng, Lei
458022bba4 assembly: enhance workplane function
New toolbar command to create workplane in XZ and ZY direction. Allow
workplane to be created based on all type of elements. The same
AsmWorkplane object can now also represent a line or a point.
2018-02-07 17:39:00 +08:00
luz.paz
fd1851a38b Misc. typo fixes 2018-02-05 05:28:09 -05:00
Zheng, Lei
d4992a4706 mover: support tracing any geometry element 2018-01-29 17:16:21 +08:00
Zheng, Lei
a2d639200f constraint: init constraint parameter
Add init() api to calculate the some of the constraints' parameter
(e.g. angle, distance, length, etc.) based on the existing elements.
This can reduce excessive movement when auto recompute is on.
2018-01-29 17:16:15 +08:00
Zheng, Lei
708668ed0b assembly: add missing transaction on auto recompute 2018-01-29 17:05:18 +08:00
Zheng, Lei
d2b3d8260d assembly: fix cases where property status is saved 2018-01-29 17:02:18 +08:00
Zheng, Lei
ac5194a013 constraint: auto label constraint object with type name 2018-01-28 06:14:17 +08:00
Zheng, Lei
a9b302c0ac assembly: no doc touch when auto changing element visibility 2018-01-27 18:01:55 +08:00
Zheng, Lei
a8f11a4a50 Add "Auto element visibility" command
When enabled, it will hide all AsmElement, and AsmElementLink, and only
shown then when they are selected, or a AsmConstraint object is
selected in the tree view
2018-01-27 12:15:05 +08:00
Zheng, Lei
363a8cfeba Fix constraint toolbar active checking 2018-01-24 18:08:20 +08:00
Zheng, Lei
cc412bdc22 Add SketchPlane constraint for easy 2D sketch
The SketchPlane expects the first element to be a planar face/edge to
define a work plane for any following draft wire/circle/arc elements.
The 2D constrainted elements can either be inside the defining
SketchPlane constraint, or other constrains following the SketchPlane
in the constraint group.

Add a new SketchPlane to define a new work plane for any following
draft elements. Add an empty SketchPlane to undefine the work plane,
effectively making any following draft elements free in 3D space.
2018-01-23 17:32:20 +08:00
Zheng, Lei
c56a9d85d7 Add mover support for draft wire and circle
* Draft wire points can be dragged individually.
* Draft wire individual edge can be moved and rotated.
* Draft circle/arc can be moved and rotated by dragging edge or face.
* Draft circle/arc radius can be changed by dragging vertex
* Draft arc first/last angle can be changed by dragging end points
2018-01-21 10:07:38 +08:00
Zheng, Lei
b087200e50 Add support for draft circle/arc
When added to an assembly, a normal part object has six degrees of
freedom, three positional and three rotational. A draft circle has one
additional dof, its radius. And a draft arc has three additional dof,
radius, first angle and last angle.
2018-01-20 16:36:51 +08:00
Zheng, Lei
05595e3f41 Add support for draft wire
Special treatment for non-closed-or-subdivided draft wire object
directly added into part group.  Instead of constraining on the object
placement, we shall constraint on individual points. In other word,
instead of making the draft wire's placement as free parameters, we
make the cooridnates of indvidual points as free parameters.
2018-01-20 16:36:38 +08:00
Zheng, Lei
12f1670925 assembly: fix trace command 2018-01-08 15:31:19 +08:00
Zheng, Lei
92b42d2f71 assembly: improve autoSolve function 2018-01-08 11:53:41 +08:00
Zheng, Lei
fb9ad1609d gui: fix assembly solve command
Fix selection detection, and undo/redo setup
2018-01-07 19:05:29 +08:00
Zheng, Lei
882faf9d53 assembly: improve auto recompute 2018-01-03 12:01:44 +08:00
Zheng, Lei
d2f88b969d assembly: change fixed part move behavior 2017-12-25 13:00:05 +08:00
Zheng, Lei
9dfc07a7a0 assembly: allow moving part by element 2017-12-25 12:59:46 +08:00
Zheng, Lei
eb6519ff8c Refactor undo/redo with FreeCAD.setActiveTransaction() 2017-12-24 18:43:34 +08:00
Zheng, Lei
a812c4f352 assembly: add CTRL key to bypass auto-solve 2017-12-11 10:31:32 +08:00
Zheng, Lei
d76902b215 Add support of origin and datum feature 2017-12-10 18:49:06 +08:00
Zheng, Lei
4ad32a084f assembly: change OnTopWhenSelected behavior
Now only whole object (AsmElement, AsmElementLink) selection activates
OnTopWhenSelected.
2017-12-10 18:48:14 +08:00
Zheng, Lei
176817a635 Migrate to new style FC module 2017-12-07 03:14:13 +08:00
Zheng, Lei
7c2ebac386 assembly: auto recompute on undo/redo while dragging 2017-12-04 21:02:40 +08:00
Zheng, Lei
eb06ef8fbd solver: solver rollback on failure while dragging 2017-12-04 20:25:35 +08:00
Zheng, Lei
5ac1dd7971 assembly: material override in ElementLink
Original override point is ViewProviderAsmConstraint, which will
override any material setting in ViewProviderAsmElementLink. It's
better to default override at the bottom hierarchy.
2017-12-04 16:12:53 +08:00
Zheng, Lei
c738d24b7d assembly: fixed linked part moving 2017-12-04 11:55:11 +08:00
Zheng, Lei
1960144ef2 assembly: support label based element link 2017-12-02 17:02:10 +08:00
luzpaz
9ae710b154 misc. trivial typos
Decided to quickly run `codespell` on the repo.
2017-11-19 19:11:56 -05:00
Zheng, Lei
9e2037a13b Disable linked properties in AsmElement and AsmElementLink 2017-11-16 18:31:08 +08:00
Zheng, Lei
8999ca6015 assembly: enable OnTopWhenSelected feature 2017-11-16 18:31:08 +08:00
Zheng, Lei
8383b20308 assembly: hide view object 'Visibility' property
The visibility property is incompatible with sub object visibility
control, so hide it to avoid confusion
2017-11-16 18:31:08 +08:00
Zheng, Lei
3c8e211b49 Enable undo in creating assembly command 2017-11-16 18:31:08 +08:00
Zheng, Lei
d69e5c8f88 assembly: make Group property readonly 2017-11-16 18:31:03 +08:00
Zheng, Lei
73238087c1 Add AsmWorkPlane 2017-11-11 03:34:43 +08:00
Zheng, Lei
2274fec363 Complete support for drag and drop 2017-11-11 03:34:38 +08:00
Zheng, Lei
6b91e11daf Select newly created constraint 2017-10-31 12:06:58 +08:00
Zheng, Lei
f16fbf52a8 Refactor part move command 2017-10-31 04:09:14 +08:00
Zheng, Lei
fbbb1ab567 Add item move up/down commands 2017-10-31 04:08:23 +08:00
Zheng, Lei
c263aaa94e Add auto recompute command 2017-10-31 04:08:23 +08:00
Zheng, Lei
da2b81312b Add trace part movement command 2017-10-31 04:08:23 +08:00
Zheng, Lei
ccc6a89165 Add part move command 2017-10-31 04:08:23 +08:00
Zheng, Lei
80c89ef0a2 Rename self.obj attribute to self.Object 2017-10-31 04:08:23 +08:00
Zheng, Lei
caca713d8d Create workbench 2017-10-31 04:08:23 +08:00
Zheng, Lei
59c2c7a35d Code refactor to prepare for multiple backend solvers 2017-10-31 04:08:16 +08:00
Zheng, Lei
9402201a5e More constraints working, and a few new ones
Working constraints:

PointPlaneDistance
PointInPlane
Angle
Perpendicular
Parallel

New constraints, which are composite of slvs native constraints:

PlaneCoincident
PlaneAlignment
AxialAlignment
MultiParallel
2017-10-31 04:06:36 +08:00
Zheng, Lei
d26b6286e2 Added icons, SameOrientation constraint working 2017-10-31 04:06:36 +08:00
Zheng, Lei
b5a91ec889 Basic function working
Tested PointsCoincident constraint
2017-10-31 04:05:01 +08:00