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. alpines

Beiträge von alpines

  • Algorithmic Symphonies - Experimental Synthesizer

    • alpines
    • 7. August 2014 um 13:23

    Wow, ist wirklich gut gelungen!
    Ich musste allerdings bei mir noch die $__g_hGDIPDll durch "gdi32.dll" oder $ghGDIPDll ersetzen, weil ich die 3.3.10.2 verwende. Ist vermutlich nur ein Versionsbug.

  • A*-Algorithmus - Pathfinding - AI

    • alpines
    • 7. August 2014 um 02:18

    Guten Abend,

    Update! - 18.05.2017 -
    Knapp 3 Jahre nach dem Release kommt endlich die Veranschaulichung sowie den Fix der UDF.
    Die UDF unterstützt mittlerweile vernünftiges Error-Handling und kommt mit einer Funktionsdokumentation daher.

    Ich möchte hier ein Skript vorstellen welches mittels A*-Algorithmus (A-Star) den kürzesten Weg vom Start- bis zum Endpunkt findet.
    Anleitungen zum A*-Algorithmus gibt es viele im Internet, einfach mal nachschauen.

    Die .mesh-Datei von der ihr die Koordinaten und Wegpunkte bezieht muss wie folgt aufgebaut sein.

    Code
    x;y;verbindung_zum_wp;verbindung_zum_wp;...
    a;b;verbindung_zum_wp;verbindung_zum_wp;...
    m;n;verbindung_zum_wp;verbindung_zum_wp;...


    Es sieht vielleicht unverständlich aus aber hier ist eine Beispieldatei (Die Verbindung zu einem Wegpunkt wird mittels Zeile dargestellt).

    Code
    2;3;2;3
    4;5;1;3
    9;9;1;2


    Ich habe einen Visualizer gebaut der den Graphen anzeigt und einen gewünschten Pfad berechnet.
    Das Netz ist allerdings gestreckt, damit es in das schwarze Quadrat in der GUI passt.

    NavMesh Visualizer

    [Blockierte Grafik: http://i.imgur.com/LT5nlGV.png]

    Funktionen der NavMesh.au3

    _NavMesh_GetPathDistance($aPath, $aMesh)
    _NavMesh_GetPath($iStartWaypoint, $iEndWaypoint, $aMesh[, $bReturnWaypoints = True])
    _NavMesh_ListWaypointsByWaypoint($iWaypoint, $aMesh)
    _NavMesh_GetCoordinatesByWaypoint($iWaypoint, $aMesh)
    _NavMesh_GetWaypointByCoordinates($iPositionX, $iPositionY, $aMesh)
    _NavMesh_GetLowestInList($aList)
    _NavMesh_GetNearestWaypoint($iX1, $iY1, $aMesh)
    _NavMesh_GetDistance($iX1, $iY1, $iX2, $iY2)
    _NavMesh_LoadMeshFromFile($sFilePath)

    Wichtig! Die UDF arbeitet mit gerichteten Graphen!
    Wenn ihr überprüfen wollt, ob euer Netz ein gerichteter Graph ist, nutzt die Mesh Checker.au3!

    Wichtig! Die UDF arbeitet intern mit Indizes also sind im Netz eingetragene Wegpunkte immer um eins subtrahiert. Wenn ihr den Pfad von 1 zu 5 berechnen wollt, dann müsst ihr die Wegpunkte 0 und 4 nehmen. Der Grund warum ich in den Dateien es bei 1 anfangen lasse und im Script mit 0 arbeite ist der, dass man im Editor wenn man das Netz eintippt immer bei Zeile 1 anfängt und es einfach nur ekelhaft ist, wenn man beim Tippen immer eins abziehen oder draufaddieren muss!

    Viel Spaß damit! Kritik und Lob sind gerne gesehen! :)

    Bisherige Downloads (alte Versionen): 462

    Dateien

    NavMesh.au3 16,31 kB – 711 Downloads Mesh Visualizer.au3 7,4 kB – 745 Downloads Mesh Checker.au3 2,14 kB – 734 Downloads NavMesh Beispiel.zip 7,07 kB – 733 Downloads
  • InetGet() ladet Fehlerhaft Dateien runter

    • alpines
    • 6. August 2014 um 15:10

    /Data ist doch nur ein Ordner bzw. eine Datei ohne Endung. Stimmt das so, oder hast du die Datei vergessen anzugeben?

  • InetGet() ladet Fehlerhaft Dateien runter

    • alpines
    • 6. August 2014 um 14:10

    Vielleicht hast du gar keinen Zugriff mit InetGet auf den Server, außerdem setz mal den OPTION FLAG auf 1, damit er die Dateien neu lädt - auch wenn sie im Cache sind.

  • Taschenrechner. Neueinstieg

    • alpines
    • 5. August 2014 um 21:29

    Entweder switcht-cased du die $art durch, oder du Executest das (Execute wäre die nicht so gute Variante.).

    Schlecht

    [autoit]

    MsgBox(0, 0, Execute($zahl1 & $art & $zahl2))

    [/autoit]


    Gut

    [autoit]

    Switch $art
    Case "+"
    MsgBox(0, 0, $zahl1 + $zahl2)

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

    Case "-"
    MsgBox(0, 0, $zahl1 - $zahl2)

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

    ;...

    [/autoit]


    Wieso ist ein Einzeiler schlechter als das andere fragst du dich sicherlich? Ganz einfach, mit Execute kannst du auch AutoIt-Befehle ausführen. So könnte man $zahl1 = "Shutdown(1)" nehmen und $zahl2 und $art nichts und schon ist der PC, wenn man die Rechte dazu hat, aus.

  • Nächstes Tutorial Thema?

    • alpines
    • 5. August 2014 um 01:56

    Algorithmen hören sich interessant an, aber bitte stelle das ASM Cookbook noch fertig :D

  • Automatisches Login bei Yahoo

    • alpines
    • 4. August 2014 um 17:51

    Kenne mich mit der FF.au3 nicht aus aber wenn es sowas wie _FFGetObjById gibt, hol dir das so und verwende
    $oObj.Checked = False

  • Alles Gute James!

    • alpines
    • 3. August 2014 um 02:29

    Auch von mir alles Gute! Möge deine RegEx-Weisheit uns noch lange erhalten bleiben! :D :party:

  • AU3Record3.3

    • alpines
    • 2. August 2014 um 16:09

    AutoIt Window Info Tool liefert alles was du brauchst.

  • AutoIt.de Trading-Duell - Siegerehrung

    • alpines
    • 1. August 2014 um 21:13

    Ja! :D Hat auf jeden Fall Spaß gemacht und hoffentlich findet so etwas häufiger statt.
    Vielen Dank an dich minx für die Organisation, das Tracking und die Endauswertung. :thumbup:

  • Funktionsplotter - Funktionen ganz einfach darstellen

    • alpines
    • 28. Juli 2014 um 17:41

    Hallo,

    ich möchte hier meinen Funktionsplotter vorstellen. Dieser kann Funktionen anzeigen und zeigt einem die Werte für die Funktion an, wenn man mit der Maus über das Fenster geht.
    Im Moment zeigt er nur eine Funktion an, ich werde das aber bald ergänzen, sobald ich den Fehler mit dem falschen Intervall behoben hab.

    Info!
    Leider sind die Formeln die ich zum errechnen verwende, nur für ein Intervall von [-x; y] geeignet. Es kann bei [x; y] Intervallen zu Fehlzeichnungen kommen.
    Des Weiteren musste ich die Funktion musste ich leider per _GDIPlus_GraphicsFillRect zeichnen, da _GDIPlus_GraphicsDrawLine bei kleinen Koordinaten nichts zeichnet.

    Der Funktionsplotter selbst ist nicht komplett mein Werk, da mir ein Freund (K.K.) ein wenig bei den Formeln geholfen hatte.

    Hoffentlich sind die Formeln im Script verständlich - wenn nicht, einfach fragen!

    Lob, Kritik und sonstiges Feedback ist gerne gesehen!

    Dateien

    Funktionsplotter.au3 5,19 kB – 1.006 Downloads
  • _SquareRoot - Wurzeln nach Heron - Rechtecksanpassung

    • alpines
    • 27. Juli 2014 um 20:51

    Hallo,

    nachdem Forum-Reset stelle ich hier wieder ein kleines Script vor.
    Das Script wurzelt nach dem Heron-Verfahren und ermittelt somit die Quadratwurzel einer Zahl.

    Das Prinzip geht zurück auf die Rechtecksanpassung.

    [autoit]

    Func _SquareRoot($fValue, $iDelta = 1e-15)
    Local $a = 1, $b = $fValue, $c

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

    If $fValue < 0 Then Return 0

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

    While Abs($a - $b) > $iDelta And $b <> $c
    $c = $b
    $a = ($a + $b) / 2
    $b = $fValue / $a
    WEnd

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

    Return $a
    EndFunc

    [/autoit]


    Das Script im Anhang wurzelt eine Zufallszahl zwischen 1 - 1000.

    Dateien

    Heron Verfahren.au3 401 Byte – 643 Downloads
  • Hallo bin neu hier

    • alpines
    • 3. Juni 2014 um 17:29

    Wenn du zu AutoIT hier Hilfe suchst, dann bist du an der falschen Adresse, hier gibts Support für AutoIt.

  • Eigener online Compiler auf normalen Webhosting?

    • alpines
    • 1. Juni 2014 um 22:02

    @Xor, ja Interpreter sowie AutoIt-Sourcecode werden mitgeliefert in der Exe.

    Man bräuchte vermutlich nen vServer auf dem man den Compiler laufen lassen könnte. Unter Linux geht das ganze auch (WINE) aber es ist wesentlich umständlicher.

  • Der böse Onkel von nebenan...

    • alpines
    • 1. Juni 2014 um 20:44

    Dann lass dir den Kuchen mal schmecken, zum Glück hat sich alles zum Guten gewendet!

  • Der böse Onkel von nebenan...

    • alpines
    • 29. Mai 2014 um 14:49

    Nette Geschichte, schade das es solche Menschen gibt.
    Die 8er Reihe gibts tatsächlich wie oben schon genannt wurde als OEM Version.

  • Input box (Textfeld) auf einer webseite markieren

    • alpines
    • 24. Mai 2014 um 14:41

    Die steht im Source-Code der Seite drinne.

  • Input box (Textfeld) auf einer webseite markieren

    • alpines
    • 24. Mai 2014 um 12:44

    Entweder {TAB}st du alle durch, oder du nutzt
    IE.au3 und

    [autoit]

    _IEAction($oObject, "focus")

    [/autoit]

    und das Objekt holst du dir mit

    [autoit]

    _IEGetObjById($oIE, "id")

    [/autoit]

    .

  • Datein auslesen und senden

    • alpines
    • 21. Mai 2014 um 16:21

    Außerdem ist

    [autoit]

    HotKeySet("{Esc}", _Pause)

    [/autoit]

    falsch, da das "_Pause" sein muss, da HotKeySet sonst die nicht existente Funktion 0 aufrufen würde.
    Hab bemerkt das das in der 3.3.10.2 nicht mehr so ist.

  • RAM Auslastung auslesen (in GB und Prozent)

    • alpines
    • 21. Mai 2014 um 13:24

    Finde ich toll, allerdings ist der Name der Funktion ein wenig irreführend bzw. sagt über die Funktion selbst nichts aus.
    Unter _RAMGetUsage würde man beispielsweise mehr verstehen als _RAM.

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™