Commit Graph

214 Commits

Author SHA1 Message Date
mlampert
1c530b2634 PATH: Feature/dogbone ii (#7660)
* Start of new dogbone dressup

* Added Instruction and tangents support for G2/3 moves

* Added Maneuver class to represent a set of moves and process them coherently

* Created kinks and verify their creation.

* Added dogbone detection and verification

* Simplified gcode strings

* Added horizontal t-bones generation

* Added support for vertical t-bone

* Consolidated t-bone creation

* Added support for pathLength

* Added support for tbone on short edge

* Added support for long edges

* Added support for dogbones

* Fixed dogbone for non-horizontal lead-in

* Horizontal bone adaptive length tests

* Fixed dogbone angle and adaptive length

* Some code cleanup

* Added adaptive length tests for dogbones

* Split base data classes into their own PathLanguage module.

* Splitting dogboneII implementation into its constituents

* Moved adaptive length into DogbonII module

* Separate dogboneII generator test cases and changed interface to allow for dynamic length calculations

* Unit tests for length calculation

* Initial DogboneII unit test

* Unit tests and fixes for plunge move handling

* Unit tests for the remaining styles and incision strategies

* Basic DogboneII gui

* Added support for markers

* Better color and selection scheme for markers

* Cleaned up import statements

* Added DogboneII to Path WB init

* Support for dogbone on dogbone and fixed t-bone generation

* Fixed t-bone on short leg bones

* Fixed tbone on short edge when short edge is m1

* Fixed t-bone on long edge for m0/m1 and CW/CCW

* Removed redundant code

* Removed redundant 'Dress-up' from menu entries

* black code formatting

* added generator to cmake

* Fixed typos
2022-11-02 15:25:09 -05:00
Markus Lampert
c0851a5131 Added missing diversion entries to cmake 2022-10-11 21:43:09 -07:00
Markus Lampert
6b55f34abe Moved remaing files out of PathScripts 2022-10-11 21:43:09 -07:00
Markus Lampert
a1b3319bdf Moved generators into Path.Base.Generator module 2022-10-11 21:43:09 -07:00
Markus Lampert
d6293308b4 Moved the rest of the operations into Path.Op (.Gui) module 2022-10-11 21:43:09 -07:00
Markus Lampert
16c969c5a3 Move Path.Base and Path.Base.Gui refactoring 2022-10-11 21:43:09 -07:00
Markus Lampert
998347e97f Started moving base classes into Path.Base module 2022-10-11 21:43:09 -07:00
Markus Lampert
9925c71d36 Renamed Path.Tools module to Path.Tool 2022-10-11 21:43:08 -07:00
Markus Lampert
29a7dc144e Removed deprecated and obsolete Path.Tool and Path.Tooltable 2022-10-11 21:43:08 -07:00
Markus Lampert
2b36448575 Removed obsolete path profile implementations 2022-10-11 21:43:08 -07:00
Markus Lampert
6da2c338df Moved all Path operations with model and gui into Path.Op module 2022-10-11 21:43:08 -07:00
Markus Lampert
4b205943bc Moved dressups into Path.Dressup module 2022-10-11 21:43:08 -07:00
Markus Lampert
8cfe5d7d7d Moved Path ToolBit and Controller into Path.Tools module 2022-10-11 21:43:08 -07:00
Markus Lampert
9037e497db Moved post processing files into new Path python module 2022-10-11 21:43:08 -07:00
Markus Lampert
253d494f17 Moved PathAdaptive into new Path.Op module 2022-10-11 21:43:08 -07:00
Markus Lampert
a5a284b148 Moved PathLog to Path.Log and import it by default 2022-10-11 21:43:08 -07:00
Markus Lampert
079c0f3908 Added python based Path module and pull in PathApp namespace 2022-10-11 21:43:08 -07:00
LarryWoestman
62d8d8b993 Path: Added 4 refactored postprocessors and postprocessor tests. 2022-07-11 15:09:15 -07:00
sliptonic
012fe8d9b6 Missing camoticsgui file in the CMakelists. 2022-06-22 09:02:42 -05:00
sliptonic
f94aecad70 Working on simulation
working on camotics with multiple file output and tests
2022-06-19 10:47:25 -05:00
Russell Johnson
a27836d82d Path: Exclude dumper and example posts
Do not ship these two.  They are intended for devs working with source code.
2022-04-30 13:55:44 -05:00
Russell Johnson
62851568fa Path: Add missing post-processor modules
Add entries for missing post-processor modules so they are shipped with FreeCAD.
2022-04-30 07:55:55 -05:00
Markus Lampert
c0bb11384c Split out thread milling generator into its own file 2022-03-04 10:42:34 -08:00
Markus Lampert
60772c4c90 Fixed threads data file list 2022-03-04 10:42:34 -08:00
Markus Lampert
eb48466724 Added imperial external and split data files according to tolerance classes 2022-03-04 10:42:34 -08:00
Markus Lampert
7c2a8a92fb First shot at external thread milling 2022-03-04 10:42:34 -08:00
Dirk Olbrich
7b3a9d5640 [Path] remove duplicate link of PathCommands.py 2022-02-09 10:16:13 +01:00
sliptonic
b1fa3103e5 Toolchange generator 2022-01-31 13:09:43 -06:00
sliptonic
c36b102e87 Helix Generator and Testing 2022-01-19 13:18:15 -06:00
sliptonic
fc2d6c172b Make CircularHoleBase use drillableLib
debugs

remove deprecated PathUtils.isDrillable

drillableLib cmake

make PathProfile use new drillableLib
2022-01-15 15:34:17 -06:00
sliptonic
f156d9daea Helpers and tests
Drillable lib and Tests
2022-01-15 15:27:53 -06:00
José Ignacio Romero
3bb235a17a Move SimpleEditPanel to its own file 2022-01-03 10:55:33 -06:00
sliptonic
73c01a4196 cmake error 2021-11-10 13:33:20 -06:00
sliptonic
56875b2137 Drill Generator and testing 2021-11-08 18:57:16 -06:00
sliptonic
8f4d3a7008 Merge pull request #4906 from Russ4262/fix/toolbit_missing_readme_doc
[Path] Fix relative shape files for toolbits
2021-08-02 12:19:37 -05:00
Russell Johnson
3311bb6df3 Path: Add some Adaptive unit tests
Also includes alphabetical sort of affected lists in CMakeLists and TestPathApp files.

Unit tests focus around feature selection capabilities.
2021-07-22 23:16:53 -05:00
Russell Johnson
1e85f820b6 Path: Add tools README.md file to tools working directory on install
This code copies all files in the default (program install location) Path\Tools folder to the user's working tools folder when they setup the ToolBit working directories for the first time.
2021-07-16 11:54:13 -05:00
Russell Johnson
fd6298d542 Path: Refactor and upgradeExtensions feature, and apply to Adaptive op
Path: Refactor `Extensions` Gui code into independent module. Move the `Extensions` Gui code to independent module so access to other operations will be easier.
Path: Add `Extensions` feature to Adaptive operation
Path: Isolate Adaptive GUI elements in preparation of Adaptive unit tests
Path: Implement `PathLog` debug module
Path: Implement `translate()` for multi-language message support
Path: Fix `StockType`check bug
Path: Relocate `getCutRegionWires()` to `FeatureExtensions` module
Path: Add `Extensions` property checks on document restored
Path: Improve `Extend Outline` feature implementation
Path: Initialize a waterline type extension
Path: Add enable/disable extensions feature. It is quite possible that many complex faces exist that have large quantities of both simple and complex edges.  For this reason, a manual push button to enable Extensions is useful so the users machine is not bogged down with extra or unnecessary computing time.  Extensions are not necessary at all times. This commit also includes an edge count threshold that will disable the Extensions feature temporarily upon initial loading of the Task Panel.  The manual enable button will do just that.
Path: Add enable extensions warning label
Path: Shorten enable/disable Extensions button message
Path: Remove run-time added Task Panel elements - this QButton and QLabel were moved to UI panel directly.
Path: Add include/ignore Edges button
Path: Improve extension preview rendering
Path: Fixes for `useOutline` modification and updates
Path: Add internal feature to cache calculated extensions for reuse
Path: Add `SetupProperties()` function and connect to GUI command
Path: Add `Avoid Face` extension to ignore base face. This feature allows for some simple access to the exterior of a selected face without clearing the face itself.  This will allow for an exterior clearing operation in a simple manner.
Path: Fix bug restricting extensions on internal closed-wires
2021-06-04 09:48:50 -05:00
sliptonic
f316cb337d Revert "[PATH] CAMotics simulation. First Draft" 2021-05-31 12:49:25 -05:00
sliptonic
9e795191bc add missing reference in cmakelists 2021-05-28 10:29:06 -05:00
andre
bde3e3d4dc Added UC-CNC script to the build specifications. 2021-03-25 20:15:33 +01:00
Markus Lampert
63cd587e07 Added 'Advanced' preferences page, moved warning suppression there and experimental feature support. 2021-02-13 16:03:00 -08:00
Markus Lampert
75e65dd09d Added support for deleting empty groups from the property bag's group tracking. 2021-01-26 19:46:06 -08:00
Markus Lampert
8d7543cc98 Add toolbit test files to list to maybe get windows build to pass 2021-01-26 18:14:09 -08:00
Markus Lampert
26ba120aaf Added Tools directory for recursive test file copy 2021-01-26 18:14:09 -08:00
Markus Lampert
df6de8693e Changed tool-bit search path to either absolute, local install or relative to context path 2021-01-26 18:14:09 -08:00
Markus Lampert
6f4df10d4a Renamed PropertyContainer to PropertyBag, PropertyContainer already is a thing. 2021-01-26 18:14:08 -08:00
Markus Lampert
dd3a4be81d Basic property container with editor, no adding of properties yet 2021-01-26 18:14:08 -08:00
Russell Johnson
7a462f9387 Path: Add missing reference to thread cutter bit
Also alphabetized the list.
2020-12-23 13:58:58 -06:00
sliptonic
933413b14e add post to Cmakelists.txt for install 2020-12-16 16:54:55 -06:00