Hello Martin, Thanks for your reply. This was indeed the problem, I didn't know the 3D system handles it's measures that way. As for my server; I'm still a student and the machine eats a lot of power, so I turn it off at night here to save some power. A man needs money to drink beer too... ;-)
thanks again! Bram Op di, 19-04-2005 te 02:20 +0100, schreef Martin Lenahan: > Hi Bram > > Problem here isnt the transform its the box. I believe the values of > passed to a Box object are from center out, so a Box(1f,1f,1f) will > actually give a physical cube with each side length 2f.. > > So your value of 0.5f you use for x length is creating a box of 1f > wide, youre then only moving 0.25 along x length (length/2.0f), 1/4 of > box width > > I imagine your screen shot shows the corner offset... I cant access it > to examine/. > > Martin... > > Bram Biesbrouck wrote: > > >Hi all, > > > >I'm having troubles with the translation of a simple Box in Java3D. > >I created a TransformGroup-subclass, called Room like this: > > > ><START CODE> > > > >public class Room > > extends TransformGroup > >{ > > //constants > > ... > > > > private Box box = null; > > > > public Room(float width, float length, Color3f color, String > >caption) > > { > > super(); > > this.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE | > >TransformGroup.ALLOW_BOUNDS_WRITE | TransformGroup.ALLOW_BOUNDS_READ); > > this.setBoundsAutoCompute(true); > > > > Appearance ap = new Appearance(); > > ap.setColoringAttributes(new ColoringAttributes(color, > >ColoringAttributes.NICEST)); > > ap.setTransparencyAttributes(new TransparencyAttributes > >(TransparencyAttributes.FASTEST, 0.5f)); > > > > box = new Box(width, BOX_HEIGHT, length, > >Primitive.GENERATE_NORMALS | Primitive.GEOMETRY_NOT_SHARED, ap); > > > > this.addChild(box); > > } > >} > > > ><END CODE> > > > >I then call this function in a mail class like this: > > > ><START CODE> > > > >//CONSTANTS > >private final float KITCHEN_X_LENGTH = 0.5f; > >private final float KITCHEN_Y_LENGTH = 0.25f; > > > >... > > > >SimpleUniverse universe = new SimpleUniverse(); > > universe.getViewingPlatform().setNominalViewingTransform(); > > BranchGroup group = new BranchGroup(); > > > > Room kitchen = new Room(KITCHEN_X_LENGTH, KITCHEN_Y_LENGTH, > >KITCHEN_COLOR, "Kitchen"); > > kitchen.getTransform(transform); > > transform.setTranslation(new Vector3d(-KITCHEN_X_LENGTH/2.0f, > >0f, -KITCHEN_Y_LENGTH/2.0f)); > > kitchen.setTransform(transform); > ><END CODE> > > > >The meaning of this is that the box gets translated to the upper left > >(when looking a it from the Y-axe down), so that its lower right corner > >is in the origin. However, the box doesn't translate like it's supposed > >to. I took a screenshot of the result, it's at: > >http://www.beligum.org/example.png > >You can see that the box gets translated a bit, but not far enough. > > > >Any help > > > >Bram > > > >=========================================================================== > >To unsubscribe, send email to [EMAIL PROTECTED] and include in the body > >of the message "signoff JAVA3D-INTEREST". For general help, send email to > >[EMAIL PROTECTED] and include in the body of the message "help". > > > > > > > > > > =========================================================================== > To unsubscribe, send email to [EMAIL PROTECTED] and include in the body > of the message "signoff JAVA3D-INTEREST". For general help, send email to > [EMAIL PROTECTED] and include in the body of the message "help". =========================================================================== To unsubscribe, send email to [EMAIL PROTECTED] and include in the body of the message "signoff JAVA3D-INTEREST". For general help, send email to [EMAIL PROTECTED] and include in the body of the message "help".