Java 如何将封套移动到特定点?

Java 如何将封套移动到特定点?,java,geotools,Java,Geotools,如何移动封套,使中心位置成为给定点的位置?我所看到的都是“展开”方法。最简单的方法是以新点为中心创建一个新的封套: Point p = /*a point*/; ReferencedEnvelope envelope = mapPane.getDisplayArea(); /*envelope.moveTo or something like that? */ mapPane.setDisplayArea(envelope); ReferencedEnvelope env = fr.getMa

如何移动封套,使中心位置成为给定点的位置?我所看到的都是“展开”方法。

最简单的方法是以新点为中心创建一个新的封套:

Point p = /*a point*/;
ReferencedEnvelope envelope = mapPane.getDisplayArea();
/*envelope.moveTo or something like that? */
mapPane.setDisplayArea(envelope);
ReferencedEnvelope env = fr.getMapPane().getDisplayArea();
double x,y;//new centre
double w2 = env.getWidth()/2.0;
double h2 = env.getHeight()/2.0;
Coordinate c = new Coordinate(x,y);
ReferencedEnvelope renv = new ReferencedEnvelope(c.x-w2,c.x+w2,c.y-h2,c.y+h2,env.getCoordinateReferenceSystem());