/* Copyright (C) 2001, 2011 United States Government as represented by
the Administrator of the National Aeronautics and Space Administration.
All Rights Reserved.
*/
package org.geoforge.worldwind.builder;
import gov.nasa.worldwind.awt.WorldWindowGLCanvas;
import gov.nasa.worldwind.geom.LatLon;
import gov.nasa.worldwind.render.Path;
import java.util.Iterator;
import org.geoforge.worldwind.builder.entry.GfrEntryBltObjPikShpAbs;
import org.geoforge.worldwind.builder.entry.GfrEntryBltObjPikShpOpn;
import org.geoforge.worldwind.builder.factory.GfrFactoryObjShpPlnOpn;
import org.geoforge.worldwind.builder.editor.GfrEditorObjShpPlnOpn;
/**
* @author bantchao
*
* based ond WD's PolygonBuilderController
*
*/
public class GfrBldObjPikShpPlnLinOpn extends GfrBldObjPikShpPlnLinAbs
{
public GfrBldObjPikShpPlnLinOpn(WorldWindowGLCanvas wwc)
{
super(wwc);
super._epe = new GfrEditorObjShpPlnOpn();
}
@Override
public Object getValue()
{
if(super._pey == null)
return (Object) null;
Path epn = (Path) this._pey.getRenderable();
Iterator<? extends LatLon> itr = epn.getPositions().iterator();
return super._getValue(itr);
}
@Override
public void _createNewEntry()
{
Path polygon = GfrFactoryObjShpPlnOpn.s_getInstance().create(
super._glcWwd, super.isResizeNewShapesToViewport());
GfrEntryBltObjPikShpAbs pey = new GfrEntryBltObjPikShpOpn(polygon);
super._createNewEntry(pey);
}
}