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

 

(7591 Hits)

 

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