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

Beiträge von minx

  • RosettaCode Sammelthread

    • minx
    • 21. März 2013 um 12:41

    Ja wir werden mal demnächst durchfegen ;)

  • LibHaru Wrapper-UDF - PDFs erstellen mit der libHaru-DLL

    • minx
    • 21. März 2013 um 09:08

    Eukalyptus hat da ein paar Funktionen schon umgesetzt ;)

    Spoiler anzeigen
    [autoit]

    Func _HPDF_Page_SetRotate($hPage, $iAngle)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetRotate", "ptr", $hPage, "uint", $iAngle)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetRotate

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

    Func _HPDF_Page_Concat($hPage, $a, $b, $c, $d, $X, $Y)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_Concat", "ptr", $hPage, "float", $a, "float", $b, "float", $c, "float", $d, "float", $X, "float", $Y)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_Concat

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

    Func _HPDF_SetPageMode($hPage, $iMode)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_SetPageMode", "ptr", $hPage, "dword", $iMode)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_SetPageMode

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

    Func _HPDF_Page_Stroke($hPage)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_Stroke", "ptr", $hPage)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_Stroke

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

    Func _HPDF_Page_SetRGBStroke($hPage, $nRed, $nGreen, $nBlue)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetRGBStroke", "ptr", $hPage, "float", $nRed, "float", $nGreen, "float", $nBlue)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetRGBStroke

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

    Func _HPDF_Page_Fill($hPage)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_Fill", "ptr", $hPage)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_Fill

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

    Func _HPDF_Page_SetRGBFill($hPage, $nRed, $nGreen, $nBlue)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetRGBFill", "ptr", $hPage, "float", $nRed, "float", $nGreen, "float", $nBlue)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetRGBFill

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

    Func _HPDF_Page_MoveTo($hPage, $nX, $nY)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_MoveTo", "ptr", $hPage, "float", $nX, "float", $nY)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_MoveTo

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

    Func _HPDF_Page_LineTo($hPage, $nX, $nY)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_LineTo", "ptr", $hPage, "float", $nX, "float", $nY)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_LineTo

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

    Func _HPDF_Page_SetLineWidth($hPage, $nW)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetLineWidth", "ptr", $hPage, "float", $nW)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetLineWidth

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

    Func _HPDF_Page_Rectangle($hPage, $nX, $nY, $nW, $nH)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_Rectangle", "ptr", $hPage, "float", $nX, "float", $nY, "float", $nW, "float", $nH)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_Rectangle

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

    Func _HPDF_Page_Circle($hPage, $nX, $nY, $nRadius)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_Circle", "ptr", $hPage, "float", $nX, "float", $nY, "float", $nRadius)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_Circle

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

    Func _HPDF_Page_SetWidth($hPage, $nWidth)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetWidth", "ptr", $hPage, "float", $nWidth)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetWidth

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

    Func _HPDF_Page_SetHeight($hPage, $nHeight)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetHeight", "ptr", $hPage, "float", $nHeight)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetHeight

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

    Func _HPDF_Page_SetSize($hPage, $iSize, $iDirection)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Page_SetSize", "ptr", $hPage, "dword", $iSize, "dword", $iDirection)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Page_SetSize

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

    Func _HPDF_Free($hPdf)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_Free", "ptr", $hPdf)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_Free

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

    Func _HPDF_AddPage($hPdf)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_AddPage", "ptr", $hPdf)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_AddPage

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

    Func _HPDF_SaveToFile($hPdf, $sFilename)
    Local $aReturn
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_SaveToFile", "ptr", $hPdf, "str", $sFilename)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_SaveToFile

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

    Func _HPDF_New()
    Local $aReturn
    Local $error_handler = DllStructCreate("ulong error_no;ulong detail_no;ptr* user_data")
    $aReturn = DllCall($libhpdfdll, "int", "HPDF_New", "ptr", $error_handler, "ptr", 0)
    If @error Then Return SetError(@error, @extended, 0)
    Return $aReturn[0]
    EndFunc ;==>_HPDF_New

    [/autoit]
  • [C“ 2013] The winners!

    • minx
    • 20. März 2013 um 23:51

    Stimmt.

  • [C“ 2013] The winners!

    • minx
    • 20. März 2013 um 23:26

    Auswertung ist da.

  • ERROR: _StringBetween(): undefined function.

    • minx
    • 20. März 2013 um 00:25

    Immernoch: Lies die Hilfe.

    Dir fehlt:

    [autoit]

    #include <String.au3>

    [/autoit]
  • 3D-Objekte mit GDI+

    • minx
    • 19. März 2013 um 22:35

    Meinte ich doch auch ^^

    Die wirklich besten Docs zu 3D gibts hier: http://www.petesqbsite.com/sections/tutor…raphics.shtml#5

    Vor allem Why divide by Z? für die Perspektive ;)

  • 3D-Objekte mit GDI+

    • minx
    • 19. März 2013 um 22:12

    Hier, mit der Z+-Formel lässt sich ganz einfach perspektivisch darstellen. Dabei wird ein Kamerapunkt definiert, der ebenfalls frei beweglich im Raum ist. Dazu eine UDF, die sich leicht auf GDI+ umbauen lässt. Das einzige was fehlt ist Z-Odering für Backface-Culling :D

    Spoiler anzeigen
    [autoit]

    #include <Main.au3>

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

    Local $n
    const $PI = 3.1415926535897;
    const $space = 20;
    const $VertexCount = (90 / $space) * (360 / $space) * 4;
    Local $R = 15, $H = 7, $K = 3, $Z

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

    Local $hGraphics = alStartup("Test",800,600)
    Local $Cam = alCamera(10,50,100)

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

    Local $Model = 0

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

    If $Model = 0 Then Cube()
    If $Model = 1 Then Cyl_Point()
    If $Model = 2 Then Cyl_Line()
    If $Model = 3 Then Quads()

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

    Do
    Until GUIGetMsg()=-3

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

    Func Quads()
    alQuad($hGraphics, $Cam, -15, -15, 15, 15, -15, 15, 15, 15, 15, -15, 15, 15); Backface
    alQuad($hGraphics, $Cam, 15, -15, -15, 15, -15, 15, 15, 15, 15, 15, 15, -15); Right
    alQuad($hGraphics, $Cam, -15, -15, -15, -15, -15, 15, -15, 15, 15, -15, 15, -15); Left
    alQuad($hGraphics, $Cam, -15, -15, -15, 15, -15, -15, 15, 15, -15, -15, 15, -15); Frontface
    EndFunc

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

    Func Cyl_Point()
    alAxis($hGraphics,$Cam)
    For $i=0 To 30
    Local $theta = (2*$PI*$i)/(30-1), $x = Sin($theta)*10, $y = -10, $z = Cos($theta)*10
    alPoint($hGraphics, $Cam, $x, $y, $z)
    alPoint($hGraphics, $Cam, $x, -$y, $z)
    Next
    EndFunc

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

    Func Cyl_Line()
    alAxis($hGraphics,$Cam)
    For $i=0 To 30
    Local $theta = (2*$PI*$i)/(30-1), $x = Sin($theta)*10, $y = -10, $z = Cos($theta)*10
    alLine($hGraphics, $Cam, $x, $y, $z, $x, -$y, $z)
    Next
    EndFunc

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

    Func Cube()
    alAxis($hGraphics,$Cam)
    alLine($hGraphics, $Cam, -15, -15, 15, 15, -15, 15)
    alLine($hGraphics, $Cam, -15, 15, 15, 15, 15, 15)
    alLine($hGraphics, $Cam, -15, -15, -15, 15, -15, -15)
    alLine($hGraphics, $Cam, -15, 15, -15, 15, 15, -15)
    alLine($hGraphics, $Cam, -15, -15, 15, -15, -15, -15)
    alLine($hGraphics, $Cam, -15, 15, 15, -15, 15, -15)
    alLine($hGraphics, $Cam, 15, -15, 15, 15, -15, -15)
    alLine($hGraphics, $Cam, 15, 15, 15, 15, 15, -15)
    alLine($hGraphics, $Cam, -15, -15, -15, -15, 15, -15)
    alLine($hGraphics, $Cam, -15, -15, 15, -15, 15, 15)
    alLine($hGraphics, $Cam, 15, -15, -15, 15, 15, -15)
    alLine($hGraphics, $Cam, 15, -15, 15, 15, 15, 15)
    EndFunc

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

    Func alStartup($Title,$Width,$Height,$Left=-1,$Top=-1)
    Dim $Return[4]=[GUICreate($Title,$Width,$Height,$Left,$Top,Default,34078728),GUICtrlCreateGraphic(0,0,$Width,$Height),$Width,$Height]
    GUISetState()
    Return $Return
    EndFunc

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

    Func alCamera($x=1,$y=1,$z=100)
    Dim $Cam[3]=[$x,$y,$z]
    Return $Cam
    EndFunc

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

    Func alAxis($hWnd,$Cam)
    alLine($hWnd,$Cam,-50,0,0,50,0,0)
    alLine($hWnd,$Cam,0,-50,0,0,50,0)
    alLine($hWnd,$Cam,0,0,-50,0,0,M(50,$Cam[2]-.1))
    EndFunc

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

    Func alLine($hWnd,$Cam,$x,$y,$z,$xx,$yy,$zz)
    $Coord1=C($Cam,-$x,$y,-$z,$hWnd[2],$hWnd[3])
    $Coord2=C($Cam,-$xx,$yy,-$zz,$hWnd[2],$hWnd[3])
    GUICtrlSetGraphic($hWnd[1],6,$Coord1[0],$Coord1[1])
    GUICtrlSetGraphic($hWnd[1],2,$Coord2[0],$Coord2[1])
    GUICtrlSetGraphic($hWnd[1],22)
    EndFunc

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

    Func alPoint($hWnd,$Cam,$x,$y,$z)
    $Coord1=C($Cam,-$x,$y,-$z,$hWnd[2],$hWnd[3])
    GUICtrlSetGraphic($hWnd[1],18,$Coord1[0],$Coord1[1])
    GUICtrlSetGraphic($hWnd[1],22)
    EndFunc

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

    Func alQuad($hWnd, $Cam, $x, $y, $z, $x1, $y1, $z1, $x2, $y2, $z2, $x3, $y3, $z3)
    GUICtrlSetGraphic($hWnd[1], 24, 1)
    GUICtrlSetGraphic($hWnd[1], 8, 0xFFFFFF, Random(0,0xFFFFFF))
    $Coord1=C($Cam,-$x,$y,-$z,$hWnd[2],$hWnd[3])
    $Coord2=C($Cam,-$x1,$y1,-$z1,$hWnd[2],$hWnd[3])
    $Coord3=C($Cam,-$x2,$y2,-$z2,$hWnd[2],$hWnd[3])
    $Coord4=C($Cam,-$x3,$y3,-$z3,$hWnd[2],$hWnd[3])
    GUICtrlSetGraphic($hWnd[1],6,$Coord1[0],$Coord1[1])
    GUICtrlSetGraphic($hWnd[1],2,$Coord2[0],$Coord2[1])
    GUICtrlSetGraphic($hWnd[1],2,$Coord3[0],$Coord3[1])
    GUICtrlSetGraphic($hWnd[1],2,$Coord4[0],$Coord4[1])
    GUICtrlSetGraphic($hWnd[1],22)
    GUICtrlSetGraphic($hWnd[1], 24, 1)
    GUICtrlSetGraphic($hWnd[1], 8, 0x000000, -2)
    EndFunc

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

    Func C($Cam,$x,$y,$z,$w,$h)
    If $z<$Cam[2] then
    Dim $return[3]=[(.5*$w*($x-$Cam[0])/($z-$Cam[2]))+.5*$h,(.5*$h*($y-$Cam[1])/($z-$Cam[2]))+.5*$h,0]
    Else
    Dim $return[3]=[0,0,-10000]
    EndIf
    Return $return
    EndFunc

    [/autoit]
  • 3D-Objekte mit GDI+

    • minx
    • 19. März 2013 um 21:21

    OBJ sollte ähnlich sein. Gut wäre ein switch zwischen Isometrischer (Axiometrischer) und Paralleler Darstellung. Sonst sehr schön :thumbup:

  • PDF aus IE-Fenster speichern

    • minx
    • 18. März 2013 um 23:41

    Wenn du das PDF aus dem Internet hat, speichere es einfach mit InetGet().

  • RosettaCode Sammelthread

    • minx
    • 18. März 2013 um 11:08
    Zitat von James1337

    Das Problem ist, dass bei Q(30) der Rekursionslevel selbst auch so ungefähr bei 30 liegt, also noch sehr niedrig. Daraus folgt, dass man wahrscheinlich mehrere Stunden auf das Ergebnis warten könnte, nur um dann einen Rekursionsfehler zu erhalten...

    HA! Mit rekursiven Arrays statt Funktionen kann man blitzschnell eine Zuordnungstabelle errechnen. Nicht mal ne Sekunde und alles ist fertig ^^. Für 100.000 Ergebnisse!

    Spoiler anzeigen
    [autoit]

    main()

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

    Func main()
    Local $hofstadters[100000]
    $hofstadters[0] = 1
    $hofstadters[1] = 1
    For $i = 3 To 99999
    $hofstadters[$i-1] = $hofstadters[$i-1-$hofstadters[$i-1-1]]+$hofstadters[$i-1-$hofstadters[$i-2-1]]
    Next

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

    ConsoleWrite("!> The first 10 numbers are:"&@LF)
    For $i = 0 To 9
    ConsoleWrite($hofstadters[$i] & " ")
    Next
    ConsoleWrite(@LF & "!> The 1000'th term is " & $hofstadters[999] & @LF)

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

    Local $less_than_preceding = 0
    For $i = 0 To 99998
    If $hofstadters[$i+1] < $hofstadters[$i] Then $less_than_preceding += 1
    Next
    ConsoleWrite("!> " & $less_than_preceding & " times a number was preceded by a greater number!" & @LF)
    Return 0
    EndFunc

    [/autoit]
  • AutoIT Software

    • minx
    • 16. März 2013 um 17:58

    Muss man nicht vergessen. Lassen sich 1:1 in Arrays umformen. Ob aus C++ oder VB - ist nicht so schwer. Wenn du schon was kannst, dann wende es an ^^

  • AutoIT Software

    • minx
    • 16. März 2013 um 15:25

    AutoIt :P

  • AutoIt Compiler (Project Perseus)

    • minx
    • 16. März 2013 um 14:42

    Wozu?

    Das:

    [autoit]

    $var += 1

    [/autoit]



    soll doch dazu werden:

    Code
    inc var

    Wo kommt jetzt auf einmal das ++ / -- her?

  • AutoIt Compiler (Project Perseus)

    • minx
    • 16. März 2013 um 14:14

    Ist möglich:

    Code
    inc py
  • AutoIt Compiler (Project Perseus)

    • minx
    • 16. März 2013 um 14:01

    Ein großer Schritt in der Entwicklung ist getan. Das ist der jetzige Perseus-Syntax:

    Code
    py = 0;
    while py < Height
    	px = 0;
    	while px < Width
    		SetPixel(hDC, px, py, px * py * 5);
    		px = px + 1;
    	wend
    	py = py + 1;
    wend

    Das neue Test-Programm kann hier geladen werden: http://www.workupload.com/file/iqP8QwU

  • Windows Speicherschutz ausschalten. (DEP-Policy)

    • minx
    • 14. März 2013 um 12:48

    Tja so einfach ist das nicht. Wenn du nicht direkt im Speicher arbeitest ist das nicht wirklich relevant. Es sollte immer als letzes zu lösendes Problem übrig bleiben ^^

  • Tablet-PC-Fragen

    • minx
    • 14. März 2013 um 00:19

    Da hättest du auch einen neuen machen können. 2011 … :D

  • Ftp Updater

    • minx
    • 13. März 2013 um 03:07

    [Blockierte Grafik: http://i555.photobucket.com/albums/jj479/m…Interesting.gif]

    Zitat von timmy

    autoBert Der pure Neid [...] nicht nur schreiben können, sondern auch noch Programmieren...

    Genau. autoBert hats so gar nicht drauf und nicht ansatzweise sinnvolle Ansätze in seinem Posts geliefert :rolleyes:. Aber von dir kam ja echt schon viel gehaltvolles! Ach nein, anscheinend lässt du lieber schreiben. Im falschen Forum hast du das Teil auch noch gepostet und bis heute nicht geändert oder sonst irgendwie Einsicht gezeigt. Du hast nicht zum ersten Mal voll blockiert eingestellt und von Leuten die nachweislich deutlich, deutlichst, mehr Ahnung haben nichtmal einen Ratschlag angenommen.

    So bodenlos niveaulos wie du versuchst hier zu verteidigen (was auch immer) ist langsam nur noch lachhaft und traurig mit anzusehen. Dieser ganze Trollvorgang war ja bis jetzt noch eträglich, aber nun gehts zu weit.

    Deshalb schließe ich mich an: Vote 4 Close und du kannst dich mit deinen bereitwilligen Projektteilnehmern per PN begnügen. Das hier muss nicht so weiter gehen.

  • SchrotterChwebnode - Projekte Sammlung

    • minx
    • 12. März 2013 um 18:07

    Wozu jetzt dieser Beitrag? Sinn? Doch Spam?

    Mach ichs halt mal kurz. In Skripte den Source, die Exen braucht keiner. Einfach im Klartext den Source, dann kann man ih auch so lesen und mögliche Fehler finden.

  • SchrotterChwebnode - Projekte Sammlung

    • minx
    • 12. März 2013 um 16:58

    Mehr Arbeit als nötig. Keine der Dateien hat so viel Inhalt, dass es nicht einfach ein Spoiler mit Source tun würde. Downloads sind schon unbequem und Downloads in Parts? Hier braucht eigentlich keiner eine .exe, die wird auch keiner ausführen, der noch bei Verstand ist (muss nichtmal deine Schuld sein, wenn da was mit reinrutscht).

    Einfach nur den Source ^^.

    Und jetzt trinken mal alle erstmal nen Tee - ist doch kein Weltuntergang :D

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™