2017-01-10 11 views
1
Point p = /*a point*/; 
ReferencedEnvelope envelope = mapPane.getDisplayArea(); 
/*envelope.moveTo or something like that? */ 
mapPane.setDisplayArea(envelope); 

Как перемещать конверт так, чтобы центральное положение было позицией данной точки? Все, что я вижу, это «расширить» методы.Как вы перемещаете конверт в определенную точку?

ответ

1

Самый простой способ, чтобы создать новый конверт с центром в новой точке:

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());