Results 1 to 4 of 4
  1. #1
    123
    123 is offline Member
    Join Date
    Feb 2010
    Posts
    5
    Rep Power
    0

    Default Convert Cartesian coordinate system into java coordinate system?

    Please give me a way to code a method to convert cartesian coord. into java/picture coord. system I'm not supposed to use predefined functions like affine, scale(), transform, etc for this method.

    Heres the picture:

    For eg. i want to plot a point on java system from cartesian coordinates: (0.905, 0.360) & (-0.023, 0.410)
    I need write the code inside the method: coordinateToPixel()

  2. #2
    Fubarable's Avatar
    Fubarable is offline Moderator
    Join Date
    Jun 2008
    Posts
    19,315
    Blog Entries
    1
    Rep Power
    26

    Default

    Surely you've tried something yourself first as it's simple algebra. Why not show us this code and describe what problems you are having with it.

  3. #3
    123
    123 is offline Member
    Join Date
    Feb 2010
    Posts
    5
    Rep Power
    0

    Default

    ye this seems to work:
    for x:
    Java Code:
    int newX = (int) ( (x + 1) * width/2 )
    for y:
    Java Code:
    int newY = (int) ( (y - 1) * -height/2 )
    where, width & height = 1000 pixels (in this case)

    Please tell if casting this into a int is required. I thought Java coord. system only takes int values. My x & y are all double value and are stored in an object array.

    Now i want to assign newX & newY into the original x & y values.
    And also use newX & newY to draw shapes into system.
    How to do this?
    Last edited by 123; 02-07-2010 at 09:32 PM.

  4. #4
    Fubarable's Avatar
    Fubarable is offline Moderator
    Join Date
    Jun 2008
    Posts
    19,315
    Blog Entries
    1
    Rep Power
    26

    Default

    If you want to always stretch the graph to fit the view I'd change this:
    Java Code:
    int newY = (int) ( (y - 1) * -width/2 )
    to this:
    Java Code:
    int newY = (int) ( (y - 1) * -height/2 )
    your height may == width now, but this may not always be the case.

    If on the other hand you want to always maintain a square symmetry, then you could always check which is greater height or width and use the lesser of the two as your scaling factor.

    Please tell if casting this into a int is required. I thought Java coord. system only takes int values. My x & y are all double value type.
    The methods you use should tell you when int is required. For instance many Shape object derived methods and constructors will happily use floating point variables, for instance the methods of Point2D, while most (all?) of the Graphics draw methods require ints. Here's where the Java API becomes indispensable.

    Now i want to assign newX & newY into the original x & y values.
    And also use newX & newY to draw shapes into system.
    How to do this?
    I'm not sure what you're asking here. More details may help.

Similar Threads

  1. Replies: 3
    Last Post: 12-15-2009, 10:20 PM
  2. Replies: 4
    Last Post: 12-17-2008, 06:57 PM
  3. Replies: 1
    Last Post: 08-25-2008, 09:48 PM
  4. set coordinate to an image
    By nuur in forum AWT / Swing
    Replies: 2
    Last Post: 04-01-2008, 09:08 AM
  5. X&Y Coordinate Drawing on jPanel
    By BHCluster in forum Java 2D
    Replies: 2
    Last Post: 03-27-2008, 11:47 AM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •