diff --git a/GDL/GDL.cbp b/GDL/GDL.cbp
index da04117d68..380a50130d 100644
--- a/GDL/GDL.cbp
+++ b/GDL/GDL.cbp
@@ -5,9 +5,10 @@
-
+
+
@@ -47,6 +48,7 @@
+
@@ -118,6 +120,7 @@
+
@@ -155,6 +158,7 @@
+
@@ -224,6 +228,7 @@
+
@@ -261,6 +266,7 @@
+
@@ -331,6 +337,7 @@
+
@@ -370,6 +377,95 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -478,6 +574,12 @@
+
+
+
+
+
+
@@ -689,7 +791,7 @@
-
+
diff --git a/GDL/GDL.layout b/GDL/GDL.layout
index 2d427bb7f1..3f0c89ae6a 100644
--- a/GDL/GDL.layout
+++ b/GDL/GDL.layout
@@ -7,13 +7,13 @@
-
-
+
+
-
+
@@ -67,12 +67,15 @@
-
-
+
+
+
+
+
@@ -85,14 +88,14 @@
-
+
-
-
+
+
@@ -115,44 +118,44 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
-
+
+
@@ -166,22 +169,22 @@
-
-
+
+
-
-
+
+
-
-
+
+
-
+
-
+
@@ -190,20 +193,20 @@
-
+
-
+
-
-
+
+
-
-
+
+
@@ -214,11 +217,11 @@
-
+
-
-
+
+
@@ -226,11 +229,17 @@
-
-
+
+
-
-
+
+
+
+
+
+
+
+
@@ -292,8 +301,8 @@
-
-
+
+
@@ -322,7 +331,7 @@
-
+
@@ -370,17 +379,17 @@
-
-
+
+
-
+
-
+
@@ -448,17 +457,17 @@
-
-
+
+
-
-
+
+
-
+
@@ -505,11 +514,11 @@
-
+
-
+
@@ -544,10 +553,10 @@
-
+
-
+
@@ -673,8 +682,8 @@
-
-
+
+
diff --git a/GDL/GDL/ChooseObject.cpp b/GDL/GDL/ChooseObject.cpp
index 9e7b3b6cef..13671baf73 100644
--- a/GDL/GDL/ChooseObject.cpp
+++ b/GDL/GDL/ChooseObject.cpp
@@ -104,19 +104,23 @@ onlyObjectOfType(onlyObjectOfType_)
SetSizer(FlexGridSizer1);
editMenuItem = new wxMenuItem((&Menu1), ID_MENUITEM2, _("Choisir cet objet"), wxEmptyString, wxITEM_NORMAL);
Menu1.Append(editMenuItem);
+ #ifdef __WXMSW__
Menu1.Remove(editMenuItem);
wxFont boldFont(wxDEFAULT,wxDEFAULT,wxFONTSTYLE_NORMAL,wxBOLD,false,wxEmptyString,wxFONTENCODING_DEFAULT);
editMenuItem->SetFont(boldFont);
Menu1.Append(editMenuItem);
+ #endif
Menu1.AppendSeparator();
MenuItem1 = new wxMenuItem((&Menu1), ID_MENUITEM1, _("Pour ajouter des objets, utilisez l\'éditeur d\'objets"), wxEmptyString, wxITEM_NORMAL);
Menu1.Append(MenuItem1);
editGroupMenuItem = new wxMenuItem((&Menu2), ID_MENUITEM3, _("Choisir ce groupe"), wxEmptyString, wxITEM_NORMAL);
Menu2.Append(editGroupMenuItem);
+ #ifdef __WXMSW__
Menu2.Remove(editGroupMenuItem);
wxFont boldFont2(wxDEFAULT,wxDEFAULT,wxFONTSTYLE_NORMAL,wxBOLD,false,wxEmptyString,wxFONTENCODING_DEFAULT);
editGroupMenuItem->SetFont(boldFont2);
Menu2.Append(editGroupMenuItem);
+ #endif
Menu2.AppendSeparator();
MenuItem4 = new wxMenuItem((&Menu2), ID_MENUITEM4, _("Pour ajouter des groupes, utilisez l\'éditeur de groupes d\'objets"), wxEmptyString, wxITEM_NORMAL);
Menu2.Append(MenuItem4);
diff --git a/GDL/GDL/EditComment.cpp b/GDL/GDL/EditComment.cpp
index 6e92ec0278..7e51fb29e0 100644
--- a/GDL/GDL/EditComment.cpp
+++ b/GDL/GDL/EditComment.cpp
@@ -31,7 +31,7 @@ commentEvent(event_)
wxFlexGridSizer* FlexGridSizer2;
wxStaticBoxSizer* StaticBoxSizer1;
wxFlexGridSizer* FlexGridSizer1;
-
+
Create(parent, wxID_ANY, _("Editer le commentaire"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxMINIMIZE_BOX, _T("wxID_ANY"));
FlexGridSizer1 = new wxFlexGridSizer(0, 1, 0, 0);
FlexGridSizer1->AddGrowableCol(0);
@@ -59,15 +59,15 @@ commentEvent(event_)
FlexGridSizer1->Fit(this);
FlexGridSizer1->SetSizeHints(this);
Center();
-
+
Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditComment::OnColorBtClick);
Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditComment::OnOkBtClick);
Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditComment::OnAnnulerBtClick);
Connect(ID_BUTTON4,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditComment::OnAideBtClick);
//*)
- Com1Edit->SetValue( commentEvent.com1 );
- Com2Edit->SetValue( commentEvent.com2 );
+ Com1Edit->ChangeValue( commentEvent.com1 );
+ Com2Edit->ChangeValue( commentEvent.com2 );
ColorBt->SetBackgroundColour(wxColour(commentEvent.r, commentEvent.v, commentEvent.b ));
}
diff --git a/GDL/GDL/EditExpression.cpp b/GDL/GDL/EditExpression.cpp
index c38a880cb0..1fc4b1264f 100644
--- a/GDL/GDL/EditExpression.cpp
+++ b/GDL/GDL/EditExpression.cpp
@@ -264,7 +264,7 @@ mainObjectsName(mainObjectsName_)
imageListVal->Add(( wxBitmap( "res/actions/net.png", wxBITMAP_TYPE_ANY ) ) );
ValList->AssignImageList( imageListVal );
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshLists();
}
@@ -376,73 +376,8 @@ void EditExpression::RefreshLists()
}
}
- /*dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Positions" ), 1 );
- ObjList->AppendItem( dossier, _( "Position x d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Position y d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Position x d'un point d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Position y d'un point d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Distance entre deux objets" ), 0 );
- ObjList->AppendItem( dossier, _( "Distance au carré entre deux objets" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Déplacement" ), 2 );
- ObjList->AppendItem( dossier, _( "Force moyenne en X" ), 0 );
- ObjList->AppendItem( dossier, _( "Force moyenne en Y" ), 0 );
- ObjList->AppendItem( dossier, _( "Angle moyen des forces" ), 0 );
- ObjList->AppendItem( dossier, _( "Longueur moyenne des forces" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Direction" ), 3 );
- ObjList->AppendItem( dossier, _( "Numéro de direction d'un objet" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Animations et images" ), 4 );
- ObjList->AppendItem( dossier, _( "Numéro d'animation d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Numéro de l'image d'un objet" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Taille" ), 17 );
- ObjList->AppendItem( dossier, _( "Echelle de la largeur d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Echelle de la hauteur d'un objet" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Variables" ), 5 );
- ObjList->AppendItem( dossier, _( "Valeur d'une variable" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Visibilité" ), 7 );
- ObjList->AppendItem( dossier, _( "Plan d'un objet" ), 0 );
-
- dossier = ObjList->AppendItem( ObjList->GetRootItem(), _( "Autre" ), 0 );
- ObjList->AppendItem( dossier, _( "Nombre d'objets concernés" ), 0 );
- ObjList->AppendItem( dossier, _( "Largeur d'un objet" ), 0 );
- ObjList->AppendItem( dossier, _( "Hauteur d'un objet" ), 0 );*/
ObjList->Expand(ObjList->GetRootItem());
-
- /*ValList->AppendItem( ValList->GetRootItem(), _( "Nombre aléatoire" ), 0 );
-
- dossier = ValList->AppendItem( ValList->GetRootItem(), _( "Variables" ), 5 );
- ValList->AppendItem( dossier, _( "Valeur d'une variable globale" ),0 );
- ValList->AppendItem( dossier, _( "Valeur d'une variable de la scène" ),0 );
-
- dossier = ValList->AppendItem( ValList->GetRootItem(), _( "Caméra" ), 10 );
- ValList->AppendItem( dossier, _( "Position X de la caméra" ),0 );
- ValList->AppendItem( dossier, _( "Position Y de la caméra" ),0 );
- ValList->AppendItem( dossier, _( "Rotation de la caméra" ),0 );
-
- dossier = ValList->AppendItem( ValList->GetRootItem(), _( "Souris" ), 11 );
- ValList->AppendItem( dossier, _( "Position X de la souris" ),0 );
- ValList->AppendItem( dossier, _( "Position Y de la souris" ),0 );
-
- ValList->AppendItem( ValList->GetRootItem(), _( "Temps écoulé depuis la dernière image" ), 0 );
- ValList->AppendItem( ValList->GetRootItem(), _( "Temps écoulé depuis le début de la scène" ), 0 );
- ValList->AppendItem( ValList->GetRootItem(), _( "Echelle du temps" ), 0 );
-
- dossier = ValList->AppendItem( ValList->GetRootItem(), _( "Temps" ),0 );
- ValList->AppendItem( dossier, _( "Heure" ),0 );
- ValList->AppendItem( dossier, _( "Minutes" ),0 );
- ValList->AppendItem( dossier, _( "Secondes" ),0 );
- ValList->AppendItem( dossier, _( "Numéro du jour dans la semaine" ),0 );
- ValList->AppendItem( dossier, _( "Numéro du jour dans le mois" ),0 );
- ValList->AppendItem( dossier, _( "Numéro du jour dans l'année" ),0 );
- ValList->AppendItem( dossier, _( "Années depuis 1900" ),0 );*/
-
ValList->Expand(ValList->GetRootItem());
-
}
void EditExpression::RefreshExpressionEdit()
@@ -493,56 +428,56 @@ void EditExpression::RefreshExpressionEdit()
void EditExpression::OnPlusBtClick(wxCommandEvent& event)
{
expression += "+";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnMinusBtClick(wxCommandEvent& event)
{
expression += "-";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnMultBtClick(wxCommandEvent& event)
{
expression += "*";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnDivBtClick(wxCommandEvent& event)
{
expression += "/";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnPOBtClick(wxCommandEvent& event)
{
expression += "(";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnPFBtClick(wxCommandEvent& event)
{
expression += ")";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnCosBtClick(wxCommandEvent& event)
{
expression += "cos";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnSinBtClick(wxCommandEvent& event)
{
expression += "sin";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
@@ -593,7 +528,7 @@ void EditExpression::OnAddPropBtClick(wxCommandEvent& event)
expression += "OBJ("+object+"["+associatedData->GetString()+"]"+parametersStr+")";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
return;
}
@@ -618,7 +553,7 @@ void EditExpression::OnAddValBtClick(wxCommandEvent& event)
expression += "VAL("+associatedData->GetString()+parametersStr+")";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
return;
}
@@ -652,84 +587,84 @@ void EditExpression::OnValListItemDoubleClicked(wxTreeEvent& event)
void EditExpression::OnButton2Click(wxCommandEvent& event)
{
expression += "^";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton3Click(wxCommandEvent& event)
{
expression += "E";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnBitmapButton2Click(wxCommandEvent& event)
{
expression += "sqrt(";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnBitmapButton1Click(wxCommandEvent& event)
{
expression += "nthroot(x,n)";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton4Click(wxCommandEvent& event)
{
expression += "exp(";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton1Click(wxCommandEvent& event)
{
expression += "log(";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton5Click(wxCommandEvent& event)
{
expression += "tan";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton6Click(wxCommandEvent& event)
{
expression += "abs";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton7Click(wxCommandEvent& event)
{
expression += "acos";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton8Click(wxCommandEvent& event)
{
expression += "asin";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnButton9Click(wxCommandEvent& event)
{
expression += "atan";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
void EditExpression::OnintBtClick(wxCommandEvent& event)
{
expression += "int(";
- ExpressionEdit->SetValue(expression);
+ ExpressionEdit->ChangeValue(expression);
RefreshExpressionEdit();
}
#endif
diff --git a/GDL/GDL/EditForEachEvent.cpp b/GDL/GDL/EditForEachEvent.cpp
index ad3146f3db..e06f54f9d9 100644
--- a/GDL/GDL/EditForEachEvent.cpp
+++ b/GDL/GDL/EditForEachEvent.cpp
@@ -91,7 +91,7 @@ scene(scene_)
Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditForEachEvent::OncancelBtClick);
//*)
- objectEdit->SetValue(eventEdited.GetObjectToPick());
+ objectEdit->ChangeValue(eventEdited.GetObjectToPick());
}
EditForEachEvent::~EditForEachEvent()
@@ -116,7 +116,7 @@ void EditForEachEvent::OnobjectBtClick(wxCommandEvent& event)
{
ChooseObject dialog(this, game, scene, true, string(objectEdit->GetValue().mb_str()));
if ( dialog.ShowModal() == 1 )
- objectEdit->SetValue(dialog.objectChosen);
+ objectEdit->ChangeValue(dialog.objectChosen);
return;
}
diff --git a/GDL/GDL/EditLink.cpp b/GDL/GDL/EditLink.cpp
index bd01fbb8b5..1c74c47649 100644
--- a/GDL/GDL/EditLink.cpp
+++ b/GDL/GDL/EditLink.cpp
@@ -50,7 +50,7 @@ eventToEdit(pEvent)
wxStaticBoxSizer* StaticBoxSizer1;
wxFlexGridSizer* FlexGridSizer1;
wxFlexGridSizer* FlexGridSizer17;
-
+
Create(parent, wxID_ANY, _("Créer un lien vers une autre scène"), wxDefaultPosition, wxDefaultSize, wxDEFAULT_DIALOG_STYLE, _T("wxID_ANY"));
FlexGridSizer1 = new wxFlexGridSizer(0, 1, 0, 0);
FlexGridSizer17 = new wxFlexGridSizer(0, 1, 0, 0);
@@ -116,7 +116,7 @@ eventToEdit(pEvent)
SetSizer(FlexGridSizer1);
FlexGridSizer1->Fit(this);
FlexGridSizer1->SetSizeHints(this);
-
+
Connect(ID_TEXTCTRL2,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&EditLink::OnStartEditText);
Connect(ID_TEXTCTRL3,wxEVT_COMMAND_TEXT_UPDATED,(wxObjectEventFunction)&EditLink::OnEndEditText);
Connect(ID_BUTTON1,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditLink::OnOkBtClick);
@@ -124,12 +124,12 @@ eventToEdit(pEvent)
Connect(ID_BUTTON3,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditLink::OnAideBtClick);
//*)
- NomSceneEdit->SetValue(eventToEdit.sceneLinked);
+ NomSceneEdit->ChangeValue(eventToEdit.sceneLinked);
if ( eventToEdit.start != -1 && eventToEdit.end != -1 )
{
OnlyEventsCheck->SetValue(true);
- StartEdit->SetValue(st(eventToEdit.start));
- EndEdit->SetValue(st(eventToEdit.end));
+ StartEdit->ChangeValue(st(eventToEdit.start));
+ EndEdit->ChangeValue(st(eventToEdit.end));
}
}
@@ -196,4 +196,4 @@ void EditLink::OnEndEditText(wxCommandEvent& event)
{
OnlyEventsCheck->SetValue(true);
}
-#endif
\ No newline at end of file
+#endif
diff --git a/GDL/GDL/EditRepeatEvent.cpp b/GDL/GDL/EditRepeatEvent.cpp
index 2998fab9ac..1f51220bb4 100644
--- a/GDL/GDL/EditRepeatEvent.cpp
+++ b/GDL/GDL/EditRepeatEvent.cpp
@@ -90,7 +90,7 @@ scene(scene_)
Connect(ID_BUTTON2,wxEVT_COMMAND_BUTTON_CLICKED,(wxObjectEventFunction)&EditRepeatEvent::OncancelBtClick);
//*)
- expressionEdit->SetValue(event.GetRepeatExpression());
+ expressionEdit->ChangeValue(event.GetRepeatExpression());
}
EditRepeatEvent::~EditRepeatEvent()
@@ -105,7 +105,7 @@ void EditRepeatEvent::OnexpressionBtClick(wxCommandEvent& )
vector < string > mainObjectsName;
EditExpression dialog(this, string( expressionEdit->GetValue().mb_str() ), game, scene, true, mainObjectsName);
if ( dialog.ShowModal() == 1 )
- expressionEdit->SetValue(dialog.expression);
+ expressionEdit->ChangeValue(dialog.expression);
return;
}
diff --git a/GDL/GDL/EditorObjet.cpp b/GDL/GDL/EditorObjet.cpp
index 9b8576d383..eb71436de1 100644
--- a/GDL/GDL/EditorObjet.cpp
+++ b/GDL/GDL/EditorObjet.cpp
@@ -607,7 +607,7 @@ void EditorObjet::RefreshImages()
if ( direction < object.GetAnimation( animation ).GetDirectionsNumber() )
{
//Temps
- TempsEdit->SetValue( stFromFloat( object.GetAnimation( animation ).GetDirection( direction ).GetTimeBetweenFrames() ) );
+ TempsEdit->ChangeValue( stFromFloat( object.GetAnimation( animation ).GetDirection( direction ).GetTimeBetweenFrames() ) );
//Boucle
if ( object.GetAnimation( animation ).GetDirection( direction ).IsLooping() )
diff --git a/GDL/GDL/ExtensionsLoader.cpp b/GDL/GDL/ExtensionsLoader.cpp
index 12ce143534..5546a35e73 100644
--- a/GDL/GDL/ExtensionsLoader.cpp
+++ b/GDL/GDL/ExtensionsLoader.cpp
@@ -109,6 +109,12 @@ void ExtensionsLoader::LoadAllExtensionsAvailable()
rep = opendir( directory.c_str() );
int l = 0;
+ if ( rep == NULL )
+ {
+ cout << "Unable to open Extensions directory." << endl;
+ return;
+ }
+
while (( lecture = readdir( rep ) ) )
{
string lec = lecture->d_name;
diff --git a/GDL/GDL/GDExpression.cpp b/GDL/GDL/GDExpression.cpp
index 8545be4a3a..bf95bf0aa8 100644
--- a/GDL/GDL/GDExpression.cpp
+++ b/GDL/GDL/GDExpression.cpp
@@ -1,23 +1,7 @@
#include "GDL/GDExpression.h"
#include "GDL/ExpressionInstruction.h"
#include "GDL/gpl.h"
-#include
-/**
- * Common mathematic function : Distance betwenn two point
- */
-double DistanceMathFunction(const double* p)
-{
- return gpl::sqrt((p[0]-p[2])*(p[0]-p[2])+(p[1]-p[3])*(p[1]-p[3]));
-}
-
-/**
- * Common mathematic function : Angle betwenn two point ( Degrees, GD Repere )
- */
-double AngleMathFunction(const double* p)
-{
- return -atan2(p[3]-p[1],(p[2]-p[0]))*180/3.14159265;
-}
GDExpression::GDExpression(std::string plainString_) : plainString(plainString_), oIDcomputed(false), isPreprocessed(false)
{
@@ -36,8 +20,6 @@ GDExpression::GDExpression(std::string plainString_) : plainString(plainString_)
else if (plainString == "/" ) modOperator = Divide;
else modOperator = UndefinedModification;
- mathExpression.AddFunction("distance", DistanceMathFunction, 4);
- mathExpression.AddFunction("angle", AngleMathFunction, 4);
}
GDExpression::~GDExpression()
diff --git a/GDL/GDL/GDExpression.h b/GDL/GDL/GDExpression.h
index 51ad98dfc0..b367d21945 100644
--- a/GDL/GDL/GDExpression.h
+++ b/GDL/GDL/GDExpression.h
@@ -4,7 +4,7 @@
#include
#include
#include
-#include "GDL/fparser/fparser.hh"
+#include "GDL/GDMathParser.h"
#include
#include "GDL/ExpressionInstruction.h"
#include "GDL/ObjectIdentifiersManager.h"
@@ -110,7 +110,7 @@ class GD_API GDExpression
mutable unsigned int oID; ///< Object identifier, if expression contains an object name.
mutable bool oIDcomputed;
- FunctionParser mathExpression; ///