Released 2024-11-19
- Add more
zone_coverage
tests from feedbacks from @camposandro- revert the modification introduced in v0.7.1 solving a problem but creating new ones
- improve the
zone_coverage
algorithm to 1- solve issues on very wide zones and 2- remove spurious cells when a zone vertex is on the edge of an HEALPix cell
Released 2024-11-12
- Wrong parameter (
cos(lon)
instead ofcos(lat)
) inh_to_h_and_shs
method leading to possibly miss cells in cone/ring coverage in case of cones/ring much smaller than requested HEALPix cells.
Released 2024-11-08
- Skymap/MOM modified to take into account @hombit feedbacks
- Upper left corner of
zone_coverage
no more included in the output MOC
Released 2024-10-16
- First support for Skymaps
- read from/write to FITS
- display in PNG
- First support for zuniq based MOMs
- build from Skymap
- merge operation
- display in PNG
Released 2024-07-19
- Values in
SMALLER_EDGE2OPEDGE_DIST
(used inbest_starting_depth
) were slightly overestimated due to a "moving" reference point for depth >= 2, see github issue #10. The error on the values should now be below the microarcsec.
Released 2024-05-28
- Add
intersect_great_circle
as needed in Aladin Lite
Released 2024-05-14
- Add
projected_vertices
(external contribution) - Add a test on polygon (because of a bug in the Java lib, but already fixed in the Rust lib).
- Fix a bug in
BMOC.to_flagged_ranges
: remove possible spurious flag 'not_full' on the first returned range
Released 2023-12-19
- BMOC methods
new_allsky
,new_empty
andminus
- Fix a bug in BMOC AND operation
Released 2023-06-29
- Method
is_empty
and traitsCopy, Clone, Eq, ...
onOrdinalSet
andCardinalSet
Released 2023-06-28
- Add
OrdinalSet
in modulecompass_point
- Update dependencies versions
- update base64 code
- Use cargo fmt with option
--config tab_spaces=2
to reformat the code
- fix numerical issue in 'intersect_small_circle' when great circle arc is small (<1 arcsec) by resorting to locally flat approximation
Released 2022-10-17
- Add latitude check in
bilinear_interpolation
- Add computation of lat=cte small circle intersection with polygon edges (great circle arcs)
- Add Sph geom polygon/parallel intersection
- Update dependencies
- Remove a few warnings in test and bench
- Make clippy happier
Released 2022-04-11
- Add
into_flat_iter
in BMOC (to be able to flatten an iterator of BMOCflat_iter
) - Remove a few warnings
Released 2022-04-01
- In the computation of constants in
ConstantsC2V
, impacting thelargest_center_to_vertex_distance
family methods: wrong contant 4/pi instead of pi/4 leading to overestimating thelargest_center_to_vertex_distance
Released 2022-03-22
- Method
box_coverage
: relax a too restrictive constraint preventing a == b
Released 2022-01-25
- Method
cone_coverage_fullin
: returns HEALPix nested cells fully covered by the given cone - Method
cone_coverage_centers
: returns HEALPix nested cells having their center in the given cone - Method
ring_coverage_approx
: returns HEALPix nested cells overlapped by a ring - Method
ring_coverage_approx_custom
: returns HEALPix nested cells overlapped by a ring (with a custom delta depth for better precision)
Released 2020-08-05
- Add
box_coverage
- In polygon: contrary to the Java code (which was correct) a cell was added to the
moc if its 4 vertices where in the polygon (without testing possible intersection with the polygon).
This may lead to wrong coverages in the case of self-intersecting polygons
(see
nested::testok_polygone_exact_fxp
). - Fix benches
Released 2020-11-02
- Default behaviour for polygons
- Add
zone_coverage
. - Add
custom_polygon_coverage
(to be able to select the default area or its complementary)
Released 2020-06-25.
- Remove dead code (not all dead code, but large parts).
- Fix compilation warnings
- Fix clippy warnings
Released 2020-06-22.
- When Newton-Raphson method fails when looking for "special points" in polygons (due to divergence or too slow convergence) the method failed. Now returns None (i.e. no special point found).
Released 2020-05-25.
- When polygons are very large, previous code sometimes returned the complementary polygon. We now decided that for large polygons the gravity center should be inside the polygon.
Released 2020-03-04.
- Add a MOC module for testing purpose
- Add MOC compression/decompression iterators
- Add logical MOC operations (not, and, or) taking iterators and returning iterators
- Add Cells to Range and Range to Cells conversion (iterator based too)
- Add the method
test_coo
inBMOC
Released 2020-02-11.
- Transform methods in
const
, adddyn
for trait objects. - Add an enum implementing the
ZOrderCurve
trait to allow... - ... the usage of a
const fn
to computeLayers
structs at compile time. - Replace a few constants by the ones defined in the Rust standard library
to_uniq
,from_uniq
,to_uniq_ivo
andfrom_uniq_ivoa
to handle uniq hash notation (i.e. uniq value for all possible (depth, hash) tuples).- Add BMOC lossy compression/decompression
- Fix
polygon_coverage
bug due to a bug ingreat_circle_arcs_are_overlapping_in_lon
when a great circle crosses the RA=0 meridian.
Released 2019-11-14.
- Do not requires
nighlty
any more (replace built-in bench by Criterion) - Change
hash
internals (improve performance and fix specific cases)
- Polygon specific case (by fixing the hash method)
hash
: fix very specific cases (lon = n * PI/2) in the South polar cap
Released 2019-09-05.
hash_with_dxdy
algo to be ported in glsl (WebGL) for AladinLite: is takes in input a vector (x, y, z) made of 3 single precision floats. Most graphics cards being limited to single precision, the method is able to provided indices at a maximum depth of 14. At depth 13, the precision on dx and dy is better than 1/512 (<=> images at order 13 + 9).
- Fix NESTED
bilinear_interpolation
: ~1/4 of cases in which 2 out of 4 HEALPix cell numbers where swapped
Released 2019-08-19.
- Fix NESTED
hash
rare panic due to numerical inaccuracies
Released 2019-06-25.
- Added in the NESTED scheme
sph_coo
: spherical coordinates from an HEALPix cell + offsets(dx, dy)
hash_with_dxdy
: hash value together with the(dx, dy)
offsetspath_along_cell_side
: provides points along a cell sidepath_along_cell_edge
: provides points along a cell edgebilinear_interpolation
: bilinear interpolation on the nested scheme- set
center_of_projected_cell
public
- Support of ring in NESTED:
to_ring
: convert a NESTED index into a RING indexfrom_ring
: convert a RING index into a NESTED index
- Starts supporting the RING scheme
hash
: compute the RING number from (lon, lat) coordinateshash_with_dxdy
: compute the RING number from (lon, lat) coordinates and additionally provide the offsets (dx, dy) in the cellcenter
: get the coordiates of the center of a RING cellcenter_of_projected_cell
: like center, but coordinates are gicen in the Euclidean projection planesph_coo
: get a coordinate on the sphere from a cell and a position (dx, dy) in the cellvertices
: provide the 4 vertices of a given cell
- All
base_cell_from_proj_coo
: experiment to be tested
- Fix polygon potential bug (see method
is_in_lon_range
)
Released 2019-05-10.
- We have started to run astropy-healpix tests on cdshealpix in the python wrapper project
- Methods to get internal/external edges of a cell a deeper depth
- Fix elliptical cone
- Fix numerical precision of hash (cell number from coordinates) in NE border of North Polar Cap base cells
- Fix numerical precision of angular distances computation near from PI
Released 2019-03-14.
- Elliptical cone: fix SIN projection conditions
- Elliptical cone: better handle large ellipses (when ellipse semi-major axis + bounding cone radius > PI/2)
- WARNING: still bugged in crates.io, but fixed on github!
Released 2019-03-06.
- Now ensures that lon in [0, 2pi[ and lat in [-pi/2, +pi/2] in Coo3D
- add support to elliptical cones
Released 2019-04-01.
- fix documentation error with katex on doc.rs
- first debug of the exact solution of
query_polygon
- BMOC logical operators still to be tested with
is_full
flags possibly set tofalse
- More test are needed on the exact polygon algo
Released 2019-01-31.
- fix BMOC logical operations (
not
,and
,or
,xor
) - fix method
MOCBuilderUnsafe::to_lower_depth
in modulecdshealpix::nested::bmoc
: first cell was ignored when not part of a larger cell.
- first version of the exacy polygon algorithm
- `flat iterator returning cells (containing flags) in BMOC
BMOCBuilderFixedDepth
to build a BMOC from a list of cells at the MOC depth- posibility to add LaTeX formula in the documentation (using the crate katex-doc).
- add sub-direcotry containing tests on MOCs (in a sub-module not to add the
serde
andserde-json
dependencies in the man crate) - add sub-directory containing an example of usage of cdshealpix-python
(polygon|cone)_overlap.*
changed to(polygon|cone)_coverage.*
polygon_coverage_approx
changed topolygon_coverage
with a boolean to select approx / exact solution
- BMOC logical operators still to be tested with
is_full
flags possibly set tofalse
- Exact polygon algo still to be tested, probably bugged so far!! (I know, creating branches would be cleaner)
Released 2019-01-24.
- allow compilation with
stable
(butnighlty
needed to actually run tests and benches) - put the CLI in a sub-project to remove structops dependencies
is_flag
always set to false in BMOC now fixed
to_range
method in modulecdsxhealpix::nested
to_ranges
andfrom_ranges
method in modulecdshealpix::nested::bmoc
- logical operators on BMOC (
not
,and
,or
,xor
) BUT THEY STILL HAVE TO BE TESTED - Fix memory leak in Python when calling
bmoc_free
(by Matthieu Baumann)
Released 2019-01-18.