/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package org.geoforge.worldwind.render;
import gov.nasa.worldwind.geom.Position;
import java.awt.geom.Point2D;
import java.util.ArrayList;
import java.util.List;
import java.util.Observable;
import java.util.Observer;
import org.geoforge.mdldat.event.GfrEvtMdlIdDatChangedGeometry;
/**
*
* @author robert
*/
abstract public class GfrLabeledPathRndDimOneLineTloAbs extends GfrLabeledPathRndDimOneLineAbs implements
Observer
{
protected GfrLabeledPathRndDimOneLineTloAbs(String strId) throws Exception
{
super(strId);
}
@Override
public void update(Observable obs, Object objEvt)
{
if (! (objEvt instanceof GfrEvtMdlIdDatChangedGeometry))
return;
GfrEvtMdlIdDatChangedGeometry evt = (GfrEvtMdlIdDatChangedGeometry) objEvt;
String strId = evt.getId();
if (strId.compareTo(super.getId()) != 0)
return;
ArrayList<Point2D.Double> lstP2d = (ArrayList<Point2D.Double>) evt.getGeometry();
List<Position> lstPosition = new ArrayList<Position>();
for (Point2D.Double p2dCur: lstP2d)
{
Position posCur = Position.fromDegrees(p2dCur.y, p2dCur.x);
lstPosition.add(posCur);
}
super.setLocations(lstPosition);
}
}