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 *************)

 

(7631 Hits)

 

  episodenmanager     8x8x8     binaeruhr     fouriersynthese     5ermedian     passbildcreator     textfilter     kollision     bmp_font     address_db     ctools     numeric_instability     pingpong     anty_krypt     bww     labyrintcreator     balanced     transparenz     mastermind     file_transfer     fpc_depencies     stm     winkonfig     vokabel     send_get_file     loop     bignumber     4_gewinnt     fourier     gedanken_leser     network_bandwidth_limiter     dcommenter     wii_headtrack     lzw     dcf77     screensaveblocker     imageinspector     funplay2     pwm     hough_transformation     clear_engine     qprogrammer     tippsy3     gefangenen_dilemma     binomial     weihnachtskalender     kartei     picking     piemenue     copycommander     tankplan     library     c_libs     torus_chess     desktop_lock     network_listener     calender     kwirk     pointer     dithering_filtering     ym1602c     screeny     proto     picam     projizierte_schatten     fir_iir     sql     dxtools     l_system     sortieren2     minipaint     weihnachtsstern     opengl_spriteengine     feder_masse     gc_solver     hoertest     balanced2     codecounter     delforlaz     fingerspeed     wuerfelzauber     netzwerkprotokol     trackball     graphen_algos     farbspectrum     rubik_cube2     alt_f2     attributgrammatik     cpu_load     wecker     ntools     info     tg12864b     td     nsudoku     quadtree     ae20125     gpu_info     gebmanager     clickomania     crc     mandelbrot     hex     filetools     button_tool     matrix     fakenet     parken     trio     digiman     puzzle     boxmuller     turing_maschine     shannon_fano_coding     3d_puzzle     io_serializer     heapsim     partikelengine     diffusionsfilter     serial     klab     suchen_dialog     gorilla     openglsphere     wuerfel     project_collector     rollenspiel     bezier     steganographie     generische_liste     2048     iq_block     tbitstream     wii_whiteboard     newton     knack     verzeichnung     textur_filterung     4_wins     xml     simple_cad     greenfoot     einstein     ccm