am 2023-11-05 05:02 PM
vor einer Woche - zuletzt bearbeitet vor einer Woche
Ich würde ja die beiden Parameter a0 und a1 stilllegen und vom Objektursprung aus agieren. Wandlänge gleich A. Gedreht wird mit dem Drehwerkzeug und damit das ganze Objekt. Mit Wandbreite = B lässt sich das auch gut in einer IA auswerten (nicht vom Arbeitsblatt aus, ich weiß).
Dein GSM sieht dann so aus:
! ### 2D Skript (Tektur)
! linear links
hotspot2 0, 0, uID, a, 1 :uID=uID+1
hotspot2 -1, 0, uID, a, 3+128 :uID=uID+1
hotspot2 a, 0, uID, a, 2 :uID=uID+1
! hotspot2 0, 0, uID, a0, 1+128 :uID=uID+1
! hotspot2 -0.1, 0, uID, a0, 3+128 :uID=uID+1
! hotspot2 a0, 0, uID, a0, 2 :uID=uID+1
! ! add2 a0, 0 :nTrs=nTrs+1
! linear rechts (kann auch entfallen)
hotspot2 a, 0, uID, a, 1+128 :uID=uID+1
hotspot2 a+1, 0, uID, a, 3+128 :uID=uID+1
hotspot2 0, 0, uID, a, 2 :uID=uID+1
! hotspot2 0, 0, uID, a1, 1+128 :uID=uID+1
! hotspot2 -0.1, 0, uID, a1, 3+128 :uID=uID+1
! hotspot2 a1, 0, uID, a1, 2 :uID=uID+1
! drehbar bei a0 (brauchst du nicht mehr)
! ! hotspot2 a0*cos(wA), a0*sin(wA), 0, wA,6 :uID=uID+1 !Drehpunkt
! hotspot2 a0, 0, uID, wA , 6 :uID=uID+1 !Mittelpunkt
! hotspot2 a0+l4, 0, uID, wA , 4+0 :uID=uID+1 !Basispunkt
! hotspot2 a0+l4*cos(wA), l4*sin(wA), uID, wA , 5 :uID=uID+1 !Beweglicher Punkt
! rot2 wA :nTrs=nTrs+1
! ### In Parameter-Skript am Anfang einfügen
parameters a0=0, a1=a
So wie du das (nach meiner Auffassung) haben möchtest, habe ich in deinem GSM geändert. Die Wandlänge ist darin nicht a1-a0, sondern a1. Alles andere ergibt keinen Sinn. Bei beiden Lösungen kannst du noch die ggf. überflüssigen Parameter bzw. Variablen rausfiletieren.
vor einer Woche
Nachtrag zur 1. Lösung:
Am besten gar keine dezidiert beweglichen Fangpunkte für 0/0 und a/0 setzen, sondern nur einfache. Dann kann man in beide Richtungen die Länge ändern und die Wand bleibt dabei "liegen".
hotspot2 0, 0, uID : uID=uID+1
hotspot2 a, 0, uID : uID=uID+1
! linear links (entfällt)
! drehbar bei a0 (entfällt)
! linear rechts (entfällt)
Anpassung im Parameter-Skript bzw. Verwendung von a0 und a1 im ganzen Skript rausnehmen nicht vergessen!