ign-borea 0.2.2__tar.gz → 0.2.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {ign_borea-0.2.2 → ign_borea-0.2.3}/PKG-INFO +11 -5
- {ign_borea-0.2.2 → ign_borea-0.2.3}/README.md +22 -10
- {ign_borea-0.2.2 → ign_borea-0.2.3}/README_borea_lib.md +6 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/shot.py +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/workdata.py +3 -3
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/proj_engine.py +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/transform_geodesy.py +2 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/worksite/worksite.py +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_dependency/requirements-dev.txt +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_dependency/requirements.txt +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/PKG-INFO +11 -5
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/requires.txt +2 -2
- {ign_borea-0.2.2 → ign_borea-0.2.3}/pyproject.toml +1 -1
- {ign_borea-0.2.2 → ign_borea-0.2.3}/LICENSE +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/camera.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/dtm.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/datastruct/gcp.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/format/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/format/conl.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/format/rpc.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/approx_euclidean_proj.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/euclidean_proj.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/local_euclidean_proj.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/projectionlist/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/geodesy/projectionlist/search_proj.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_add_shot.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_file_gcp2d.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_file_gcp3d.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_gen_param.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_proj.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_pt2d.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_pt3d.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_unit_shot.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_add_data/p_write.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_format/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_format/p_read_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_format/p_write_con.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_format/p_write_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_format/p_write_rpc.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/p_control.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/p_image_world.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/p_spaceresection.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/p_tf_proj_pt.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/process/p_func/p_world_image.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/orientation/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/orientation/manage_reader.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/orientation/reader_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/reader_camera.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/reader/reader_point.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/stat/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/stat/statistics.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_dtm/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_dtm/world_image_dtm.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/conversion_coor_shot.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/image_world_shot.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/world_image_shot.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/image_world_intersection.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/image_world_least_square.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/image_world_work.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/space_resection.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/world_image_work.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_args_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_args_reader_pt.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_array.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_header.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_order_axe.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/check/check_path.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/miscellaneous/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/miscellaneous/miscellaneous.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/miscellaneous/param_bundle.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/miscellaneous/sparse.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/singleton/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/singleton/singleton.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/solver/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/solver/solver.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/xml/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/utils/xml/xml.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/worksite/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/manage_writer.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/writer_con.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/writer_df_to_txt.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/writer_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea/writer/writer_rpc.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/__init__.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/opk_control.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/opk_to_conl.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/opk_to_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/opk_to_rpc.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/pt_image_to_world.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/pt_world_to_image.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/ptfile_image_to_world.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/ptfile_world_to_image.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/spaceresection_opk.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/borea_tools/transform_proj_points.py +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/SOURCES.txt +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/dependency_links.txt +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/entry_points.txt +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/ign_borea.egg-info/top_level.txt +0 -0
- {ign_borea-0.2.2 → ign_borea-0.2.3}/setup.cfg +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: ign-borea
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: A package to manipulate orientation files
|
|
5
5
|
Author-email: Antoine Cornu <antoine.cornu@ign.fr>, Nicolas Laurain <nicolas.laurain@ign.fr>
|
|
6
6
|
License: MIT License
|
|
@@ -36,13 +36,13 @@ Classifier: Operating System :: MacOS
|
|
|
36
36
|
Requires-Python: >=3.9
|
|
37
37
|
Description-Content-Type: text/markdown
|
|
38
38
|
License-File: LICENSE
|
|
39
|
-
Requires-Dist: numpy
|
|
39
|
+
Requires-Dist: numpy
|
|
40
40
|
Requires-Dist: dataclasses
|
|
41
41
|
Requires-Dist: pyproj
|
|
42
42
|
Requires-Dist: scipy
|
|
43
43
|
Requires-Dist: pandas
|
|
44
44
|
Provides-Extra: dev
|
|
45
|
-
Requires-Dist: numpy
|
|
45
|
+
Requires-Dist: numpy; extra == "dev"
|
|
46
46
|
Requires-Dist: pylint; extra == "dev"
|
|
47
47
|
Requires-Dist: pytest; extra == "dev"
|
|
48
48
|
Requires-Dist: pytest-shutil; extra == "dev"
|
|
@@ -53,6 +53,7 @@ Requires-Dist: dataclasses; extra == "dev"
|
|
|
53
53
|
Requires-Dist: pyproj; extra == "dev"
|
|
54
54
|
Requires-Dist: scipy; extra == "dev"
|
|
55
55
|
Requires-Dist: pandas; extra == "dev"
|
|
56
|
+
Dynamic: license-file
|
|
56
57
|
|
|
57
58
|
[](https://www.ign.fr/) [](
|
|
58
59
|
https://pypi.org/project/ign-borea/)
|
|
@@ -83,6 +84,11 @@ pip install GDAL==<GDAL VERSION FROM OGRINFO>
|
|
|
83
84
|
```
|
|
84
85
|
You can find more information on [mothergeo-py](https://mothergeo-py.readthedocs.io/en/latest/development/how-to/gdal-ubuntu-pkg.html) if you have problems installing GDAL.
|
|
85
86
|
|
|
87
|
+
#### Conda/Mamba
|
|
88
|
+
|
|
89
|
+
You create your conda/mamba environment with pip in it, then in the environment you install borea with `pip install ign-borea` and GDAL with `conda install GDAL` or `mamba install GDAL`.
|
|
90
|
+
Note: GDAL version must be >= 3.3.2
|
|
91
|
+
|
|
86
92
|
#### In the QGIS environment
|
|
87
93
|
|
|
88
94
|
View the doc on [borea github docs/installation/In_QGIS.md](https://github.com/IGNF/Borea/tree/main/docs/installation/In_QGIS.md).
|
|
@@ -157,7 +163,7 @@ The DataFrame **pt3d** is a table with 5 column and n line. The id of column mus
|
|
|
157
163
|
|
|
158
164
|
it can be created with the function `read_file_pt_dataframe(path_file_pt,header_file,"pt3d")`
|
|
159
165
|
The dictionary **pinit** which give the initialization point X, Y, Z. A point on the worksite with a z at an approximate flying height. The name of the key in the dictionary is `coor_init`.
|
|
160
|
-
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/
|
|
166
|
+
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/examples/eg_space_resection.py) l.38.
|
|
161
167
|
|
|
162
168
|
* You can calculate some control point statistics to see how accurate your site is `stat = Stat(work, pathreturn, control_type)` to init the object and run for all stat with `stat.main_stat_and_save()`. Make stat on function image to world and world to image, if there are data. And save result on *pathreturn/Stat_{Name_worksite}.txt*.
|
|
163
169
|
|
|
@@ -21,18 +21,32 @@ Why Borea? B for Box and orea is a back slang of aero.
|
|
|
21
21
|
|
|
22
22
|
## Dependency
|
|
23
23
|
|
|
24
|
+
Borea needs:
|
|
25
|
+
- python >= 3.9
|
|
26
|
+
- gdal >= 3.3.2
|
|
27
|
+
- numpy
|
|
28
|
+
- pyproj
|
|
29
|
+
- scipy
|
|
30
|
+
- pandas
|
|
31
|
+
- dataclasses
|
|
32
|
+
|
|
24
33
|
### Conda/Mamba
|
|
25
|
-
For conda/mamba environment
|
|
34
|
+
For conda/mamba environment is [borea_dependency/environment.yml](./borea_dependency/environment.yml).
|
|
26
35
|
|
|
27
36
|
### Pip venv
|
|
28
|
-
For pip environment (venv)
|
|
37
|
+
For pip environment (venv) is [borea_dependency/requirements.txt](./borea_dependency/requirements.txt)
|
|
29
38
|
and you need to install `libgdal-dev` and `GDAL>=3.3.2`.
|
|
30
39
|
|
|
31
40
|
## Installation
|
|
32
41
|
|
|
33
|
-
|
|
42
|
+
There are two ways to install Borea with the repository `git clone` or with pip `pip install ign-borea` [doc](./README_borea_lib.md).
|
|
43
|
+
|
|
44
|
+
With **the repository**, you also need to install the environment.
|
|
45
|
+
With **pip** the environment comes with it but does not contain GDAL, which you have to install yourself.
|
|
34
46
|
|
|
47
|
+
### Installation of the environment
|
|
35
48
|
#### Conda/Mamba
|
|
49
|
+
GDAL is contained and installed in the conda/mamba environment.
|
|
36
50
|
```
|
|
37
51
|
conda env create -f ./borea_dependency/environment.yaml
|
|
38
52
|
```
|
|
@@ -41,20 +55,18 @@ mamba env create -f ./borea_dependency/environment.yaml
|
|
|
41
55
|
```
|
|
42
56
|
|
|
43
57
|
#### Pip
|
|
44
|
-
|
|
45
|
-
|
|
58
|
+
GDAL is not included in the pip environment, so you have to install it yourself.
|
|
46
59
|
```
|
|
47
60
|
pip install -r ./borea_dependency/requirements.txt
|
|
48
61
|
sudo apt-get install libgdal-dev
|
|
49
62
|
```
|
|
50
|
-
|
|
63
|
+
You need the version of `GDAL` and you can get it back with:
|
|
51
64
|
```
|
|
52
|
-
|
|
53
|
-
# or if you are ogr
|
|
54
|
-
ogrinfo --version
|
|
65
|
+
gdalinfo --version
|
|
55
66
|
```
|
|
67
|
+
after
|
|
56
68
|
```
|
|
57
|
-
pip install GDAL==<GDAL VERSION
|
|
69
|
+
pip install GDAL==<GDAL VERSION>
|
|
58
70
|
```
|
|
59
71
|
You can find more information on [mothergeo-py](https://mothergeo-py.readthedocs.io/en/latest/development/how-to/gdal-ubuntu-pkg.html) if you have problems installing GDAL.
|
|
60
72
|
|
|
@@ -27,6 +27,11 @@ pip install GDAL==<GDAL VERSION FROM OGRINFO>
|
|
|
27
27
|
```
|
|
28
28
|
You can find more information on [mothergeo-py](https://mothergeo-py.readthedocs.io/en/latest/development/how-to/gdal-ubuntu-pkg.html) if you have problems installing GDAL.
|
|
29
29
|
|
|
30
|
+
#### Conda/Mamba
|
|
31
|
+
|
|
32
|
+
You create your conda/mamba environment with pip in it, then in the environment you install borea with `pip install ign-borea` and GDAL with `conda install GDAL` or `mamba install GDAL`.
|
|
33
|
+
Note: GDAL version must be >= 3.3.2
|
|
34
|
+
|
|
30
35
|
#### In the QGIS environment
|
|
31
36
|
|
|
32
37
|
View the doc on [borea github docs/installation/In_QGIS.md](https://github.com/IGNF/Borea/tree/main/docs/installation/In_QGIS.md).
|
|
@@ -101,7 +106,7 @@ The DataFrame **pt3d** is a table with 5 column and n line. The id of column mus
|
|
|
101
106
|
|
|
102
107
|
it can be created with the function `read_file_pt_dataframe(path_file_pt,header_file,"pt3d")`
|
|
103
108
|
The dictionary **pinit** which give the initialization point X, Y, Z. A point on the worksite with a z at an approximate flying height. The name of the key in the dictionary is `coor_init`.
|
|
104
|
-
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/
|
|
109
|
+
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/examples/eg_space_resection.py) l.38.
|
|
105
110
|
|
|
106
111
|
* You can calculate some control point statistics to see how accurate your site is `stat = Stat(work, pathreturn, control_type)` to init the object and run for all stat with `stat.main_stat_and_save()`. Make stat on function image to world and world to image, if there are data. And save result on *pathreturn/Stat_{Name_worksite}.txt*.
|
|
107
112
|
|
|
@@ -9,7 +9,7 @@ from borea.geodesy.local_euclidean_proj import LocalEuclideanProj
|
|
|
9
9
|
from borea.utils.check.check_order_axe import check_order_axe
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
# pylint: disable=too-many-instance-attributes too-many-arguments too-many-positional-arguments
|
|
12
|
+
# pylint: disable=too-many-instance-attributes, too-many-arguments, too-many-positional-arguments
|
|
13
13
|
class Shot:
|
|
14
14
|
"""
|
|
15
15
|
Shot class definition.
|
|
@@ -35,7 +35,7 @@ class Workdata:
|
|
|
35
35
|
self.approxeucli = False
|
|
36
36
|
self.epsg_output = False
|
|
37
37
|
|
|
38
|
-
# pylint: disable-next=too-many-arguments too-many-positional-arguments
|
|
38
|
+
# pylint: disable-next=too-many-arguments, too-many-positional-arguments
|
|
39
39
|
def add_shot(self, name_shot: str, pos_shot: np.ndarray,
|
|
40
40
|
ori_shot: np.ndarray, name_cam: str,
|
|
41
41
|
unit_angle: str, linear_alteration: bool,
|
|
@@ -83,7 +83,7 @@ class Workdata:
|
|
|
83
83
|
|
|
84
84
|
ProjEngine().set_epsg(epsg, path_geoid, epsg_output)
|
|
85
85
|
|
|
86
|
-
# pylint: disable-next=too-many-arguments too-many-positional-arguments
|
|
86
|
+
# pylint: disable-next=too-many-arguments, too-many-positional-arguments
|
|
87
87
|
def add_camera(self, name_camera: str, ppax: float, ppay: float,
|
|
88
88
|
focal: float, width: int, height: int) -> None:
|
|
89
89
|
"""
|
|
@@ -150,7 +150,7 @@ class Workdata:
|
|
|
150
150
|
try:
|
|
151
151
|
self.shots[name_shot]
|
|
152
152
|
except KeyError as e_info:
|
|
153
|
-
raise
|
|
153
|
+
raise KeyError(f"The shot {name_shot} doesn't exist in list of shots.") from e_info
|
|
154
154
|
|
|
155
155
|
if name_point not in self.gcp2d:
|
|
156
156
|
self.gcp2d[name_point] = []
|
|
@@ -9,7 +9,7 @@ from borea.geodesy.transform_geodesy import TransformGeodesy
|
|
|
9
9
|
from borea.utils.singleton.singleton import Singleton
|
|
10
10
|
|
|
11
11
|
|
|
12
|
-
# pylint: disable=unpacking-non-sequence
|
|
12
|
+
# pylint: disable=unpacking-non-sequence, unsubscriptable-object
|
|
13
13
|
@dataclass
|
|
14
14
|
class ProjEngine(metaclass=Singleton):
|
|
15
15
|
"""
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"""
|
|
2
2
|
Module for class ProjEngine, transform geodesy
|
|
3
3
|
"""
|
|
4
|
+
# pylint: disable=unsubscriptable-object
|
|
4
5
|
import pyproj
|
|
5
6
|
import numpy as np
|
|
6
7
|
import pandas as pd
|
|
@@ -235,6 +236,7 @@ class TransformGeodesy():
|
|
|
235
236
|
df_pt['y'],
|
|
236
237
|
df_pt['z']]))
|
|
237
238
|
|
|
239
|
+
# pylint: disable-next=unpacking-non-sequence
|
|
238
240
|
df_pt["x"], df_pt["y"] = self.proj_to_proj_out(df_pt['x'], df_pt['y'])
|
|
239
241
|
|
|
240
242
|
return df_pt
|
|
@@ -173,7 +173,7 @@ class Worksite(Workdata):
|
|
|
173
173
|
self.type_z_shot, False)[2]
|
|
174
174
|
shot.set_z_nadir(z_nadir)
|
|
175
175
|
|
|
176
|
-
# pylint: disable-next=too-many-arguments too-many-positional-arguments
|
|
176
|
+
# pylint: disable-next=too-many-arguments, too-many-positional-arguments
|
|
177
177
|
def set_unit_output(self, type_z: str = None, unit_angle: str = None,
|
|
178
178
|
linear_alteration: bool = None, order_axe: str = None,
|
|
179
179
|
proj_output: bool = True) -> None:
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: ign-borea
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.3
|
|
4
4
|
Summary: A package to manipulate orientation files
|
|
5
5
|
Author-email: Antoine Cornu <antoine.cornu@ign.fr>, Nicolas Laurain <nicolas.laurain@ign.fr>
|
|
6
6
|
License: MIT License
|
|
@@ -36,13 +36,13 @@ Classifier: Operating System :: MacOS
|
|
|
36
36
|
Requires-Python: >=3.9
|
|
37
37
|
Description-Content-Type: text/markdown
|
|
38
38
|
License-File: LICENSE
|
|
39
|
-
Requires-Dist: numpy
|
|
39
|
+
Requires-Dist: numpy
|
|
40
40
|
Requires-Dist: dataclasses
|
|
41
41
|
Requires-Dist: pyproj
|
|
42
42
|
Requires-Dist: scipy
|
|
43
43
|
Requires-Dist: pandas
|
|
44
44
|
Provides-Extra: dev
|
|
45
|
-
Requires-Dist: numpy
|
|
45
|
+
Requires-Dist: numpy; extra == "dev"
|
|
46
46
|
Requires-Dist: pylint; extra == "dev"
|
|
47
47
|
Requires-Dist: pytest; extra == "dev"
|
|
48
48
|
Requires-Dist: pytest-shutil; extra == "dev"
|
|
@@ -53,6 +53,7 @@ Requires-Dist: dataclasses; extra == "dev"
|
|
|
53
53
|
Requires-Dist: pyproj; extra == "dev"
|
|
54
54
|
Requires-Dist: scipy; extra == "dev"
|
|
55
55
|
Requires-Dist: pandas; extra == "dev"
|
|
56
|
+
Dynamic: license-file
|
|
56
57
|
|
|
57
58
|
[](https://www.ign.fr/) [](
|
|
58
59
|
https://pypi.org/project/ign-borea/)
|
|
@@ -83,6 +84,11 @@ pip install GDAL==<GDAL VERSION FROM OGRINFO>
|
|
|
83
84
|
```
|
|
84
85
|
You can find more information on [mothergeo-py](https://mothergeo-py.readthedocs.io/en/latest/development/how-to/gdal-ubuntu-pkg.html) if you have problems installing GDAL.
|
|
85
86
|
|
|
87
|
+
#### Conda/Mamba
|
|
88
|
+
|
|
89
|
+
You create your conda/mamba environment with pip in it, then in the environment you install borea with `pip install ign-borea` and GDAL with `conda install GDAL` or `mamba install GDAL`.
|
|
90
|
+
Note: GDAL version must be >= 3.3.2
|
|
91
|
+
|
|
86
92
|
#### In the QGIS environment
|
|
87
93
|
|
|
88
94
|
View the doc on [borea github docs/installation/In_QGIS.md](https://github.com/IGNF/Borea/tree/main/docs/installation/In_QGIS.md).
|
|
@@ -157,7 +163,7 @@ The DataFrame **pt3d** is a table with 5 column and n line. The id of column mus
|
|
|
157
163
|
|
|
158
164
|
it can be created with the function `read_file_pt_dataframe(path_file_pt,header_file,"pt3d")`
|
|
159
165
|
The dictionary **pinit** which give the initialization point X, Y, Z. A point on the worksite with a z at an approximate flying height. The name of the key in the dictionary is `coor_init`.
|
|
160
|
-
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/
|
|
166
|
+
Example at the end of explanation of function [file](https://github.com/IGNF/Borea/tree/main/examples/eg_space_resection.py) l.38.
|
|
161
167
|
|
|
162
168
|
* You can calculate some control point statistics to see how accurate your site is `stat = Stat(work, pathreturn, control_type)` to init the object and run for all stat with `stat.main_stat_and_save()`. Make stat on function image to world and world to image, if there are data. And save result on *pathreturn/Stat_{Name_worksite}.txt*.
|
|
163
169
|
|
|
@@ -5,7 +5,7 @@ requires = ["setuptools>=61.0"]
|
|
|
5
5
|
[project]
|
|
6
6
|
dynamic = ["dependencies", "optional-dependencies"]
|
|
7
7
|
name = "ign-borea"
|
|
8
|
-
version = "0.2.
|
|
8
|
+
version = "0.2.3"
|
|
9
9
|
authors = [
|
|
10
10
|
{ name="Antoine Cornu", email="antoine.cornu@ign.fr" },
|
|
11
11
|
{ name="Nicolas Laurain", email="nicolas.laurain@ign.fr"}
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_dtm/world_image_dtm.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/image_world_shot.py
RENAMED
|
File without changes
|
{ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_shot/world_image_shot.py
RENAMED
|
File without changes
|
{ign_borea-0.2.2 → ign_borea-0.2.3}/borea/transform_world_image/transform_worksite/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|