You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@streampipes.apache.org by Florian Micklich <mi...@apache.org> on 2020/05/16 18:00:53 UTC

Rewrite of existing Distance Calculation PE's and introducing unit measurement

Hi all,

I rewrote the Distance Calculation and Static Distance Calculation PE'
a bit.

The changelog:

 * Introducing the term geodesic calculation
 * Added  two new user parameters input fields. 
    * Number of decimal position for the calculation result
    * output unit to choose from (Meter, Km, Foot or Mile)
 * Created SpLengthCalulatior Class to handle all kind of length
   measurement and calculation results. Included here the method from
   the DistanceUtility.class and rewrite the return statement to fit to
   the new  SpLengthCalulatior object.
 * Handle different Units via javax.measurement (license BSD) in the
   SpLengthCalulatior constructor. This is the first attempt and feel
   free to discuss this implementation and possible compatibility of
   qudt!
 * added maven dependencies to pom file
 * Output-Strategy with two parameters: value und type of unit
 * Completed documentation
 * Added Icons
 * In Static Distance Calculation added range check for user-input Lat
   Lng values
 * Added default values in Static Distance Calculation for faster
   testing (will be removed later on)

I tested everything with the ISS Adapter and the Static Distance
Calculator.

ToDo's: 
 * set dynamic qudt output in output strategy depending of the user
   choice
 * improvement of Units-Symbol

The calculation result can be improved with another algorithm.
Therefore i created a Jira Ticket(STREAMPIPES-131).

These implementation can be found atm in the feature/geodesicCalc
branch.

Greetings
Florian




Re: Rewrite of existing Distance Calculation PE's and introducing unit measurement

Posted by Philipp Zehnder <ze...@fzi.de>.
Hi Florian,

you can use the custom transformation output strategy for that [1]. There you have to add a callback in which you can define the output strategy.

We use qudt for the description of different measures, as well as for the transformation. It contains a transformation factor to transform between the different units.

Philipp




[1] https://streampipes.apache.org/docs/docs/dev-guide-output-strategies/#custom-transform-output <https://streampipes.apache.org/docs/docs/dev-guide-output-strategies/#custom-transform-output>

> On 24. May 2020, at 13:42, Florian Micklich <mi...@apache.org> wrote:
> 
> Hi Philipp,
> 
> the whole branch is not finished yet and the algorithms change is only
> one part of it.
> 
> I introduces javax.measure to handle units. So far I think it is not
> possible to use qudt the way I want to.
> QUDT is only for semantic purpose useable, is this correct?
> 
> So the user can choose from different output units, which will be
> handled inside the SpLengthCalculator class.
> 
> Another tasks is to set the users chosen unit to the output strategy:
> .measurementUnit(URI.create("http://qudt.org/vocab/unit#DEPENDINGUNIT")
> )
> 
> How can this be done?
> Greetings
> Florian
> 
> 
> 
> Am Freitag, den 22.05.2020, 19:33 +0000 schrieb Philipp Zehnder:
>> Hi Florian,
>> very cool!
>> 
>> Do you want to merge the branch directly into dev or are there any
>> open issues?
>> 
>> Philipp
>> 
>>> On 21. May 2020, at 13:17, Florian Micklich <mi...@apache.org>
>>> wrote:
>>> Hi all,
>>> 
>>> I resolved STREAMPIPES-131 and the result of the (geodetic)
>>> distance
>>> calculation is now more accurate. It is using now the GeographicLib
>>> [1]
>>> under MIT license. 
>>> 
>>> GeographicLib is used in many other "Geo-Tools" like PostGIS or
>>> QGIS
>>> and now even in StreamPipes.
>>> 
>>> 
>>> For a deeper look in the functionality, start here [2]
>>> 
>>> This is committed in the feature/geodesicCalc branch atm.
>>> 
>>> Greetings
>>> Florian
>>> 
>>> [1] https://geographiclib.sourceforge.io/
>>> [2] https://geographiclib.sourceforge.io/scripts/geod-calc.html
>>> 
>>> 
>>> Am Samstag, den 16.05.2020, 20:00 +0200 schrieb Florian Micklich:
>>>> Hi all,
>>>> 
>>>> I rewrote the Distance Calculation and Static Distance
>>>> Calculation
>>>> PE'
>>>> a bit.
>>>> 
>>>> The changelog:
>>>> 
>>>> * Introducing the term geodesic calculation
>>>> * Added  two new user parameters input fields. 
>>>>    * Number of decimal position for the calculation result
>>>>    * output unit to choose from (Meter, Km, Foot or Mile)
>>>> * Created SpLengthCalulatior Class to handle all kind of length
>>>>   measurement and calculation results. Included here the method
>>>> from
>>>>   the DistanceUtility.class and rewrite the return statement to
>>>> fit
>>>> to
>>>>   the new  SpLengthCalulatior object.
>>>> * Handle different Units via javax.measurement (license BSD) in
>>>> the
>>>>   SpLengthCalulatior constructor. This is the first attempt and
>>>> feel
>>>>   free to discuss this implementation and possible compatibility
>>>> of
>>>>   qudt!
>>>> * added maven dependencies to pom file
>>>> * Output-Strategy with two parameters: value und type of unit
>>>> * Completed documentation
>>>> * Added Icons
>>>> * In Static Distance Calculation added range check for user-
>>>> input
>>>> Lat
>>>>   Lng values
>>>> * Added default values in Static Distance Calculation for faster
>>>>   testing (will be removed later on)
>>>> 
>>>> I tested everything with the ISS Adapter and the Static Distance
>>>> Calculator.
>>>> 
>>>> ToDo's: 
>>>> * set dynamic qudt output in output strategy depending of the
>>>> user
>>>>   choice
>>>> * improvement of Units-Symbol
>>>> 
>>>> The calculation result can be improved with another algorithm.
>>>> Therefore i created a Jira Ticket(STREAMPIPES-131).
>>>> 
>>>> These implementation can be found atm in the feature/geodesicCalc
>>>> branch.
>>>> 
>>>> Greetings
>>>> Florian
>>>> 
>>>> 
>> 
>> .........................................................
>> M. Sc. Philipp Zehnder
>> Wissenschaftlicher Mitarbeiter | Research Scientist
>> Information Process Engineering (IPE)
>> 
>> FZI Forschungszentrum Informatik
>> Haid-und-Neu-Str. 10–14 
>> 76131 Karlsruhe, Germany
>> Tel.: +49 721 9654-805
>> Fax: +49 721 9654-806
>> 
>> zehnder@fzi.de
>> https://www.fzi.de/mitarbeiter/philipp-zehnder
>> 
>> .........................................................
>> FZI Forschungszentrum Informatik
>> Stiftung des bürgerlichen Rechts
>> Stiftung Az: 14-0563.1 Regierungspräsidium Karlsruhe
>> Vorstand: Prof. Dr. Andreas Oberweis, Jan Wiesenberger, Prof. Dr.-
>> Ing. J. Marius Zöllner
>> Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
>> .........................................................
>> 
>> 

.........................................................
M. Sc. Philipp Zehnder
Wissenschaftlicher Mitarbeiter | Research Scientist
Information Process Engineering (IPE)
 
FZI Forschungszentrum Informatik
Haid-und-Neu-Str. 10–14 
76131 Karlsruhe, Germany
Tel.: +49 721 9654-805
Fax: +49 721 9654-806

zehnder@fzi.de <ma...@fzi.de>
https://www.fzi.de/mitarbeiter/philipp-zehnder
 
.........................................................
FZI Forschungszentrum Informatik
Stiftung des bürgerlichen Rechts
Stiftung Az: 14-0563.1 Regierungspräsidium Karlsruhe
Vorstand: Prof. Dr. Andreas Oberweis, Jan Wiesenberger, Prof. Dr.-Ing. J. Marius Zöllner
Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
.........................................................


Re: Rewrite of existing Distance Calculation PE's and introducing unit measurement

Posted by Florian Micklich <mi...@apache.org>.
Hi Philipp,

the whole branch is not finished yet and the algorithms change is only
one part of it.

I introduces javax.measure to handle units. So far I think it is not
possible to use qudt the way I want to.
QUDT is only for semantic purpose useable, is this correct?

So the user can choose from different output units, which will be
handled inside the SpLengthCalculator class.

Another tasks is to set the users chosen unit to the output strategy:
.measurementUnit(URI.create("http://qudt.org/vocab/unit#DEPENDINGUNIT")
)

How can this be done?
Greetings
Florian



Am Freitag, den 22.05.2020, 19:33 +0000 schrieb Philipp Zehnder:
> Hi Florian,
> very cool!
> 
> Do you want to merge the branch directly into dev or are there any
> open issues?
> 
> Philipp
> 
> > On 21. May 2020, at 13:17, Florian Micklich <mi...@apache.org>
> > wrote:
> > Hi all,
> > 
> > I resolved STREAMPIPES-131 and the result of the (geodetic)
> > distance
> > calculation is now more accurate. It is using now the GeographicLib
> > [1]
> > under MIT license. 
> > 
> > GeographicLib is used in many other "Geo-Tools" like PostGIS or
> > QGIS
> > and now even in StreamPipes.
> > 
> > 
> > For a deeper look in the functionality, start here [2]
> > 
> > This is committed in the feature/geodesicCalc branch atm.
> > 
> > Greetings
> > Florian
> > 
> > [1] https://geographiclib.sourceforge.io/
> > [2] https://geographiclib.sourceforge.io/scripts/geod-calc.html
> > 
> > 
> > Am Samstag, den 16.05.2020, 20:00 +0200 schrieb Florian Micklich:
> > > Hi all,
> > > 
> > > I rewrote the Distance Calculation and Static Distance
> > > Calculation
> > > PE'
> > > a bit.
> > > 
> > > The changelog:
> > > 
> > >  * Introducing the term geodesic calculation
> > >  * Added  two new user parameters input fields. 
> > >     * Number of decimal position for the calculation result
> > >     * output unit to choose from (Meter, Km, Foot or Mile)
> > >  * Created SpLengthCalulatior Class to handle all kind of length
> > >    measurement and calculation results. Included here the method
> > > from
> > >    the DistanceUtility.class and rewrite the return statement to
> > > fit
> > > to
> > >    the new  SpLengthCalulatior object.
> > >  * Handle different Units via javax.measurement (license BSD) in
> > > the
> > >    SpLengthCalulatior constructor. This is the first attempt and
> > > feel
> > >    free to discuss this implementation and possible compatibility
> > > of
> > >    qudt!
> > >  * added maven dependencies to pom file
> > >  * Output-Strategy with two parameters: value und type of unit
> > >  * Completed documentation
> > >  * Added Icons
> > >  * In Static Distance Calculation added range check for user-
> > > input
> > > Lat
> > >    Lng values
> > >  * Added default values in Static Distance Calculation for faster
> > >    testing (will be removed later on)
> > > 
> > > I tested everything with the ISS Adapter and the Static Distance
> > > Calculator.
> > > 
> > > ToDo's: 
> > >  * set dynamic qudt output in output strategy depending of the
> > > user
> > >    choice
> > >  * improvement of Units-Symbol
> > > 
> > > The calculation result can be improved with another algorithm.
> > > Therefore i created a Jira Ticket(STREAMPIPES-131).
> > > 
> > > These implementation can be found atm in the feature/geodesicCalc
> > > branch.
> > > 
> > > Greetings
> > > Florian
> > > 
> > > 
> 
> .........................................................
> M. Sc. Philipp Zehnder
> Wissenschaftlicher Mitarbeiter | Research Scientist
> Information Process Engineering (IPE)
>  
> FZI Forschungszentrum Informatik
> Haid-und-Neu-Str. 10–14 
> 76131 Karlsruhe, Germany
> Tel.: +49 721 9654-805
> Fax: +49 721 9654-806
> 
> zehnder@fzi.de
> https://www.fzi.de/mitarbeiter/philipp-zehnder
>  
> .........................................................
> FZI Forschungszentrum Informatik
> Stiftung des bürgerlichen Rechts
> Stiftung Az: 14-0563.1 Regierungspräsidium Karlsruhe
> Vorstand: Prof. Dr. Andreas Oberweis, Jan Wiesenberger, Prof. Dr.-
> Ing. J. Marius Zöllner
> Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
> .........................................................
> 
> 

Re: Rewrite of existing Distance Calculation PE's and introducing unit measurement

Posted by Philipp Zehnder <ze...@fzi.de>.
Hi Florian,

very cool!

Do you want to merge the branch directly into dev or are there any open issues?

Philipp

> On 21. May 2020, at 13:17, Florian Micklich <mi...@apache.org> wrote:
> 
> Hi all,
> 
> I resolved STREAMPIPES-131 and the result of the (geodetic) distance
> calculation is now more accurate. It is using now the GeographicLib [1]
> under MIT license. 
> 
> GeographicLib is used in many other "Geo-Tools" like PostGIS or QGIS
> and now even in StreamPipes.
> 
> 
> For a deeper look in the functionality, start here [2]
> 
> This is committed in the feature/geodesicCalc branch atm.
> 
> Greetings
> Florian
> 
> [1] https://geographiclib.sourceforge.io/
> [2] https://geographiclib.sourceforge.io/scripts/geod-calc.html
> 
> 
> Am Samstag, den 16.05.2020, 20:00 +0200 schrieb Florian Micklich:
>> Hi all,
>> 
>> I rewrote the Distance Calculation and Static Distance Calculation
>> PE'
>> a bit.
>> 
>> The changelog:
>> 
>> * Introducing the term geodesic calculation
>> * Added  two new user parameters input fields. 
>>    * Number of decimal position for the calculation result
>>    * output unit to choose from (Meter, Km, Foot or Mile)
>> * Created SpLengthCalulatior Class to handle all kind of length
>>   measurement and calculation results. Included here the method from
>>   the DistanceUtility.class and rewrite the return statement to fit
>> to
>>   the new  SpLengthCalulatior object.
>> * Handle different Units via javax.measurement (license BSD) in the
>>   SpLengthCalulatior constructor. This is the first attempt and feel
>>   free to discuss this implementation and possible compatibility of
>>   qudt!
>> * added maven dependencies to pom file
>> * Output-Strategy with two parameters: value und type of unit
>> * Completed documentation
>> * Added Icons
>> * In Static Distance Calculation added range check for user-input
>> Lat
>>   Lng values
>> * Added default values in Static Distance Calculation for faster
>>   testing (will be removed later on)
>> 
>> I tested everything with the ISS Adapter and the Static Distance
>> Calculator.
>> 
>> ToDo's: 
>> * set dynamic qudt output in output strategy depending of the user
>>   choice
>> * improvement of Units-Symbol
>> 
>> The calculation result can be improved with another algorithm.
>> Therefore i created a Jira Ticket(STREAMPIPES-131).
>> 
>> These implementation can be found atm in the feature/geodesicCalc
>> branch.
>> 
>> Greetings
>> Florian
>> 
>> 
> 

.........................................................
M. Sc. Philipp Zehnder
Wissenschaftlicher Mitarbeiter | Research Scientist
Information Process Engineering (IPE)
 
FZI Forschungszentrum Informatik
Haid-und-Neu-Str. 10–14 
76131 Karlsruhe, Germany
Tel.: +49 721 9654-805
Fax: +49 721 9654-806

zehnder@fzi.de <ma...@fzi.de>
https://www.fzi.de/mitarbeiter/philipp-zehnder
 
.........................................................
FZI Forschungszentrum Informatik
Stiftung des bürgerlichen Rechts
Stiftung Az: 14-0563.1 Regierungspräsidium Karlsruhe
Vorstand: Prof. Dr. Andreas Oberweis, Jan Wiesenberger, Prof. Dr.-Ing. J. Marius Zöllner
Vorsitzender des Kuratoriums: Ministerialdirigent Günther Leßnerkraus
.........................................................


Re: Rewrite of existing Distance Calculation PE's and introducing unit measurement

Posted by Florian Micklich <mi...@apache.org>.
Hi all,

I resolved STREAMPIPES-131 and the result of the (geodetic) distance
calculation is now more accurate. It is using now the GeographicLib [1]
under MIT license. 

GeographicLib is used in many other "Geo-Tools" like PostGIS or QGIS
and now even in StreamPipes.


For a deeper look in the functionality, start here [2]

This is committed in the feature/geodesicCalc branch atm.

Greetings
Florian

[1] https://geographiclib.sourceforge.io/
[2] https://geographiclib.sourceforge.io/scripts/geod-calc.html


Am Samstag, den 16.05.2020, 20:00 +0200 schrieb Florian Micklich:
> Hi all,
> 
> I rewrote the Distance Calculation and Static Distance Calculation
> PE'
> a bit.
> 
> The changelog:
> 
>  * Introducing the term geodesic calculation
>  * Added  two new user parameters input fields. 
>     * Number of decimal position for the calculation result
>     * output unit to choose from (Meter, Km, Foot or Mile)
>  * Created SpLengthCalulatior Class to handle all kind of length
>    measurement and calculation results. Included here the method from
>    the DistanceUtility.class and rewrite the return statement to fit
> to
>    the new  SpLengthCalulatior object.
>  * Handle different Units via javax.measurement (license BSD) in the
>    SpLengthCalulatior constructor. This is the first attempt and feel
>    free to discuss this implementation and possible compatibility of
>    qudt!
>  * added maven dependencies to pom file
>  * Output-Strategy with two parameters: value und type of unit
>  * Completed documentation
>  * Added Icons
>  * In Static Distance Calculation added range check for user-input
> Lat
>    Lng values
>  * Added default values in Static Distance Calculation for faster
>    testing (will be removed later on)
> 
> I tested everything with the ISS Adapter and the Static Distance
> Calculator.
> 
> ToDo's: 
>  * set dynamic qudt output in output strategy depending of the user
>    choice
>  * improvement of Units-Symbol
> 
> The calculation result can be improved with another algorithm.
> Therefore i created a Jira Ticket(STREAMPIPES-131).
> 
> These implementation can be found atm in the feature/geodesicCalc
> branch.
> 
> Greetings
> Florian
> 
>