mirror of
https://github.com/fhem/fhem-mirror.git
synced 2025-03-04 05:16:45 +00:00
Common.pm: test
git-svn-id: https://svn.fhem.de/fhem/trunk@27189 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
parent
2bfd149a3b
commit
3ae1fed04c
@ -269,14 +269,14 @@ sub AlignArray {
|
|||||||
my @searchposlon = ($hash->{helper}{searchpos}[0]{longitude}, $hash->{helper}{searchpos}[1]{longitude});
|
my @searchposlon = ($hash->{helper}{searchpos}[0]{longitude}, $hash->{helper}{searchpos}[1]{longitude});
|
||||||
my @searchposlat = ($hash->{helper}{searchpos}[0]{latitude}, $hash->{helper}{searchpos}[1]{latitude});
|
my @searchposlat = ($hash->{helper}{searchpos}[0]{latitude}, $hash->{helper}{searchpos}[1]{latitude});
|
||||||
my $maxLength = $hash->{helper}{$activity}{maxLength};
|
my $maxLength = $hash->{helper}{$activity}{maxLength};
|
||||||
for ( $i = 0; $i < $poslen-2; $i++ ) { # 2 due to 2 alignment data sets at the end
|
for ( $i = 0; $i < $poslen-2; $i++ ) { # -2 due to 2 alignment data sets at the end
|
||||||
if ( $searchposlon[ 0 ] == $hash->{helper}{mower}{attributes}{positions}[ $i ]{longitude}
|
if ( $searchposlon[ 0 ] == $hash->{helper}{mower}{attributes}{positions}[ $i ]{longitude}
|
||||||
&& $searchposlat[ 0 ] == $hash->{helper}{mower}{attributes}{positions}[ $i ]{latitude}
|
&& $searchposlat[ 0 ] == $hash->{helper}{mower}{attributes}{positions}[ $i ]{latitude}
|
||||||
&& $searchposlon[ 1 ] == $hash->{helper}{mower}{attributes}{positions}[ $i+1 ]{longitude}
|
&& $searchposlon[ 1 ] == $hash->{helper}{mower}{attributes}{positions}[ $i+1 ]{longitude}
|
||||||
&& $searchposlat[ 1 ] == $hash->{helper}{mower}{attributes}{positions}[ $i+1 ]{latitude} ) {
|
&& $searchposlat[ 1 ] == $hash->{helper}{mower}{attributes}{positions}[ $i+1 ]{latitude} ) {
|
||||||
# timediff per step
|
# timediff per step
|
||||||
my $dt = 0;
|
my $dt = 0;
|
||||||
$dt = int(($hash->{helper}{mower}{attributes}{metadata}{statusTimestamp} - $hash->{helper}{$arrayName}[0]{statusTimestamp})/$i) if ( $i && @{ $hash->{helper}{$arrayName} } );
|
$dt = int( ( $hash->{helper}{mower}{attributes}{metadata}{statusTimestamp} - $hash->{helper}{$arrayName}[ 0 ]{statusTimestamp} ) / $i) if ( $i && @{ $hash->{helper}{$arrayName} } );
|
||||||
for ($k=$i-1;$k>-1;$k--) {
|
for ($k=$i-1;$k>-1;$k--) {
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -284,15 +284,15 @@ sub AlignArray {
|
|||||||
|
|
||||||
if ( @{ $hash->{helper}{$arrayName} } ) {
|
if ( @{ $hash->{helper}{$arrayName} } ) {
|
||||||
|
|
||||||
unshift (@{$hash->{helper}{$arrayName}}, dclone($hash->{helper}{mower}{attributes}{positions}[ $k ]) );
|
unshift ( @{$hash->{helper}{$arrayName}}, dclone( $hash->{helper}{mower}{attributes}{positions}[ $k ] ) );
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
$hash->{helper}{$arrayName}[ 0 ] = dclone($hash->{helper}{mower}{attributes}{positions}[ $k ]);
|
$hash->{helper}{$arrayName}[ 0 ] = dclone( $hash->{helper}{mower}{attributes}{positions}[ $k ] );
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pop (@{$hash->{helper}{$arrayName}}) if (@{$hash->{helper}{$arrayName}} > $maxLength);
|
pop ( @{ $hash->{helper}{$arrayName} } ) if ( @{ $hash->{helper}{$arrayName} } > $maxLength );
|
||||||
$hash->{helper}{$arrayName}[ 0 ]{statusTimestamp} = $hash->{helper}{mower}{attributes}{metadata}{statusTimestamp} - $dt * $k;
|
$hash->{helper}{$arrayName}[ 0 ]{statusTimestamp} = $hash->{helper}{mower}{attributes}{metadata}{statusTimestamp} - $dt * $k;
|
||||||
|
|
||||||
push ( @temp, dclone( $hash->{helper}{mower}{attributes}{positions}[ $k ] ) );
|
push ( @temp, dclone( $hash->{helper}{mower}{attributes}{positions}[ $k ] ) );
|
||||||
@ -301,7 +301,7 @@ sub AlignArray {
|
|||||||
|
|
||||||
::FHEM::Devices::AMConnect::Common::posMinMax( $hash, \@temp );
|
::FHEM::Devices::AMConnect::Common::posMinMax( $hash, \@temp );
|
||||||
#callFn if present
|
#callFn if present
|
||||||
if ( $hash->{helper}{$activity}{callFn} && @{$hash->{helper}{$arrayName}} > 1) {
|
if ( $hash->{helper}{$activity}{callFn} && @{ $hash->{helper}{$arrayName} } > 1 ) {
|
||||||
|
|
||||||
$hash->{helper}{$activity}{cnt} = $i;
|
$hash->{helper}{$activity}{cnt} = $i;
|
||||||
no strict "refs";
|
no strict "refs";
|
||||||
@ -319,7 +319,7 @@ sub AlignArray {
|
|||||||
}
|
}
|
||||||
|
|
||||||
$hash->{helper}{newdatasets} = $i;
|
$hash->{helper}{newdatasets} = $i;
|
||||||
$hash->{helper}{searchpos} = [ dclone( $hash->{helper}{mower}{attributes}{positions}[0] ), dclone( $hash->{helper}{mower}{attributes}{positions}[1] ) ];
|
$hash->{helper}{searchpos} = [ dclone( $hash->{helper}{mower}{attributes}{positions}[ 0 ] ), dclone( $hash->{helper}{mower}{attributes}{positions}[ 1 ] ) ];
|
||||||
return undef;
|
return undef;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
################################################################################
|
################################################################################
|
||||||
|
|
||||||
package FHEM::Devices::AMConnect::Common;
|
package FHEM::Devices::AMConnect::Common;
|
||||||
|
my $cvsid = '$Id$';
|
||||||
use strict;
|
use strict;
|
||||||
use warnings;
|
use warnings;
|
||||||
use POSIX;
|
use POSIX;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user