Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Caillat Michel
yafits
Commits
a9fd02b4
Commit
a9fd02b4
authored
Feb 26, 2020
by
Caillat Michel
Browse files
Added the function createAndAppendFromHTML
parent
d6619aab
Changes
1
Hide whitespace changes
Inline
Side-by-side
yafitsv/public/javascript/olqv_utils.js
View file @
a9fd02b4
...
@@ -9,26 +9,26 @@
...
@@ -9,26 +9,26 @@
/*
/*
** A class to convert a right ascension expressed in decimal degree into an integer value expressing a pixel index.
** A class to convert a right ascension expressed in decimal degree into an integer value expressing a pixel index.
*/
*/
let
RADDtoPixelConverter
=
function
(
radd0
,
radd1
,
rapix0
,
rapix1
)
{
var
RADDtoPixelConverter
=
function
(
radd0
,
radd1
,
rapix0
,
rapix1
)
{
console
.
log
(
"
let
RADDtoPixelConverter = function(radd0, radd1, rapix0, rapix1) { : entering
"
);
console
.
log
(
"
var
RADDtoPixelConverter = function(radd0, radd1, rapix0, rapix1) { : entering
"
);
let
_radd0
=
radd0
;
var
_radd0
=
radd0
;
let
_rapix0
=
rapix0
;
var
_rapix0
=
rapix0
;
let
_slope
=
(
rapix1
-
rapix0
)
/
(
radd1
-
radd0
);
var
_slope
=
(
rapix1
-
rapix0
)
/
(
radd1
-
radd0
);
console
.
log
(
"
_radd0 =
"
+
_radd0
+
"
, _rapix0 =
"
+
_rapix0
);
console
.
log
(
"
_radd0 =
"
+
_radd0
+
"
, _rapix0 =
"
+
_rapix0
);
this
.
convert
=
function
(
radd
)
{
this
.
convert
=
function
(
radd
)
{
return
_rapix0
+
(
radd
-
_radd0
)
*
_slope
;
return
_rapix0
+
(
radd
-
_radd0
)
*
_slope
;
}
}
console
.
log
(
"
let
RADDtoPixelConverter = function(radd0, radd1, rapix0, rapix1) { : exiting
"
);
console
.
log
(
"
var
RADDtoPixelConverter = function(radd0, radd1, rapix0, rapix1) { : exiting
"
);
};
};
/*
/*
** A class to convert a declination expressed in decimal degree into an integer value expressing a pixel index.
** A class to convert a declination expressed in decimal degree into an integer value expressing a pixel index.
*/
*/
let
DECDDtoPixelConverter
=
function
(
decdd0
,
decdd1
,
decpix0
,
decpix1
)
{
var
DECDDtoPixelConverter
=
function
(
decdd0
,
decdd1
,
decpix0
,
decpix1
)
{
let
_decdd0
=
decdd0
;
var
_decdd0
=
decdd0
;
let
_decpix0
=
decpix0
;
var
_decpix0
=
decpix0
;
let
_slope
=
(
decpix1
-
decpix0
)
/
(
decdd1
-
decdd0
);
var
_slope
=
(
decpix1
-
decpix0
)
/
(
decdd1
-
decdd0
);
this
.
convert
=
function
(
decdd
)
{
this
.
convert
=
function
(
decdd
)
{
return
_decpix0
+
(
decdd
-
_decdd0
)
*
_slope
;
return
_decpix0
+
(
decdd
-
_decdd0
)
*
_slope
;
...
@@ -39,7 +39,7 @@ let DECDDtoPixelConverter = function(decdd0, decdd1, decpix0, decpix1) {
...
@@ -39,7 +39,7 @@ let DECDDtoPixelConverter = function(decdd0, decdd1, decpix0, decpix1) {
** Converts a decimal number expected to represent an angle in degree
** Converts a decimal number expected to represent an angle in degree
** into a string expressing a right ascension ( H:M:S)
** into a string expressing a right ascension ( H:M:S)
*/
*/
let
DecDeg2HMS
=
function
(
deg
,
sep
=
'
:
'
){
var
DecDeg2HMS
=
function
(
deg
,
sep
=
'
:
'
){
//if(any(deg< 0 | deg>360)){stop('All deg values should be 0<=d<=360')}
//if(any(deg< 0 | deg>360)){stop('All deg values should be 0<=d<=360')}
//if (deg < 0)
//if (deg < 0)
//deg[deg < 0] = deg[deg < 0] + 360
//deg[deg < 0] = deg[deg < 0] + 360
...
@@ -54,12 +54,12 @@ let DecDeg2HMS = function(deg,sep=':'){
...
@@ -54,12 +54,12 @@ let DecDeg2HMS = function(deg,sep=':'){
** Converts a decimal number expected to represent an angle in degree
** Converts a decimal number expected to represent an angle in degree
** into a string expressing a declination ( D:M:S)
** into a string expressing a declination ( D:M:S)
*/
*/
let
DecDeg2DMS
=
function
(
deg
,
sep
=
'
:
'
){
var
DecDeg2DMS
=
function
(
deg
,
sep
=
'
:
'
){
let
sign
=
deg
<
0
?
'
-
'
:
'
+
'
;
var
sign
=
deg
<
0
?
'
-
'
:
'
+
'
;
deg
=
Math
.
abs
(
deg
);
deg
=
Math
.
abs
(
deg
);
let
DEG
=
Math
.
floor
(
deg
);
var
DEG
=
Math
.
floor
(
deg
);
let
MIN
=
Math
.
floor
((
deg
-
DEG
)
*
60
);
var
MIN
=
Math
.
floor
((
deg
-
DEG
)
*
60
);
let
SEC
=
(
deg
-
DEG
-
MIN
/
60
)
*
3600
;
var
SEC
=
(
deg
-
DEG
-
MIN
/
60
)
*
3600
;
SEC
=
Math
.
floor
(
SEC
*
1000
.)
/
1000
.;
SEC
=
Math
.
floor
(
SEC
*
1000
.)
/
1000
.;
if
(
SEC
<
0
.)
SEC
=
0
.;
if
(
SEC
>
60
)
SEC
=
60
.;
if
(
SEC
<
0
.)
SEC
=
0
.;
if
(
SEC
>
60
)
SEC
=
60
.;
...
@@ -73,18 +73,32 @@ let DecDeg2DMS = function(deg,sep=':'){
...
@@ -73,18 +73,32 @@ let DecDeg2DMS = function(deg,sep=':'){
** with the given parameter ra0pix, ra1pix ( interval in pixels )
** with the given parameter ra0pix, ra1pix ( interval in pixels )
** and ra0, ra1 ( the same interval in decimal degrees)
** and ra0, ra1 ( the same interval in decimal degrees)
*/
*/
function
raLabelFormatter
(
ra0pix
,
ra1pix
,
ra0
,
ra1
)
{
class
RaLabelFormatter
{
let
_ra0pix
=
ra0pix
;
static
enter
(
what
)
{
let
_ra1pix
=
ra1pix
;
console
.
group
(
this
.
name
+
"
.
"
+
what
);
let
_ra0
=
ra0
;
}
let
_ra1
=
ra1
;
let
_slope
=
((
_ra1
-
_ra0
)
/
(
_ra1pix
-
_ra0pix
))
static
exit
()
{
console
.
groupEnd
();
}
constructor
(
ra0pix
,
ra1pix
,
ra0
,
ra1
)
{
RaLabelFormatter
.
enter
(
this
.
constructor
.
name
);
this
.
ra0pix
=
ra0pix
;
this
.
ra1pix
=
ra1pix
;
this
.
ra0
=
ra0
;
this
.
ra1
=
ra1
;
this
.
slope
=
((
this
.
ra1
-
this
.
ra0
)
/
(
this
.
ra1pix
-
this
.
ra0pix
));
RaLabelFormatter
.
exit
();
}
/*
/*
** Returns the string representation of a RA in HMS given its input value in pixels.
** Returns the string representation of a RA in HMS given its input value in pixels.
*/
*/
this
.
format
=
function
(
rapix
)
{
format
(
rapix
)
{
let
res
=
_ra0
+
(
rapix
-
_ra0pix
)
*
_slope
;
//RaLabelFormatter.enter(this.format.name);
var
res
=
this
.
ra0
+
(
rapix
-
this
.
ra0pix
)
*
this
.
slope
;
//RaLabelFormatter.exit();
return
DecDeg2HMS
(
res
);
return
DecDeg2HMS
(
res
);
}
}
};
};
...
@@ -96,15 +110,29 @@ function raLabelFormatter (ra0pix, ra1pix, ra0, ra1) {
...
@@ -96,15 +110,29 @@ function raLabelFormatter (ra0pix, ra1pix, ra0, ra1) {
** with the given parameter dec0pix, dec1pix ( interval in pixels )
** with the given parameter dec0pix, dec1pix ( interval in pixels )
** and dec0, dec1 ( the same interval in decimal degrees)
** and dec0, dec1 ( the same interval in decimal degrees)
*/
*/
function
decLabelFormatter
(
dec0pix
,
dec1pix
,
dec0
,
dec1
)
{
class
DecLabelFormatter
{
let
_dec0pix
=
dec0pix
;
static
enter
(
what
)
{
let
_dec1pix
=
dec1pix
;
console
.
group
(
this
.
name
+
"
.
"
+
what
);
let
_dec0
=
dec0
;
}
let
_dec1
=
dec1
;
let
_slope
=
((
_dec1
-
_dec0
)
/
(
_dec1pix
-
_dec0pix
))
static
exit
()
{
console
.
groupEnd
();
this
.
format
=
function
(
decpix
)
{
}
let
res
=
_dec0
+
(
decpix
-
_dec0pix
)
*
_slope
;
constructor
(
dec0pix
,
dec1pix
,
dec0
,
dec1
)
{
DecLabelFormatter
.
enter
(
this
.
constructor
.
name
);
this
.
dec0pix
=
dec0pix
;
this
.
dec1pix
=
dec1pix
;
this
.
dec0
=
dec0
;
this
.
dec1
=
dec1
;
this
.
slope
=
((
this
.
dec1
-
this
.
dec0
)
/
(
this
.
dec1pix
-
this
.
dec0pix
));
DecLabelFormatter
.
exit
();
}
format
(
decpix
)
{
//DecLabelFormatter.enter(this.format.name);
var
res
=
this
.
dec0
+
(
decpix
-
this
.
dec0pix
)
*
this
.
slope
;
//DecLabelFormatter.exit();
return
DecDeg2DMS
(
res
);
return
DecDeg2DMS
(
res
);
}
}
};
};
...
@@ -217,11 +245,23 @@ function str2FloatArray(s, range=false) {
...
@@ -217,11 +245,23 @@ function str2FloatArray(s, range=false) {
return
result
;
return
result
;
}
}
/*
** A function which creates a document fragment out of an HTML string and appends it to the content of an existing element.
** The HTML string is assumed to describe a single element ( e.g. one signle div, p, etc. ).
** Returns the created element.
*/
function
createAndAppendFromHTML
(
html
,
element
)
{
var
template
=
document
.
createElement
(
'
template
'
);
template
.
innerHTML
=
html
.
trim
();
$
(
element
).
append
(
template
.
content
.
cloneNode
(
true
));
return
element
.
lastChild
;
}
/*
/*
** Two functions to log when a function is entered and exited
** Two functions to log when a function is entered and exited
*/
*/
function
ENTER
()
{
function
ENTER
()
{
let
caller
=
ENTER
.
caller
;
var
caller
=
ENTER
.
caller
;
if
(
caller
==
null
)
{
if
(
caller
==
null
)
{
result
=
"
_TOP_
"
;
result
=
"
_TOP_
"
;
}
}
...
@@ -232,7 +272,7 @@ function ENTER() {
...
@@ -232,7 +272,7 @@ function ENTER() {
}
}
function
EXIT
()
{
function
EXIT
()
{
let
caller
=
EXIT
.
caller
;
var
caller
=
EXIT
.
caller
;
if
(
caller
==
null
)
{
if
(
caller
==
null
)
{
result
=
"
_TOP_
"
;
result
=
"
_TOP_
"
;
}
}
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment