Jetzt werd ich nachdenklich, ich hab weitere Bookware studiert, war mir totsicher, daß eine Musteranordnung um einen Drehpunkt geht, aber bei
ISO nichts dazu gefunden. Morgen blättere ich nochmal die Handbücher durch. Sowas konnte doch meine Eigenbausteuerung mit dem Z80 und CP/M schon und da hatte man noch keinen Matheprozessor.
Die tägliche Praxis hat mich allerdings gelehrt, daß das Koordinatendrehen ohne
CAD ein hartes Brot sein kann, daher hier ein kleines BASIC-Proggi, das einen Punkt um einen anderen um einen Winkelwert rumdreht. Geht zwar mit der Vektorgeometrie eleganter, aber ich glaub, so kann man leichter folgen.
10 PI = 3.141592654#
100 CLS
110 XM = 0:INPUT "X-Wert Drehmittelpunkt";XM
120 YM = 0:INPUT "Y-Wert Drehmittelpunkt";YM
130 W = 0: INPUT "Drehwinkel in Grad im Gegenuhrzeigersinn";W
135 W = W * PI/180 : REM ins Bogenmaá
140 XP = 0:INPUT "X-Wert zu drehender Punkt";XP
150 YP = 0:INPUT "Y-Wert zu drehender Punkt";YP
200 REM Hier wird gerechnet
210 DX = XP-XM
220 DY = YP-YM
230 R = SQR(DX*DX+DY*DY)
240 IF R=0 THEN PRINT "Drehpunkt wurde gew?hlt": GOTO 130
250 SW = 0
260 IF DX <>0 THEN 300 : REM Definitionsl?cken des Tangens
270 IF DY > 0 THEN SW = PI/2
280 IF DY < 0 THEN SW = 3*PI/2
290 GOTO 400
300 SW = ATN(ABS(DY/DX))
310 IF DY >0 AND DX <0 THEN SW = PI-SW
320 IF DY <0 AND DX <0 THEN SW = PI + SW
330 IF DY <0 AND DX >0 THEN SW = 2*PI-SW
340 IF DY = 0 AND DX > 0 THEN SW = 0
350 IF DY = 0 AND DX < 0 THEN SW = PI
400 REM Die neuen Koordinaten:
405 PRINT "SW = ";SW * 180/PI
410 WN = SW + W
420 XN = XM + R*COS(WN)
430 YN = YM + R*SIN(WN)
440 PRINT "x =";XN
450 PRINT "y = "YN
500 X$ = ""
510 INPUT"E = Ende, w = neuer Drehwinkel, d=neuer Drehpunkt";X$
520 IF X$ = "e" OR X$="E" THEN END
530 IF X$ = "w" OR X$ = "W" THEN 130
540 IF X$ = "d" OR X$ = "D" THEN 110
550 GOTO 140