diff options
author | Erich Eckner <git@eckner.net> | 2018-05-24 09:53:39 +0200 |
---|---|---|
committer | Erich Eckner <git@eckner.net> | 2018-05-24 09:53:39 +0200 |
commit | 6e20aa5c8f0540186d49d731cd9dec2554b3aeb1 (patch) | |
tree | dc7284e1760a0c05959f677206dfb5b6217c57c3 /epostunit.pas | |
parent | 3d3e75fa15be7088dd456c001a411ff5953c85b1 (diff) | |
download | epost-6e20aa5c8f0540186d49d731cd9dec2554b3aeb1.tar.xz |
lineout: "Aufpunkt und Richtung" neu
Diffstat (limited to 'epostunit.pas')
-rw-r--r-- | epostunit.pas | 41 |
1 files changed, 40 insertions, 1 deletions
diff --git a/epostunit.pas b/epostunit.pas index e5e1db7..dff17fb 100644 --- a/epostunit.pas +++ b/epostunit.pas @@ -6046,10 +6046,13 @@ var fOut: textfile; bekannteBefehle: tMyStringList; Zeit,entspringen, - letzterWert,verschiebung: extended; + letzterWert,verschiebung, + tmp: extended; + tmpPoint: tExtPoint; i,schritte: longint; integriere,iWaag: boolean; tmpValues: tKnownValues; + rand: array[0..3] of tGerade; begin result:=false; warteAufBeendigungDesLeseThreads; @@ -6061,6 +6064,18 @@ begin ab['x']:=extPoint(0,0); ab['y']:=extPoint(_xSteps-1,_tSiz-1); + for i:=0 to 3 do + rand[i]:= + gerade( + extPoint( + byte(i in [1,2])*(_xSteps-1), + byte(i in [2,3])*(_tSiz-1) + ), + extPoint( + byte(odd(i+1)), + byte(odd(i)) + ) + ); skalierung:='1'; verschiebung:=0; @@ -6117,6 +6132,30 @@ begin iWaag:=false; continue; end; + if istDasBefehl('Aufpunkt und Richtung:',s,bekannteBefehle,true) then begin + tmp:=kont2disk('x',exprToFloat(sT,erstesArgument(s,','))); + tmpPoint:=extPoint(tmp,kont2disk('y',exprToFloat(sT,erstesArgument(s,',')))); + if sT then + tmpPoint:=extPoint(_xSteps/2,_tSiz/2); + tmp:=exprToFloat(sT,s); + ab['x']:= + naechsterSchnittpunkt( + gerade( + tmpPoint, + extPoint(-cos(tmp),-sin(tmp)) + ), + rand + ); + ab['y']:= + naechsterSchnittpunkt( + gerade( + tmpPoint, + extPoint(cos(tmp),sin(tmp)) + ), + rand + ); + continue; + end; if istDasBefehl('von',s,bekannteBefehle,true) then begin ab['x','x']:=kont2disk('x',exprToFloat(sT,erstesArgument(s,';'))); ab['x','y']:=kont2disk('y',exprToFloat(sT,s)); |