summaryrefslogtreecommitdiff
path: root/epostunit.pas
diff options
context:
space:
mode:
authorErich Eckner <git@eckner.net>2018-05-24 09:53:39 +0200
committerErich Eckner <git@eckner.net>2018-05-24 09:53:39 +0200
commit6e20aa5c8f0540186d49d731cd9dec2554b3aeb1 (patch)
treedc7284e1760a0c05959f677206dfb5b6217c57c3 /epostunit.pas
parent3d3e75fa15be7088dd456c001a411ff5953c85b1 (diff)
downloadepost-6e20aa5c8f0540186d49d731cd9dec2554b3aeb1.tar.xz
lineout: "Aufpunkt und Richtung" neu
Diffstat (limited to 'epostunit.pas')
-rw-r--r--epostunit.pas41
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));