Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members  

SIG_GPFitnessFunction.cpp

00001 #include "SIGEL_GP/SIG_GPFitnessFunction.h"
00002 
00003 #include <cmath>
00004 
00005 SIGEL_GP::SIG_GPFitnessFunction::SIG_GPFitnessFunction(
00006 SIGEL_Program::SIG_Program & pprogram, 
00007 SIGEL_Robot::SIG_Robot & prob,
00008 SIGEL_Environment::SIG_Environment & penvironment, 
00009 SIGEL_Simulation::SIG_SimulationParameters & psimparameter,
00010 QString pname) : 
00011   program(pprogram),
00012   rob(prob),
00013   environment(penvironment),
00014   simparameter(psimparameter),
00015   name(pname)
00016   
00017 {};
00018 
00019 SIGEL_GP::SIG_GPFitnessFunction::~SIG_GPFitnessFunction() {};
00020 
00021 bool SIGEL_GP::SIG_GPFitnessFunction::isValid( double value )
00022 {
00023   return ( (value != HUGE_VAL) && (value != (-HUGE_VAL)) && (value==value) );
00024 };
00025 
00026 DL_vector SIGEL_GP::SIG_GPFitnessFunction::normalizeRobotPosition( DL_vector originalPosition,
00027                                                                    DL_matrix actualRobotRotation )
00028 {
00029   DL_vector robotsRealOrigin = rob.initialLocation;
00030   robotsRealOrigin.timesis( -1 );
00031 
00032   DL_vector normalizedPosition;
00033 
00034   actualRobotRotation.times( &robotsRealOrigin,
00035                              &normalizedPosition );
00036 
00037   normalizedPosition.plusis( &originalPosition );
00038 
00039   return normalizedPosition;
00040 };

Generated at Mon Sep 3 01:32:22 2001 for PG 368 - SIGEL by doxygen1.2.3 written by Dimitri van Heesch, © 1997-2000