- 24 Mar, 2012 1 commit
-
-
Whitham D. Reeve II authored
-
- 05 Mar, 2012 1 commit
-
-
Whitham D. Reeve II authored
PyCam has been spending about 75% of it's time creating point objects. I decided to replace the pycam Point object with a 3 position tuple, and the pycam Vector object with a 4 position tuple. All of the point object methods were rewritten to accept and emit tuples. The transform_by_matrix method was rewritten to accept both 3 and 4 position tuples with behavior dependent on that size. The normalized method is the only method required to emit the same kind of object that it is called on, and this has been taken care of with the tuple version. What does this mean? All instances of Point(x,y,z) have been converted into (x,y,z) All instances of Vector(x,y,z) have been converted into (x,y,z,'v') The notation to access the x,y,z of the Point objects has been been changed from p.x,p.y,p.z to p[0],p[1],p[2] The notation for the point math functions has been completely changed. Instead of p1.sub(p2) it has been converted to psub(p1,p2) Instead of p1.sub(p2).mul(0.5) it has been converted to pmul(psub(p1,p2), 0.5) It is very important to point out that the tuple is an immutable type. You can not change it once you create it. t[0] = calculated_x_value # syntax error You have to replace the reference (t) to the old tuple with a new reference to a new tuple. t = (calculated_x_value, t[1], t[2]) # works There was a particularly hairy mutable/immutable barrier in the next() generator present in each class that inherits TransformableContainer. The TransformableContainer.transform_by_matrix function uses these generators to collapse polygons and lines and triangles into points where a shift is performed on each. Now that point is immutable, you can not change the value emitted by the generator. Geometry/__init__.py transform_by_marix and the associated next() generator in each sub class has been rewritten to transfer the attr used to store the reference to the tuple. Geometry/__init__.py transform_by_matrix now sets these attributes which effectively gets around this limitation. There could be some old point object code in any of the files not contained in this commit. It is impossible to know without running the code path and/or careful analysis of each file. Some list comprehensions that convert a list of point objects into a 3 position tuple have been removed. Whitham D. Reeve II
-
- 21 Jan, 2012 1 commit
-
-
Paul Bonser authored
-
- 19 Jul, 2011 1 commit
-
-
sumpfralle authored
added a motion-grid generator for engraving separated the toolpath visualization git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1125 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 12 Apr, 2011 1 commit
-
-
sumpfralle authored
moved data file location handling to a separate module moved most model handling functions to separate "plugins" created a basic "core" handler for settings, widgets and events git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1061 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 07 Feb, 2011 1 commit
-
-
sumpfralle authored
disabled "namedtuple" for now (it was never in effect) git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@975 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 02 Feb, 2011 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@950 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 18 Oct, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@791 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 14 Oct, 2010 1 commit
-
-
sumpfralle authored
* this allows a better handling of the support grid (especially for the ContourFollow strategy) fixed an old bug regarding the "get_free_path_triangles" function: it returned a free path even if the start and end points were completely within the model git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@770 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 12 Oct, 2010 1 commit
-
-
sumpfralle authored
switched back to tuple as parameter for parallelized functions (necessary for "imap" function in multiprocessing) fixed small issues of the "cutter.moveto/cutter.drop" transition git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@750 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 11 Oct, 2010 3 commits
-
-
sumpfralle authored
adjusted the ContourFollow strategy to use caching properly git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@747 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@744 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
fixed a minor bug reported by "abrom" - thanks! git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@741 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 10 Oct, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@739 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 05 Oct, 2010 2 commits
-
-
sumpfralle authored
added a Lock to prevent parallel access to the cutter's "moveto" function (this would cause problems with the collision detection) fixed a weird namespace issue in the startup script git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@729 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
multi-threading is now configurable via the commandline git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@727 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 04 Oct, 2010 3 commits
-
-
sumpfralle authored
added support for the multiprocessing module (uses multiple processes for calculating ContourFollow toolpaths) git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@725 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
fixed typo fixed another floating point inaccuracy issue replaced full function definitions for "ceil", "sqrt" and "number" with lambda inline functions git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@723 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
fix floating inaccuracy problem in ContourFollow added string representation for Bounds instances git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@722 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 03 Oct, 2010 1 commit
-
-
sumpfralle authored
improve results for non-cylindrical cutter avoid ambiguous collision checks starting from an endpoint of a possible outer_edge git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@715 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 02 Oct, 2010 1 commit
-
-
sumpfralle authored
ignore only triangles for further processing if the triangle is completely above the current cutter location git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@713 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 30 Sep, 2010 1 commit
-
-
sumpfralle authored
remember triangles that do not result in a valid collision git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@707 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 27 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@704 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 25 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@702 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 24 Sep, 2010 4 commits
-
-
sumpfralle authored
fixed waterline direction for specific cases increased the shifting distance slightly to avoid "touches" added DEBUG flags added the logging facility git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@700 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@696 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@695 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@694 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 20 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@691 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 19 Sep, 2010 3 commits
-
-
sumpfralle authored
improved progress visualization of push->follow cutter git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@689 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@686 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
stabilized the code git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@684 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 18 Sep, 2010 1 commit
-
-
sumpfralle authored
* cleanup is necessary git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@681 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 15 Sep, 2010 2 commits
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@675 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@666 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-