Fabio Massacci Programmazione ad Oggetti

Slides:



Advertisements
Presentazioni simili
CSS (Cscading Style Sheet Fogli di stile a cascata)
Advertisements

Sistemi Operativi - Vi 1 Il sistema operativo LINUX Leditor vi Giorgio Di Natale Stefano Di Carlo Politecnico di Torino Dip. Automatica e Informatica.
Corso FSE II – html a.a Lezione 5. corso fse dinformatica – a.a html html (hypertext markup language) è un linguaggio di markup.
CSS CASCADING STYLE SHEET Alberto Ferrari. Cascading Style Sheet I fogli di stile a cascata (detti anche semplicemente fogli di stile) vengono usati per.
HYPER TEXT MARK-UP LANGUAGE
CSS CASCADING STYLE SHEET Alberto Ferrari.
Linee guida per la programmazione
HTML LE PAGINE WEB COME SI SA, INTERNET E UN SISTEMA MONDIALE DI RETI DI COMPUTER CHE PERMETTE DI UTILIZZARE UN SISTEMA DI CONNESSIONE TRA COMPUTER.
1 Il punto di vista Un sistema è una parte del mondo che una persona o un gruppo di persone, durante un certo intervallo di tempo, sceglie di considerare.
Modellazione per addizione: denti posteriori
Programmazione Procedurale in Linguaggio C++
ELETTROMAGNETISMO APPLICATO ALL'INGEGNERIA ELETTRICA ED ENERGETICA
CSS: Cascading Style Sheets Specifiche del formato del documento tramite un linguaggio Come modelli.dot di Word o file di stile.sty per latex Separazione.
HTML e CSS Concetti base Comunicazione Multimediale.
1 Università della Tuscia - Facoltà di Scienze Politiche.Informatica 2 - a.a Prof. Francesco Donini Richiami sul modello Client/Server (per.
1 HTML - I Frame Laboratorio di Applicazioni Informatiche II mod. A.
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
1 Corso di Laurea in Biotecnologie Informatica (Programmazione) Introduzione a JAVA Anno Accademico 2009/2010.
Corso di Informatica (Basi di Dati)
Corso di Informatica (Programmazione)
Esempi sui CSS.
Progettazione dei sistemi interattivi (A.A. 2004/05) - Lezione 3 1 La relazione di ereditarietà Punto di vista insiemistico: la relazione di ereditarietà
Lezione 4: Costrutti Condizionali Prof. Raffaele Montella.
Fabio Massacci Programmazione ad Oggetti 1 Fondamenti di Informatica per Ingegneria Prof. Ing. Fabio Massacci (A-L) Ing. Enrico Blanzieri (M-Z) Lezione.
Laboratorio di Informatica
Istruzioni di selezione in Java Programmazione Corso di laurea in Informatica.
Un’introduzione a HTML (I)
GIS on the WEB: un esempio di grafica vettoriale 3D
Espressioni condizionali
Sistemi Operativi - Introduzione 1 Il sistema operativo UNIX Dettagli e comandi avanzati Niccolò Battezzati Politecnico di Torino Dip. Automatica e Informatica.
Ovvero lo stile di Internet TC-WEB Torino, 5 settembre 2012.
Corso di PHP.
Linguaggi per il Web Linguaggi di markup: CSS. Cascading Style Sheets (CSS) servono per facilitare la creazione di pagine HTML con un aspetto uniforme.
EXCEL FORMATTAZIONE DATI.
Informatica Generale: laboratorio di informatica
1 IsaPress. 2 Obiettivo Realizzare uno strumento di facile uso per estrarre il contenuto da documenti binari di vario tipo in un formato utile per l'impaginazione.
HyperText Markup Language 17-23/6/08 Informatica applicata B Cristina Bosco.
CSS : Cascading Style Sheet
VRML97 -Appendice- Cristina Donati 1 VRML97. Il Virtual Reality Modeling Language (VRML) è un formato di file volto alla descrizione degli oggetti interattivi.
Massimiliano Piscozzi – Sistemi multimediali.
HTML per iniziare Gianpaolo Cecere. 29 aprile Sintassi HTML I tag HTML sono direttive per i browser I tag sono contenitori per porzioni di documento.
Gianpaolo Cecere Introduzione
HTML Lezione 3 Stili.
Fopndamenti di programmazione. 2 La classe String Una stringa è una sequenza di caratteri La classe String è utilizzata per memorizzare caratteri La classe.
Strumenti di Presentazione (Microsoft PowerPoint 2000)
Il linguaggio HTML Antonella Schiavon – settembre 2008 rev. 1 – aprile 2011.
HTML HyperText Markup Language Linguaggio per marcare un’Ipertesto
Programma di Informatica Classi Prime
Corso Web CSV – Andiamo on-line 1 Andiamo on-line Corso di formazione Elementi base per la costruzione di un sito web.
Il linguaggio Fortran 90: 3. Procedure e Funzioni
JavaScript Generalità Cos'è JavaScript?
Note sull’esame L’esame è composto da due parti:
Lezione 3 Struttura lessicale del linguaggio
Virtual Reality Modeling Language
Creazione di pagine per Internet Brevi note a cura di Emanuele Lana
Internet e HTML Diffusione di informazioni mediante la rete Internet.
Introduzione a Javascript
HTML e CSS C. Gena, C. Picardi, J. Sproston HTML e CSS.
Tag IMG Per inserire un'immagine in una pagina HTML basta inserire il tag: ; questo tag non ha bisogno di chiusura. Affinché l'immagine venga visualizzata.
PROGETTO… Internet Providers, registrazione del dominio Costruire una home page … e renderla visibile sul Web.
CSS Cascading Style Sheet
Fondamenti di Markup Languages: Richiami di HTML © 2005 Stefano Clemente Stefano Clemente
Master in Telemedicina HTML per iniziare Maria Simi, dicembre 2004 [da un tutorial di Rigget]
Introduzione al linguaggio HTML
Creazione di pagine per Internet Brevi note a cura di Emanuele Lana
Cloud informatica V anno. Introduzione a PHP Lo scripting PHP PHP è un linguaggio di scripting lato server. Le caratteristiche di un linguaggio di scripting.
HTML HTML Sistema di contrassegno riconosciuto dai Browser come (Firefox, Chrome, Internet Explorer) Hyper Text Markup Language.
HTML. Pagina HTML Struttura Titolo Hello World! Paragrafo apre il documento html contiene informazioni come il titolo della pagina, i meta tags, la codifica.
Transcript della presentazione:

Fabio Massacci Programmazione ad Oggetti Fondamenti di Informatica per Ingegneria Prof. Ing. Fabio Massacci (A-L) Ing. Enrico Blanzieri (M-Z) Lezione 5 Dip. di Informatica e Telecomunicazioni Università di Trento Fabio Massacci Programmazione ad Oggetti

Linguaggi Rappresentazione Grafici Rappresenta forme/ambienti interattivi 3D Descrive oggetti geometrici Descrive relazioni (temporali/animazione) tra essi VRML = Virtual Reality Modeling Language Semantica dei file con estensione .wrl Editor di testo = mostra linguaggio VRML Browser = interpreta linguaggio = costruisce oggetti grafici VRML helper-application VRML plug-in di browser HTML (IE, Netscape, Opera) Fabio Massacci Programmazione ad Oggetti

Scrivere Linguaggi Grafici Costruzione di file VRML editor di testi flessibile, controllo dettagliato ma lungo e difficile applicazione ad-hoc (world builder) con interfaccia grafica facile ma può produrre VRML non efficiente modellatore 3D (interfaccia grafica) e trasformazione facile ma non reversibile e VRML non sempre efficiente programmi utente che generano forme opportune AutoCAD esempio di modellatore 3D statico Fabio Massacci Programmazione ad Oggetti

Generatori/Visualizzatori VRML Editing di file VRML Editor di testo: Notepad/Wordpad Editor specializzato VRMLpad (Parallel Graphics) - Aula A1 Internet Space Builder (Parellel Graphics) - Aula A1 incorpora anche file AutoCAD Visualizzazione di file VRML Plug-in di IE e Netscape (Cosmo Player - Cortona) - Internet Internet Space Builder (Parellel Graphics) - Aula A1 Altri visualizzatori/editor VRML http://www.vrml.org Fabio Massacci Programmazione ad Oggetti

Rappresentare Oggetti in VRML File VRML descrive un mondo Sistema di assi cartesiani X/Y/Z Tutti gli oggetti sono costruiti nel sistema di assi cartesiani Default: oggetti centrati nell’origine Fabio Massacci Programmazione ad Oggetti

Fabio Massacci Programmazione ad Oggetti Componenti VRML File header informazioni per l’interprete (versione/codifica/etc) Commenti Nodi (Node) Oggetti fisici (Cubi, Sfere, Superfici) o matematici (orologio, funzione che descrive il movimento) etc. Campi (Fields) per ogni nodo Attributi di ciascun oggetto/nodo (dimensione, colore, parti) Valori (Values) per ciascun campo Valori di un attributi: numeri, coppie e triple (coordinate XYZ), vettori, altri oggetti fisici o matematici Fabio Massacci Programmazione ad Oggetti

Fabio Massacci Programmazione ad Oggetti Esempio di file VRML #VRML V2.0 utf8 # Commento: un bel cilindro # di altezza 2m e raggio 1.5m Shape { appearance ... geometry Cylinder { height 2.0 radius 1.5 } Fabio Massacci Programmazione ad Oggetti

Componenti VRML - header #VRML V2.0 utf8 #VRML: il file contiene testo VRML V2.0: il testo è conforme alla sintassi della versione 2.0 utf8: il testo usa i caratteri UTF8 UTF è un formato di caratteri internazionale utf8 = UCS (Universal Character Set) Transformation Format, 8-bit Codifica oltre 24,000 caratteri di molte lingue Fabio Massacci Programmazione ad Oggetti

Fabio Massacci Programmazione ad Oggetti Componenti VRML - Nodi Nodo - descrive oggetti, forme, luci, suoni ha un tipo (Shape, Cylinder, etc.) delimitato da coppia di parentesi graffe zero o più campi al suo interno (proprietà del nodo) Shape { appearance ... geometry Cylinder { height 2.0 radius 1.5 } Fabio Massacci Programmazione ad Oggetti

Componenti VRML - Nodi (cont) I tipi dei nodi sono case sensitive ogni parola inzia con una maiuscola il resto della parola è in caratteri minuscoli tutto in inglese Esempi Shape - Forma Appearance - Apparenza Cylinder - Cilindro Material - Materiale ElevationGrid - CurveDiLivello FontStyle - StileCarattere ImageTexture - TessituraImmagine IndexedFaceSet - InsiemeDiFacceIndicizzate Fabio Massacci Programmazione ad Oggetti

Componenti VRML - Campi Il Campo/Field è una proprietà del nodo ha un nome (height, radius, etc.) ha un tipo (float, integer, nodo etc.) un valore di default Il valore di default viene utilizzato dall’interprete se non si mette il campo esplicitamente Cylinder { height 2.0 radius 1.5 } Fabio Massacci Programmazione ad Oggetti

Componenti VRML - Campi (cont) I nomi dei campi sono case sensitive la prima parola inzia con una minuscola ogni altra parola inizia con una maiuscola il resto della parola è in caratteri minuscoli tutto in inglese Esempi height - altezza material - materiale radius - raggio coordIndex - indiceCoordinate diffuseColor - coloreRifratto fontStyle - stileCarattere textureTransform - trasformazioneTessitura Fabio Massacci Programmazione ad Oggetti

Componenti VRML - Campi (cont) Ogni nodo ha i suoi campi differenti Cilindro (altezza), Sfera (raggio), Apparenza (coloreRifratto) Tutti i campi sono opzionali un valore di default viene usato se il campo è omesso I campi possono essere in qualsiasi ordine L’ordine non cambia il risultato Ovvio per ling. rappresentazione: descrive il mondo come è Errato per ling. programmazione: descrive cosa fare per cambiare il mondo Cylinder { height 2.0 radius 1.5 } Cylinder { radius 1.5 height 2.0 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici Shape (Forma) nodo base in VRML Forma geometrica è componente elementare Box (Parallelepipedo) Cone (Cono) Cylinder (Cilindro) Sphere (Sfera) Text (Testo) Testo non è propriamente geometrico ma più semplice considerarlo oggetto elementare Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (cont) Un nodo Shape serve a costruire una forma Campi comuni a tutte le forme appearance - apparenza Include colore e tessitura per ora omesso: default è bianco sporco uniforme geometry - geometria include la forma vera e propria o la struttura Shape { appearance . . . geometry . . . } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Sphere) Sfera Forma (Shape) in cui l’attributo geometria (geometry) ha il valore Sphere { ... } Proprietà: radius (raggio) numero reale Shape { geometry Sphere { radius 1.0 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Box) Parallelepipedo (Box) Forma (Shape) in cui l’attributo geometria (geometry) ha il valore Box { ... } Proprietà: size tripla di reali (larghezza, altezza, profondità in metri) Shape { geometry Box { size 2.0 2.0 2.0 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Cone) Cono a punta in alto (Cone) Forma (Shape) in cui l’attributo geometria (geometry) ha il valore Cone { ... } Proprietà: height (altezza), bottomRadius (raggioBase) numeri reali Shape { geometry Cone { height 2.0 bottomRadius 1.0 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Cone) cont Proprietà di base del cono: height, bottomRadius numeri reali Proprietà visuali: bottom (fondo), side (lato) valori booleani: TRUE/FALSE significato: c’è il fondo/c’è la parete laterale del cono bottom TRUE = cono con il fondo visibile bottom FALSE = cono cavo valore di default è TRUE Domanda: se non c’è il lato, che cono è? Un cono invisibile, come un cono d’ombra, ad esempio... Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Cylinder) Cilindro verticale Forma (Shape) in cui l’attributo geometria (geometry) ha il valore Cylinder { ... } Proprietà: height (altezza), radius (raggio) numeri reali Shape { geometry Cylinder { height 2.0 radius 1.0 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geom. (Cylinder) cont Proprietà di base del cilindro: height, radius numeri reali Proprietà visuali: bottom (tappo inferiore), side (lato), top (tappo superiore), valori booleani: TRUE/FALSE significato: c’è il fondo/c’è la parete laterale del cilindro/c’è il tappo superiore del cilindro bottom TRUE = cilindro chiuso in fondo top FALSE = cilindro aperto in cima valore di default è TRUE Fabio Massacci Programmazione ad Oggetti

Fabio Massacci Programmazione ad Oggetti Cilindro in VRML #VRML V2.0 utf8 # A cylinder geometry Cylinder { height 2.0 radius 1.5 } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geometrici (Text) Testo Forma (Shape) in cui l’attributo geometria (geometry) ha il valore Text { ... } Proprietà: string (stringa da scrivere), fontStyle lista di stringhe di caratteri (parentesi quadre per delimitare, virgola per andata a capo) Shape { geometry Text { string [ "Text", "Shape" ] } Fabio Massacci Programmazione ad Oggetti

VRML - Oggetti Geom. (Text) cont Proprietà di base del Testo: string lista di stringhe di caratteri Proprietà di formattazione: fontStyle Valore è a sua volta un nodo di tipo FontStyle con proprietà size - altezza (in metri) del carattere spacing - spazio (in metri) tra le righe/colonne horizontal - allineamento orizzontale (TRUE), verticale (FALSE) leftToRight, topToBottom - direzione scrittura (TRUE/FALSE) justify - allineamento con origine degli assi e stringhe (FIRST, BEGIN, MIDDLE, END) family - famiglia di font (SERIF, SANS, TYPEWRITER) style - stile (BOLD, ITALIC, BOLDITALIC, PLAIN) Fabio Massacci Programmazione ad Oggetti

Molteplicità di Oggetti Geometrici Un file VRML può contenere molteplici oggetti Default: ogni oggetto è centrato nell’origine Gli oggetti si sovrappongono quando costruiti nello stesso posto Fabio Massacci Programmazione ad Oggetti

Molteplicità di Oggetti (cont) La nave spaziale è data dalla costruzione di Un cubo Box { size 1.0 1.0 1.0 } Una sfera Sphere { radius 0.7 } Quattro cilindri Cylinder { radius 1.25 height 0.05 } Cylinder { radius 0.4 height 2.0 } Cylinder { radius 0.3 height 3.0 } Cylinder { radius 0.1 height 6.0 } Fabio Massacci Programmazione ad Oggetti

Molteplicità di Oggetti (cont) #VRML V2.0 utf8 Shape { geometry Box { size 1.0 1.0 1.0 } geometry Sphere { radius 0.7 ... Fabio Massacci Programmazione ad Oggetti