Add files via upload

This commit is contained in:
Андрей 2021-03-29 20:43:07 +04:00 committed by GitHub
parent 64c6352265
commit 35131ba393
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
90 changed files with 1738 additions and 0 deletions

25
math/maplib.bas Normal file
View file

@ -0,0 +1,25 @@
FUNCTION CONSTRAINT(N AS DOUBLE, MINVAL AS DOUBLE, MAXVAL AS DOUBLE) AS DOUBLE
IF N < MINVAL THEN
CONSTRAINT=MINVAL
ELSEIF N > MAXVAL THEN
CONSTRAINT=MAXVAL
ELSE
CONSTRAINT=N
END IF
END FUNCTION
FUNCTION CONSTRAINTINT(N AS INTEGER, MINVAL AS INTEGER, MAXVAL AS INTEGER) AS VARIANT
CONSTRAINTINT=CONSTRAINT(DOUBLE(N),DOUBLE(MINVAL),DOUBLE(MAXVAL))
END FUNCTION
FUNCTION MAP(N AS DOUBLE, MINVALIN AS DOUBLE, MAXVALIN AS DOUBLE, MINVALOUT AS DOUBLE, MAXVALOUT AS DOUBLE, CONSTR AS BOOLEAN) AS DOUBLE
DIM CONV AS DOUBLE
REM CONV=N/(MAXVALIN/MAXVALOUT)
CONV=(N-MINVALIN)*(MAXVALOUT-MINVALOUT)/(MAXVALIN-MINVALIN)+MINVALOUT
IF CONSTR THEN
MAP=CONSTRAINT(CONV,MINVALOUT,MAXVALOUT)
ELSE
MAP=CONV
END IF
END FUNCTION
FUNCTION MAPINT(N AS INTEGER, MINVALIN AS INTEGER, MAXVALIN AS INTEGER, MINVALOUT AS INTEGER, MAXVALOUT AS INTEGER, CONSTR AS BOOLEAN) AS VARIANT
MAPINT=MAP(DOUBLE(N),DOUBLE(MINVALIN),DOUBLE(MAXVALIN),DOUBLE(MINVALOUT),DOUBLE(MAXVALOUT),CONSTR)
END FUNCTION