Yes, and I was right about being guilty too. The ISA tools are full of ".x =" assignments.
Martin, does all of JTS support the JTS CoordinateSequence, or do you need to convert to Coordinate arrays before calling JTS functions? I see, for example, that there are LineString constructors for both CoordinateSequence and Coordinate points[], so I would guess that when Geometry functions are invoked later, they will detect and use the correct access method? If so, it would make a 25% savings for each Coordinate since there is an 8 byte overhead for the object. thanks, Larry On 6/25/07, Larry Becker <[EMAIL PROTECTED]> wrote: > Oh, oh. If com.vividsolutions.jts.geom.LineSegment.setCoordinates() > is any indication, JTS is probably going to prevent making this > policy retroactive. There seem to be several places where Coordinate > values are passed into methods and have their x,y values modified. > > regards, > Larry > > On 6/25/07, Larry Becker <[EMAIL PROTECTED]> wrote: > > I agree with Martin. Modifying Coordinate values in-place is probably > > a bad idea, however I'm pretty sure I've been guilty. What I'm trying > > to figure out now, is a good way to find out where and how many times. > > > > regards, > > Larry Becker > > > > On 6/25/07, Martin Davis <[EMAIL PROTECTED]> wrote: > > > > > > > > > Michaël Michaud wrote: > > > > > > > > @Martin : Please, can you explain what immutability means for > > > > coordinates. I see that x,y,z are public fields (and I remember I often > > > > changed them via small scripts, especially the z value). But may be I > > > > have no clear idea about immutability and its advantages. > > > > > > > > > > > > > > Well, it's pretty simple. If you have a tool that works by altering the > > > ordinate values in a Coordinate, and you are using the "interned > > > Coordinate" strategy, you are going to get bugs, since Geometrys will > > > change unexpectedly when their shared Coordinate values are changed by > > > someone else. > > > > > > The public x,y,z in Coordinate were originally there for efficiency > > > reasons. Probably a bad idea. In fact, Coordinate should have simply > > > been an interface. But too late to change now! However, an application > > > like JUMP should make it a blanket policy that Coordinate values should > > > never by changed. Any other policy leads to insanity, IMO. > > > > > > HTH - Martin > > > > > > -- > > > Martin Davis > > > Senior Technical Architect > > > Refractions Research, Inc. > > > (250) 383-3022 > > > > > > > > > ------------------------------------------------------------------------- > > > This SF.net email is sponsored by DB2 Express > > > Download DB2 Express C - the FREE version of DB2 express and take > > > control of your XML. No limits. Just data. Click to get it now. > > > http://sourceforge.net/powerbar/db2/ > > > _______________________________________________ > > > Jump-pilot-devel mailing list > > > Jump-pilot-devel@lists.sourceforge.net > > > https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel > > > > > > > > > -- > > http://amusingprogrammer.blogspot.com/ > > > > > -- > http://amusingprogrammer.blogspot.com/ > -- http://amusingprogrammer.blogspot.com/ ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Jump-pilot-devel mailing list Jump-pilot-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel