<div dir="ltr"><div dir="ltr"><div dir="ltr"><div>Laurent,</div><div><br></div><div>The hierarchy is: Point references a SpaceSys which contains the SpaceFrame and the CoordSpace (both in composition).</div>Point<br>   |-&gt; SpaceSys<br>         o-&gt; SpaceFrame<br>         o-&gt; PhysicalCoordSpace{Cartesian/SphericalCoordSpace}</div><div><br></div><div>But that does not negate the question.</div>  &quot;However, taking into consideration that spatial coordinates is the most used thing in Astronomy, I&#39;m wondering if it wouldn&#39;t be better to have one specific class for Cartesian points (refering to CartesianCoordSpace) and another for Spherical points (refering to SphericalCoordSpace).&quot;</div><div dir="ltr"><br><div>  * Earlier drafts of Coords (2018) had Frame-centric coords with standard spaces (CartesianCoord, LongLatCoord)..</div><div>  * Due to feedback on this representation, they migrated in 2019 to specialized singular coordinates (X,Y,Z,Long,Lat,R, etc) which referred to axes of standard spaces, and were used in frame-centric Measures.  Which is what went to the RFC phase.</div><div>  * There, the frame-centric and space-centric Measures were generally disliked (GalacticPosition, CartesianPosition)</div><div>  * The RFC actions called for replacing the specialized singular coordinates with a single Point Coordinate, and removing the specialized Measures, retaining only the single Position type containing a Point.  The consequence of users having to interrogate the Position to determine the details of frame/space was considered acceptable.</div><div><br></div><div>Obviously there is a sweet spot there somewhere, but I doubt we can settle into it until we have more implementation experience with it.  Adding a CartesianPoint and SphericalPoint which constrains the space is a simple update which can be done at any time.</div><div><br></div><div>Mark</div><div><br></div><div><br></div><div dir="ltr"><br></div><div dir="ltr"><br></div><div dir="ltr"><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Apr 7, 2020 at 5:42 AM Laurent MICHEL &lt;<a href="mailto:laurent.michel@astro.unistra.fr" target="_blank">laurent.michel@astro.unistra.fr</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">Dear DM<br>
<br>
I&#39;m exercising with Coords with spatial coordinates.<br>
<br>
My understanding is as follow:<br>
==============================<br>
Spatial coordinates are represented by Point instances that, skipping <br>
the details, refers to a SpaceSys that refer to a SpaceFrame that refer <br>
to a PhysicalCoordSpace that is either a SphericalCoordSpace or a <br>
CartesianCoordSpace.<br>
<br>
Point<br>
   |-&gt; SpaceSys<br>
         |-&gt; SpaceFrame<br>
              |-&gt; PhysicalCoordSpace{Cartesian/SphericalCoordSpace}<br>
<br>
So a client that gets a Point instance will have to step down this <br>
cascade and to check the class of the associated PhysicalCoordSpace <br>
instance before to know whether this point is  Cartesian or Spherical.<br>
<br>
Question:<br>
========<br>
This is consistent but not very practical. I understand that this model <br>
provides components for host models that will be designed in a way to <br>
avoid clients to do such inferences. This could be the case with the <br>
upgrade of Meas.<br>
However, taking into consideration that spatial coordinates is the most <br>
used thing in Astronomy, I&#39;m wondering if it wouldn&#39;t be better to have <br>
one specific class for Cartesian points (refering to <br>
CartesianCoordSpace) and another for Spherical points (refering to <br>
SphericalCoordSpace).<br>
<br>
As a side effect this would allow to have one specific spherical <br>
CoordSpace for the celestial sphere (lat ,long, R=1).<br>
<br>
Laurent<br>
-- <br>
---- Laurent MICHEL              Tel  (33 0) 3 68 85 24 37<br>
      Observatoire de Strasbourg  Fax  (33 0) 3 68 85 24 32<br>
      11 Rue de l&#39;Universite      Mail <a href="mailto:laurent.michel@astro.unistra.fr" target="_blank">laurent.michel@astro.unistra.fr</a><br>
      67000 Strasbourg (France)   Web  <a href="http://astro.u-strasbg.fr/~michel" rel="noreferrer" target="_blank">http://astro.u-strasbg.fr/~michel</a><br>
---<br>
</blockquote></div></div></div></div>