'Maßstab Berechnungen ' 'erstellt von R. ' ' letzte Revision 26.08.2004 '--------------------------------------------------------------- Const crlf = Chr$(10) Public mas$ Public nmas$ '--------------------------------------------------------------- Sub main Dim x#, y#, s#, e# Dim h$, n$, m1$, m2$, m3$, m4$, m5$, m6$, m7$ Dim version$ Dim majorVers as Integer ' Versionsabfrage version = MbeSession.msVersion majorVers = Val(Word$ (version, 1, 1)) '--------------------------------------------------------------- ' Abfrage Hauptmaßstab If mas$ = "" Then mas$="10" h$ = MbeInputBox("Bitte Hauptmaßstab eingeben 1: ", mas$) If h$ = "" Then Goto Ende x# = Val(h$) mas$ = h$ ' Abfrage Nebenmaßstab If mas$ = "" Then nmas$ = "5" n$ = MbeInputBox("Bitte Nebenmaßstab eingeben 1: ", nmas$) If n$ = "" Then Goto Ende y# = Val(n$) nmas$ = n$ ' Berechnungen ' Scalierfaktor s#=x/y ' Einheitenscalierfaktor für Bemaßung e#=y/x ' Variablen für Anzeige m1$="Hauptmaßstab 1: "+h$ m2$="Nebenmaßstab 1: "+n$ m3$="Scalierfaktor "+Format$(Str$(s#),"Standard") m6$="vor der Bemaßung bitte einstellen" m4$="Bemaßungsfaktor "+Format$(Str$(e#),"Standard")+" einstellen" ' Scalierung einstellen ' Varablen für Scalierungsbefehl s1# = FIX(s#) ' Nachkommastellen abschneiden s2# = s# - s1# ' Nachkommastellen berechnen Select case s2 ' Nachkommastellen mit PUNKT in alphanumerische Variable schreiben case 0.0 m7$ = ".0" case 0.1 m7$ = ".1" case 0.2 m7$ = ".2" case 0.3 m7$ = ".3" case 0.4 m7$ = ".4" case 0.5 m7$ = ".5" case 0.6 m7$ = ".6" case 0.7 m7$ = ".7" case 0.8 m7$ = ".8" case 0.9 m7$ = ".9" End Select ' m5$="AS="+Format$(Str$(s#),"00.00") ' funktioniert nicht, Punkt wird trotzdem als Komma gesetzt m5$="AS="+Str$(s1#)+m7$ MbeSendCommand m5$ ' Skalierfaktor setzen MbeMessageBox (m1$+crlf+m2$+crlf+m3$+crlf+m4$) ' Befehl starten MbeSendCommand "MDL KEYIN DIMSET DIALOG DIMSETTINGS OPEN" ' Eine mit einem Dialogfeld verbundenen Variable einstellen ' Einstellung für V7 If majorVers = 7 Then MbeSetAppVariable "DIMSET", "tcb->ad4.dimension_scale", e# End If ' Einstellung für V8 If majorVers = 8 Then MbeSetAppVariable "DIMSET", "dsP->data.ad4.dimension_scale", e# End If Ende: End Sub