ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΕΙΣΑΓΩΓΗ RASTERING INTRODUCTION TO OPENGL. Ε. Θεοδωρίδης, Α. Τσακαλίδης

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΕΙΣΑΓΩΓΗ RASTERING INTRODUCTION TO OPENGL. Ε. Θεοδωρίδης, Α. Τσακαλίδης 2013-2014"

Transcript

1 ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΕΙΣΑΓΩΓΗ RASTERING INTRODUCTION TO OPENGL Ε. Θεοδωρίδης, Α. Τσακαλίδης

2 Εισαγωγή Real Time Rendering 3 rd edition OpenGL - Superbible 5 th Edition Γραφικά Θεοχάρης Rows of switches and lights CRT, laser & inkjet printers 2d dot rendering - ASCII chars Lines, circles, polygons

3 Πηγαίνοντας στις 3Δ (1) 3Δ ένα αντικείμενο που περιγράφεται ή «απεικονίζεται» και έχει τρεις (3) διαστάσεις πλάτος, ύψος, βάθος Ζωγραφική, Γραφικά τεχνικές «ζωγραφικής» στο επίπεδο (καμβάς, οθόνη κλπ) ώστε να δημιουργείται η ψευδαίσθηση του βάθους

4 Πηγαίνοντας στις 3Δ (2) Προοπτική γωνίες μεταξύ των ευθειών 3D monitors προσέγγιση της 3D όρασης Σκίαση επιφανειών Μέγεθος αντικειμένων Χρώματα, υφές κλπ

5 3Δ Γραφικά (1) Rendering διαδικασία παραγωγής 2Δ/3Δ εικόνας από μαθηματικά μοντέλα ή/και εικόνες Vertices Lines Triangles/polygons Transformations Projections Hidden surface removal Rasterization

6 3Δ Γραφικά (2) Shading Lighting Texture mapping Blending Graphics: Geometry dots, lines, triangles rasterizing triangles Transformation Shading Texture Blending

7 Αρχές 3Δ Προγραμματισμού Σύστημα συντεταγμένων Αντικειμένων οθόνης Αποκοπή συντεταγμένων Viewport: αντιστοίχιση συντεταγμένων γεωμετρίας στις συντεταγμένες του παραθύρου

8 Graphics Rendering Pipeline (1) Generate a 2d-image Virtual camera 3d objects Light sources Shading equations Textures

9 Graphics Rendering Pipeline (2) Conceptual stages Functional stages Pipeline stages Slowest stage rules rendering speed (fps) Application cpu Geometry: {transformations, projections } gpu Rasterizer: {draw image, per pixel computations} gpu

10 Application Stage Application Logic Produces geometry primitives geometry stage Points, lines, triangles Collision detection at this level Input from sources: keyboard, mouse Texture animation/ animation via transforms Acceleration algorithms : e.g. Frustum culling

11 Geometry Stage (1) Majority of per-polygon, per-vertex operations Model & View Transform Model space (model coordinates) Model transforms Instances with difference in location, size, etc World Space (world coordinates) Camera (location, direction) View transform/camera space

12 Geometry Stage (2) Vertex Shading model appearance Objects material Effect Light shining on the object Shading equation (points of the object, material data) Material data = {location, normal, color } Output = {colors, vectors, texture coordinates } Interpolated in the rasterization stage

13 Geometry Stage (3) Projection Transform view volume into unit cube (-1,-1,-1), (1,1,1) Orthographic projection Perspective projection Farther = smaller Parallel lines converge Flustrum into cube

14 Geometry Stage (4) Clipping Primitives in the view volume go to rasterizer stage Primitives partially in view volume are Clipped Primitives are clipped against the unit cube User defined clipping planes Fixed operation hardware

15 Geometry Stage (5) Screen Mapping 3d primitives (x,y) coords screen coordinates + z coords rasterizing stage Screen mapping coords Different to APIs Fixed operation hardware

16 Rasterizer Stage (1) Compute and set colors for pixels covered by object 2d coords from screen space + z coords + shading information pixels on the screen Triangle Setup Fixed operation hd Triangle data for scan conversion/interpolation of triangle surface

17 Rasterizer Stage (2) Triangle Traversal/Scan Conversion Fixed operation hd Find which pixels are inside a triangle and value with interpolation Pixel Shading Per pixel shading using interpolated shading data GPU programmable cores!!!!! Texturing

18 Rasterizer Stage (3) Merging Information for each pixel in color buffer Merge (current colors, fragment colors) Fixed hardware Resolving visibility according z coord (depth buffer) Alpha channel - related opacity Stencil buffer (Raster/blend operations) Frame buffer (Accumulator buffer) Double Buffering

19 Graphic Processing Unit (1) Graphic acceleration from right to left Rasterization of triangles scanlines 1999 NVIDIA GeForce256 GPU Hardware vertex shading Complex fixed pipeline highly programmable Some parts remain configurable Programmable shaders Vertex shaders (transformation, deformation ) Pixel shaders - custom per pixel shading equation Geometry shader (create primitives on the fly)

20 Graphic Processing Unit (2) Vertex Shader Geometry Shader (optional, create/destroy primitives) Modern shaders (shader model 4.0, DirectX, ) common-shader core, programming model C-like shading languages HSSL, Cg, GLSL Compiled machine independent assembly language Assembly language machine language in driver

21 Graphic Processing Unit (3) Virtual machine PROCESSOR Registers Data sources Single instruction multiple data capabilities Draw Call API call Draw a group of primitives pipeline Uniform inputs (consts values ) e.g. texture Varying inputs Fastest ops: scalar and vector *,+, multiply add, dot-product Sqrt, reciprocal, sin, cosine, exp, log Texturing ops are costly due to access (i/o, ) Flow control and dynamic flow control (more costly ) Compilation offline / runtime stored as a txt and passed to GPU via the driver

22 Graphic Processing Unit (4) Evolution 1984 shade trees Programmable shading via multiple rendering passes Quake III 1999 RenderMan Nvidia Gforce 3 GPU programmable vertex shaders (Dx, OGL) Very limited programs without FLOW CONTROL compute both branches and interpolate DirectX Shader Model 2002 DirectX 9.0 SM OpenGL 16 bit floating point New ops DirectX HLSL OpenGL GLSL 2004 Shader Model 3 Increased resources Xbox , Pstation Wii fixed function GPU IDE for developing Shaders 2007 Shader Model 4 (DX10,OpenGL) Uniform programming model

23 Graphic Processing Unit (5) Vertex Shader DirectX: input assembler for list of vertices, list of colors etc and perform instancing, id them for later use Triangle mesh = nodes list that form triangles Vertex shader modifies, creates or ignore for each vertex color, texture coords and position (older versions in CPU, now in GPU) Vertex shader is common to VM Each vertex passed in is processed by vertex shader program, values are interpolated across lines or triangles This can run in parallel cores in GPU (each vertex is processed independently)

24 Graphic Processing Unit (6) Vertex Shader Effects Lens Effects Shadow volume, vertex blending, silhouette rendering, lens effects: fish eyed, underwater Object definition Object twist, bend, taper Primitive creation by sending meshes down the pipeline Page curls, heat haze, water ripples Vertex texture fetch: ocean surface, terrain height

25 Graphic Processing Unit (7) Geometry Shader Optional use Input : single object and its vertices (triangle, line, point) +3 nodes on triangle or 2 on line Output: one on zero primitive a mesh can selectively modified by editing vertices, adding new primitives or removing others Input one type of object (e.g.. Triangles) output maybe another type of triangles (e.g. Points centers) FIFO processing of objects slow performance (maybe by sorting) e.g. Produce a bush from a leaf it not efficient to implemented in geometry shader This stage is about the modification of incoming data or making a limited # of copies

26 Graphic Processing Unit (8) Pixel Shader (Fragment Shader) Each triangle covers a pixel cell (fully or partially) Material there is opaque or transparent Pixel color doesn t effect directly but in merger Limitation: pixel shader can only influence the fragment handling it does not uses the results of neighbor pixels but from vertex interpolation Set fragment color for merging Depth value can be modified Fog computation, alpha testing Merger Depths and colors of fragments are combined in the color buffer Operations (stencil buffer, z buffer, color blending) High configurable

27 Graphic Processing Unit (9) Shader Example Unification of vertex shader and pixel shader HLSL Variables

28 Graphic Processing Unit (10)

29 Αλγόριθμοι Παράστασης Βασικών Σχημάτων

30 Αλγόριθμοι Σχεδίασης Ευθειών Στόχος Η επιλογή των pixel κοντά στην μαθηματική πορεία της ευθείας Πάχος ευθείας σταθερό-ανεξάρτητο από το μήκος και την κλίση της Ποιο είναι το μικρότερο πάχος? Σε ποιες κλίσεις επιτυγχάνεται αυτό? Ταχύτητα σχεδίασης ικανοποιητική Γιατί χρειάζεται να είναι αποδοτικοί αυτοί οι αλγόριθμοί?

31 Αλγόριθμος με τη βοήθεια της αλγεβρικής εξίσωσης ευθείας (1) P 1 (x 1,y 1 ) - P n (x n,y n ) Από αναλυτική γεωμετρία: y = s x + b s = y n - y 1 / x n - x 1 b = y 1 x n y n x 1 / x n x 1

32 Αλγόριθμος με τη βοήθεια της αλγεβρικής εξίσωσης ευθείας (2) int x1, y1, xn, yn, colour; Line1 (x1,y1,xn,yn,colour){ float s, b, y; int x; s= (yn-y1) / (float) (xn-x1) ; b= (y1*xn yn*x1) / (float) (xn-x1); for (x=x1; x<=xn; x++){ y=s*x + b; setpixel (x, round (y), colour); } }

33 Αυξητικός Αλγόριθμος (incremental) (1) Για κάθε επανάληψη η τιμή του x αυξάνεται κατά 1 (x i+1 = x i + 1) Y i+1 = s x i+1 + b = sx i + b + s = y i + s Άρα ο πολλαπλασιασμός μπορεί να αντικατασταθεί από πρόσθεση Το pixel στο βήμα i υπολογίζεται με βάση το pixel στο βήμα i 1 Αποφεύγεται ο υπολογισμός του b

34 Αυξητικός Αλγόριθμος (incremental) (2) int x1, y1, xn, yn, colour; Line2 (x1,y1,xn,yn,colour){ float s, y; int x; s= (yn-y1) / (float) (xn-x1) ; y= y1; for (x=x1; x<=xn; x++){ setpixel (x, round (y), colour); y= y + s; } }

35 Αλγόριθμος χωρίς στρογγύλευση (1) Η πράξη στρογγύλευσης του round (y) μπορεί να αποφευχθεί εάν χωρίσουμε τη μεταβλητή y σε ακέραιο και δεκαδικό μέρος Το δεκαδικό μέρος το θεωρούμε ως μεταβλητή (του) error Error = κατακόρυφη απόσταση του (x i +1, y i ) από την ιδεατή πορεία της ευθείας

36 Αλγόριθμος χωρίς στρογγύλευση (2) int x1, y1, xn, yn, colour; Line1 (x1,y1,xn,yn,colour){ float s, error; int x, y; s= (yn-y1) / (float) (xn-x1) ; y= y1; error= 0; for (x=x1; x<=xn; x++){ //y= s*x + b; setpixel (x, y, colour); error= error + s; if (error >= 0.5){ y++; error--; } } }

37 Αλγόριθμος Bresenham (1) Με κλιμάκωση των s, error μπορούμε να έχουμε πράξεις ακεραίων χωρίς επίδραση των pixel Πολλαπλασιάζοντας με dx= x n -x 1, το s και το error γίνονται ακέραιοι. Άρα s=dy και error>=dx/2 (Το τελευταίο καθορίζει και την επιλογή του pixel) Αφαιρώντας από την αρχική τιμή του error το ακέραιο [dx/2], η τιμή του γίνεται error>=0

38 Αλγόριθμος Bresenham (2) int x1, y1, xn, yn, colour; line4 (x1,y1,xn,yn,colour){ int x, y, error, dx, dy; dx = xn-x1; dy = yn-y1; y = y1; error = - dx/2; for (x=x1; x<=xn; x++){ //y = s*x + b; setpixel (x, y, colour); error = error + dy; if (error>=0){ y++; error = error - dx; } } }

39 Αλγόριθμος Bresenham (3) Ο αλγόριθμος Bresenham λειτουργεί για x 1 <x n και βρίσκονται στο πρώτο οκταμόριο Για τη μεταφορά σε άλλα οκταμόρια, θα πρέπει κάθε φορά το (x 1, y 1 ) να συμπέσει με την αρχή των αξόνων (μεταφορά του ευθύγραμμου τμήματος) Βασικό μειονέκτημα είναι ότι ευθύγραμμα τμήματα διαφορετικής κλίσης μπορεί να σχεδιάζονται με διαφορετική φωτεινότητα (αυτό διορθώνεται με τεχνικές αντιταύτισης)

40 Αλγόριθμος Bresenham (4)

41 Αλγόριθμος σχεδίασης κύκλου (1) Στον κύκλο μπορούμε να εκμεταλλευτούμε την ύπαρξη 8- πλής συμμετρίας Πώς υπάρχει 8-πλη συμμετρία στον κύκλο? Άρα μπορούμε να εξετάσουμε τη σχεδίαση του κύκλου σε ένα οκταμόριο Στα υπόλοιπα οκταμόρια τι γίνεται? Έστω Ο η αρχή των αξόνων (κέντρο κάποιου pixel) και r η ακτίνα, ακέραιος αριθμός Που βάζουμε την αρχή των αξόνων και γιατί? Η ρουτίνα circle_symmetry σχεδιάζει τα 8 συμμετρικά σημεία ενός αρχικού σημείου (x,y) Πώς? Ποια αντικατάσταση των x και y μπορεί να βοηθήσει στους υπολογισμούς και γιατί?

42 Αλγόριθμος σχεδίασης κύκλου (2) int x, y, colour; circle_symmetry (x, y, colour){ setpixel (x, y, colour); setpixel (y, x, colour); setpixel (y, -x, colour); setpixel (x, -y, colour); setpixel (-x, -y, colour); setpixel (-y, -x, colour); setpixel (-y, x, colour); setpixel (-x, y, colour); }

43 Αλγόριθμος σχεδίασης κύκλου (με Bresenham) (3) Έστω (x i,y i ) Έστω το σημείο στο 2 ο οκταμόριο όπου το x βρίσκεται σε άξονα ταχύτερης κίνησης Άρα πρέπει να επιλέξουμε το pixel (x i +1, y i ) ή το (x i +1, y i -1) Ο Bresenham έδειξε ότι μια ικανοποιητική μεταβλητή απόφασης για την επιλογή του pixel είναι η e i =d 1 -d 2 όπου d 1 =y i2 -y 2 και d 2 =y 2 -(y i -1) 2 Αν e>=0 τότε επιλέγουμε το 2 ο σημείο (x i +1, y i -1), διαφορετικά το 1 ο (x i +1, y i )

44 Αλγόριθμος σχεδίασης κύκλου (4)

45 Αλγόριθμος σχεδίασης κύκλου (5) Για x=x i +1 ισχύει y 2 =r 2 -(x i +1) 2 e i =2(x i +1) 2 + y i 2 + (y i -1) 2 2r 2 (1) Η τιμή του e i+1 υπολογίζεται επαναληπτικά: e i+1 =2(x i+1 +1) 2 + y i (y i+1-1) 2 2r 2 = e i + 4x i (y i+1 2 y i2 ) 2(y i+1 y i ) Και για τον υπολογισμό του e i+1 κάνουμε το εξής τέχνασμα Αν e i <0: y i+1 =y i δηλαδή e i+1 =e i + 4(x i +1) + 6 Αν e i >=0: y i+1 =y i -1 δηλαδή e i+1 =e i + 4(x i +1) + 2 4(y i - 1)

46 Αλγόριθμος σχεδίασης κύκλου (6) Θεωρούμε σαν πρώτο σημείο του (x,y) = (0, r) και επομένως μπορούμε να υπολογίσουμε την αρχική τιμή της μεταβλητής απόφασης (με βάση τη σχέση e i =2(x i +1) 2 + y i 2 + (y i -1) 2 2r 2 ) Εάν το κέντρο του κύκλου δεν είναι το (0, 0) αλλά κάποιο σημείο (x o, y o ) circle_symmetry (x + x o, y + y o, colour)

47 Αλγόριθμος σχεδίασης κύκλου (7) int r, colour; circle (r, colour){ x = 0; y = r; e = 3-2*r; while (x<=y){ circle_symmetric (x, y, colour); x++; if (e>=0){ y--; e = e - 4*y; } e = e + 4*x + 2; } }

48 Αλγόριθμοι Σχεδίασης Κωνικών Τομών (1) Κωνικές Τομές = Έλλειψη, Υπερβολή, Παραβολή Η μεθοδολογία των Αγάθου-Θεοχάρη-Μπεμ ακολουθεί το σκεπτικό του Bresenham στον κύκλο Γρήγορος, μικρή απαίτηση ακρίβειας ακεραίων, σωστή μετάβαση περιοχής, εύκολα επιδέχεται αντιταύτιση

49 Αλγόριθμοι Σχεδίασης Κωνικών Τομών (2) Η έλλειψη έχει εξίσωση: x 2 /a 2 + y 2 /b 2 = 1

50 Αλγόριθμοι Σχεδίασης Κωνικών Τομών (3) Υπάρχει 4πλη συμμετρία Δημιουργούμε μόνο 2 περιοχές Αυτές χωρίζονται από το σημείο όπου dx/dy = -1 Στην 1 η περιοχή ο βασικός άξονας κίνησης είναι ο x ενώ στην δεύτερη είναι ο y Άρα αρκεί να βρούμε Επαναληπτικές εκφράσεις για τον υπολογισμό των μεταβλητών απόφασης στις 2 περιοχές Τις αρχικές τιμές των μεταβλητών απόφασης Μία συνθήκη που να σηματοδοτεί την μετάβαση από την περιοχή 1 στην περιοχή 2

51 Μεταβλητή Απόφασης Περιοχής 1 (1) Άξονας κύριας κίνησης ο x Εκκίνηση από (0, b) Τέλος περιοχής όταν dx/dy = -1 Σύμφωνα με Bresenham, η τιμή του x θα αυξάνεται κατά 1 και θα πρέπει να αποφασίζουμε αν η τιμή του y θα παραμένει ίδια ή θα μειώνεται κατά 1

52 Μεταβλητή Απόφασης Περιοχής 1 (2) Α(x i, y i ) Β (x i +1, y i ) C (x i, y i -1) D (x i +1, y i -1)

53 Μεταβλητή Απόφασης Περιοχής 1 (3) Ορίζουμε d 1 = (y i 2 y 2 ) d 2 = y 2 - (y i 2 1) Και θέτουμε: d = d 1 d 2 Το αποτέλεσμα της σύγκρισης της d με το 0 καθορίζει την επιλογή μεταξύ του Β και του D (όπως στον κύκλο) Για τον υπολογισμό της μεταβλητής απόφασης με την εξίσωση της έλλειψης, θέτουμε e = y i y μεταβάλλοντας την απόφαση σε d(e) = -2e 2 + 4y i e + 1 2y i

54 Μεταβλητή Απόφασης Περιοχής 1 (4) Για e = ½ έχουμε τιμή απόφασης d(1/2) = ½ Αν d<=1/2 επιλέγουμε το pixel B Αν d>1/2 επιλέγουμε το pixel D

55 Μεταβλητή Απόφασης Περιοχής 1 (5) Οι αυξητικοί υπολογισμοί διευκολύνονται περαιτέρω αν αρχικά πάρουμε d = a 2 (d 1 d 2 ) (Η μεταβλητή απόφασης στο βήμα i της περιοχής 1) Οπότε η συνάρτηση απόφασης γίνεται d(e) = -2 a 2 e a 2 y i e + a 2 2 a 2 y i Αν d<= a 2 /2 επιλέγουμε το pixel B Αν d> a 2 /2 επιλέγουμε το pixel D

56 Μεταβλητή Απόφασης Περιοχής 1 (6) Στον αλγόριθμο που χρησιμοποιεί αποκλειστικά ακέραιες μεταβλητές η διαίρεση με το 2 υλοποιείται με ολίσθηση Όμως από την εξίσωση της έλλειψης για το σημείο (x i +1, y i ) έχουμε: a 2 y 2 = a 2 b 2 - b 2 (x i +1) 2 οπότε: d 1,i = -2 a 2 b b 2 (x i +1) 2 + a 2 y a 2 (y i -1) 2 Αν d 1,i <= a 2 /2 τότε y i+1 = y i -1 Αν d 1,i > a 2 /2 τότε y i+1 = y i Η αρχική τιμή d 1,0 βρίσκεται αντικαθιστώντας τις συντεταγμένες του 1 ου pixel της περιοχής 1 (0, b) για τα (x i, y i )

57 Μετάβαση από την περιοχή 1 στην περιοχή 2 (1) Λόγω 4πλης συμμετρίας χρειάζεται να σχεδιάσουμε το 1 τεταρτημόριο (τα υπόλοιπα υπολογίζονται με συμμετρία) Χρειαζόμαστε ένα κριτήριο μετάβασης από την μία περιοχή στην άλλη (όπου αλλάζει και ο άξονας κύριας κατεύθυνσης) Αυτό το κριτήριο στηρίζεται στην τιμή του d για το σημείο (x i +1, y i -3/2) Αν η έλλειψη περνά κάτω από το σημείο αυτό τότε απαιτείται αλλαγή περιοχής

58 Μετάβαση από την περιοχή 1 στην περιοχή 2 (1) Για e = 3/2 έχουμε τιμή απόφασης: d(3/2) = -2 a 2 (3/2) a 2 y i (3/2) + a 2 2 a 2 y i Αν d<=d (3/2) τότε παραμένουμε στην περιοχή 1 Αν d>d (3/2) τότε μεταβαίνουμε στην περιοχή 2 Παρόμοια βρίσκουμε την μεταβλητή απόφασης περιοχής 2d 2,i

59 Μεταβλητή απόφασης Περιοχής 2 Ορίζουμε d 1 = (x i 2 + 1) - x 2 d 2 = x 2 - x i 2 Και θέτουμε: d = d 1 d 2 Με επιλογή του pixel Α στην γραμμή i, η d = b 2 (d 1 d 2 ) καθορίζει την επιλογή στην επόμενη γραμμή μεταξύ των C και D Αν d<=b 2 /2 τότε επιλέγουμε το pixel D Αν d>b 2 /2 τότε επιλέγουμε το pixel C

60 Χρωματισμός Πολυγώνων (1) Για πλεγματικές οθόνες Μέθοδοι γεμίσματος που στηρίζονται στη συνάφεια των pixels του εσωτερικού αντικειμένου Γέμισμα με βάση την περίμετρο Γέμισμα με βάση το υπάρχον χρώμα Μέθοδοι σάρωσης που στηρίζονται στην γεωμετρική περιγραφή της περιμέτρου ενός αντικειμένου Σάρωση πολυγώνου (ΥΧ) - Αλγόριθμος Υ-Χ - Αλγόριθμος Αλγόριθμος κρίσιμων σημείων

61 Χρωματισμός Πολυγώνων (2) Γέμισμα με βάση την περίμετρο Είσοδος: Ένα εσωτερικό σημείο (x, y) Το χρώμα της περιμέτρου Το χρώμα που θέλουμε να χρωματίσουμε το πολύγωνο Εκμεταλλευόμαστε τη συνάφεια των 4 ή 8 πλησιέστερων γειτονικών Αναδρομική εφαρμογή του αλγορίθμου Έξοδος όταν φτάσουμε σε pixel που έχει το χρώμα της περιμέτρου (ή το χρώμα που θέλουμε)

62 Χρωματισμός Πολυγώνων (3) Γέμισμα με βάση το υπάρχον χρώμα Είσοδος: ένα εσωτερικό σημείο (x, y) Το χρώμα το υπάρχον (το εσωτερικό του πολυγώνου) Το χρώμα που θέλουμε να χρωματίσουμε το πολύγωνο Εκμεταλλευόμαστε τη συνάφεια των 4 ή 8 πλησιέστερων γειτονικών Αναδρομική εφαρμογή του αλγορίθμου Έξοδος όταν φτάσουμε σε pixel που δεν έχει το χρώμα το εσωτερικό της εκκίνησης

63 Ταύτιση (Aliasing) (1)

64 Ταύτιση (Aliasing) (2) Τα παριστάμενα αντικείμενα είναι συνεχή σήματα ενώ αντίθετα η οθόνη στην οποία απεικονίζονται αποτελείται από διακριτά σημεία (pixels) Θεωρούμε τα pixels σημεία δειγματοληψίας (sampling points) για την ψηφιακή αντιπαράσταση της συνεχούς εικόνας Θεώρημα Nyquist: Η πιστή αναπαραγωγή ενός σήματος ή συχνότητα δειγματοληψίας πρέπει να είναι υπερδιπλάσια της μεγαλύτερης f s > 2 f max Διαφορετικά: παρατηρείται το φαινόμενο της ταύτισης

65 Ταύτιση (Aliasing) (3) Αποτελέσματα ταύτισης Εμφάνιση τεθλασμένων ευθύγραμμων τμημάτων και ακμών πολυγώνων Λανθασμένη εμφάνιση επαναλαμβανόμενων λεπτομερειών αντικειμένων (π.χ. ίδια αντικείμενα σε απόσταση μικρή το ένα από το άλλο) Λανθασμένη εμφάνιση μικρών αντικειμένων (π.χ. αντικείμενο με συνεχείς εμφανίσεις και εξαφανίσεις ανάλογα με την θέση του)

66 Αντιταύτιση (Antialiasing) (1) Αλγόριθμος Pitteway & Watkinson - παραλλαγή του αλγορίθμου Bresenham Λύνει το πρόβλημα για μία πλευρά πολυγώνου κι όχι για 2 και περισσότερες Σωστή απόχρωση οριακών pixel Μέθοδος αντιταύτισης με Μεταφιλτράρισμα (post filtering) Λειτουργεί με αύξηση του αριθμού των δειγμάτων Δημιουργεί μία εικόνα με περισσότερα σημεία Βρίσκει το χρωματικό μέσο όρο των σημείων που αντιστοιχούν σε κάθε πραγματικό pixel Μέθοδος αντιταύτισης με Προφιλτράρισμα (pre filtering) Εξαγωγή από το σήμα συχνοτήτων μεγαλύτερων ή ίσων με το μισό της συχνότητας δειγματοληψίας πριν την εκτέλεσή της

67 Post Filtering

68 Αντιταύτιση (Antialiasing) (2) Μέθοδος Αντιταύτισης με Μεταφιλτραρίσμα Μειονεκτεί στο ότι δεν λαμβάνει υπόψη τα περιεχόμενα της εικόνας-είδωλο Ενεργεί σε ένα ήδη ψηφιοποιημένο περιβάλλον με προκαθορισμένη συχνότητα δειγματοληψίας

69 Αντιταύτιση (Antialiasing) (3) Μέθοδος Αντιταύτισης με Προφιλτραρίσμα Αλγόριθμος αντιταύτισης Catmull: δεν λαμβάνει υπόψη τη σταδιακή μεταβολή της τιμής φωτισμού κάθε πολυγώνου αλλά θεωρεί ότι κάθε πολύγωνο έχει σταθερή χρωματική απόχρωση σε όλη του την επιφάνεια Αντιταύτιση A-buffer: Παρουσιάζει αδυναμία επεξεργασίας πολυγώνων που τέμνονται εντός του pixel καθώς δεν είναι δυνατόν να ταξινομηθούν ως προς το βάθος (Ζ)

70 RasterOp (1) Πλεγματικές Οθόνες: το χρώμα φυλάσσεται σε μία ειδική μνήμη (frame buffer) Πολλές λειτουργίες υλοποιούνται με μετακινήσεις ή/και συνδυασμούς στην μνήμη οθόνης Π.χ. Επεξεργαστής κειμένου, παραθυρικές εφαρμογές

71 RasterOp (2)

72 RasterOp (3) Διαπιστώθηκε ότι μεγάλος αριθμός των μετακινήσεων/συνδυασμών αφορούσε ορθογώνιες παραλληλόγραμμες ομάδες pixel RasterOp: Γενική ρουτίνα μετακίνησης/συνδυασμού ορθογώνιων παραλληλόγραμμων τμημάτων εικόνας, ταχέως υλοποιημένη Συνδυάζει παραμετρικά pixel προς pixel 2 ισομεγέθη ορθογώνια παραλληλόγραμμα τμήματα της μνήμης, τα source και destination και γράφει το αποτέλεσμα στο destination

73 RasterOp (4)

74 RasterOp (5)

75 RasterOp (6) Ασπρόμαυρες οθόνες: η function είναι κάποια από τις 16 δυαδικές λογικές συναρτήσεις XOR: ιδιαίτερα χρήσιμη για την αντιμετώπιση των source και destination χωρίς τη χρήση βοηθητικού χώρου

76 RasterOp (7) Η exchange είναι χρήσιμη για τις διαδοχικές μετακινήσεις κάποιου αντικειμένου Η περιοχή που εκάστοτε καλύπτεται από το αντικείμενο φυλάσσεται στο back

77 RasterOp (8)

78 Αρχές 3Δ προγραμματισμού 3Δ - Σύστημα συντεταγμένων 3Δ 2Δ Projection-προβολή Ορθοκανονική προβολή Προβολή προοπτικής Α Α Προβολείς Κέντρο προβολής Α Β Παράθυρ ο Β Προβολείς Κ Α Β Κέντρο προβολής Β Παράθ υρο y στο άπειρο y y x z y z y Παράλληλη Προβολή z y Προβολή Προοπτικής

79 OpenGL (1) a software interface to graphics hardware OpenGL API C, C++, Java, Python GLSL OpenGL Shading Language Programs use OpenGL API OpenGL Software Implementations Mesa3D OpenGL Hardware Implementations: nvidia, ATI Apple, etc OpenGL Implementation = graphic card + driver OpenGL extensions (SGI_, ATI_, AMD_, )

80 OpenGL (2) OpenGL 3.x 3.0 Deprecated functionalities 3.1 GL_ARB_compatibility 3.2 core profile - compatibility profile Using OpenGL Procedural API Δεν περιγράφει απλώς την σκηνή Περιγραφή των βημάτων για την κατασκευή (draw primitives, texture mapping, blending, transparence, animation) Windows management, user interaction, file i/o GLUT

81 OpenGL (3) GLEW extension libraries GLTools math lib, geometric objects Data Types: Glboolean,Glubyte, Glchar, Glint Errors: glgeterror(), GL_INVALID_VALUE, GL_INVALID_OPERATION Version: const Glubyte * glgetstring(glenum name);

82 OpenGL (4) OpenGL state machine - set of variable void glenable(glenum capability); void gldisable(glenum capability); glenable(gl_depth_test); //gldisable Glboolean GLIsEnabled(Glenum capability);

83 OpenGL (5) Χειρίζεται ένα σύνολο από αντικείμενα (σημεία, γραμμές, πολύγωνα) και εικόνες (images, bitmaps) και τα μετατρέπει σε εικονοστοιχεία Low-level, procedural API: δημιουργία και βήματα απόδοσης σκηνής (Δεν μπορούμε απλώς να περιγράψουμε την σκηνή!) καλή γνώση της διασωλήνωσης των γραφικών, δυνατότητα προγραμματισμού νέων αλγόριθμων απόδοσης σκηνών

84 OpenGL (6) Evaluator: έλεγχος των μοντέλων Vertex Operations: μετασχηματισμοί και φωτισμός ανάλογα με την υφή. Αποκοπή μη ορατών μερών για την παραγωγή του όγκου που φαίνεται Rasterisation: απόδοση της πληροφορίας σε εικονοστοιχεία (απόδοση πολυγώνων με χρώμα με χρήση παρεμβολής, απόδοση υφής κλπ) Per Fragment Operations: ανανέωση τιμών (βάθους, χρώματος κλπ) ήδη υπαρχόντων τμημάτων

85 OpenGL (7) Games: Counter Strike, Doom 3, Call of Duty, Unreal, Second Life, Quake, Deus Ex, Applications: Blender, 3d Studio Max, Celestia, Google Earth,

86 Related APIs AGL, GLX, WGL Σύνδεση της OpenGL με παραθυρικά συστήματα GLU (OpenGL Utility Library) Μέρος της OpenGL NURBS, tessellators, quadric shapes, etc. GLUT (OpenGL Utility Toolkit) Portable windowing API (creation, handling, monitoring keyboard, mouse) Δεν είναι μέρος της OpenGL

87 OpenGL και σχετικά APIs application program OpenGL Motif widget or similar GLUT GLX, AGL or WGL GLU X, Win32, Mac O/S GL software and/or hardware

88 Direct3D (1) DirectX API: MS windows, Xbox Rendering 3d graphics: hardware acceleration z-buffer, antialiasing, blending, visual effects texture mapping, μετασχηματισμοί, αποκοπή, φωτισμός, depth buffering

89 Direct3D (2) Input Assembler: είσοδος κόμβων Vertex shader: μετασχηματισμοί, αποκοπή, σκίαση Geometry shader: επεξεργασία αντικειμένων Rasterizer: αντικείμενα σε εικονοστοιχεία, αποκοπή, παρεμβολή μεταξύ κόμβων Pixel Shader: χρωματισμός εικονοστοιχείων και βάθος αντικειμένου

90 OpenGL vs. Direct3D (1) Portability OpenGL: Windows, Unix Based, MacOS, OpenSolaris, Playstation 3, Nintendo GameCube, Wii, Nintendo DS, PSP, Iphone, Android, Symbian Os Direct3D: Windows, Xbox, Sega Dreamcast, WINE (unix based OS) Χρηστικότητα OpenGL: C, C++,VB, Ada, Delphi, Python Direct3D: Microsoft COM, MS C++, Delphi, C#, VB.NET OpenGL 3d rendering που μπορεί να επιταχυνθεί από το υλικό Direct3D 3d hardware interface

91 OpenGL vs. Direct3D (2) OpenGL 3d rendering που μπορεί να επιταχυνθεί από το υλικό Η υλοποίηση της βιβλιοθήκης διαχειρίζεται τους πόρους του υλικού δύσκολη υλοποίηση driver Direct3D 3d hardware interface, χαρακτηριστικά από το υλικό Η εφαρμογή διαχειρίζεται τους πόρους του υλικού, πιο σύνθετη υλοποίηση εφαρμογής, βελτιστοποίηση της χρήσης του υλικού

92 OpenGL vs. Direct3D (3) Απόδοση OpenGL: user-mode part, kernel-mode part driver Direct3D: kernel mode drivers (D3D 10) Professional Graphics OpenGL: SGI, SoftIMAGE, Alias PowerANimator, Direct3D: παιχνίδια

93 Εισαγωγικά Headers Files #include <GL/gl.h> #include <GL/glu.h> #include <GL/glut.h> Libraries Enumerated Types OpenGL defines numerous types for compatibility GLfloat, GLint, GLenum, etc.

94 GLUT Basics Δομή Εφαρμογής Παραμετροποίησε και άνοιξε το παράθυρο Αρχικοποίησε την κατάσταση της OpenGL Κατέγραψε τις συναρτήσεις χειρισμού εισόδου (input callback functions) Render Resize Input: keyboard, mouse, etc. Όρισε τον βρόγχο χειρισμού γεγονότων

95 Παράδειγμα void main( int argc, char** argv ) { int mode = GLUT_RGB GLUT_DOUBLE; glutinitdisplaymode( mode ); glutcreatewindow( argv[0] ); init(); glutdisplayfunc( display ); glutreshapefunc( resize ); glutkeyboardfunc( key ); glutidlefunc( idle ); glutmainloop(); }

96 OpenGL Initialization Όρισε τι κατάσταση πρόκειται να χρησιμοποιηθεί void init( void ) { glclearcolor( 0.0, 0.0, 0.0, 1.0 ); glcleardepth( 1.0 ); } glenable( GL_LIGHT0 ); glenable( GL_LIGHTING ); glenable( GL_DEPTH_TEST );

97 GLUT Callback Functions Διαδικασίες που καλούνται όταν κάτι συμβαίνει Window resize or redraw User input Animation Καταχώρισε callbacks with GLUT glutdisplayfunc( display ); glutidlefunc( idle ); glutkeyboardfunc( keyboard );

98 Rendering Callback glutdisplayfunc( display ); void display( void ) { glclear( GL_COLOR_BUFFER_BIT ); glbegin( GL_TRIANGLE_STRIP ); glvertex3fv( v[0] ); glvertex3fv( v[1] ); glvertex3fv( v[2] ); glvertex3fv( v[3] ); glend(); glutswapbuffers(); }

99 Idle Callbacks Animation void idle( void ) { t += dt; glutpostredisplay(); } glutidlefunc( idle );

100 User Input Callbacks Process user input glutkeyboardfunc( keyboard ); void keyboard( unsigned char key, int x, int y ) { switch( key ) { case q : case Q : exit( EXIT_SUCCESS ); break; case r : case R : rotate = GL_TRUE; glutpostredisplay(); break; } } -lglut32 -lglu32 -lopengl32 -lwinmm -lgdi32

101 OpenGL Geometric Primitives Γεωμετρικά Βασικά Στοιχεία GL_LINE_STRIP GL_LINE_LOOP GL_POINTS GL_LINES GL_POLYGON GL_TRIANGLES GL_TRIANGLE_STRIP GL_TRIANGLE_FAN GL_QUADS GL_QUAD_STRIP

102 Παράδειγμα void drawrhombus( GLfloat color[] ) { glbegin( GL_QUADS ); glcolor3fv( color ); glvertex2f( 0.0, 0.0 ); glvertex2f( 1.0, 0.0 ); glvertex2f( 1.5, ); glvertex2f( 0.5, ); glend(); }

103 OpenGL Command Formats glvertex3fv( v ) Number of components 2 - (x,y) 3 - (x,y,z) 4 - (x,y,z,w) Data Type b - byte ub - unsigned byte s - short us - unsigned short i - int ui - unsigned int f - float d - double Vector omit v for scalar form glvertex2f( x, y )

104 Ορισμός Γεωμετρικών Αντικειμένων Ορισμός glbegin( primtype ); glend(); primtype ορίζει πως οι κορυφές συνδυάζονται GLfloat red, green, blue; Glfloat coords[3]; glbegin( primtype ); for ( i = 0; i < nverts; ++i ) { glcolor3f( red, green, blue ); glvertex3fv( coords ); } glend();

105 OpenGL Color Models CPU Poly. DL Per Vertex Texture Raster Frag FB RGBA or Color Index Pixel color index mode Red Green Blue Display RGBA mode

106 OpenGL

OpenGL. Εισαγωγή στην OpenGL Βασικά Γεωμετρικά Σχήματα Παράλληλη (ορθογραφική) προβολή. Μάθημα: Γραφικά Υπολογιστών και Εικονική Πραγματικότητα

OpenGL. Εισαγωγή στην OpenGL Βασικά Γεωμετρικά Σχήματα Παράλληλη (ορθογραφική) προβολή. Μάθημα: Γραφικά Υπολογιστών και Εικονική Πραγματικότητα OpenGL Εισαγωγή στην OpenGL Βασικά Γεωμετρικά Σχήματα Παράλληλη (ορθογραφική) προβολή Κατερίνα Παπαδοπούλου / pakate@unipi.gr Μάθημα: Γραφικά Υπολογιστών και Εικονική Πραγματικότητα OpenGL Εισαγωγή Είναι

Διαβάστε περισσότερα

Γραφικά με υπολογιστές

Γραφικά με υπολογιστές Γραφικά με Υπολογιστές Ενότητα # 3: Εισαγωγή Φοίβος Μυλωνάς Τμήμα Πληροφορικής Φοίβος Μυλωνάς Γραφικά με υπολογιστές 1 Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Προγραμματισμός γραφικών

Προγραμματισμός γραφικών Προγραμματισμός γραφικών Εισαγωγή ελάχιστου συνόλου συναρτήσεων Οχι αλληλεπίδραση από τον χρήστη Δισδιάστατα γραφικά: ειδική περίπτωση τρισδιάστατων γραφικών Παράδειγμα-εφαρμογή: η ταινίατου Sierpinski

Διαβάστε περισσότερα

Εισαγωγή στην OpenGL: μέρος 1ο

Εισαγωγή στην OpenGL: μέρος 1ο Εισαγωγή στην OpenGL: μέρος 1ο Τι είναι η OpenGL Η OpenGL είναι ένα σύνολο εντολών (Application Programming Interface API) που μας επιτρέπει την δημιουργία τριδιάστατων γραφικών. Δεν είναι γλώσσα προγραμματισμού

Διαβάστε περισσότερα

OpenGL. Εισαγωγή. Εξάμηνο: 2014Β. Διδάσκουσα: Κανελλοπούλου Χριστίνα_ΠΕ19 Πληροφορικής Ηλεκτρονική Τάξη: http://moodleforall.ictlab.edu.

OpenGL. Εισαγωγή. Εξάμηνο: 2014Β. Διδάσκουσα: Κανελλοπούλου Χριστίνα_ΠΕ19 Πληροφορικής Ηλεκτρονική Τάξη: http://moodleforall.ictlab.edu. Τεχνικός Εφαρμογών Πληροφορικής Εισαγωγή OpenGL Εξάμηνο: 2014Β Διδάσκουσα: Ηλεκτρονική Τάξη: http://moodleforall.ictlab.edu.gr/ Περιεχόμενα 1. Τι είναι η OpenGL 2. Μηχανή καταστάσεων 3. Η εξέλιξη της 4.

Διαβάστε περισσότερα

Αλγόριθµοι Παράστασης Βασικών Σχηµάτων

Αλγόριθµοι Παράστασης Βασικών Σχηµάτων Αλγόριθµοι Παράστασης Βασικών Σχηµάτων Προσέγγιση µαθηµατικών σχηµάτων από διακριτά pixels: Ευθύγραµµο τµήµα, κύκλος, κωνικές τοµές, πολύγωνο. S/W ή H/W. Θέσεις αντικειµένων και φωτεινών πηγών Θέση παρατηρητή

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: OpenGL

Γραφικά Υπολογιστών: OpenGL 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: OpenGL Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιεχόμενα Τι είναι η OpenGL; Μοντέλα αντικειμένων (object modeling)

Διαβάστε περισσότερα

Εισαγωγή. Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω» (top-down). Βαθµίδα διασύνδεσης προγραµµατιστή εφαρµογών (API)

Εισαγωγή. Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω» (top-down). Βαθµίδα διασύνδεσης προγραµµατιστή εφαρµογών (API) Εισαγωγή Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω» (top-down). Βαθµίδα διασύνδεσης προγραµµατιστή εφαρµογών (API) Γιατί OpenGL; Άλλα APIs: PHIGS (ANSI), GKS, Direct3D, VRML, JAVA-3D

Διαβάστε περισσότερα

Εισαγωγή στην OpenGL

Εισαγωγή στην OpenGL Εισαγωγή στην OpenGL Ε.1 Τι είναι η OpenGL; Ένας νέος χρήστης θα υποθέσει ότι η OpenGL είναι µια βιβλιοθήκη σχεδίασης γραφικών. Ωστόσο, µε τον όρο OpenGL δεν αναφερόµαστε σε µια συγκεκριµένη βιβλιοθήκη

Διαβάστε περισσότερα

Δθμιουργία, μελζτθ και βελτιςτοποίθςθ φωτορεαλιςτικϊν απεικονίςεων πραγματικοφ χρόνου με χριςθ προγραμματιηόμενων επεξεργαςτϊν γραφικϊν

Δθμιουργία, μελζτθ και βελτιςτοποίθςθ φωτορεαλιςτικϊν απεικονίςεων πραγματικοφ χρόνου με χριςθ προγραμματιηόμενων επεξεργαςτϊν γραφικϊν Πανεπιςτιμιο Πατρϊν Σμιμα Μθχανικϊν Θ/Τ & Πλθροφορικισ Δθμιουργία, μελζτθ και βελτιςτοποίθςθ φωτορεαλιςτικϊν απεικονίςεων πραγματικοφ χρόνου με χριςθ προγραμματιηόμενων επεξεργαςτϊν γραφικϊν Σταυρόπουλοσ

Διαβάστε περισσότερα

Εισαγωγή στην OpenGL

Εισαγωγή στην OpenGL Εισαγωγή στην OpenGL Περιεχόµενα εισαγωγικής ενότητας: Γενικά χαρακτηριστικά της OpenGL Βιβλιοθήκες που της OpenGL Ένα τυπικό πρόγραµµα Τι είναι η OpenGL; Η OpenGL δεν είναι µια συγκεκριµένη βιβλιοθήκη

Διαβάστε περισσότερα

Εισαγωγή. Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω»(topdown). Βαθμίδα διασύνδεσης προγραμματιστή εφαρμογών (API)

Εισαγωγή. Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω»(topdown). Βαθμίδα διασύνδεσης προγραμματιστή εφαρμογών (API) Εισαγωγή Γιατί γραφικά υπολογιστών; Προσέγγιση «από πάνω προς τα κάτω»(topdown). Βαθμίδα διασύνδεσης προγραμματιστή εφαρμογών (API) Γιατί OpenGL; Portable, παιδαγωγική, καλά τεκμηριωμένη, open standard,

Διαβάστε περισσότερα

Απεικόνιση Υφής. Μέρος Α Υφή σε Πολύγωνα

Απεικόνιση Υφής. Μέρος Α Υφή σε Πολύγωνα Απεικόνιση Γραφικά ΥφήςΥπολογιστών Απεικόνιση Υφής Μέρος Α Υφή σε Πολύγωνα Γ. Γ. Παπαϊωάννου, - 2008 Τι Είναι η Υφή; Η υφή είναι η χωρική διαμόρφωση των ποιοτικών χαρακτηριστικών της επιφάνειας ενός αντικειμένου,

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods)

Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods) 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Μέθοδοι Ανίχνευσης Επιφανειών (Surface Detection Methods) Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιεχόμενα

Διαβάστε περισσότερα

Αλγόριθµοι Παράστασης Βασικών Σχηµάτων

Αλγόριθµοι Παράστασης Βασικών Σχηµάτων Αλγόριθµοι Παράστασης Βασικών Σχηµάτων Προσέγγιση µαθηµατικών σχηµάτων από διακριτά pls: Ευθύγραµµο τµήµα, κύκλος, κωνικές τοµές, πολύγωνο. S/W ή H/W. Θέσεις αντικειµένων και φωτεινών πηγών Θέση παρατηρητή

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Αλγόριθμοι Σχεδίασης Γραμμών

Γραφικά Υπολογιστών: Αλγόριθμοι Σχεδίασης Γραμμών 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Αλγόριθμοι Σχεδίασης Γραμμών Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιεχόμενα Τι είναι το pixel; Δειγματοληψία

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Σχεδίαση γραμμών (Bresenham), Σχεδίασης Κύκλων, Γέμισμα Πολυγώνων

Γραφικά Υπολογιστών: Σχεδίαση γραμμών (Bresenham), Σχεδίασης Κύκλων, Γέμισμα Πολυγώνων 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Σχεδίαση γραμμών (Bresenham), Σχεδίασης Κύκλων, Γέμισμα Πολυγώνων Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιγραφή

Διαβάστε περισσότερα

Homework 8 Model Solution Section

Homework 8 Model Solution Section MATH 004 Homework Solution Homework 8 Model Solution Section 14.5 14.6. 14.5. Use the Chain Rule to find dz where z cosx + 4y), x 5t 4, y 1 t. dz dx + dy y sinx + 4y)0t + 4) sinx + 4y) 1t ) 0t + 4t ) sinx

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Θέαση στις 3D

Γραφικά Υπολογιστών: Θέαση στις 3D 1 ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Θέαση στις 3D Πασχάλης Ράπτης http://aetos.it.teithe.gr/~praptis praptis@it.teithe.gr 2 Περιεχόμενα Σήμερα θα δούμε τα παρακάτω θέματα: Μετασχηματισμοί

Διαβάστε περισσότερα

Αρχιτεκτονική Υπολογιστών

Αρχιτεκτονική Υπολογιστών Τμήμα Μηχανικών Πληροφορικής & Τηλεπικοινωνιών Αρχιτεκτονική Υπολογιστών Ενότητα 11: Γραφικά VGA Δρ. Μηνάς Δασυγένης mdasyg@ieee.org Εργαστήριο Ψηφιακών Συστημάτων και Αρχιτεκτονικής Υπολογιστών http://arch.icte.uowm.gr/mdasyg

Διαβάστε περισσότερα

Διαλέξεις #05 & #06. Διδάσκων: Φοίβος Μυλωνάς. Γραφικά με υπολογιστές. Αλγόριθμος Σχεδίασης Κύκλου Αλγόριθμος Σχεδίασης Έλλειψης

Διαλέξεις #05 & #06. Διδάσκων: Φοίβος Μυλωνάς. Γραφικά με υπολογιστές. Αλγόριθμος Σχεδίασης Κύκλου Αλγόριθμος Σχεδίασης Έλλειψης Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο Γραφικά με υπολογιστές Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διαλέξεις #05 & #06 Αλγόριθμος Σχεδίασης Κύκλου Αλγόριθμος Σχεδίασης Έλλειψης Φοίβος

Διαβάστε περισσότερα

Η διαδικασία Παραγωγής Συνθετικής Εικόνας (Rendering)

Η διαδικασία Παραγωγής Συνθετικής Εικόνας (Rendering) Υφή Η διαδικασία Παραγωγής Συνθετικής Εικόνας (Rendering) Θέσεις αντικειμένων και φωτεινών πηγών Θέση παρατηρητή 3D Μοντέλα 3Δ Μετασχ/σμοί Μοντέλου 3Δ Μετασχ/σμός Παρατήρησης Απομάκρυνση Πίσω Επιφανειών

Διαβάστε περισσότερα

Γραφικά με Η/Υ / Εισαγωγή

Γραφικά με Η/Υ / Εισαγωγή Γραφικά με Η/Υ Εισαγωγή Πληροφορίες μαθήματος (1/4) Υπεύθυνος μαθήματος: Μανιτσάρης Αθανάσιος, Καθηγητής ιδάσκοντες: Μανιτσάρης Αθανάσιος: email: manits@uom.gr Μαυρίδης Ιωάννης: email: mavridis@uom.gr

Διαβάστε περισσότερα

Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 4η - 3Δ γραφικά

Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 4η - 3Δ γραφικά Τεχνολογία Ψυχαγωγικού Λογισμικού και Εικονικοί Κόσμοι Ενότητα 4η - 3Δ γραφικά Ιόνιο Πανεπιστήμιο, Τμήμα Πληροφορικής, 2015 Κωνσταντίνος Οικονόμου, Επίκουρος Καθηγητής Βασίλειος Κομιανός, Υποψήφιος Διδάκτορας

Διαβάστε περισσότερα

Γραφικά με Η/Υ Αλγόριθμοι σχεδίασης βασικών 22D D σχημάτων (ευθεία

Γραφικά με Η/Υ Αλγόριθμοι σχεδίασης βασικών 22D D σχημάτων (ευθεία Γραφικά με Η/Υ Αλγόριθμοι σχεδίασης βασικών 2D σχημάτων (ευθεία) Σχεδίαση ευθείας θί με σάρωση (παρουσίαση προβλήματος) σχεδίαση ευθείας AB, με σάρωση, όπου A=(0,1) και B=(5,4) ποιο είναι το επόμενο pixel

Διαβάστε περισσότερα

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1

Εικόνα. Τεχνολογία Πολυμέσων και Πολυμεσικές Επικοινωνίες 05-1 Εικόνα Εισαγωγή Ψηφιακή αναπαράσταση Κωδικοποίηση των χρωμάτων Συσκευές εισόδου και εξόδου Βάθος χρώματος και ανάλυση Συμβολική αναπαράσταση Μετάδοση εικόνας Σύνθεση εικόνας Ανάλυση εικόνας Τεχνολογία

Διαβάστε περισσότερα

Γραφικά με υπολογιστές. Διδάσκων: Φοίβος Μυλωνάς. Διάλεξη #07

Γραφικά με υπολογιστές. Διδάσκων: Φοίβος Μυλωνάς. Διάλεξη #07 Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο Γραφικά με υπολογιστές Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #07 Γραμμές και Πολύγωνα: Εισαγωγή Αναπαράσταση 2D και 3D Χρωματισμός πολυγώνων

Διαβάστε περισσότερα

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007

ΚΥΠΡΙΑΚΗ ΕΤΑΙΡΕΙΑ ΠΛΗΡΟΦΟΡΙΚΗΣ CYPRUS COMPUTER SOCIETY ΠΑΓΚΥΠΡΙΟΣ ΜΑΘΗΤΙΚΟΣ ΔΙΑΓΩΝΙΣΜΟΣ ΠΛΗΡΟΦΟΡΙΚΗΣ 19/5/2007 Οδηγίες: Να απαντηθούν όλες οι ερωτήσεις. Αν κάπου κάνετε κάποιες υποθέσεις να αναφερθούν στη σχετική ερώτηση. Όλα τα αρχεία που αναφέρονται στα προβλήματα βρίσκονται στον ίδιο φάκελο με το εκτελέσιμο

Διαβάστε περισσότερα

1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα

1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα 1 ο Εργαστήριο Συντεταγμένες, Χρώματα, Σχήματα 1. Σύστημα Συντεταγμένων Το σύστημα συντεταγμένων που έχουμε συνηθίσει από το σχολείο τοποθετούσε το σημείο (0,0) στο σημείο τομής των δυο αξόνων Χ και Υ.

Διαβάστε περισσότερα

Δημιουργώντας σχεδιοκίνηση στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία

Δημιουργώντας σχεδιοκίνηση στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Δημιουργώντας σχεδιοκίνηση στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Στην άσκηση αυτή θα μάθετε πώς να χρησιμοποιήσετε βασικά εργαλεία στο περιβάλλον 3Ds Max για να δημιουργήσετε ένα τρισδιάστατο

Διαβάστε περισσότερα

Εισαγωγή Αποκοπή ευθείας σε 2Δ Αποκοπή πολυγώνου σε 2Δ Αποκοπή σε 3Δ. 3ο Μάθημα Αποκοπή. Γραφικα. Ευάγγελος Σπύρου

Εισαγωγή Αποκοπή ευθείας σε 2Δ Αποκοπή πολυγώνου σε 2Δ Αποκοπή σε 3Δ. 3ο Μάθημα Αποκοπή. Γραφικα. Ευάγγελος Σπύρου Εισαγωγή Αποκοπή ευθείας σε 2Δ Αποκοπή πολυγώνου σε 2Δ Αποκοπή σε 3Δ Γραφικα Τμήμα Πληροφορικής Πανεπιστήμιο Θεσσαλίας Ακ Έτος 2016-17 Εισαγωγή Αποκοπή ευθείας σε 2Δ Αποκοπή πολυγώνου σε 2Δ Αποκοπή σε

Διαβάστε περισσότερα

Διδάσκων: Φοίβος Μυλωνάς

Διδάσκων: Φοίβος Μυλωνάς Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο Γραφικά με υπολογιστές Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Διάλεξη #08 Αποκοπή (εισαγωγή) Σημειακή Αποκοπή Αποκοπή Ευθύγραμμων Τμημάτων (line

Διαβάστε περισσότερα

Εργαστήριο Τεχνολογίας Πολυμέσων & Γραφικών, Τ.Ε.Π Π.Μ, Μάθημα: Γραφικά με Η/Υ

Εργαστήριο Τεχνολογίας Πολυμέσων & Γραφικών, Τ.Ε.Π Π.Μ, Μάθημα: Γραφικά με Η/Υ ΓΡΑΦΙΚΑ Γέμισμα ΑΛΓΟΡΙΘΜΟΙ ΓΕΜΙΣΜΑΤΟΣ Για τις πλεγματικές οθόνες υπάρχουν: Αλγόριθμοι γεμίσματος:, που στηρίζονται στη συνάφεια των pixels του εσωτερικού ενός πολυγώνου Αλγόριθμοι σάρωσης: που στηρίζονται

Διαβάστε περισσότερα

Βασικές αρχές σχεδίασης (Α)

Βασικές αρχές σχεδίασης (Α) Βασικές αρχές σχεδίασης (Α) Περιεχόµενα ενότητας Πρωτογενείς τύποι δεδοµένων Ονοµατολογία Συµβάσεις Η µηχανή καταστάσεων της OpenGL Περιβάλλον σχεδίασης Χρώµα Φιλοσοφία σχεδιάσης στην OpenGL Σχεδίαση σηµείων

Διαβάστε περισσότερα

Απόδοση 3D σκηνών - Κινούµενα γραφικά

Απόδοση 3D σκηνών - Κινούµενα γραφικά Απόδοση 3D σκηνών - Κινούµενα γραφικά Περιεχόµενα ενότητας Καταστολή κρυµµένων επιφανειών - Αλγόριθµος z-buffer Τρισδιάστατες επιφάνειες: Κύβος Σφαίρα Κώνος - Κύλινδρος - Κυκλικός δίσκος ακτύλιος Τοµέας

Διαβάστε περισσότερα

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

Άσκηση 6 η Ανύψωση Σχημάτων. Στόχος της άσκησης

Άσκηση 6 η Ανύψωση Σχημάτων. Στόχος της άσκησης Άσκηση 6 η Ανύψωση Σχημάτων Στόχος της άσκησης Στην παρούσα άσκηση θα δούμε πως μπορούμε να ανυψώσουμε μία διατομή κατά μήκος μίας καμπύλης spline, η οποία παίζει το ρόλο της διαδρομής, με σκοπό να δημιουργήσουμε

Διαβάστε περισσότερα

Blending. Have a look:

Blending. Have a look: Blending Have a look: http://nehe.gamedev.net/ Blending (ανάμειξη) Η OpenGL παρέχει τρόπους να προσομοιώσουμε διαφανείς επιφάνειες με pipeline rendering Φαινόμενο που απαιτεί global shading Ανάμειξη χρωμάτων,

Διαβάστε περισσότερα

ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΙ ΑΠΟΚΟΠΗ Ε. Θεοδωρίδης, Α. Τσακαλίδης

ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΙ ΑΠΟΚΟΠΗ Ε. Θεοδωρίδης, Α. Τσακαλίδης ΘΕΜΑΤΑ ΥΠΟΛΟΓΙΣΤΙΚΗΣ ΟΡΑΣΗΣ ΚΑΙ ΓΡΑΦΙΚΩΝ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΙ ΑΠΟΚΟΠΗ 2013-2014 Ε. Θεοδωρίδης, Α. Τσακαλίδης Μετασχηματισμοί (1) Position, reshape, animate Objects, lights, cameras Linear transforms f(x)+f(y)=f(x+y)

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 1 ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Μάθημα 1ο Τμήμα Διοίκησης Επιχειρήσεων α εξάμηνο Β. Φερεντίνος Ορισμός Wikipedia.org 2 Δομημένος προγραμματισμός (structured programming) ή διαδικαστικός προγραμματισμός (procedural

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Ειδική διάλεξη 2: Εισαγωγή στον κώδικα της εργασίας

ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ. Ειδική διάλεξη 2: Εισαγωγή στον κώδικα της εργασίας ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΙΑΣ ΤΜΗΜΑ ΠΟΛΙΤΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΤΟΜΕΑΣ ΥΔΡΑΥΛΙΚΗΣ ΚΑΙ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΤΕΧΝΙΚΗΣ Ειδική διάλεξη 2: Εισαγωγή στον κώδικα της εργασίας Χειμερινό εξάμηνο 2008 Αρχίζοντας... Αρχίζοντας... http://folk.ntnu.no/nilsol/ssiim/

Διαβάστε περισσότερα

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή

ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ. Python & NLTK: Εισαγωγή ΓΛΩΣΣΙΚΗ ΤΕΧΝΟΛΟΓΙΑ Python & NLTK: Εισαγωγή Εισαγωγή Γιατί Python? Παρουσίαση NLTK Πηγές και χρήσιμα εργαλεία Φροντιστήριο σε Python Στο φροντιστήριο: Εισαγωγή στην Python Ζητήματα προγραμματισμού για

Διαβάστε περισσότερα

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα CAD / CAM. Ενότητα # 6: Γραφικά

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα CAD / CAM. Ενότητα # 6: Γραφικά ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα CAD / CAM Ενότητα # 6: Γραφικά Δημήτριος Τσελές Τμήμα Μηχανικών Αυτοματισμού Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται

Διαβάστε περισσότερα

Γραφικά Υπολογιστών Εισαγωγή

Γραφικά Υπολογιστών Εισαγωγή Γραφικά Υπολογιστών Εισαγωγή Γ. Παπαϊωάννου 2008-13 Σκοπός του Μαθήματος Εισαγωγή στις τεχνολογίες παραγωγής συνθετικής εικόνας Ανάλυση των βασικών μεθόδων απεικόνισης 2D δεδομένων Εισαγωγή στις δομές

Διαβάστε περισσότερα

Διάλεξη #04. Διδάσκων: Φοίβος Μυλωνάς. Γραφικά με υπολογιστές. Φαινόμενο Ταύτισης. Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο

Διάλεξη #04. Διδάσκων: Φοίβος Μυλωνάς. Γραφικά με υπολογιστές. Φαινόμενο Ταύτισης. Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο Ιόνιο Πανεπιστήμιο Τμήμα Πληροφορικής Χειμερινό εξάμηνο Γραφικά με υπολογιστές Διδάσκων: Φοίβος Μυλωνάς fmylonas@ionio.gr Φαινόμενο Ταύτισης Διάλεξη #04 Φοίβος Μυλωνάς Γραφικά με υπολογιστές 1 Άδειες Χρήσης

Διαβάστε περισσότερα

Γραφικά & Οπτικοποίηση. Κεφάλαιο 1. Εισαγωγή. Γραφικά & Οπτικοπίηση: Αρχές & Αλγόριθμοι Κεφάλαιο 1

Γραφικά & Οπτικοποίηση. Κεφάλαιο 1. Εισαγωγή. Γραφικά & Οπτικοπίηση: Αρχές & Αλγόριθμοι Κεφάλαιο 1 Γραφικά & Οπτικοποίηση Κεφάλαιο 1 Εισαγωγή Ιστορικά Ιστορική ανασκόπηση : 2 Ιστορικά (2) Ρυθμοί ανάπτυξης CPU και GPU 3 Εφαρμογές Ειδικά εφέ για ταινίες & διαφημίσεις Επιστημονική εξερεύνηση μέσω οπτικοποίησης

Διαβάστε περισσότερα

ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER - Discrete Fourier Transform - DFT -

ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER - Discrete Fourier Transform - DFT - ΔΙΑΚΡΙΤΟΣ ΜΕΤΑΣΧΗΜΑΤΙΣΜΟΣ FOURIER - Discrete Fourier Transform - DFT - Α. ΣΚΟΔΡΑΣ ΣΗΜΑΤΑ ΚΑΙ ΣΥΣΤΗΜΑΤΑ ΙΙ (22Y603) ΕΝΟΤΗΤΑ 4 ΔΙΑΛΕΞΗ 1 ΔΙΑΦΑΝΕΙΑ 1 Διαφορετικοί Τύποι Μετασχηµατισµού Fourier Α. ΣΚΟΔΡΑΣ

Διαβάστε περισσότερα

Σήματα και Συστήματα ΙΙ

Σήματα και Συστήματα ΙΙ Σήματα και Συστήματα ΙΙ Ενότητα 3: Διακριτός και Ταχύς Μετασχηματισμός Fourier (DTF & FFT) Α. Ν. Σκόδρας Τμήμα Ηλεκτρολόγων Μηχανικών και Τεχνολογίας Υπολογιστών Επιμέλεια: Αθανάσιος Ν. Σκόδρας, Καθηγητής

Διαβάστε περισσότερα

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1

Εικόνες και γραφικά. Τεχνολογία Πολυµέσων 05-1 Εικόνες και γραφικά Περιγραφή στατικών εικόνων Αναπαράσταση γραφικών Υλικό γραφικών Dithering και anti-aliasing Σύνθεση εικόνας Ανάλυση εικόνας Μετάδοση εικόνας Τεχνολογία Πολυµέσων 05-1 Περιγραφή στατικών

Διαβάστε περισσότερα

Συσκευές εισόδου. Φυσικές συσκευές εισόδου Λογικές συσκευές εισόδου

Συσκευές εισόδου. Φυσικές συσκευές εισόδου Λογικές συσκευές εισόδου Αλληλεπίδραση Project sketchpad: πρώτο αλληλεπιδραστικό πρόγραµµα γραφικών Αλληλεπίδραση βασικό συστατικό προγραµµάτων γραφικών Η OpenGL δεν υποστηρίζει άµεσα αλληλεπίδραση (συναρτήσεις διαχείρισης παραθύρων

Διαβάστε περισσότερα

Μοντελοποίηση τρισδιάστατου κόσμου σε πραγματικό κόσμο: το παράδειγμα του Kinect. ιδάσκων: Φ. Αζαριάδης Φοιτήτρια: Άρτεμις-Αγγελική Σφύρη

Μοντελοποίηση τρισδιάστατου κόσμου σε πραγματικό κόσμο: το παράδειγμα του Kinect. ιδάσκων: Φ. Αζαριάδης Φοιτήτρια: Άρτεμις-Αγγελική Σφύρη Μοντελοποίηση τρισδιάστατου κόσμου σε πραγματικό κόσμο: το παράδειγμα του Kinect ιδάσκων: Φ. Αζαριάδης Φοιτήτρια: Άρτεμις-Αγγελική Σφύρη Computer graphics Μοντελοποίηση τρισδιάστατου κόσμου 2d/3d computer

Διαβάστε περισσότερα

7 ο Εργαστήριο Θόρυβος 2Δ, Μετακίνηση, Περιστροφή

7 ο Εργαστήριο Θόρυβος 2Δ, Μετακίνηση, Περιστροφή 7 ο Εργαστήριο Θόρυβος 2Δ, Μετακίνηση, Περιστροφή O θόρυβος 2Δ μας δίνει τη δυνατότητα να δημιουργίας υφής 2Δ. Στο παρακάτω παράδειγμα, γίνεται σχεδίαση γραμμών σε πλέγμα 300x300 με μεταβαλόμενη τιμή αδιαφάνειας

Διαβάστε περισσότερα

Απεικόνιση δεδομένων (data visualization)

Απεικόνιση δεδομένων (data visualization) Απεικόνιση δεδομένων (data visualization) Χρήση γραφικών για την αναπαράσταση δεδομένων από διάφορες πηγές Ιατρικές εφαρμογές (π.χ. αξονική τομογραφία) Μαθηματικά μοντέλα και συναρτήσεις Προσομοίωση διεργασιών

Διαβάστε περισσότερα

Λειτουργικά Συστήματα. Εισαγωγή

Λειτουργικά Συστήματα. Εισαγωγή Λειτουργικά Συστήματα Εισαγωγή Λειτουργικά Συστήματα Ι 4/10/2016 Περιληπτικά Στο σημερινό μάθημα θα δούμε ποια είναι η θέση του Λειτουργικού Συστήματος στην οργάνωση ενός ηλεκτρονικού υπολογιστή. Σπύρος

Διαβάστε περισσότερα

Δημιουργώντας εφέ φωτισμού στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία

Δημιουργώντας εφέ φωτισμού στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Δημιουργώντας εφέ φωτισμού στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Στην επαναληπτική αυτή άσκηση θα θυμηθείτε πώς να χρησιμοποιήσετε βασικά εργαλεία στο περιβάλλον 3Ds Max για να δημιουργήσετε

Διαβάστε περισσότερα

GRAPHICS AND CODE DESIGN

GRAPHICS AND CODE DESIGN GRAPHICS AND CODE DESIGN Author: A.E.M: 2231 Περιεχόμενα σελ: Τι είναι γραφικά;...1 Γραφικά ηλεκτρονικών υπολογιστών...1 Τα είδη των γραφικών...2 Πλέγματα πολυγώνων...4 Computer Animation...5 Rendering...6

Διαβάστε περισσότερα

Χορεύοντας με τα teraflops

Χορεύοντας με τα teraflops Χορεύοντας με τα teraflops προγραμματισμός στις σύγρονες παράλληλες αρχιτεκτονικές Γιάννης Τσιομπίκας nuclear@memberfsforg 21 Απριλίου 2013 Εισαγωγή CPU speed - Παρελθόν Εκθετική αύξηση της υπολογιστικής

Διαβάστε περισσότερα

Εισαγωγή στο 3DS Max 2009

Εισαγωγή στο 3DS Max 2009 Μάθημα 1ο Εισαγωγή στο 3DS Max 2009 Σε αυτό το μάθημα πραγματοποιείται εκμάθηση του περιβάλλοντος του προγράμματος 3DS Max 2009. Το 3D Studio Max είναι ένα από τα ισχυρότερα προγράμματα δημιουργίας και

Διαβάστε περισσότερα

Τεχνολογία Πολυμέσων. Ενότητα # 5: Εικόνα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής

Τεχνολογία Πολυμέσων. Ενότητα # 5: Εικόνα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Τεχνολογία Πολυμέσων Ενότητα # 5: Εικόνα Διδάσκων: Γεώργιος Ξυλωμένος Τμήμα: Πληροφορικής Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το

Διαβάστε περισσότερα

Γραφικά Ι. Ενότητα 1: Εισαγωγή. Θεοχάρης Θεοχάρης Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής και Τηλεπικοινωνιών

Γραφικά Ι. Ενότητα 1: Εισαγωγή. Θεοχάρης Θεοχάρης Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής και Τηλεπικοινωνιών Γραφικά Ι Ενότητα 1: Εισαγωγή Θεοχάρης Θεοχάρης Σχολή Θετικών Επιστημών Τμήμα Πληροφορικής και Τηλεπικοινωνιών Ενότητα 1 Εισαγωγή Ιστορικά Ιστορική ανασκόπηση : 3 Ιστορικά (2) Ρυθμοί ανάπτυξης CPU και

Διαβάστε περισσότερα

Γραφικά Υπολογιστών: Αποκοπή στις 3D Διαστάσεις

Γραφικά Υπολογιστών: Αποκοπή στις 3D Διαστάσεις ΤΕΙ Θεσσαλονίκης Τμήμα Πληροφορικής Γραφικά Υπολογιστών: Αποκοπή στις 3D Διαστάσεις Πασχάλης Ράπτης ttp://aetos.it.teite.gr/~praptis praptis@it.teite.gr 2 Περιεχόμενα Θα δούμε μερικά demos προοπτικών προβολών

Διαβάστε περισσότερα

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο

Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων. Εξάμηνο 7 ο Εργαστήριο Ανάπτυξης Εφαρμογών Βάσεων Δεδομένων Εξάμηνο 7 ο Procedures and Functions Stored procedures and functions are named blocks of code that enable you to group and organize a series of SQL and PL/SQL

Διαβάστε περισσότερα

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών

Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών Συλλογή & Επεξεργασία Δεδομένων Εργαστήριο 9 Ανάλυση Fourier: Από τη Θεωρία στην Πρακτική Εφαρμογή των Μαθηματικών Τύπων. Σύστημα Συλλογής & Επεξεργασίας Μετρήσεων Σκοπός Βασική δομή ενός προγράμματος

Διαβάστε περισσότερα

DEVDAYS Ioannis Panagopoulos, MVP

DEVDAYS Ioannis Panagopoulos, MVP DEVDAYS 2011 Ioannis Panagopoulos, MVP ipplos@gmail.com http://www.progware.org Για σήμερα... Main Game Loop Αρχές προγραμματισμού Framework Χωροχρόνος του WP7 και οργάνωση Timing, FPS, Display, Orientations,

Διαβάστε περισσότερα

Εργασία στα Γραφικά Υπολογιστών Ακαδημαϊκό Έτος

Εργασία στα Γραφικά Υπολογιστών Ακαδημαϊκό Έτος Εργασία στα Γραφικά Υπολογιστών Ακαδημαϊκό Έτος 2016-17 Asteroid Blaster Εκφώνηση Να δημιουργήσετε ένα διαδραστικό παιχνίδι τύπου topdown scroller shoot-em up σε OpenGL 3.3 με χρήση shaders στο οποίο ο

Διαβάστε περισσότερα

Καλλιτεχνική δηµιουργία στους εικονικούς κόσµους στο διαδίκτυο.

Καλλιτεχνική δηµιουργία στους εικονικούς κόσµους στο διαδίκτυο. Τµήµα Εικαστικών Τεχνών, Ανωτάτη Σχολή Καλών Τεχνών Καλλιτεχνική δηµιουργία στους εικονικούς κόσµους στο διαδίκτυο. Κατασκευή ενός τρισδιάστατου διαδραστικού περιβάλλοντος στο Unity 3D. Δρ. Νεφέλη Δηµητριάδη

Διαβάστε περισσότερα

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ

Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Διαχείριση Περιεχομένου Παγκόσμιου Ιστού και Γλωσσικά Εργαλεία ΕΙΣΑΓΩΓΙΚΟ ΦΡΟΝΤΙΣΤΗΡΙΟ Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε

Διαβάστε περισσότερα

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής

Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Πρόβλημα 1: Αναζήτηση Ελάχιστης/Μέγιστης Τιμής Να γραφεί πρόγραμμα το οποίο δέχεται ως είσοδο μια ακολουθία S από n (n 40) ακέραιους αριθμούς και επιστρέφει ως έξοδο δύο ακολουθίες από θετικούς ακέραιους

Διαβάστε περισσότερα

ΕΙΣΑΓΩΓΗ ΣΤΟN ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ

ΕΙΣΑΓΩΓΗ ΣΤΟN ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ ΕΙΣΑΓΩΓΗ ΣΤΟN ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΠΑΤΡΩΝ ΠΟΛΥΤΕΧΝΙΚΗ ΣΧΟΛΗ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ Η/Υ ΚΑΙ ΠΛΗΡΟΦΟΡΙΚΗΣ Εμβέλεια Μεταβλητών Εμβέλεια = το τμήμα του προγράμματος στο οποίο έχει ισχύ ή είναι ορατή η μεταβλητή.

Διαβάστε περισσότερα

HCI - Human Computer Interaction Σχεδιασμός Διεπαφής. ΓΤΠ 61 Βαµβακάρης Μιχάλης 09/12/07

HCI - Human Computer Interaction Σχεδιασμός Διεπαφής. ΓΤΠ 61 Βαµβακάρης Μιχάλης 09/12/07 HCI - Human Computer Interaction Σχεδιασμός Διεπαφής ΓΤΠ 61 Βαµβακάρης Μιχάλης 09/12/07 1 Συνδέσεις µικρών αποστάσεων Συνδέσεις µεγάλων αποστάσεων Personal Devices Smart Phones Connected PMDs 3G -4G 3G-4G

Διαβάστε περισσότερα

Section 9.2 Polar Equations and Graphs

Section 9.2 Polar Equations and Graphs 180 Section 9. Polar Equations and Graphs In this section, we will be graphing polar equations on a polar grid. In the first few examples, we will write the polar equation in rectangular form to help identify

Διαβάστε περισσότερα

Τομέας: Ανανεώσιμων Ενεργειακών Πόρων Εργαστήριο: Σχεδιομελέτης και κατεργασιών

Τομέας: Ανανεώσιμων Ενεργειακών Πόρων Εργαστήριο: Σχεδιομελέτης και κατεργασιών ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΚΡΗΤΗΣ ΣΧΟΛΗ ΕΦΑΡΜΟΣΜΕΝΩΝ ΕΠΙΣΤΗΜΩΝ ΧΑΝΙΩΝ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΦΥΣΙΚΩΝ ΠΟΡΩΝ& ΠΕΡΙΒΑΛΛΟΝΤΟΣ Τομέας: Ανανεώσιμων Ενεργειακών Πόρων Εργαστήριο: Σχεδιομελέτης και κατεργασιών ΠΤΥΧΙΑΚΗ

Διαβάστε περισσότερα

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and

alpha Language age (3/5) alpha Language Φροντιστήριο Syntax Directed Translation and alpha Language (1/5) ΗΥ-340 Γλώσσες και Μεταφραστές Φροντιστήριο Syntax Directed Translation and alpha Language Στην alpha δεν υπάρχει main() συνάρτηση, ο κώδικας ξεκινάει την εκτέλεση από την αρχή του

Διαβάστε περισσότερα

Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο

Γλωσσική Τεχνολογία. Εισαγωγικό Φροντιστήριο Γλωσσική Τεχνολογία Εισαγωγικό Φροντιστήριο Project του μαθήματος Εργασία 2 ατόμων Προφορική εξέταση για: Project (80%) Θεωρία (20%) Στο φροντιστήριο: Συζητάμε σχεδιαστικές επιλογές Λύνουμε ζητήματα υλοποίησης

Διαβάστε περισσότερα

Δημιουργώντας γραφικά στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία

Δημιουργώντας γραφικά στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Δημιουργώντας γραφικά στο περιβάλλον 3Ds Max χρησιμοποιώντας βασικά εργαλεία Στην άσκηση αυτή θα μάθετε πώς να χρησιμοποιήσετε βασικά εργαλεία στο περιβάλλον 3Ds Max για να δημιουργήσετε ένα τρισδιάστατο

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη

Διαβάστε περισσότερα

Δυναμική μνήμη με πίνακες και λίστες

Δυναμική μνήμη με πίνακες και λίστες Δυναμική μνήμη με πίνακες και λίστες Ατζέντα ονομάτων Οι πίνακες βοηθάνε στην εύκολη προσπέλαση, στην σειριοποίηση των δεδομένων για αποθήκευση ή μετάδοση. Απαιτούν ωστόσο είτε προκαταβολική δέσμευση μνήμης

Διαβάστε περισσότερα

Γεωμετρικές Σκιές. Θ. Θεοχάρης Ι. Κακαδιάρης - Γ. Πασσαλής

Γεωμετρικές Σκιές. Θ. Θεοχάρης Ι. Κακαδιάρης - Γ. Πασσαλής Γεωμετρικές Σκιές Θ. Θεοχάρης Ι. Κακαδιάρης - Γ. Πασσαλής Περιεχόμενα Σ1 Χαρακτηριστικά Σκιών στα Γραφικά Σ2 Απλές Σκιές Σ3 Σύγχρονοι Αλγόριθμοι Σκιών 2 Εισαγωγή (1) Οι σκιές είναι σημαντικές στην κατανόηση

Διαβάστε περισσότερα

Άσκηση 6 Σύνθετα Αντικείµενα. Στόχος της άσκησης

Άσκηση 6 Σύνθετα Αντικείµενα. Στόχος της άσκησης Άσκηση 6 Σύνθετα Αντικείµενα Στόχος της άσκησης Στόχος της παρούσας άσκησης είναι η εξοικείωση µε τη δηµιουργία σύνθετων αντικειµένων που δηµιουργούνται από τον συνδυασµό δύο ή περισσότερων τρισδιάστατων

Διαβάστε περισσότερα

2 Composition. Invertible Mappings

2 Composition. Invertible Mappings Arkansas Tech University MATH 4033: Elementary Modern Algebra Dr. Marcel B. Finan Composition. Invertible Mappings In this section we discuss two procedures for creating new mappings from old ones, namely,

Διαβάστε περισσότερα

ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΜΕΘΟΔΟΙ ΣΤΙΣ ΚΑΤΑΣΚΕΥΕΣ. 11o Mάθημα: Εισαγωγή στο ANSYS workbench

ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΜΕΘΟΔΟΙ ΣΤΙΣ ΚΑΤΑΣΚΕΥΕΣ. 11o Mάθημα: Εισαγωγή στο ANSYS workbench ΥΠΟΛΟΓΙΣΤΙΚΕΣ ΜΕΘΟΔΟΙ ΣΤΙΣ ΚΑΤΑΣΚΕΥΕΣ 11o Mάθημα: Εισαγωγή στο ANSYS workbench Άδεια Χρήσης Το παρόν υλικό υπόκειται σε άδειες χρήσης Creative Commons και δημιουργήθηκε στο πλαίσιο του Έργου των Ανοικτών

Διαβάστε περισσότερα

Writing kernels for fun and profit

Writing kernels for fun and profit Writing kernels for fun and profit Γιάννης Τσιομπίκας nuclear@memberfsforg 23 Μαρτίου 2011 Γιατί; It s FUN! Εξοικείωση με το hardware Εμβάθυνση στον θαυμαστό κόσμο των λειτουργικών συστημάτων Μια καλή

Διαβάστε περισσότερα

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα

Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα Ασκήσεις της Ενότητας 2 : Ζωγραφίζοντας με το ΒΥΟΒ -1- α. Η χρήση της πένας Κεφάλαιο 1: Κίνηση και γεωμετρικά σχήματα Υπάρχουν εντολές που μας επιτρέπουν να επιλέξουμε το χρώμα της πένας, καθώς και το

Διαβάστε περισσότερα

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE)

EPL 603 TOPICS IN SOFTWARE ENGINEERING. Lab 5: Component Adaptation Environment (COPE) EPL 603 TOPICS IN SOFTWARE ENGINEERING Lab 5: Component Adaptation Environment (COPE) Performing Static Analysis 1 Class Name: The fully qualified name of the specific class Type: The type of the class

Διαβάστε περισσότερα

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Σχεδίαση με Ηλεκτρονικούς Υπολογιστές Ενότητα # 13: Τεχνικές απεικόνισης στην οθόνη του ΗΥ Καθηγητής Ιωάννης Γ. Παρασχάκης Τμήμα Αγρονόμων

Διαβάστε περισσότερα

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές

Σχεδίαση με Ηλεκτρονικούς Υπολογιστές ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΧΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Σχεδίαση με Ηλεκτρονικούς Υπολογιστές Ενότητα # 10: Χρωματικά μοντέλα στον ΗΥ Καθηγητής Ιωάννης Γ. Παρασχάκης Τμήμα Αγρονόμων & Τοπογράφων

Διαβάστε περισσότερα

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Βασικά χαρακτηριστικά αναπτύχθηκε ως επέκταση της C το 1979 υπερσύνολο της C γλώσσα γενικού σκοπού, γρήγορη, Αντικειμενοστραφής προγραμματισμός (Object

Διαβάστε περισσότερα

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Χ. Βέργος Καθηγητής

ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ Χ. Βέργος Καθηγητής ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ ΜΕ ΧΡΗΣΗ ΥΠΟΛΟΓΙΣΤΩΝ (E-CAD) ΑΚΑΔΗΜΑΪΚΟ ΕΤΟΣ 2013 2014 Χ. Βέργος Καθηγητής ΕΡΓΑΣΙΑ ΕΞΑΜΗΝΟΥ Σκοπός της φετινής εργασίας εξαμήνου είναι η σχεδίαση ενός Συστήματος Απεικόνισης Χαρακτήρων

Διαβάστε περισσότερα

Winnie. Ένα πειραματικό window system. Ελένη Μαρία Στέα FOSSComm

Winnie. Ένα πειραματικό window system. Ελένη Μαρία Στέα FOSSComm Winnie Ένα πειραματικό window system Ελένη Μαρία Στέα elenemst@gmailcom FOSSComm 2013 Winnie : ένα framebuffer window system Παρέχει στα προγράμματα τρόπους να ζωγραφίζουν παράθυρα και να χειρίζονται events

Διαβάστε περισσότερα

ΜΕΘΟΔΟΙ ΑΕΡΟΔΥΝΑΜΙΚΗΣ

ΜΕΘΟΔΟΙ ΑΕΡΟΔΥΝΑΜΙΚΗΣ ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ Εργαστήριο Θερμικών Στροβιλομηχανών Μονάδα Παράλληλης ης Υπολογιστικής Ρευστοδυναμικής & Βελτιστοποίησης ΜΕΘΟΔΟΙ ΑΕΡΟΔΥΝΑΜΙΚΗΣ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗΣ (7 ο Εξάμηνο Σχολής Μηχ.Μηχ. ΕΜΠ)

Διαβάστε περισσότερα

CRASH COURSE IN PRECALCULUS

CRASH COURSE IN PRECALCULUS CRASH COURSE IN PRECALCULUS Shiah-Sen Wang The graphs are prepared by Chien-Lun Lai Based on : Precalculus: Mathematics for Calculus by J. Stuwart, L. Redin & S. Watson, 6th edition, 01, Brooks/Cole Chapter

Διαβάστε περισσότερα

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2)

Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Ανάπτυξη Μεγάλων Εφαρµογών στη Γλώσσα C (2) Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Οργάνωση Προγράµµατος Header Files Μετάφραση και σύνδεση αρχείων προγράµµατος ΕΠΛ 132 Αρχές Προγραµµατισµού

Διαβάστε περισσότερα

ΟΡΓΑΝΙΣΜΟΣ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΔΙΟΚΤΗΣΙΑΣ

ΟΡΓΑΝΙΣΜΟΣ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΔΙΟΚΤΗΣΙΑΣ ΟΡΓΑΝΙΣΜΟΣ ΒΙΟΜΗΧΑΝΙΚΗΣ ΙΔΙΟΚΤΗΣΙΑΣ Ο Οργανισμός Βιομηχανικής Ιδιοκτησίας (Ο.Β.Ι.) ιδρύθηκε το 1987 (Ν.1733/1987), είναι νομικό πρόσωπο ιδιωτικού δικαίου, οικονομικά ανεξάρτητο και διοικητικά αυτοτελές.

Διαβάστε περισσότερα

Τέτοιες λειτουργίες γίνονται διαμέσου του

Τέτοιες λειτουργίες γίνονται διαμέσου του Για κάθε εντολή υπάρχουν δυο βήματα που πρέπει να γίνουν: Προσκόμιση της εντολής (fetch) από τη θέση που δείχνει ο PC Ανάγνωση των περιεχομένων ενός ή δύο καταχωρητών Τέτοιες λειτουργίες γίνονται διαμέσου

Διαβάστε περισσότερα

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #1 η : Εισαγωγή: Λογισμικό, Γλώσσες Προγραμματισμού, Java Γαβαλάς Δαμιανός dgavalas@aegean.gr Στόχοι μαθήματος Διάκριση και κατανόηση των υφιστάμενων

Διαβάστε περισσότερα

Εισαγωγή στον Προγραμματισμό

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1

Διαβάστε περισσότερα

SIMATIC MANAGER SIMATIC MANAGER

SIMATIC MANAGER SIMATIC MANAGER 1 Προγραμματισμός του PLC. 1. Γενικά Μια προσεκτική ματιά σε μια εγκατάσταση που θέλουμε να αυτοματοποιήσουμε, μας δείχνει ότι αυτή αποτελείται από επιμέρους τμήματα τα οποία είναι συνδεδεμένα μεταξύ τους

Διαβάστε περισσότερα

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων. Διάλεξη 22: Γρήγορος Μετασχηματισμός Fourier Ανάλυση σημάτων/συστημάτων με το ΔΜΦ

HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων. Διάλεξη 22: Γρήγορος Μετασχηματισμός Fourier Ανάλυση σημάτων/συστημάτων με το ΔΜΦ HMY 429: Εισαγωγή στην Επεξεργασία Ψηφιακών Σημάτων Διάλεξη 22: Γρήγορος Μετασχηματισμός Fourier Ανάλυση σημάτων/συστημάτων με το ΔΜΦ Γρήγορος Μετασχηματισμός Fourier Το ζεύγος εξισώσεων που ορίζουν το

Διαβάστε περισσότερα

ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A CRUSHER MODULE USING P.L.C.

ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A CRUSHER MODULE USING P.L.C. ΤΕΧΝΟΛΟΓΙΚΟ ΕΚΠΑΙΔΕΥΤΙΚΟ ΙΔΡΥΜΑ ΑΝ. ΜΑΚΕΔΟΝΙΑΣ ΚΑΙ ΘΡΑΚΗΣ ΣΧΟΛΗ ΤΕΧΝΟΛΟΓΙΚΩΝ ΕΦΑΡΜΟΓΩΝ ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε ΠΤΥΧΙΑΚΗ ΕΡΓΑΣΙΑ ΑΥΤΟΜΑΤΟΠΟΙΗΣΗ ΜΟΝΑΔΑΣ ΘΡΑΥΣΤΗΡΑ ΜΕ ΧΡΗΣΗ P.L.C. AUTOMATION OF A

Διαβάστε περισσότερα

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη Προτάσεις,

Διαβάστε περισσότερα