diff --git a/README.md b/README.md new file mode 100644 index 0000000..3e8a5a2 --- /dev/null +++ b/README.md @@ -0,0 +1,2 @@ +# converterApp +Converter Application AngularJS diff --git a/doc/ToMeters_doc.txt b/doc/ToMeters_doc.txt new file mode 100644 index 0000000..b61fa9e --- /dev/null +++ b/doc/ToMeters_doc.txt @@ -0,0 +1,109 @@ +[Αναφορά στην λειτουργία των συναρτήσεων] +[Author] Zafeiris Dimitrios + +[Γενική Περιγραφή] + +Μετατροπές μεγεθών (mm, cm, km, πόδια, ιντσες) σε μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +MmToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε χιλιοστά του μέτρου. + +[Περιγραφή] + Μετατροπή χιλιοστών σε μέτρα + +[Παράδειγμα] + +let input = 100; +let output = input * 0.001; +Αποτέλεσμα: output = 0.01 μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +CmToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε εκατοστά του μέτρου. + +[Περιγραφή] + Μετατροπή εκατοστών σε μέτρα + +[Παράδειγμα] + +let input = 1000; +let output = input * 0.01; +Αποτέλεσμα: output = 10 μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +KmToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε χιλιόμετρα . + +[Περιγραφή] + Μετατροπή χιλιομέτρων σε μέτρα + +[Παράδειγμα] + +let input = 1; +let output = input * 1000; +Αποτέλεσμα: output = 1000 μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +YardsToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε γιάρδες . + +[Περιγραφή] + Μετατροπή γιάρδων σε μέτρα + +[Παράδειγμα] + +let input = 5; +let output = input * 0.9144; +Αποτέλεσμα: output = 4.572 μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +FeetToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε πόδια . + +[Περιγραφή] + Μετατροπή ποδιών σε μέτρα + +[Παράδειγμα] + +let input = 5; +let output = input * 0.0254; +Αποτέλεσμα: output = 1.524 μέτρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +InchesToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε ίντσες . + +[Περιγραφή] + Μετατροπή ιντσών σε μέτρα + +[Παράδειγμα] + +let input = 5; +let output = input * 0.0254; +Αποτέλεσμα: output = 1.524 μέτρα + diff --git a/doc/fromMeterTo_doc.txt b/doc/fromMeterTo_doc.txt new file mode 100644 index 0000000..e757e3e --- /dev/null +++ b/doc/fromMeterTo_doc.txt @@ -0,0 +1,109 @@ +[Αναφορά στην λειτουργία των συναρτήσεων] +[Author] Zafeiris Dimitrios + +[Γενική Περιγραφή] + +Μετατροπές μέτρων σε διάφορα μεγέθη(mm, cm, km, πόδια, ιντσες) + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +MetersToMM + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε χιλιοστά + +[Παράδειγμα] + +let input = 1; +let output = input * 1000; +Αποτέλεσμα: output = 1000 mm + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +CmToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε εκατοστά + +[Παράδειγμα] + +let input = 1; +let output = input * 100; +Αποτέλεσμα: output = 100 εκατοστά + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +MetersToKm + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε χιλιόμετρα + +[Παράδειγμα] + +let input = 5000; +let output = input * 0.001; +Αποτέλεσμα: output = 5 χιλιόμετρα + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +MetersToYd + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε γιάρδες + +[Παράδειγμα] + +let input = 5; +let output = input * 3.28084; +Αποτέλεσμα: output = 5.46807 γιάρδες + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +MetersToFeet + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε πόδια + +[Παράδειγμα] + +let input = 5; +let output = input * 3.28084; +Αποτέλεσμα: output = 16.4042 πόδια + +---------------------------------------------------------------------------------------------------------------------------------- + +[Όνομα συνάρτησης] +InchesToMeters + +[Παράμετροι] +- input: Είναι η εισαγόμενη τιμή σε μέτρα. + +[Περιγραφή] + Μετατροπή μέτρων σε ιντσες + +[Παράδειγμα] + +let input = 32; +let output = input * 39.3701; +Αποτέλεσμα: output = 1259.84 ιντσες + diff --git a/index.html b/index.html index bc79c3b..2e583cb 100644 --- a/index.html +++ b/index.html @@ -1,79 +1,111 @@ - - - - + + + + - - + + - - + + - + - Converter App - - + + Converter App + +
- -
-
- +
+
+
-
-
- -
+
+ - - - \ No newline at end of file + + diff --git a/scripts/controllers.js b/scripts/controllers.js index 6c13263..824f824 100644 --- a/scripts/controllers.js +++ b/scripts/controllers.js @@ -1,36 +1,63 @@ -app.controller('converterController',['$scope','Converter',function($scope,Conveter){ - $scope.conv = new Conveter(); +app.controller ('converterController', [ + '$scope', + 'Converter', + function ($scope, Converter) { + $scope.conv = new Converter (); $scope.c = 0; - $scope.k = 0; -}]); + $scope.k = 0; -app.controller('calculationController',['$scope','Calculator','Converter',function($scope,Calculator,Conveter){ + // Initialize the variables for converter from meters to + $scope.inputM = 0; + $scope.outputM = 0; + $scope.selectedChoice = 0; + $scope.choices = [ + {value: 'mm', displayName: 'Χιλιοστά'}, + {value: 'cm', displayName: 'Εκατοστά'}, + {value: 'km', displayName: 'Χιλιόμετρα'}, + {value: 'yd', displayName: 'Γιάρδες'}, + {value: 'ft', displayName: 'Πόδια'}, + {value: 'inc', displayName: 'Ίντσες'}, + ]; + }, +]); + +app.controller ('calculationController', [ + '$scope', + 'Calculator', + 'Converter', + function ($scope, Calculator, Converter) { + $scope.calc = new Calculator (); + $scope.conv = new Converter (); - $scope.calc = new Calculator(); - $scope.conv = new Converter(); - $scope.OhmsR = 1; $scope.OhmsV = 1; $scope.OhmsI = 1; + }, +]); -}]); - - -app.config(function($routeProvider){ - $routeProvider - .when("/", { - templateUrl: 'templates/main.html' +app.config (function ($routeProvider) { + $routeProvider + .when ('/', { + templateUrl: 'templates/main.html', + }) + .when ('/templates/temperature', { + templateUrl: 'templates/temperature.html', + controller: 'converterController', }) - .when("/templates/temperature", { - templateUrl: 'templates/temperature.html', - controller: 'converterController' + .when ('/templates/area', { + templateUrl: 'templates/area.html', + controller: 'calculationController', }) - .when("/templates/area", { - templateUrl: 'templates/area.html', - controller: 'calculationController' + .when ('/templates/ohmslaw', { + templateUrl: 'templates/ohmslaw.html', + controller: 'calculationController', }) - .when("/templates/ohmslaw", { - templateUrl: 'templates/ohmslaw.html', - controller: 'calculationController' + .when ('/templates/toMeters', { + templateUrl: 'templates/toMeters.html', + controller: 'converterController', }) -}); \ No newline at end of file + .when ('/templates/fromMeters', { + templateUrl: 'templates/fromMeterTo.html', + controller: 'converterController', + }); +}); diff --git a/scripts/services.js b/scripts/services.js index 4731b74..254f3e2 100644 --- a/scripts/services.js +++ b/scripts/services.js @@ -1,148 +1,199 @@ -app.factory('Calculator',function(){ - - // constructor - function Calculator() { - } - - // συνάρτηση υπολογισμού του ρεύματος με γνωστά την αντίσταση και την τάση -Calculator.prototype.Ohms_I=function(R,V,units) { +app.factory ('Calculator', function () { + // constructor + function Calculator () {} + + // συνάρτηση υπολογισμού του ρεύματος με γνωστά την αντίσταση και την τάση + Calculator.prototype.Ohms_I = function (R, V, units) { // δήλωσε μία μεταβλητή που θα κρατά το ρεύμα και αρχικοποίησέ τη σε 0 let I = 0; // στην περίπτωση που η παράμετρος R δεν είναι 0 τότε - if (R != 0) - I = V/R; // υπολόγισε την τιμή του ρεύματος + if (R != 0) I = V / R; // υπολόγισε την τιμή του ρεύματος // άν πρέπει να εμφανίσουμε μονάδες μέτρησης στο αποτέλεσμα - if (units == true) - I = I + " Α"; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης - - return I; // επέστρεψε την τιμή του ρεύματος -} -// συνάρτηση υπολογισμού της τάσης με γνωστά την αντίσταση και το ρεύμα -Calculator.prototype.Ohms_V=function(R,I,units) { + if (units == true) I = I + ' Α'; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης + return I; // επέστρεψε την τιμή του ρεύματος + }; + // συνάρτηση υπολογισμού της τάσης με γνωστά την αντίσταση και το ρεύμα + Calculator.prototype.Ohms_V = function (R, I, units) { // δήλωσε μια μεταβλητή που θα κρατά το αποτέλεσμα - let V = R * I; // υπολόγισε το αποτέλεσμα της τάσης + let V = R * I; // υπολόγισε το αποτέλεσμα της τάσης - // άν πρέπει να εμφανίσουμε μονάδες μέτρησης στο αποτέλεσμα - if (units == true) - V = V + " V"; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης + // άν πρέπει να εμφανίσουμε μονάδες μέτρησης στο αποτέλεσμα + if (units == true) V = V + ' V'; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης - return V; // επέστρεψε το αποτέλεσμα -} -// συνάρτηση υπολογισμού της αντίστασης με γνωστά την τάση και το ρεύμα -Calculator.prototype.Ohms_R=function(V,I,units) { + return V; // επέστρεψε το αποτέλεσμα + }; + // συνάρτηση υπολογισμού της αντίστασης με γνωστά την τάση και το ρεύμα + Calculator.prototype.Ohms_R = function (V, I, units) { // δήλωσε μία μεταβλητή που θα κρατά την τιμή της αντίστασης let R = 0; // άν η παράμετρος I δέν έχει την τιμή 0 - if (I != 0) - R = V/I; // υπολόγισε την αντίσταση απο τις παραμέτρους - - // άν πρέπει να εμφανίσουμε μονάδες μέτρησης στο αποτέλεσμα - if (units == true) - R = R + " Ω"; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης - - return R; // επέστρεψε την τιμή της αντίστασης -} - -// συνάρτηση εμβαδού τριγώνου -Calculator.prototype.triangle_area=function(a,h,units) { + if (I != 0) R = V / I; // υπολόγισε την αντίσταση απο τις παραμέτρους + + // άν πρέπει να εμφανίσουμε μονάδες μέτρησης στο αποτέλεσμα + if (units == true) R = R + ' Ω'; // μορφοποίησε το αποτέλεσμα σε μορφή συμβολοσειράς με μονάδα μέτρησης + + return R; // επέστρεψε την τιμή της αντίστασης + }; + + // συνάρτηση εμβαδού τριγώνου + Calculator.prototype.triangle_area = function (a, h, units) { // δήλωση εμβαδού let E = 0; - - E = a * h/2; // υπολογισμός + + E = a * h / 2; // υπολογισμός // εμφάνιση μονάδας - if (units == true) - E = E + " cm^2"; + if (units == true) E = E + ' cm^2'; - return E; // επιστροφή τιμής εμβαδού -} + return E; // επιστροφή τιμής εμβαδού + }; -// συνάρτηση υπολογισμού ύψους τριγώνου -Calculator.prototype.triangle_height=function(a,E,units) { + // συνάρτηση υπολογισμού ύψους τριγώνου + Calculator.prototype.triangle_height = function (a, E, units) { // δήλωση ύψους - let h = 0; - // η βάση δεν πρέπει να είναι =0 - if (a != 0) - h = 2*E/a; // υπολογισμός - - // εμφάνιση μονάδας - if (units == true) - h = h + " cm"; - - return h; // επιστροφή τιμής - } + let h = 0; + // η βάση δεν πρέπει να είναι =0 + if (a != 0) h = 2 * E / a; // υπολογισμός + + // εμφάνιση μονάδας + if (units == true) h = h + ' cm'; + + return h; // επιστροφή τιμής + }; // συνάρτηση υπολογισμού βάσης τριγώνου - Calculator.prototype.triangle_base=function(h,E,units) { + Calculator.prototype.triangle_base = function (h, E, units) { // δήλωση βάσης let a = 0; - // το ύψος δεν πρέπει να είναι =0 - if (h != 0) - a = 2*E/h; // υπολογισμός + // το ύψος δεν πρέπει να είναι =0 + if (h != 0) a = 2 * E / h; // υπολογισμός // εμφάνιση μονάδας - if (units == true) - a = a + " cm"; - - return a; // επιστροφή τιμής -} - - return Calculator; - }); - - - - app.factory('Converter',function(){ - - // constructor - function Converter() { - } - - Converter.prototype.celsiusToFahrenheit=function(C, accuracy) { - let F = (parseFloat(C) * 9) / 5 + 32; - F = F.toFixed(accuracy); - + if (units == true) a = a + ' cm'; + + return a; // επιστροφή τιμής + }; + + return Calculator; +}); + +app.factory ('Converter', function () { + // constructor + function Converter () {} + + Converter.prototype.celsiusToFahrenheit = function (C, accuracy) { + let F = parseFloat (C) * 9 / 5 + 32; + F = F.toFixed (accuracy); + return F; - } - - Converter.prototype.celsiusToKelvin=function(C, accuracy) { - let K = parseFloat(C) + 273.15; - K = K.toFixed(accuracy); - + }; + + Converter.prototype.celsiusToKelvin = function (C, accuracy) { + let K = parseFloat (C) + 273.15; + K = K.toFixed (accuracy); + return K; - } - - Converter.prototype.kelvinToCelsius=function(K, accuracy) { - let C = parseFloat(K) - 273.15; - C = C.toFixed(accuracy); - + }; + + Converter.prototype.kelvinToCelsius = function (K, accuracy) { + let C = parseFloat (K) - 273.15; + C = C.toFixed (accuracy); + return C; - } - - Converter.prototype.kelvinToFahrenheit=function(K, accuracy) { - let F = (parseFloat(K) * 9) / 5 - 459.67; - F = F.toFixed(accuracy); - + }; + + Converter.prototype.kelvinToFahrenheit = function (K, accuracy) { + let F = parseFloat (K) * 9 / 5 - 459.67; + F = F.toFixed (accuracy); + return F; - } - -Converter.prototype.fahrenheitToCelsius=function(F, accuracy) { - let C = ((parseFloat(F) - 32) * 5) / 9; - C = C.toFixed(accuracy); - + }; + + Converter.prototype.fahrenheitToCelsius = function (F, accuracy) { + let C = (parseFloat (F) - 32) * 5 / 9; + C = C.toFixed (accuracy); + return C; - } - - Converter.prototype.fahrenheitToKelvin=function(F, accuracy) { - let K = ((parseFloat(F) + 459.67) * 5) / 9; - K = K.toFixed(accuracy); - - return K; - } - + }; + + Converter.prototype.fahrenheitToKelvin = function (F, accuracy) { + let K = (parseFloat (F) + 459.67) * 5 / 9; + K = K.toFixed (accuracy); - - return Converter; - }); \ No newline at end of file + return K; + }; + + // converter mm to meters + Converter.prototype.MmToMeters = function (input) { + let output = input * 0.001; + return output.toFixed (3); + }; + // converter cm to meters + Converter.prototype.CmToMeters = function (input) { + let output = input * 0.01; + return output.toFixed (2); + }; + // converter kilometres to meters + Converter.prototype.KmToMeters = function (input) { + let output = input * 1000; + return output.toFixed (2); + }; + + // converter yards to meters + Converter.prototype.YardsToMeters = function (input) { + let output = input * 0.9144; + return output.toFixed (2); + }; + + // converter feet to meters + Converter.prototype.FeetToMeters = function (input) { + let output = input * 0.3048; + return output.toFixed (2); + }; + + // converter inches to meters + Converter.prototype.InchesToMeters = function (input) { + let output = input * 0.0254; + return output.toFixed (2); + }; + + // converter meters to mm + Converter.prototype.MetersToMM = function (input) { + let output = input * 1000; + return output.toFixed (2); + }; + + // converter meters to mm + Converter.prototype.MetersToCm = function (input) { + let output = input * 100; + return output.toFixed (2); + }; + + // converter meters to km + Converter.prototype.MetersToKm = function (input) { + let output = input * 0.001; + return output.toFixed (3); + }; + + // converter meters to yards + Converter.prototype.MetersToYd = function (input) { + let output = input * 1.09361; + return output.toFixed (2); + }; + + // converter meters to feet + Converter.prototype.MetersToFeet = function (input) { + let output = input * 3.28084; + return output.toFixed (2); + }; + + // converter meters to inches + Converter.prototype.MetersToFeet = function (input) { + let output = input * 39.3701; + return output.toFixed (2); + }; + + return Converter; +}); diff --git a/templates/fromMeterTo.html b/templates/fromMeterTo.html new file mode 100644 index 0000000..ea6b9aa --- /dev/null +++ b/templates/fromMeterTo.html @@ -0,0 +1,67 @@ +

Μετατροπή μέτρων σε άλλα μεγέθη

+
+
+
+
+ +
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
ΜέγεθοςΤιμή
Χιλιοστά (mm){{conv.MetersToMM(inputM)}}
Εκατοστά (cm){{conv.MetersToCm(inputM)}}
Χιλιόμετρα (km){{conv.MetersToKm(inputM)}}
Γιάρδες (yd){{conv.MetersToYd(inputM)}}
Ποδια (ft){{conv.MetersToFeet(inputM)}}
Ίντσες (in){{conv.MetersToFeet(inputM)}}
+
+
+ +
+
+ +
+ diff --git a/templates/toMeters.html b/templates/toMeters.html new file mode 100644 index 0000000..e243938 --- /dev/null +++ b/templates/toMeters.html @@ -0,0 +1,71 @@ +

Μετατροπή διάφορων μεγεθών σε μέτρα

+
+
+
+
+
+ +
+
+ + +
+
+
+
+
+
+
+
+ {{conv.MmToMeters(inputM)}} μέτρα +
+
+ {{conv.CmToMeters(inputM)}} μέτρα +
+
+ {{conv.KmToMeters(inputM)}} μέτρα +
+
+ {{conv.YardsToMeters(inputM)}} μέτρα +
+
+ {{conv.FeetToMeters(inputM)}} μέτρα +
+
+ {{conv.InchesToMeters(inputM)}} μέτρα +
+
+
+
+

+ {{selectedChoice}} m

+

+
+