- 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
-
- 15 Jan, 2012 1 commit
-
-
sumpfralle authored
* this decreases memory consumption significantly * see http://docs.python.org/release/2.5.2/ref/slots.html git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1241 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 31 Jul, 2011 1 commit
-
-
sumpfralle authored
fixed model list update after unregistering/registering model plugin fixed "copy" for triangles minor GUI improvements for processes and tools git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1147 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 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
-
- 31 May, 2011 1 commit
-
-
sumpfralle authored
removed glGet during potential glNewList compilation git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1078 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 23 Mar, 2011 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@1024 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 30 Dec, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@903 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 05 Nov, 2010 1 commit
-
-
sumpfralle authored
optional visualization of directions (for contour models, toolpaths and triangle's normals) git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@816 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 23 Oct, 2010 1 commit
-
-
sumpfralle authored
added a "get_area" method for triangles git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@805 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 02 Oct, 2010 1 commit
-
-
sumpfralle authored
don't transform the edges of a triangle during a rotation/shifting - they are re-calculated afterwards anyway * this should improve the performance of model transformations significantly fixed the order of the vertices for OpenGL: a counter-clockwise order is expected git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@711 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 24 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@693 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 20 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@690 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 15 Sep, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@670 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 28 Aug, 2010 1 commit
-
-
sumpfralle authored
* otherwise they are currently not transformed * this increases memory usage slightly, but avoids out-dated edge information git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@638 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 11 Aug, 2010 1 commit
-
-
sumpfralle authored
* shifting components of transformations are ignored for these instances * useful for Normal vectors (Planes, Triangles) * fixes collision detection border cases after model transformations fixed "point_inside" method of "Triangle" class collect only basic elements (Points, Vectors) in TransformableContainer collection list (avoids skipping of partially transformed instances) git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@578 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 10 Aug, 2010 2 commits
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@574 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@573 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 03 Aug, 2010 1 commit
-
-
sumpfralle authored
calculate all properties during instanciation (not on demand) git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@561 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 26 Jul, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@541 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 25 Jul, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@538 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 20 Jul, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@504 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 18 Jul, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@491 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 15 Jul, 2010 1 commit
-
-
sumpfralle authored
* see http://sourceforge.net/tracker/?func=detail&aid=3015128&group_id=237831&atid=1104178 * thanks to imyrek! updated the changelog git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@463 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 09 Jul, 2010 1 commit
-
-
sumpfralle authored
moved all source files to a separate "src" directory git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@424 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 10 Jun, 2010 1 commit
-
-
sumpfralle authored
added some more functions to make "Line" more compatible with "Triangle" git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@351 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 22 Apr, 2010 1 commit
-
-
sumpfralle authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@329 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 22 Feb, 2010 3 commits
-
-
sumpfralle authored
fixed caching of "normal" (removed double function definition) unified caching of "plane" git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@107 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
added function for calculating the "normal" vector of a triangle git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@99 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
sumpfralle authored
implemented shifting of model fixed reset of triangle cache git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@95 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 19 Feb, 2010 1 commit
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@80 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 18 Feb, 2010 2 commits
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@78 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@76 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 12 Feb, 2010 2 commits
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@75 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@72 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 09 Feb, 2010 1 commit
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@69 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 29 Jan, 2010 1 commit
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@67 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 19 May, 2009 1 commit
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@52 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-
- 27 Jan, 2009 1 commit
-
-
lode_leroy authored
git-svn-id: https://pycam.svn.sourceforge.net/svnroot/pycam/trunk@40 bbaffbd6-741e-11dd-a85d-61de82d9cad9
-