1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Yjuq

Beiträge von Yjuq

  • PathWarp To Path bzw. Text zu Bezierkurve biegen

    • Yjuq
    • 1. Mai 2013 um 19:19

    Fuu :x
    So meinte ich das doch gar nicht ^^
    >> Es bezog sich dabei auf meine Aussage: "Echt klasse was ihr immer aus AutoIt raushaut und umsetzt!"

    Aber weil Assembler nun mal nicht AutoIt ist (Syntaxmäßig / Geschwindigkeitsmäßig) habe ich den Begriff "Gecheatet" verwendet um damit auszudrücken dass die Berechnungen eben nicht in AutoIt stattfinden. Ich wollte damit keineswegs damit Assembler niedermachen oder gar eine Person.

    Hab mich nur (wie so oft) falsch ausgedrückt. ^^

  • PathWarp To Path bzw. Text zu Bezierkurve biegen

    • Yjuq
    • 1. Mai 2013 um 18:20

    "Wenn ich mal groß bin will ich genau so sein wie die PU's" :D
    Echt klasse was ihr immer aus AutoIt raushaut und umsetzt! (Naja, auch wenns bischen ASM gecheatet ist ^^)

    eukalyptus:
    Echt tolle UDF! :)
    Ich finde keine Worte dafür. :D

    UEZ:
    Super was du damit gezaubert hast. ^^
    Auch hier finde ich keine Worte! :P

    Bitte macht weiter so!
    Ich selber versuche auch aus euren Codes zu lernen.
    Aber manchmal fällts dann doch schwer wie hier. ^^

    LG. Make :)

  • MenuKurzwahl unterstrichen zeigen

    • Yjuq
    • 1. Mai 2013 um 16:32

    Es wird für gewöhnlich erst unterstrichen dargestellt, wenn man die Alt Taste drückt.
    Sie permament anzuzeigen ist nach meinen Wissen nicht möglich.

  • 8 Bit zu 3 Bit | Bitaufteilung

    • Yjuq
    • 1. Mai 2013 um 14:14

    Ich wollte erst einmal zwei funktionierende Funktionen.
    Jetzt war ich dabei mir dies in einer Funktion umzubauen.
    Später soll dies nämlich in einem Verschlüsselungs Algorithmus eingebaut werden.

    Der "Umweg" übers Array ist wegen den zwei Funktionen entstanden.
    Du hast ja direkt eine Funktion geliefert welches das gewünschte Ergebnis liefert.

    Danke Andy :)

  • 8 Bit zu 3 Bit | Bitaufteilung

    • Yjuq
    • 30. April 2013 um 19:15

    Super, konnte es nun lösen! :P
    Vielen Dank BugFix! :D

    Spoiler anzeigen
    [autoit]

    Func _8To3Bit($ai8Dua)
    Local $ai3Dua[Ceiling(UBound($ai8Dua) / 3 * 8)][3]
    Local $iA, $iB, $sDual, $asDual

    [/autoit] [autoit][/autoit] [autoit]

    For $iA = 0 To UBound($ai8Dua) - 1
    For $iB = 0 To 7
    $sDual &= $ai8Dua[$iA][$iB]
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $asDual = StringRegExp($sDual, '[01]{1,3}', 3)

    [/autoit] [autoit][/autoit] [autoit]

    For $iA = 0 To UBound($asDual) - 1
    $ai3Dua[$iA][0] = StringMid($asDual[$iA], 1, 1)
    $ai3Dua[$iA][1] = StringMid($asDual[$iA], 2, 1)
    $ai3Dua[$iA][2] = StringMid($asDual[$iA], 3, 1)
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Return $ai3Dua
    EndFunc

    [/autoit]

    Edit:
    UEZ >> Sorry, hatte die Seite nicht refresht. ^^
    Danke auch an dir dass du mitgedacht hast! :P

  • 8 Bit zu 3 Bit | Bitaufteilung

    • Yjuq
    • 30. April 2013 um 19:02

    *_*
    Auf die Idee bin ich ja noch net gekommen!
    Ich versuch es gerade mal ^^

  • 8 Bit zu 3 Bit | Bitaufteilung

    • Yjuq
    • 30. April 2013 um 18:48

    Ich habe es bewusst so herum gemacht für weitere Bearbeitungen :)

  • 8 Bit zu 3 Bit | Bitaufteilung

    • Yjuq
    • 30. April 2013 um 18:37

    Hallo Community! :)
    Ich sitze gerade an einem Problem wo ich absolute nicht weiterkomme. Und zwar möchte ich einen beliebigen String in ASCII Codes konvertieren und die ASCII Codes ins Dualsystem befördern. Das klappt soweit sehr gut. Dafür habe ich mir folgende Funktion geschrieben:

    Spoiler anzeigen
    [autoit]

    Func _AscToDua($sString)
    Local $asAsc = StringToASCIIArray($sString)
    Local $aiDua[UBound($asAsc)][8]
    Local $iA, $iB

    [/autoit] [autoit][/autoit] [autoit]

    For $iA = 0 To UBound($asAsc) - 1
    For $iB = UBound($aiDua, 2) - 1 To 0 Step - 1
    $aiDua[$iA][$iB] = Int(BitAND($asAsc[$iA], BitShift(1, $iB * -1)) <> 0)
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Return $aiDua
    EndFunc

    [/autoit]

    Wenn ich als String "AutoIt" übergebe, erhalte ich ein Array mit folgenden Zahlen im Dualsystem:

    Spoiler anzeigen
    Code
    A -> 10000010
    u -> 10101110
    t -> 00101110
    o -> 11110110
    I -> 10010010
    t -> 00101110

    Hier die praktische Anwendungsmethode:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    $array = _AscToDua('AutoIt')
    _ArrayDisplay($array)

    [/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]

    Func _AscToDua($sString)
    Local $asAsc = StringToASCIIArray($sString)
    Local $aiDua[UBound($asAsc)][8]
    Local $iA, $iB

    [/autoit] [autoit][/autoit] [autoit]

    For $iA = 0 To UBound($asAsc) - 1
    For $iB = UBound($aiDua, 2) - 1 To 0 Step - 1
    $aiDua[$iA][$iB] = Int(BitAND($asAsc[$iA], BitShift(1, $iB * -1)) <> 0)
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Return $aiDua
    EndFunc

    [/autoit]

    Nun wird es aber ein wenig kompliziert. Ich erhalte ja durch meine Funktion _AscToDua() ein Array. Dieses Array beinhaltet die ASCII Codes meines Strings pro Buchstabe im Dualsystem. Diese sind logischerweise 8 Bit / 1 Byte groß. Allerdings möchte ich diese 8 Bit nun in ein weiteres Array aufteilen, welches pro Index nur 3 Bit fasst. Diese Dualzahlen:

    Spoiler anzeigen
    Code
    10000010
    10101110
    00101110
    11110110
    10010010
    00101110

    Sollen jetzt in 3 Bit päcken aufgeteilt werden. Später würde das ganze dann so aussehen:

    Spoiler anzeigen
    Code
    100
    000
    101
    010
    111
    000
    101
    110
    111
    101
    101
    001
    001
    000
    101
    110
    Alles anzeigen

    Und genau hier hängt es... Ich finde einfach keine Lösung dazu...
    Bisher habe ich folgenden Ansatz:

    Spoiler anzeigen
    [autoit]

    Func _8To3Bit($ai8Dua)
    Local $ai3Dua[Ceiling(UBound($ai8Dua) / 3 * 8)][3]
    Local $iA, $iB

    [/autoit] [autoit][/autoit] [autoit]

    For $iA = 0 To UBound($ai3Dua) - 1
    For $iB = 0 To UBound($ai3Dua, 2) - 1
    ; Code
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    Return $ai3Dua
    EndFunc

    [/autoit]

    Das war's aber auch schon. Ich hoffe ihr könnt mir einen Denkanstoß geben! --- Ich komme hier nicht weiter.
    LG. Make :)

  • Ehemaliges Python-Programm in AutoIT umschreiben, um es letzendlich als .exe ausführen zu können

    • Yjuq
    • 30. April 2013 um 17:05

    @chess:
    Oder noch kürzer:

    [autoit]

    If $i And Not Mod($i, 3) Then $tRNA &= ' '

    [/autoit]


    Das spart 19 byte im Skript und wird schneller interpretiert.
    Selbst wenn es sich nur um tausenstell millisekunden handelt. :D

    Okey,... Scherz bei Seite ^^
    >> Hab gerade bissl Kofweh,... Sonst wäre ich da sicherlich auch drauf gekommen ^^

  • Ehemaliges Python-Programm in AutoIT umschreiben, um es letzendlich als .exe ausführen zu können

    • Yjuq
    • 30. April 2013 um 16:42

    Mit ner einfachen Abfrage:

    [autoit]

    If Not Mod($i, 3) Then $tRNA &= ' '

    [/autoit]

    Und ganz zum schluss noch das Leerzeichen welches Zwangsgemäß an erster Stelle geschrieben wird löschen. :)

  • Ehemaliges Python-Programm in AutoIT umschreiben, um es letzendlich als .exe ausführen zu können

    • Yjuq
    • 30. April 2013 um 16:27

    Ich weiß... Hatte übersehen dass die Zeichen in ASCII Codes umgewandelt werden.
    Habe die Schande schnell wegeditiert. ^^
    Der Code in Post #8 funktioniert nun einwandfrei! :)

  • Ehemaliges Python-Programm in AutoIT umschreiben, um es letzendlich als .exe ausführen zu können

    • Yjuq
    • 30. April 2013 um 16:14

    Hier die AutoIt Umsetzung: (Muss noch angepasst werden für deine Bedürfnisse)

    Spoiler anzeigen
    [autoit]

    Global $i, $DNACodegenerStrang, $DNAKomplementaerStrang, $mRNA, $tRNA

    [/autoit] [autoit][/autoit] [autoit]

    $DNACodegenerStrang = StringToASCIIArray(InputBox('Geben Sie den codogenen DNA-Strang(von 3´ nach 5´) in Großbuchstaben an: ', ''))

    [/autoit] [autoit][/autoit] [autoit]

    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +

    [/autoit] [autoit][/autoit] [autoit]

    For $i = 0 To UBound($DNACodegenerStrang) - 1

    [/autoit] [autoit][/autoit] [autoit]

    If $DNACodegenerStrang[$i] = Asc('A') Then
    $DNAKomplementaerStrang &= 'T'
    $mRNA &= 'U'
    $tRNA &= 'T'

    [/autoit] [autoit][/autoit] [autoit]

    ElseIf $DNACodegenerStrang[$i] = Asc('T') Then
    $DNAKomplementaerStrang &= 'A'
    $mRNA &= 'A'
    $tRNA &= 'U'

    [/autoit] [autoit][/autoit] [autoit]

    ElseIf $DNACodegenerStrang[$i] = Asc('G') Then
    $DNAKomplementaerStrang &= 'C'
    $mRNA &= 'C'
    $tRNA &= 'G'

    [/autoit] [autoit][/autoit] [autoit]

    Else
    $DNAKomplementaerStrang &= 'G'
    $mRNA &= 'G'
    $tRNA &= 'C'
    EndIf

    [/autoit] [autoit][/autoit] [autoit]

    Next

    [/autoit] [autoit][/autoit] [autoit]

    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +

    [/autoit] [autoit][/autoit] [autoit]

    MsgBox(262144, 'Output:', 'Der angegebene codegene DNA Strang lautete: ' & @CRLF & StringFromASCIIArray($DNACodegenerStrang) & @CRLF & @CRLF & _
    'Daraus ergibt sich dieser DNA Komplementärstrang' & @CRLF & $DNAKomplementaerStrang & @CRLF & @CRLF & _
    'Daraus ergibt sich dieser komplementäre mRNA-Strang' & @CRLF & $mRNA & @CRLF & @CRLF & _
    'Daraus ergibt sich diese tRNA-Abfolge' & @CRLF & $tRNA)

    [/autoit]
  • Ehemaliges Python-Programm in AutoIT umschreiben, um es letzendlich als .exe ausführen zu können

    • Yjuq
    • 30. April 2013 um 15:57

    Hey, hast du bereits AutoIt Erfahrung?
    Das ganze sieht für mich nämlich schonmal extrem spanisch aus... ^^

  • Custom Message Box

    • Yjuq
    • 30. April 2013 um 13:53

    Sorry, da war ich ein wenig voreillig ^^
    Hatte die Dimension des Arrays vergessen zu ändern.
    Wenn wir schonmal dabei sind, hier der nächste Bug:

    [autoit]

    #include <CMB.au3>

    [/autoit][autoit][/autoit][autoit]

    Global $asButtonarray[1] = ["OK"]
    $t = CustomMsgBox("Custom Messagebox", "Ein wenig Text, nur zu Demozwecken" & @CRLF & "Funktionieren die Zeilenumbrüche?" & @CRLF & "Ich denke schon", $asButtonarray)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $t = ' & $t & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console

    [/autoit][autoit][/autoit][autoit]

    ;~ G:\AutoIt\CMB.au3 (55) : ==> Array variable subscript badly formatted.:
    ;~ $aControlPos = ControlGetPos($h_CMBGUI, "", $ButHandlearray[Floor(UBound($asButtonarray) / 2) - 1])
    ;~ $aControlPos = ControlGetPos($h_CMBGUI, "", $ButHandlearray[^ ERROR

    [/autoit]

    Und bei einer ungeraden Anzahl an Buttons wird einer einfach "entfernt":

    [autoit]

    #include <CMB.au3>

    [/autoit][autoit][/autoit][autoit]

    Global $asButtonarray[5] = ["1", "2", "3", "4", "5"]
    $t = CustomMsgBox("Custom Messagebox", "Ein wenig Text, nur zu Demozwecken" & @CRLF & "Funktionieren die Zeilenumbrüche?" & @CRLF & "Ich denke schon", $asButtonarray)
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $t = ' & $t & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console

    [/autoit]
  • Custom Message Box

    • Yjuq
    • 30. April 2013 um 13:31

    Ganz nett :)
    Nur was mir konkret auffällt, dass es noch ein wenig verbuggt ist.
    Zudem kann man nicht selber entscheiden wieviele Buttons man haben will.
    Oder ich verwende die Funktion falsch :D

    [autoit]

    #include <CMB.au3>
    $t = CustomMsgBox("Custom Messagebox", "Ein wenig Text, nur zu Demozwecken" & @CRLF & "Funktionieren die Zeilenumbrüche?" & @CRLF & "Ich denke schon")
    ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $t = ' & $t & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
    ; G:\AutoIt\CMB.au3 (54) : ==> Variable used without being declared.:
    ; If IsArray($ButHandlearray) Then
    ;If IsArray(^ ERROR

    [/autoit]

    Ich persölich hätte da noch viele Ideen die man noch umsetzen könnte...
    Ansonsten eine sehr schöne alternative zu MsgBox :)

  • Ganze Zeile in Array durchsuchen

    • Yjuq
    • 29. April 2013 um 17:14

    *_* - Sag das doch gleich...
    Dann schreib dir doch ne Funktion?

    Ist nicht so schwer...

  • Ganze Zeile in Array durchsuchen

    • Yjuq
    • 29. April 2013 um 17:06

    Wenn du einen Wert in einer Zeile suchen willst und nur die Spalten durchgehen willst, kommst du an der Schleife nicht drum herum.
    Zudem: Was ist an einer Schleife so kompliziert?

    Und woher sollte ich wissen dass du bereits eine Schleifen Lösung gefunden hast? :P

  • Ganze Zeile in Array durchsuchen

    • Yjuq
    • 29. April 2013 um 16:55

    Wenn ich dich richtig verstanden habe, willst du in einer Zeile nach einen bestimmten Wert suchen?

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>

    [/autoit] [autoit][/autoit] [autoit]

    Global $aiArray[5][5], $iA, $iB
    Global $sSearch = @CRLF & ' | Spalten:' & @CRLF & '-------------------------' & @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +

    [/autoit] [autoit][/autoit] [autoit]

    ; Mit zufälligen Werten füllen:
    For $iA = 0 To UBound($aiArray) - 1
    For $iB = 0 To UBound($aiArray, 2) - 1
    $aiArray[$iA][$iB] = Random(1, 5, 1)
    Next
    Next

    [/autoit] [autoit][/autoit] [autoit]

    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +

    [/autoit] [autoit][/autoit] [autoit]

    ; Wert finden: 5
    For $iA = 0 To UBound($aiArray) - 1
    $sSearch &= 'Zeile ' & $iA & ' | '
    For $iB = 0 To UBound($aiArray, 2) - 1
    If $aiArray[$iA][$iB] = 5 Then $sSearch &= $iB & ', '
    Next
    $sSearch &= @CRLF
    Next

    [/autoit] [autoit][/autoit] [autoit]

    $sSearch &= @CRLF

    [/autoit] [autoit][/autoit] [autoit]

    ; ++++++++++ +++++++++ ++++++++ +++++++ ++++++ +++++ ++++ +++ ++ +

    [/autoit] [autoit][/autoit] [autoit]

    ; Gesuchte Spalten ausgeben:
    ConsoleWrite($sSearch)
    _ArrayDisplay($aiArray)

    [/autoit]
  • FTP Download -> Bei Txt Datei keine Zeilenumbrüche

    • Yjuq
    • 28. April 2013 um 14:01

    Lass bitte demnächst einfach die Problemstellung drin ja?
    Das würde auch Google verwendern weiterhelfen wenn sie auf die entsprechenden Threads stoßen.

  • FTP Download -> Bei Txt Datei keine Zeilenumbrüche

    • Yjuq
    • 28. April 2013 um 13:54

    Das glaube ich ja jetzt nicht!
    [ offen ] txt in edit << Bitteschön -.-

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™