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

 

(7628 Hits)

 

  fingerspeed     network_bandwidth_limiter     td     4_wins     gpu_info     network_listener     gorilla     atmegaboard     xml     shannon_fano_coding     waage     clear_engine     l_system     alt_f2     crc     laufschrift     rubik_cube     dxtools     address_db     8x8x8     serial     greenfoot     suchen_dialog     pi     stereoprojektion     basic     qprogrammer     tclockex     turing_maschine     uuart     binaeruhr     updater     filetools     fir_iir     reihen     hoertest     mauskoordinaten     dithering_mask     winkonfig     c_depencies     tg12864b     tetris     gefangenen_dilemma     multilanguage     sql     stm     file_transfer     ae20125     schachprobleme     screeny     zufall     textfilter     gebmanager     sfxr     simple_cad     diffusionsfilter     wuerfel     digiman     fourier     pwm     piemenue     cpu_load     5ermedian     picturerotate     fakenet     verzeichnung     jazzball     transparenz     passbildcreator     picam     maw     delforlaz     trackball     ntools     balanced2     codecounter     fpc_depencies     bmp_font     generische_liste     openglsphere     socket     3d_puzzle     calender     kwirk     c_libs     newton     weihnachtsstern     race_condition     desktop_lock     bignumber     pingpong     opengl_spriteengine     clickomania     sortieren2     episodenmanager     binomial     picking     iq_block     galton_brett     ym1602c     anty_krypt     bww     steganographie     dcommenter     bezier     rent_it     balanced     proto     cubemap     gedanken_leser     bigprim     copycommander     wireworld     wuerfelzauber     parken     funkuhr     hex     kollision     cleanup     gc_solver     vokabel     fouriersynthese     sudoku     baum     mastermind     partikelengine     tbitstream     io_adapter     imageinspector     klab     pointer     boxmuller     2048     ccm     quadtree     matrix     lzw     graphen_algos     io_serializer     dcf77     nsudoku     puzzle     wii_whiteboard     labyrintcreator     4_gewinnt     numeric_instability     feder_masse     library     farbspectrum     sprite_engine     loop     pentago     mandelbrot     torus_chess     wii_headtrack     wecker     button_tool     netzwerkprotokol     projizierte_schatten