4#include "RasterTileExtractor.h"
5#include "VectorExtractor.h"
7#include "geofeatures.h"
9#include "godot_cpp/variant/dictionary.hpp"
10#include "godot_cpp/variant/variant.hpp"
15class EXPORT GeoDataset;
26 static void _bind_methods();
39 Dictionary get_file_info();
42 Ref<GeoDataset> get_dataset();
52 Ref<GeoFeature> get_feature_by_id(
int id);
55 Array get_all_features();
59 Ref<GeoFeature> create_feature();
63 void remove_feature(Ref<GeoFeature> feature);
75 void save_new(String file_path);
79 Array get_features_near_position(
double pos_x,
double pos_y,
double radius,
int max_features);
82 Array get_features_in_square(
double top_left_x,
double top_left_y,
double size_meters,
87 Array get_features_by_attribute_filter(String filter);
90 Ref<GeoFeature> get_specialized_feature(std::shared_ptr<Feature> raw_feature);
95 void set_native_layer(std::shared_ptr<NativeLayer> new_layer);
99 void set_origin_dataset(Ref<GeoDataset> dataset);
104 std::shared_ptr<NativeLayer> layer;
105 std::map<std::shared_ptr<Feature>, Ref<GeoFeature>> feature_cache;
106 Ref<GeoDataset> origin_dataset;
118 static void _bind_methods();
128 bool has_write_access();
134 Dictionary get_file_info();
140 Image::Format get_format();
145 int get_band_count();
148 Array get_band_descriptions();
152 Ref<GeoDataset> get_dataset();
157 Ref<GeoRasterLayer> clone();
162 Ref<GeoImage> get_image(
double top_left_x,
double top_left_y,
double size_meters,
int img_size,
163 GeoImage::INTERPOLATION interpolation_type);
167 Ref<GeoImage> get_band_image(
double top_left_x,
double top_left_y,
double size_meters,
int img_size,
168 GeoImage::INTERPOLATION interpolation_type,
int band_index);
173 float get_value_at_position(
double pos_x,
double pos_y);
179 float get_value_at_position_with_resolution(
double pos_x,
double pos_y,
180 double pixel_size_meters);
186 void set_value_at_position(
double pos_x,
double pos_y, Variant value);
191 void smooth_add_value_at_position(
double pos_x,
double pos_y,
double summand,
double radius);
198 void overlay_image_at_position(
double pos_x,
double pos_y, Ref<Image> image,
double scale);
205 Vector3 get_center();
216 float get_pixel_size();
219 void load_from_file(String file_path,
bool write_access);
224 void set_native_dataset(std::shared_ptr<NativeDataset> new_dataset);
228 void set_origin_dataset(Ref<GeoDataset> dataset);
235 Ref<GeoDataset> origin_dataset;
236 std::shared_ptr<NativeDataset> dataset;
246 static void _bind_methods();
256 Dictionary get_file_info();
259 bool has_write_access();
262 Array get_raster_layers();
265 Array get_feature_layers();
270 Ref<GeoRasterLayer> get_raster_layer(String name);
275 Ref<GeoFeatureLayer> get_feature_layer(String name);
280 Ref<GeoFeatureLayer> get_sql_feature_layer(String query);
284 void load_from_file(String file_path,
bool write_access);
289 void set_native_dataset(std::shared_ptr<NativeDataset> new_dataset);
293 std::shared_ptr<NativeDataset> dataset;
Definition: geodata.h:242
Definition: geodata.h:114