zur Startseite zum Inhalt zur Navigation

Ctools

 

In dieser Unit habe ich mal ein paar nützliche 
Funktionen und Prozeduren gesammelt.

!! Achtung !!

Die Auflistung der Funktionen wurde erstellt als ich 
die Ctools online gestellt habe.

Ich habe nun in den Header eine Versionsnummer 
eingetragen so das jeder prüfen kann ob er stets die 
Aktuellste Version von CTools hat.

Unter anderem sind enthalten :

// Gibt das aktuell vom System benutzte 
Trennzeichen 
// von Vorkomma- und Nachkommateil zurück
Function GetfloatSeparator: String;

// Wandelt einen Floatstring in eine Floatzahl um, 
// der Separator kann explizit angegeben werden.
Function strtofloat2(Value, Seperator: String): real;

// Diese Prozedur tut nichts, sie dient nur zum 
// Debuggen da der Compiler Haltepunkte auf ihr 
// erlaubt. 
Procedure nop;

// erlaubt das Berechnen des Sinus im Gradmaß
Function Sinus(E: Extended): Extended;

// erlaubt das Berechnen des Cosinus im Gradmaß
Function CoSinus(E: Extended): Extended;

// bei Eingabe eines DeltaX und DeltaY berechnet der 
// Rechner daraus den Winkel
Function arcTangens(x, y: Extended): Extended;

// erlaubt das Berechnen des Tangens im Gradmaß
Function Tangens(Value: Extended): Extended;

// Genau wie Mod nur auch mit negativen Zahlen
Function Mod2(Value, Modulo: Integer): integer;

// Genau wie Mod2 nur für Floatzahlen, aber 
// Vorsicht der PC hat eine gewisse Ungenauigkeit die 
// die Ergebnisse manchmal deutlich verfälschen
Function Modfloat(Value, Modulo: Extended): Extended;

// Wandelt eine Zahl Basis Old_Base in eine Integer 
// Zahl Basis 10 um
Function Base_Convert(Number: String; OLD_Base: 
Byte): int64; overload;

// Wandelt eine Dezimalzahl in eine Zahl der Basis 
// New_base um
Function Base_Convert(Number_Base_10: Int64; 
New_Base: Byte): String; overload;

// Komprimiert ein jpg File und speichert es unter 
// Newjpgfile wieder ab.
// Compression im Bereich zwischen 1 .. 100
Function Compress(jpgFile, Newjpgfile: String; 
Compression: integer): Boolean;

// vertauscht 2 Variablen
Procedure Tausche(Var i1, i2: integer); overload;
Procedure Tausche(Var i1, i2: Int64); overload;
Procedure Tausche(Var i1, i2: Single); overload;
Procedure Tausche(Var i1, i2: Double); overload;
Procedure Tausche(Var i1, i2: Extended); overload;

// Gibt true zurück wenn sich die Ellipsen schneiden
Function Ellipsecollision(E1, E2: Trect): boolean; 
overload

// Gibt true zurück wenn sich die Kreise schneiden
Function Kreiscollision(P1, P2: Tpoint; R1, R2: 
integer): boolean; overload

// Gibt true zurück wenn sich die Rechtecke schneiden
Function Rechteckcollision(r1, r2: Trect): boolean; 
overload

// Gibt true zurück wenn sich die Rechtecke schneiden
Function Rechteckcollision(Left1, Top1, Right1, 
Bottom1, Left2, Top2, Right2, Bottom2: Integer): 
boolean; overload

// Gibt true zurück wenn sich die Ellipse mit dem 
// Rechteck schneidet
Function EllipseRechteckcollision(E1, R1: Trect): 
boolean; overload

// Gibt true zurück wenn sich die Ellipse mit dem 
// Rechteck schneidet
Function EllipseRechteckcollision(Left1, Top1, 
Right1, Bottom1, Left2, Top2, Right2, Bottom2: 
Integer): boolean; overload

(*************** Rechnen mit Brüchen ***************)
// der Typ um Brüche exakt zu berechnen.
Type
 TIQ = Record
   Zaehler, Nenner:integer;
 end;

// gibt einen Bruch mit Zähler und Nenner zurück.
Function IQ(Zaehler, Nenner: Integer): TIQ;

// Wandelt einen String in einen Bruch um. Z.B. 
// Zaehler / Nenner
Function StringToIQ(Value: String): TIQ;

// Wandelt einen Bruch in einen String um
Function IQToString(value: Tiq): String;

// Wandelt einen Bruch in eine Gleitkommazahl um
Function IQtoFLOAT(Value: TIQ): Real;

// Kürzt einen Bruch
Function IQKuerzen(Value: TIQ): TIQ;

// Addiert 2 Brüche
Function IQPlusIQ(Value1, Value2: TIQ): TIQ;

// Subtrahiert 2 Brüche
Function IQMinusIQ(Value1, Value2: TIQ): TIQ;

// Multipliziert 2 Brüche
Function IQMALIQ(Value1, Value2: TIQ): TIQ;

// Teilt 2 Brüche
Function IQDIVIQ(Value1, value2: TIQ): TIQ;

(************ Rechnen mit Brüchen Ende *************)

 

(7585 Hits)

 

  calender     send_get_file     desktop_lock     hough_transformation     bigprim     cubemap     generische_liste     screensaveblocker     trackball     passbildcreator     affenpuzzle     pingpong     2048     ctools     dithering_mask     fpc_depencies     greenfoot     wii_whiteboard     tetris     wii_headtrack     heapsim     fouriersynthese     gedanken_leser     turing_maschine     pi     game_of_life     mastermind     picking     rubik_cube     rubik_cube2     fir_iir     fourier     openglsphere     funkuhr     info     farbspectrum     pwm     c_depencies     wireworld     partikelengine     tbitstream     dxtools     rollenspiel     feder_masse     tippsy3     3d_puzzle     copycommander     lazcomment     newton_interpolation     td     multilanguage     iq_block     xml     file_transfer     anty_krypt     dcf77     einstein     wuerfelzauber     stereoprojektion     opengltruetypefont     hilbert     torus_chess     simple_cad     binaeruhr     sprite_engine     weihnachtsstern     sql     parken     knack     vedische_multiplication     tasker     reihen     diffusionsfilter     ntools     episodenmanager     steganographie     lzw     suchen_dialog     loop     dithering_filtering     attributgrammatik     kollision     filetools     gorilla     ae20125     projizierte_schatten     clear_engine     zufall     euler     quadtree     race_condition     mandelbrot     8x8x8     zauber     opengl_graphikengine     maw     klab     4_wins     newton     numeric_instability     project_collector     ccm     address_db     socket     basic     network_listener     induktion     dcommenter     stm     io_serializer     ascii     genmathcalc     library     wuerfel     picam     sirpinksy     weihnachtskalender     io_adapter     sortieren2     proof2e1     network_bandwidth_limiter     kwirk     uuart     vokabel     fakenet     nsudoku     waage     tclockex     button_tool     tg12864b     codeviewer     clickomania     crc     galton_brett     jazzball     mauskoordinaten     proto     sdl_tcp_ip     trio     summe_n     gebmanager     digiman     opengl_spriteengine     atmegaboard     matrix     hex     bezier     tokenizer     transparenz     gpu_info     sortieren     sfxr     c_libs     bmp_font     shannon_fano_coding     puzzle     graphen_algos     screeny     pointer     imageinspector     rent_it     5ermedian     serial     sudoku     simpleray     raetsel     wecker     ym1602c     balanced     piemenue     l_system     binomial     fingerspeed     qprogrammer     funplay2     4_gewinnt     bignumber     baum     codecounter     balanced2     simple_font     cpu_load     tipp_it     alt_f2     cleanup     tankplan     hoertest     schachprobleme