public static List < LasSource > getLasSources ( ASpatialDb db ) throws Exception { List < LasSource > sources = new ArrayList <> ( ) ; String sql = "SELECT " + COLUMN_GEOM + "," + COLUMN_ID + "," + COLUMN_NAME + "," + COLUMN_RESOLUTION + "," + COLUMN_FACTOR + "," + COLUMN_LEVELS + "," + COLUMN_MINZ + "," + COLUMN_MAXZ + "," + COLUMN_MININTENSITY + "," + COLUMN_MAXINTENSITY + " FROM " + TABLENAME ; return db . execOnConnection ( connection -> { IGeometryParser gp = db . getType ( ) . getGeometryParser ( ) ; try ( IHMStatement stmt = connection . createStatement ( ) ; IHMResultSet rs = stmt . executeQuery ( sql ) ) { while ( rs . next ( ) ) { LasSource lasSource = new LasSource ( ) ; int i = 1 ; Geometry geometry = gp . fromResultSet ( rs , i ++ ) ; if ( geometry instanceof Polygon ) { Polygon polygon = ( Polygon ) geometry ; lasSource . polygon = polygon ; lasSource . id = rs . getLong ( i ++ ) ; lasSource . name = rs . getString ( i ++ ) ; lasSource . resolution = rs . getDouble ( i ++ ) ; lasSource . levelFactor = rs . getDouble ( i ++ ) ; lasSource . levels = rs . getInt ( i ++ ) ; lasSource . minElev = rs . getDouble ( i ++ ) ; lasSource . maxElev = rs . getDouble ( i ++ ) ; lasSource . minIntens = rs . getDouble ( i ++ ) ; lasSource . maxIntens = rs . getDouble ( i ++ ) ; sources . add ( lasSource ) ; } } return sources ; } } ) ; }
Query the las sources table .