-
-
Notifications
You must be signed in to change notification settings - Fork 891
Create and draw convex hulls for constellations #4306
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
Great PR! Please pay attention to the following items before merging: Files matching
This is an automatically generated QA checklist based on modified files. |
Hello @gzotti! Thank you for proposing of the feature. |
THANK YOU, @gzotti , I love this new feature! Use Cases (up to now)
|
yes, the "one and two stars"-constellations are an issue: up to now, I always defined exceptions for them. Now, as we have the circles for single star-asterisms, I think, I would use those; something like n= number@starsInConstellation |
Why are some of the hulls (e.g. those around Serpent and Dragon) open? |
I think this is what @gzotti also wonders above: seems to be a problem with rendering, not with computation |
Oops, missed that paragraph... |
We have numerous reports about strange artifacts rendering horizon polygons (e.g. #4022). Some line parts are missing (which we also see here), and there are some spurious lines along the mathematical horizon. The StelSphereGeometry stuff, as ingenious it is, may have some issues. When I made the horizon polygons, there were occurrences of inverted filled areas when the horizon was very low. This was solved by making sure the zenith is "open". The situation did not improve when, during the Qt5->Qt6 adaptation, QList and QVector classes were merged, and some templated methods that used both classes with their respective particularities failed to build. It turned out (most of?) these methods were actually never used, though, so I excluded them (commented away), replacing specialized overrides by implementations of the respective base classes. Some time after that, we got new issue reports in that say the horizon polygon must not extend below 0°. This used to work previously, so maybe these overrides were used after all. However, that problem seems also to exist on latest Qt5 builds, where those overrides are still compiled. If you have an idea what's wrong or want to have a look into it, you are more than welcome to fix it. |
OK, so the next steps:
Do we need the hull feature also for asterisms? Probably not, as it is a somewhat artificial split needed mostly in modern_* SCs. However, we should still consider separating or flagging lunar stations/mansions as something special. (And by this, likewise flagging "culturally relevant zodiac" constellations. [sorry, this usually means 12, not 13...]). Currently we are (ab)using the asterism class for Lunar station asterisms where applicable (to make them stand out better, as they of course overlap with Solar Zodiac figures...), however the Indian-Vedic proposes artwork in some of these figures, which our Asterism class does not have.
Any GUI changes should however wait for acceptance of #4179, which will among many other features bring dark constellations, after which their hulls will be added. @alex-w , @10110111 any opinions/reviews there? |
|
I would - as we did it with Youla - ALWAYS automatically compute the convex hull (we don't need the user's permission to do so)
|
BTW: yes, that will stay separately; a group of students is currently starting (today) to create the same again as a plugin
only the identifiers: the J2000 coord. don't make sense for historical times - stars/ objects may move in/out of hulls with precession and proper motion ... it needs to be done per time layer and only on demand and perhaps by also filtering for a specific sort of objects (e.g. using the VSX with or SIMBAD object search within the boundaries of the hulls)
yes ... :-) having in mind SIMBAD: they give several options. I would write CSV as this can be opened with EXCEL but also with notepad/ vi/ joe ...
yes, I agree
These options are already implemented in the above mentione d query-tools (SIMBAD, VSX). perhaps not reinvent the wheel? ;-) So, new suggestion: just export the boundaries of the convex hull and start a SIMBAD-query in a browser within these borders.
Yes, I've seen the Easter-egg-PR: looked into it, seems great - will get back later |
Computing the hull is done on loading, sure. It should still be updated periodically (once per year?) to deal with proper motion, though. Meanwhile I am even returning the hull in Constellation::getRegion() (I hope this does not break anything...) in order to get the star list (here I get some stars back, but not yet all. May need a look from @henrysky for this.) But: I wonder how many users are interested in the feature in the first place (I have never seen it in any discussion outside your papers, but maybe I have just not read the right books in the last 44 years...), therefore I would prefer to hide even the GUI for it until users are advanced enough to edit config.ini. On my little observing laptop I'd probably not be interested at all and avoid GUI clutter. On my desktop with 34" screen, doing something else more scientific, maybe. Feel invited to write a motivation page for the User Guide how, why and when to apply those new features in users' everyday use of Stellarium. @alex-w , @10110111 opinions please: hide GUI by default, show GUI by default, or always show Hull GUI elements? No, the star selection is similar to the stick figures, done by SC authors. Yes, Ptolemy's unformed stars and the Chinese "added" stars are the two applications coming to my mind. (Not sure if we can somehow add the "Added" stars by name search instead?) Of course, everybody can be author, make her private copy and add stars as seen fit. Disprove my skepticism! I will invite the 50th, no, the 15th reported active, regular, serious user of this feature (not the 15th to try once!) to a drink when we meet at a conference or elsewhere. :-) |
well, for the "cone search" for any other object type then stars (the black hole binary etc.), I am thinking of use cases in astrophysics/ applied historical astronomy - yes, that's definitely not mainstream, and therefore not tought at universities ... and therefore, I was thinking about a tool for maybe five users or so: users of high level of education but not in history for stars (at least those brighter than 6.5 mag), I have some use cases in mind but perhaps a bit fuzzy currently to articulate here. However, I admit that they are all technical - nothing what the average user will actively do with knowing it OK with the decision to let only SC-authors add stars: so don't feel bothered by it: we will do that in the Sky Culture Maker-Dev-groups. :-) One thing less for you. :-) |
I guess you can hide it, but then the feature must be described in the User Guide, which the advanced users will likely(?) use and search (so "convex" and "hull" words need to be searchable). |
let's not call it "convex hull", but "historical constellation area". This will be something that users may indeed want to see I would create a button for it that is can be added to the menu like the boundary button (or use the boundary button instead - we had this discussion earlier but I don't remember the outcome). |
OK for "Constellation area" (somewhat shorter label), explained in the SUG more technically as convex hull (therefore the naming in json). The Guide is always searchable, but yes, these terms should all go into the index. There will be an action, configurable to be placed on a hotkey. But do we really need a separate button? @sushoff please feel free to already add Ptolemy's unformed stars to the Almagest SC so we have a practical example ready in 25.2. |
This comment was marked as resolved.
This comment was marked as resolved.
Ah, ok. Not working with SIMBAD on a regular basis, we'd need API, URLS etc. Maybe some example? This could be another query for the OnlineQueries plugin, of course. But given that extracting data from our catalogs should also be about 10 lines of code, I'd like to have that offline as well. |
- Seems buggy, does by far not deliver everything yet!
I guess what is meant is not a button but a combobox, e.g.
This will then not use too much space (there's some empty space between the checkbox and the spinboxes). |
This comment was marked as resolved.
This comment was marked as resolved.
"Andromeda", "hull_extension: [113726]" works in general - but what do I do with the M7 star cluster? |
Hmm, so far constellation stick figures consisted of HIP indices. You could identify any HIP/Gaia star at the right edge of M7 (so that M7 is mostly included in the hull) and add this. The long Gaia number must be coded as string, else it should work. |
No, I think @sushoff wants a bottom bar button. These can be activated/configured a bit, of course, but still... an action/hotkey would be all I'd use. I am afraid that of the 25 users of hulls, 20 will want both, borders and hulls, so the combo in the dialog is IMO not useful. I will add color/checkbox as usual, and hide them by default. The Guide will instruct users that there are more features and how to activate them. But only after #4179. |
- Probably now we have crash on exit, on Qt5.
I think for convex hulls UI should have separate elements (like for constellations or asterisms) - display, color, line width and opacity. |
yes, that's what we are all doing up to now: a similar problem is, of course, omega Centauri, in many historical star catalogues... but it would be better to allow coordinates of these ... there more (much fainter) globular clusters like this - some of them even have HR numbers (I found at least one some years ago and suppose that there are more) |
OK, for the hull_extension, it may be possible to either
Hmm, by this idea, maybe even the constellation lines themselves could include DSO like ω Cen. Let's try in the hull_extension first... |
@sushoff Are these to be inserted in modern or in greek_almagest? |
I strongly support your second idea! @gzotti This will indeed solve several problems (with omega Cen in the Almagest etc.) Yes, the list I had sent yesterday was for the Almagest (just quickly scripted from my private/local database) |
- data from @sushoff
-->
But no idea what to do with |
yes, it was in the script used to translate HR to HIP (when no HR, then "unknown entity") and I left it in to highlight the problem |
Description
For specialized research around star or transient identification, the idea of convex hulls came up.
This branch shall develop this feature.
I don't yet know whether it really fulfills its task or whether it should be hidden behind some manual setting. @sushoff, what is the actual purpose, and what do you want to use them for? Just display, or any advanced scripting/query functions? Practical issues arise for 1-2 star constellations, and a Voronoi-like splitting could actually form a connected spatial segmentation without overlaps and gaps. However, I have never played in these fields.
As technical issue, I have no idea why line drawing is suppressed in the long northern connection line of Hydra, eastern edge of Serpens (cauda) and for Draco intersecting UMi. Given I use SphericalPolygons for drawing, It may be similar to various issues reported around polygonal horizons.
Fixes # (issue)
Screenshots (if appropriate):
Type of change
How Has This Been Tested?
Test Configuration:
Checklist: