summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authoradrian-bowyer <adrian-bowyer>2010-01-24 16:43:24 +0000
committeradrian-bowyer <adrian-bowyer@cb376a5e-1013-0410-a455-b6b1f9ac8223>2010-01-24 16:43:24 +0000
commit8891c472fdbf80711982d3d68377137a114da9f8 (patch)
treeb63d515110090f19363b2c339a84d88eddddd029
parentb22de1ca58ece0c6751dbc21409c51adc204892c (diff)
downloadreprap-8891c472fdbf80711982d3d68377137a114da9f8.tar.gz
reprap-8891c472fdbf80711982d3d68377137a114da9f8.zip
Multiple loaded object transform bug really fixed this time.
git-svn-id: https://reprap.svn.sourceforge.net/svnroot/reprap@3457 cb376a5e-1013-0410-a455-b6b1f9ac8223
-rw-r--r--trunk/users/adrian/host/src/org/reprap/gui/RepRapBuild.java14
-rw-r--r--trunk/users/adrian/host/src/org/reprap/gui/STLObject.java4
2 files changed, 10 insertions, 8 deletions
diff --git a/trunk/users/adrian/host/src/org/reprap/gui/RepRapBuild.java b/trunk/users/adrian/host/src/org/reprap/gui/RepRapBuild.java
index a426b13d..393f0a00 100644
--- a/trunk/users/adrian/host/src/org/reprap/gui/RepRapBuild.java
+++ b/trunk/users/adrian/host/src/org/reprap/gui/RepRapBuild.java
@@ -443,11 +443,11 @@ public class RepRapBuild extends Panel3D implements MouseListener {
if (number <= 0)
return;
String fileName = original.fileItCameFrom();
- Vector3d offset = new Vector3d(original.size());
+ Vector3d offset = new Vector3d();
offset.y = 0;
offset.z = 0;
- offset.x += 5;
- double increment = offset.x;
+ double increment = original.size().x + 5;
+ offset.x = increment;
for(int i = 0; i < number; i++)
{
STLObject stl = new STLObject();
@@ -455,9 +455,11 @@ public class RepRapBuild extends Panel3D implements MouseListener {
newAtt.setMaterial(originalAttributes.getMaterial());
if(newAtt != null)
{
- Transform3D t3d = new Transform3D();
- t3d.set(new Vector3d(offset));
- stl.setTransform(t3d);
+ Transform3D t3d1 = original.getTransform();
+ Transform3D t3d2 = new Transform3D();
+ t3d2.set(new Vector3d(offset));
+ t3d1.mul(t3d2);
+ stl.setTransform(t3d1);
// New separate object, or just appended to lastPicked?
if(stl.numChildren() > 0)
{
diff --git a/trunk/users/adrian/host/src/org/reprap/gui/STLObject.java b/trunk/users/adrian/host/src/org/reprap/gui/STLObject.java
index edc0e31a..9277f9a1 100644
--- a/trunk/users/adrian/host/src/org/reprap/gui/STLObject.java
+++ b/trunk/users/adrian/host/src/org/reprap/gui/STLObject.java
@@ -349,8 +349,8 @@ public class STLObject
offset.x = -p0.x; // Generally offset to put bottom left at the origin
offset.y = -p0.y;
offset.z = -p0.z;
- } else
- offset.z = -p0.z; // Tie it down whatever the user has said...
+ } //else
+ //offset.z = -p0.z; // Tie it down whatever the user has said...
// How big?