📄 labradlinearunits.pas
字号:
{ Copyright (C) 2007 Markus Ansmann
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. }
unit LabRADLinearUnits;
interface
type
TLabRADBaseUnits = (bum, bukg, bus, buA, buK, bumol, bucd, burad, busr);
TLabRADLUnitConversionInfo = record
Factor: Double;
Exponents: array[bum..busr] of integer;
end;
function FindUnit(FromUnits, ToUnits, Name: string): TLabRADLUnitConversionInfo;
procedure AddUnit(Token: string; Prefix: Boolean; Factor: Double; m, kg, s, A, K, mol, cd, rad, sr: Integer); overload;
implementation
type
TLabRADLUnitInfo = record
Token: string;
Prefix: Boolean;
Factor: Double;
m: Integer;
kg: Integer;
s: Integer;
A: Integer;
K: Integer;
mol: Integer;
cd: Integer;
rad: Integer;
sr: Integer;
end;
TLabRADUnitPrefixInfo = record
Prefix: string;
Factor: double;
end;
const
BasicLinearUnits: array[0..68] of TLabRADLUnitInfo =
((Token: 'm'; Prefix: true; Factor: 1; m: 1; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'g'; Prefix: true; Factor: 0.001; m: 0; kg: 1; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 's'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 1; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'A'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'K'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 1; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'mol'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 0; mol: 1; cd: 0; rad: 0; sr: 0),
(Token: 'cd'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 0),
(Token: 'rad'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 1; sr: 0),
(Token: 'sr'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 1),
(Token: 'Bq'; Prefix: true; Factor: 1; m: 0; kg: 0; s:-1; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'Ci'; Prefix: true; Factor: 3.7e10; m: 0; kg: 0; s:-1; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'acre'; Prefix: false; Factor: 4046.9; m: 2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'a'; Prefix: true; Factor: 100; m: 2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'F'; Prefix: true; Factor: 1; m:-2; kg:-1; s: 4; A: 2; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'C'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 1; A: 1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'S'; Prefix: true; Factor: 1; m:-2; kg:-1; s: 3; A: 2; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'V'; Prefix: true; Factor: 1; m: 2; kg: 1; s:-3; A:-1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'Ohm'; Prefix: true; Factor: 1; m: 2; kg: 1; s:-3; A:-2; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'Btu'; Prefix: false; Factor: 1055.1; m: 2; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'cal'; Prefix: true; Factor: 4.1868; m: 2; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'eV'; Prefix: true; Factor: 1.6022e-19; m: 2; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'erg'; Prefix: true; Factor: 1e-7; m: 2; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'J'; Prefix: true; Factor: 1; m: 2; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'dyn'; Prefix: true; Factor: 0.00001; m: 1; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'N'; Prefix: true; Factor: 1; m: 1; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'ozf'; Prefix: false; Factor: 0.27801; m: 1; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'lbf'; Prefix: false; Factor: 4.4482; m: 1; kg: 1; s:-2; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'Hz'; Prefix: true; Factor: 1; m: 0; kg: 0; s:-1; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'ft'; Prefix: false; Factor: 0.3048; m: 1; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'in'; Prefix: false; Factor: 0.0254; m: 1; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'mi'; Prefix: false; Factor: 1609.3; m: 1; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'nit'; Prefix: true; Factor: 1; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 0),
(Token: 'nits'; Prefix: true; Factor: 1; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 0),
(Token: 'sb'; Prefix: true; Factor: 10000; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 0),
(Token: 'fc'; Prefix: false; Factor: 10.764; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 1),
(Token: 'lx'; Prefix: true; Factor: 1; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 1),
(Token: 'phot'; Prefix: true; Factor: 10000; m:-2; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 1),
(Token: 'lm'; Prefix: true; Factor: 1; m: 0; kg: 0; s: 0; A: 0; K: 0; mol: 0; cd: 1; rad: 0; sr: 1),
(Token: 'Mx'; Prefix: true; Factor: 1e-8; m: 2; kg: 1; s:-2; A:-1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'Wb'; Prefix: true; Factor: 1; m: 2; kg: 1; s:-2; A:-1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'G'; Prefix: true; Factor: 0.0001; m: 0; kg: 1; s:-2; A:-1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'T'; Prefix: true; Factor: 1; m: 0; kg: 1; s:-2; A:-1; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'H'; Prefix: true; Factor: 1; m: 2; kg: 1; s:-2; A:-2; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'u'; Prefix: true; Factor: 1.6605e-27; m: 0; kg: 1; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'lb'; Prefix: false; Factor: 0.45359; m: 0; kg: 1; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: 'slug'; Prefix: false; Factor: 14.594; m: 0; kg: 1; s: 0; A: 0; K: 0; mol: 0; cd: 0; rad: 0; sr: 0),
(Token: '
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -