diff options
author | Erich Eckner <git@eckner.net> | 2017-09-26 14:26:51 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2017-09-26 14:26:51 +0200 |
commit | 706c35a4c3a09d11b40c33f9c582c36ee86e5f02 (patch) | |
tree | 2bb01de34e5eebc433442bded6074feaba6e7fae | |
parent | ea581336bc987954043e165df6f4ac5210ba4c21 (diff) | |
download | epost-706c35a4c3a09d11b40c33f9c582c36ee86e5f02.tar.xz |
lambdaZuOmegaTransformation repariert (Achsen)
-rw-r--r-- | epost.lps | 139 | ||||
-rw-r--r-- | epostunit.pas | 3 | ||||
-rw-r--r-- | typenunit.pas | 23 | ||||
-rw-r--r-- | werteunit.inc | 4 | ||||
-rw-r--r-- | werteunit.pas | 6 |
5 files changed, 93 insertions, 82 deletions
@@ -23,8 +23,8 @@ <Filename Value="epostunit.pas"/> <IsPartOfProject Value="True"/> <EditorIndex Value="1"/> - <TopLine Value="7311"/> - <CursorPos X="20" Y="7313"/> + <TopLine Value="4754"/> + <CursorPos X="36" Y="4447"/> <UsageCount Value="201"/> <Loaded Value="True"/> </Unit2> @@ -38,19 +38,19 @@ <Unit4> <Filename Value="werteunit.pas"/> <IsPartOfProject Value="True"/> - <IsVisibleTab Value="True"/> <EditorIndex Value="8"/> - <TopLine Value="1833"/> - <CursorPos X="25" Y="1221"/> + <TopLine Value="286"/> + <CursorPos X="37" Y="306"/> <UsageCount Value="200"/> <Loaded Value="True"/> </Unit4> <Unit5> <Filename Value="typenunit.pas"/> <IsPartOfProject Value="True"/> + <IsVisibleTab Value="True"/> <EditorIndex Value="11"/> - <TopLine Value="2757"/> - <CursorPos X="31" Y="2786"/> + <TopLine Value="2192"/> + <CursorPos X="98" Y="2216"/> <UsageCount Value="200"/> <Loaded Value="True"/> </Unit5> @@ -77,7 +77,7 @@ <IsPartOfProject Value="True"/> <EditorIndex Value="10"/> <CursorPos X="35" Y="10"/> - <UsageCount Value="134"/> + <UsageCount Value="135"/> <Loaded Value="True"/> </Unit8> <Unit9> @@ -92,7 +92,7 @@ <EditorIndex Value="7"/> <TopLine Value="585"/> <CursorPos Y="603"/> - <UsageCount Value="11"/> + <UsageCount Value="12"/> <Loaded Value="True"/> </Unit10> <Unit11> @@ -100,7 +100,7 @@ <EditorIndex Value="6"/> <TopLine Value="47"/> <CursorPos X="63" Y="65"/> - <UsageCount Value="95"/> + <UsageCount Value="96"/> <Loaded Value="True"/> </Unit11> <Unit12> @@ -113,7 +113,7 @@ <EditorIndex Value="5"/> <TopLine Value="769"/> <CursorPos X="15" Y="801"/> - <UsageCount Value="69"/> + <UsageCount Value="70"/> <Loaded Value="True"/> </Unit13> <Unit14> @@ -121,7 +121,7 @@ <EditorIndex Value="2"/> <TopLine Value="126"/> <CursorPos X="7" Y="147"/> - <UsageCount Value="24"/> + <UsageCount Value="25"/> <Loaded Value="True"/> </Unit14> <Unit15> @@ -219,132 +219,131 @@ <Filename Value="werteunit.inc"/> <IsPartOfProject Value="True"/> <EditorIndex Value="9"/> - <TopLine Value="151"/> - <CursorPos X="8" Y="163"/> - <UsageCount Value="21"/> + <TopLine Value="113"/> + <CursorPos Y="107"/> + <UsageCount Value="22"/> <Loaded Value="True"/> </Unit28> </Units> <JumpHistory Count="30" HistoryIndex="29"> <Position1> - <Filename Value="werteunit.pas"/> - <Caret Line="36" TopLine="36"/> + <Filename Value="epostunit.pas"/> + <Caret Line="7313" Column="20" TopLine="7311"/> </Position1> <Position2> - <Filename Value="werteunit.pas"/> - <Caret Line="232" Column="119" TopLine="211"/> + <Filename Value="epostunit.pas"/> + <Caret Line="7337" Column="38" TopLine="7311"/> </Position2> <Position3> - <Filename Value="werteunit.pas"/> - <Caret Line="235" Column="46" TopLine="211"/> + <Filename Value="epostunit.pas"/> </Position3> <Position4> <Filename Value="epostunit.pas"/> - <Caret Line="3838" Column="36" TopLine="3822"/> + <Caret Line="7315" Column="29" TopLine="7308"/> </Position4> <Position5> <Filename Value="epostunit.pas"/> - <Caret Line="162" Column="45" TopLine="156"/> + <Caret Line="379" Column="19" TopLine="361"/> </Position5> <Position6> <Filename Value="epostunit.pas"/> - <Caret Line="3698" Column="53" TopLine="3684"/> + <Caret Line="3632" Column="53" TopLine="3603"/> </Position6> <Position7> - <Filename Value="epostunit.pas"/> - <Caret Line="3632" Column="45" TopLine="3614"/> + <Filename Value="werteunit.inc"/> + <Caret Line="107" Column="57" TopLine="88"/> </Position7> <Position8> <Filename Value="epostunit.pas"/> - <Caret Line="379" Column="19" TopLine="361"/> + <Caret Line="3698" Column="15" TopLine="3672"/> </Position8> <Position9> - <Filename Value="epostunit.pas"/> - <Caret Line="3632" Column="53" TopLine="3603"/> + <Filename Value="typenunit.pas"/> + <Caret Line="419" Column="35" TopLine="402"/> </Position9> <Position10> <Filename Value="epostunit.pas"/> - <Caret Line="3691" Column="25" TopLine="3663"/> + <Caret Line="3685" Column="35" TopLine="3672"/> </Position10> <Position11> - <Filename Value="werteunit.pas"/> - <Caret Line="2122" Column="69" TopLine="2106"/> + <Filename Value="epostunit.pas"/> + <Caret Line="175" TopLine="175"/> </Position11> <Position12> - <Filename Value="werteunit.pas"/> - <Caret Line="49" Column="32" TopLine="21"/> + <Filename Value="epostunit.pas"/> + <Caret Line="6110" TopLine="6094"/> </Position12> <Position13> - <Filename Value="werteunit.pas"/> - <Caret Line="50" Column="32" TopLine="22"/> + <Filename Value="epostunit.pas"/> + <Caret Line="2121" Column="26" TopLine="2099"/> </Position13> <Position14> - <Filename Value="werteunit.pas"/> - <Caret Line="51" Column="32" TopLine="23"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2192" Column="28" TopLine="2182"/> </Position14> <Position15> - <Filename Value="werteunit.pas"/> - <Caret Line="492" Column="72" TopLine="449"/> + <Filename Value="typenunit.pas"/> + <Caret Line="416" Column="31" TopLine="398"/> </Position15> <Position16> - <Filename Value="werteunit.inc"/> - <Caret Line="10" Column="9"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2208" Column="14" TopLine="2179"/> </Position16> <Position17> - <Filename Value="werteunit.inc"/> - <Caret Line="12" Column="9"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2263" Column="31" TopLine="2235"/> </Position17> <Position18> - <Filename Value="werteunit.inc"/> - <Caret Line="14" Column="3"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2181" Column="26" TopLine="2161"/> </Position18> <Position19> - <Filename Value="werteunit.inc"/> - <Caret Line="13" Column="75"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2180" Column="42" TopLine="2162"/> </Position19> <Position20> - <Filename Value="werteunit.inc"/> - <Caret Line="15" Column="3"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2182" Column="26" TopLine="2147"/> </Position20> <Position21> - <Filename Value="werteunit.inc"/> - <Caret Line="3" Column="18"/> + <Filename Value="typenunit.pas"/> + <Caret Line="2180" Column="42" TopLine="2162"/> </Position21> <Position22> - <Filename Value="werteunit.inc"/> - <Caret Line="30" Column="32" TopLine="16"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3839" TopLine="3804"/> </Position22> <Position23> - <Filename Value="werteunit.inc"/> - <Caret Line="54" TopLine="19"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3652" Column="49" TopLine="3628"/> </Position23> <Position24> - <Filename Value="werteunit.inc"/> - <Caret Line="55" Column="3" TopLine="30"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3670" Column="56" TopLine="3642"/> </Position24> <Position25> - <Filename Value="werteunit.inc"/> - <Caret Line="85" Column="3" TopLine="65"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3674" Column="56" TopLine="3646"/> </Position25> <Position26> - <Filename Value="werteunit.inc"/> - <Caret Line="67" Column="9" TopLine="64"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3698" Column="60" TopLine="3670"/> </Position26> <Position27> - <Filename Value="werteunit.inc"/> - <Caret Line="100" Column="36" TopLine="88"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3699" Column="60" TopLine="3671"/> </Position27> <Position28> - <Filename Value="werteunit.pas"/> - <Caret Line="307" TopLine="307"/> + <Filename Value="epostunit.pas"/> + <Caret Line="3688" Column="74" TopLine="3662"/> </Position28> <Position29> - <Filename Value="werteunit.inc"/> - <Caret Line="101" Column="8" TopLine="88"/> + <Filename Value="epostunit.pas"/> + <Caret Line="170" Column="33" TopLine="154"/> </Position29> <Position30> - <Filename Value="werteunit.inc"/> - <Caret Line="163" Column="10" TopLine="150"/> + <Filename Value="typenunit.pas"/> + <Caret Line="416" Column="31" TopLine="403"/> </Position30> </JumpHistory> </ProjectSession> diff --git a/epostunit.pas b/epostunit.pas index 4a83049..f5668cb 100644 --- a/epostunit.pas +++ b/epostunit.pas @@ -3649,7 +3649,8 @@ begin gibAus('lambda-zu-omega-Verzerrung berechnen ... ',3); Zeit:=now; genauigkeit:=gExtended; - transformationen:=tLambdaZuOmegaTransformation.create; + // c nm eV h + transformationen:=tLambdaZuOmegaTransformation.create(299792458/1e-9/1.6021766208e-19*6.626070040e-34); // nm -> eV transformationen.fuegeVorgaengerHinzu(quelle.transformationen); bekannteBefehle:=tMyStringList.create; diff --git a/typenunit.pas b/typenunit.pas index 7bf5ec6..97e135d 100644 --- a/typenunit.pas +++ b/typenunit.pas @@ -414,8 +414,12 @@ type function dumpParams: string; override; end; tLambdaZuOmegaTransformation = class (tKoordinatenTransformation) + private + _faktor: extended; + public horizontal, vertikal: boolean; constructor create; overload; + constructor create(faktor: extended); overload; function verhaeltnisHorizontal: extended; function verhaeltnisVertikal: extended; function wertZuPositionAufAchse(const l: tLage; x: extended): extended; override; @@ -2176,9 +2180,15 @@ end; constructor tLambdaZuOmegaTransformation.create; begin + create(2*pi*299792458); +end; + +constructor tLambdaZuOmegaTransformation.create(faktor: extended); +begin inherited create; horizontal:=false; vertikal:=false; + _faktor:=faktor; end; function tLambdaZuOmegaTransformation.verhaeltnisHorizontal: extended; @@ -2201,8 +2211,8 @@ function tLambdaZuOmegaTransformation.wertZuPositionAufAchse(const l: tLage; x: begin if ((l in [lOben,lUnten]) and horizontal) or // transformierte Achse? ((l in [lLinks,lRechts]) and vertikal) then - x:=2*pi*299792458/x; - result:=inherited wertZuPositionAufAchse(l,x); // Vorfahren befragen + x:=_faktor/x; + result:=vorgaenger[0].wertZuPositionAufAchse(l,x); // Vorfahren befragen end; procedure tLambdaZuOmegaTransformation.aktualisiereAchsen; @@ -2210,15 +2220,15 @@ var c: char; begin if horizontal then begin - outAchsen['x','x']:=2*pi*299792458/inAchsen['x','y']; - outAchsen['x','y']:=2*pi*299792458/inAchsen['x','x']; + outAchsen['x','x']:=_faktor/inAchsen['x','y']; + outAchsen['x','y']:=_faktor/inAchsen['x','x']; end else for c:='x' to 'y' do outAchsen['x',c]:=inAchsen['x',c]; if vertikal then begin - outAchsen['y','x']:=2*pi*299792458/inAchsen['y','y']; - outAchsen['y','y']:=2*pi*299792458/inAchsen['y','x']; + outAchsen['y','x']:=_faktor/inAchsen['y','y']; + outAchsen['y','y']:=_faktor/inAchsen['y','x']; end else for c:='x' to 'y' do @@ -2256,6 +2266,7 @@ begin if vertikal then result:=result+' und vertikal'; startetMit(' und ',result); + result:=result+' ('+floatToStr(_faktor)+')'; end; // tKoordinatenAusschnitt ****************************************************** diff --git a/werteunit.inc b/werteunit.inc index e90993d..832302e 100644 --- a/werteunit.inc +++ b/werteunit.inc @@ -99,11 +99,11 @@ end; {$ENDIF} {$IFDEF tLLWerte_kopiereLOVerzerrt} -//procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteSingle; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); overload; +//procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteSingle; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); var i,j,hV,hB,vV,vB,h,v: int64; begin - writeln(xMin,' .. ',xMax,' x ',tMin,' .. ',tMax); + gibAus(intToStr(xMin)+' .. '+intToStr(xMax)+' x '+intToStr(tMin)+' .. '+intToStr(tMax),1); for i:=tMin to tMax do begin if verhVe>0 then begin vV:=max( diff --git a/werteunit.pas b/werteunit.pas index 3f31f0f..3d76591 100644 --- a/werteunit.pas +++ b/werteunit.pas @@ -299,11 +299,11 @@ procedure tLLWerte.kopiereVerzerrt(original: pTLLWerteExtended; zPs: tIntPointAr {$UNDEF tLLWerte_kopiereVerzerrt} {$DEFINE tLLWerte_kopiereLOVerzerrt} -procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteSingle; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); overload; +procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteSingle; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); {$INCLUDE werteunit.inc} -procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteDouble; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); overload; +procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteDouble; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); {$INCLUDE werteunit.inc} -procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteExtended; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); overload; +procedure tLLWerte.kopiereLOVerzerrt(original: pTLLWerteExtended; xMin,xMax,tMin,tMax: longint; verhHo,verhVe: extended); {$INCLUDE werteunit.inc} {$UNDEF tLLWerte_kopiereLOVerzerrt} |