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

 

(7629 Hits)

 

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