oggetti grafici Esigenza
|
|
|
- Gastone Lentini
- 10 anni fa
- Просмотров:
Транскрипт
1 SVG overview e RoadMap (fonte w3c) Cosa è SVG? Primitive di Base Path, il testo Le Animazioni I filtri (Filter Effects) e l interattività Raster_to_Vector@IpLab_CT SVG is a platform for two-dimensional graphics. It has two parts: an XML-based file format and a programming API for graphical applications. Key features include shapes, text and embedded raster graphics, with many different painting styles. It supports scripting through languages such as ECMAScript and has comprehensive support for animation. SVG is used in many business areas including Web graphics, animation, user interfaces, graphics interchange, print and hardcopy output, mobile applications and high-quality design. SVG is a royalty-free vendor-neutral open standard developed under the W3C Process. It has strong industry support; Authors of the SVG specification include Adobe, Apple, Canon, Corel, Ericsson, HP, IBM, Kodak, Macromedia, Microsoft, Nokia, Sharp, Sun Microsystems. SVG viewers are deployed to over 100 million desktops, and there is a broad range of support in many authoring tools. SVG builds upon many other successful standards such as XML (SVG graphics are text-based and thus easy to create), JPEG and PNG for image formats, DOM for scripting and interactivity, SMIL for animation and CSS for styling. SVG is interoperable. The W3C release a test suite and implementation results to ensure conformance.! " # $ % & #!! ' '( )&#*!! & # +!! & # ),*!! '# - ' *./ SVG (Scalable Vector Graphics) è un applicazione di XML per la rappresentazione di oggetti grafici in forma compatta e portabile. (Esigenza) Esiste un forte interesse a creare uno standard comune di grafica vettoriale utilizzabile sul web. 1
2 *. SVG è un linguaggio per descrivere oggetti grafici bidimensionali in XML. SVG ammette tre tipi di oggetti grafici: Forme grafiche vettoriali (Paths formati da linee e curve) Immagini (raster) Testo Gli oggetti grafici possono: Essere raggruppati Avere uno stile (legami con CSS) Essere trasformati (ruotati, ridimensionati, traslati) *. I testi possono Essere strutturati in linguaggio XML (favorendo accessibilità e ricerca) I Disegni SVG possono essere dinamici e interattivi attraverso: la gestione degli eventi di HTML Un linguaggio di scripting (ECMA script = Javascript) Il DOM 01! Stick s Computed Dream: Rolex: Eluzions'Optical Illusions: SVG & Net Art (Luigia Cardarelli) Other: Adobe Filter Demo, Eye-Chart, Dale s SVG Game Open Source: I file sono scritti in un linguaggi comune a tutti (niente formati binari incomprensibili) Web Based: SVG apre il web alla grafica vettoriale (occupa poco spazio) XML Based: Integrazione con altri linguaggi XML (Xhtml, MathML, ecc.) ed estensibilità 2! 3 Raster 2x Vector 2x Raster (140x170) Vector (140x170) 2
3 ! <?xml version= 1.0?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" " /DTD/svg10.dtd"> <svg width="140" height="170"> <title>titolo</title> <desc>descrizione</desc> </svg> "4! 5 <path <!-- <use <circle <?xml <text <g id="baffi"> orecchie xlink:href="#baffi" x="45" d="m version="1.0"?> cx="55" cx="70" 75 --> y="165" 90 cy="80" cy="95" L 65 style="font- 90 transform="scale(-1 r="5" r="50 A " 1) style="stroke:black;fill:gray;"/> <polyline translate(-140 <!DOCTYPE family:helvetica;font- svg PUBLIC "-//W3C//DTD fill:orange"/> fill:none"/> SVG 1.0//EN" " <line x1="75" points="108 y1="95" 0)"/> 62,90 x2="135" 10, y2="85" 70 45, 50, 10, 32, 62" <circle <svg size:14pt;stroke:none;fill:black;">gatto</text> style="stroke:black;"/> style="stroke:black;fill:none;"/> width="140" cx="85" cy="80" height="170"> r="5" <!-- style="stroke:black; <title>cat</title> <line Bocca x1="75" --> y1="95" fill:orange"/> x2="135" y2="105" <polyline style="stroke:black;"/> <desc>stick points="35 Figure of 110, a Cat</desc> , , 105, 110" </g> </svg> style="stroke:black;fill:none;"/> 6!! 6!! - Il mondo di SVG è un foglio infinito. Tuttavia occorre stabilire le dimensioni della tela (canvas) e il sistema di riferimento in quest area. L area di lavoro in SVG si chiama viewport. Le dimensioni del viewport sono settate dagli attributi width e height del tag di apertura <svg> Es. <svg width= 400 height= 400 > Origine (0,0) width height (widht,height) +! Le primitive grafiche di SVG sono: Linee Rettangoli Cerchi ed ellissi Poligoni Polylines In SVG gli stili possono essere specificati in quattro modi (dal più importante al meno importante) 1. Inline styles 2. Internal stylesheets 3. External stylesheets 4. Attributi 3
4 Lo stile dell oggetto viene definito nell elemento tramite l attributo style; Lo schema dello stile è: proprietà1:valore1; proprietà2:valore2; Vengono specificati dentro l elemento <svg> e dentro uno speciale elemento <defs> che vedremo in seguito. Lo stile viene definito da { fill:blue; fill- <style type= text/css ><! [CDATA [circle opacity: 0.5; }]]</style> Tutti i cerchi definiti saranno riempiti di blu, e con opacità del 50% $ I fogli di stile esterni sono file di testo che raccolgono definizioni di stile che vanno applicate a più documenti SVG. L estensione di un foglio di stile è.css (Cascading Style Sheets) Viene richiamato tra la definizione del documento.xml e il DOCTYPE 1! <?xml version="1.0"?> <?xml-stylesheet href="ext_style.css" type="text/css"?> <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.0//EN" " /DTD/svg10.dtd"> <svg width="200px" height="200px" viewbox=" " preserveaspectratio="xminymin meet"> <line x1="10" y1="10" x2="40" y2="10"/> <rect x="10" y="20" width="40" class="yellow" cx="70" cy="20" r="10"/> <polygon class="thick" points="60 50, 60 80, 90 80"/> <polygon height="30"/> <circle class="thick semiblue" points="100 30, , , "/> </svg> { fill:none; stroke: black; } /* default for all elements */ rect { stroke-dasharray: 7 3;} circle.yellow { fill: yellow; }.thick { stroke-width: 5; }.semiblue { fill:blue; fill-opacity: 0.5; }! Gli oggetti SVG possono essere raggruppati e richiamati. Il tag <g id= nome_gruppo > apre la definizione degli elementi del gruppo. Dentro l elemento g è possibile inserire i tags <title> e <desc>. È possibile stabilire uno stile che viene ereditato dagli elementi interni.! Tramite il tag <use> definito da: <use xlink:href= #id_elemento x= y= /> Vengono ridisegnati tutti gli elementi di <g> nella posizione traslata rispetto all originale di x pixels in orizzontale e y pixels in verticale (x, y possono assumere anche valori negativi) 4
5 1! <svg width="500" height="500"> <title>divieto di accesso</title> <desc>un segnale stradale</desc> <g id="divietoaccesso"> <circle cx="50" cy="50" r="50" style="fill:red"/> <rect x="5" y="40" width="90" height="20" style="fill:white"/> </g> <use xlink:href="#divietoaccesso" x="110" y="0"/> <use xlink:href="#divietoaccesso" x="0" y="110"/> <use xlink:href="#divietoaccesso" x="110" y="110"/> </svg> 78 9 È possibile definire degli elementi generici mettendoli tra <defs> e </defs>. Tali elementi: Non vengono immediatamente disegnati; Possono subire futuri cambiamenti di stile; Riutilizzo più semplice. L elemento <use> può far riferimento a qualsiasi risorsa disponibile in rete. È possibile quindi creare un file svg con sole definizioni e poi richiamarli negli altri file svg. :!7! In SVG è possibile effettuare delle trasformazioni sul piano: Traslazioni; Scaling; Rotazioni; Tutte queste azioni vengono eseguite tramite l attributo trasform da applicare ai relativi elementi (gruppi, primitive, ecc.). :7 Le traslazioni le abbiamo già viste quando nell elemento <use> abbiamo specificato gli attributi x e y che indicavano lo spostamento orizzontale e verticale dell oggetto da riutilizzare. In generale la sintassi della traslazione è: < transform= translate(x-value,y-value) x-value e y-value rappresentano (in pixels) lo spostamento orizzontale e verticale del sistema di riferimento dell elemento a cui è applicato. Lo scaling permette il ridimensionamento delle unità di misura del sistema di riferimento. La conseguenza di tale trasformazione è che l oggetto risulta ingrandito o rimpicciolito o riflesso. La sintassi della trasformazione è: <.. transform= scale(r) > se si vogliono ridimensionare entrambi gli assi in modo eguale <.. transform= scale(rx,ry) > se il fattore di scala è diverso per i due assi. 7 La trasformata rotazione permette di ruotare il sistema di riferimento dell oggetto secondo un centro di rotazione e un angolo. Se il centro di rotazione non viene espresso la rotazione viene effettuata rispetto all origine. L angolo viene espresso in gradi. Sintassi < transform= rotate(angle,centerx,centery); < transform= rotate(angle); 5
6 *!!7 1! Dentro l attributo transform è possibile effettuare qualsiasi combinazione di trasformazioni separandole con lo spazio Esempio: < transform= rotate(30) translate(120,130) scale(2) > Ovviamente l ordine delle trasformazioni è determinante. E inoltre possibile piegare gli assi di un certo angolo tramite le trasformate skewx(angolo) skewy(angolo) 1! <defs> <g id="petalo"> <rect x="100" y="50" width="150" height="100" style="fill:red;fillopacity:0.2; stroke:red;stroke-width:2;stroke-dasharray:3,2,1;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(1)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(2)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(3)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(4)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(5)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> <rect x="100" y="50" width="150" height="100" transform="rotate(6)" style="fill:red;fill-opacity:0.2; stroke:black;stroke-dasharray:5;"/> </g> </defs> 1! <use xlink:href="#petalo" transform="rotate(-135,100,150)"/> <use xlink:href="#petalo" transform="rotate(-45,100,150)"/> <use xlink:href="#petalo" transform="rotate(-90,100,150)"/> <use xlink:href="#petalo" transform="rotate(45,100,150)"/> <use xlink:href="#petalo" transform="rotate(135,100,150)"/> <use xlink:href="#petalo" transform="rotate(90,100,150)"/> <use xlink:href="#petalo" transform="rotate(180,100,150)"/> <use xlink:href="#petalo"/> +0:; Tutti le primitive descritte finora sono scorciatoie per la nozione più generale di <path> L elemento PATH crea forme tramite linee, curve e archi che possono essere adiacenti o partire da un punto arbitrario del canvas. L elemento PATH ha un solo attributo (escluso lo stile) denominato d (che sta per data) che contiene una serie di: Comandi (spostati_la,disegna una linea, crea un arco) Coordinate È possibile riempire un PATH con l attributo di stile fill:color. Valgono le stesse regole descritte per i poligoni tramite l attributo fill-rule +0:;<("(=' Il comando M x y (moveto) sposta il pennino sul punto di coordinate (x,y); Ogni PATH deve iniziare con un moveto; Il comando L x y (lineto) disegna una linea dal punto corrente fino a (x,y ) Il comando Z (closepath) chiude il cammino unendo il punto corrente con quello iniziale. Inserendo una nuova M tra i comandi del path, si crea un nuovo sottocammino, cioè viene alzato il pennino e spostato nella nuova posizione pronto a ricevere altri comandi. 6
7 1! <path d= M 50,50 L 50,100 L 100,150 L 100,100 Z style= > 1 7 Scrivere il path generico relativo alle primitive grafiche: Rect Polyline Polygon 7 <rect x= startx y= starty width= larghezza height= altezza /> Diventa <path d= M startx starty L startx+larghezza,starty L startx+larghezza,starty+altezza L startx,starty+altezza Z> * Esiste una versione relativa dei comandi M ed L. Per relativo si intende rispetto al punto precedente. I comandi relativi sono gli stessi ma in forma minuscola m ed l. Le coordinate dopo m e l sono espresse in pixels e possono anche assumere valori negativi. Esistono poi dei veri e propri Shortcuts per linee verticali ed orizzontali: H,(h) x : disegna una linea orizzontale dalla posizione corrente al punto (x-attuale+x, y-attuale); V,(v) y : equivalente verticale; 6 >? <rect x= startx y= starty width= larghezza height= altezza /> Diventa: <path d= M startx starty l larghezza,0 l 0,altezza l larghezza,0 Z> 6 7 <rect x= startx y= starty width= larghezza height= altezza /> Diventa: <path d= M startx starty h larghezza v altezza h larghezza Z> 7
8 +0:;0 0: Gli archi rappresentano il tipo più semplice di curva.vengono dichiarati con il comando A Un arco è definito da: Raggio-orizzontale Raggio-verticale Large-arc-flag Sweep-flag Endx Endy Punto iniziale rx ry Punto finale 0 7 Le curve di Bezier (da Pierre Bezier della Renault e indipendemente anche da Paul de Casteljau della Citroen) introducono un modo computazionalmente conveniente di creare curve parametriche di secondo e terzo grado. Sono costituite dai punti di inizio e fine curva, più una serie di punti di controllo. Metaforicamente un punto di controllo è come un magnete che attira la linea (come se fosse deformabile) con + forza tanto quanto + il punto è vicino. 7 A Sono caratterizzate da: Punto iniziale Punto finale Un punto di controllo La sintassi è (dentro un PATH) <.. Q controlpointx controlpointy endx endy> Esiste anche la versione q (con coordinate relative) 1! <path d="m Q style="stroke:red; fill:none;" /> <path d="m Q " style="stroke:blue; fill:none;"/> <path d="m Q " style="stroke:yellow; fill:none;"/> <path d="m Q " style="stroke:green; fill:none;"/> 8
9 +B 7 Si ottengono specificando altre coppie di control point e punto finale <path Q cpx1 cpy1 endx1 endx1 cpx2 cpy2 endx2 endx2> Se si vuole ottenere uno smoothing della curva si può usare T dopo la prima coppia. 7 Le curve di Bezier cubiche hanno due punti di controlli piuttosto che uno. La sintassi è: < C cpx1 cp1y cp2x cp2y endx endy > Esiste la versione relativa c Esistono le polybezier cubiche con e senza smooth (comando S) I Punti di controllo %CC %CC <path d="m L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L L Z"/> <path d="m C C C C C C C C Z"/> 9
10 6* La proprietà <fill> permette inoltre di realizzare effetti colore particolari tramite l utilizzo dei gradienti. E possibile riempire un oggetto con delle gradazioni di colore tra due estremi in maniera sia lineare che radiale. 8 9 <lineargradientid="mygradient" gradientunits="userspaceonuse" x1="80" y1="44 x2="260" y2="116"> <stop offset="0" style="stop-color:blue"/> <stop offset="0.5" style="stop-color:white"/> <stop offset="1" style="stop-color:green"/> </lineargradient> <rect x="20" y="20" width="290" height="120" style="fill:url(#mygradient)"/> 8 9 * <radialgradient id="mygradient2" gradientunits="userspaceonuse cx="130 cy="270" r="100" fx="70" fy="270"> <stop offset="0" style="stop-color:blue"/> <stop offset="0.5" style="stop-color:white"/> <stop offset="1" style="stop-color:green"/> </radialgradient> <rect x="20" y="160" width="290" height="220" style="fill:url(#mygradient2)"/> La circonferenza di centro (cx,cy) e raggio r si riferisce all offset=1 Il fuoco (fx,fy) individua il punto con offset=0 E possibile clippare un disegno (un gruppo di elementi) rispetto ad un dato oggetto grafico mendiante la primitiva <clippath> 8+9 <clippath id="myclip"> <circle cx="350" cy="100" r="50"/> </clippath> <g style="stroke:none;clip-path:url(#myclip)"> <rect style="fill:red" x="0" y="0" width="500" height="20" /> <rect style="fill:white" x="0" y="20" width="500" height="20" /> <rect style="fill:blue" x="0" y="40" width="500" height="20" /> <rect style="fill:red" x="0" y="60" width="500" height="20" /> <rect style="fill:white" x="0" y="80" width="500" height="20" /> <rect style="fill:blue" x="0" y="100" width="500" height="20" /> <rect style="fill:white" x="0" y="120" width="500" height="20" /> <rect style="fill:blue" x="0" y="160" width="500" height="20" /> </g> + SVG permette di riempire (fill) gli oggetti con pattern grafici. La definizione di un pattern segue la sintassi classica: <pattern id= x=, y=, width=, heigth=, patterntrasform=, patternunits= UserSpaceOnUse >. </pattern> 10
11 1! 0: - Hello World! <defs> <pattern id="trianglepattern" patternunits="userspaceonuse" x="0" y="0" width="100" height="100" > <path d="m 0 0 L 7 0 L z" fill="red" stroke="blue" /> </pattern> </defs> <ellipse fill="url(#trianglepattern)" stroke="black" stroke-width="5" cx="400" cy="200" rx="350" ry="150" /> Se è vero che ogni disegno racconta una storia, è perfettamente giusto usare le parole per aiutare a raccontare la storia. SVG gestisce il testo tramite l elemento <text> ed i suoi numerosi attributi di stile. La sintassi:: <text x= y= style= > Testo </text> fill:color (crea un font filled) stroke: color (crea un font outlined) font-size: x font-weight: (bold,normal) font-style: (italic, normal) word-spacing: x letter-spacing: x text-decoration: (underline, overline, line-trought) font-family: (serif, sans-serif, monospace) 1! 0! Il punto finale del testo inserito non è noto a priori. L allineamento del testo viene eseguito intorno al punto iniziale tramite l attributo di stile: text-anchor: start middle end *! 1! Tramite l elemento <tspan style= > è possibile cambiare lo stile del testo in una sessione <text > </text>. tspan è analogo di span in HTML. Gli attributi di tspan sono: dx, dy: spostano i caratteri interni di dx e dy pixel rispetto ai precedenti x,y: spostano i caratteri interni nella posizione x,y baseline-shift: sub super <g font-size="24pt"> <text x="0" y="24"> Questo e'un unico blocco di testo <tspan x="0" y="48" style="fontstyle:italic"> un po'italico</tspan> o anche normale o <tspan style="font-weight:bold"> Grassetto</tspan> <tspan x="0" y="64" dy=" ">cade e ritorna normale</tspan> <tspan x="0" y="200">h <tspan style="baselineshift:sub;">2</tspan></tspan> </text> 11
12 : Il testo in verticale si può ottenere in 3 modi: Con una rotazione di 90 gradi <text x= y= transform(rotate(90)) Con la proprietà di stile writing-mode: tb (effetto analogo al precedente) Se si vuole che il testo sia scritto in verticale occorre aggiungere la proprietà glyph-orientation-vertical:0; : I testi non devono essere necessariamente in orizzontale o verticale ma possono seguire una forma arbitraria. In SVG ciò si ottiene tramite l elemento <textpath xlink:href= #nomepath > </textpath> che punta un path definito precedentemente. Il testo avrà in ogni punto la baseline perpendicolare al path che sta seguendo. E possibile aggiustare l inizio del text aggiungendo l attributo startoffset con un valore in percentuale. 1! <defs> <path id="path1" d="m C "/> </defs> <text style="font-size:24;"> <textpath xlink:href="#path1"> Testo in curva di Bezier </textpath> </text> <text style="font-size:24;" transform="translate(0,100)" > <textpath xlink:href="#path1" startoffset="20%"> Testo in curva di Bezier 20% offset </textpath> </text> 0!7 SVG permette di creare animazioni basandosi su SMIL2 (Synchronized Multimedia Integration Language Level2). In questo sistema vengono specificati i valori iniziali e finali di attributi, colori e trasformazioni che si vogliono animare; Il momento di inizio dell animazione La durata dell animazione 1!@ 0!7D <rect x="10" y="10" width="500" height="200" style="stroke: black; fill: none;"> <animate attributename="width" attributetype="xml" from="500" to="100" begin="0s" dur="5s" fill="freeze" /> </rect> Alias: Animazioni multiple su un singolo oggetto In SVG è possibile creare animazioni multiple a diversi attributi dell elemento. Le animazioni multiple si ottengono specificando dentro l elemento la sequenza delle animazioni tramite il tag <animate> Gli attributi degli elementi possono essere di tipo: XML (se si riferiscono alla natura di un oggetto) CSS (se si riferiscono ad elementi di stile) 12
13 0!7 E Ogni oggetto di SVG può essere animato tramite l attributo <animate> dentro l elemento. Le animazioni avvengono contemporaneamente in base alle indicazioni temporali dell animazione stessa. Il cronometro di SVG parte quando il documento è interamente caricato e si stacca quando la finestra del visualizzatore viene chiusa. Il tempo si esprime in: hh:mm:ss mm:ss Valore_numerico unità_di_tempo (1h, 3.5min) Le unità di tempo sono: h, m, s, ms 1! / Fino ad adesso abbiamo visto come creare delle animazioni facendo variare i valori numerici di alcuni attributi degli elementi (XML, CSS). Esistono attributi che hanno valori alfanumerici (tipo: visibility: hidden visible) Questi attributi vengono animati da: <set attributename= attributetype= to= begin= dur= fill= > 0!7* L elemento <animate> non funziona con i colori e quindi con gli attributi a valore colore. Questa animazione si esegue con l elemento <animatecolor attributename= begin= dur= from= red to= yellow fill= > 0!7:!7 Similmente a quanto detto sui colori, le trasformazioni necessitano di un tag ad hoc, detto <animatetransform>. La sintassi è la seguente: <animatetransform attributetype= XML attributename= transform type= scale from= to= begin= dur= fill= > Se si vogliono comporre più trasformazioni occorre specificare l attributo additive= sum in <animatetransform>. Di default l attributo additive= replace, cioè la trasformazione rimpiazza la precendente. 0!7< Fino ad adesso le animazioni spaziali sono state effettuate in linea retta (cambiando i parametri x,y o con translate> Il tag <animatemotion> permette di spostare oggetti lungo un PATH arbitrario. È possibile specificare l attributo rotate= auto che automaticamente ruota l oggetto rispetto al path che segue. La relativa sintassi è la seguente: <animatemotion path= dur= fill= > 2 7' È possibile richiamare dei path definiti precedentemente nella sezione <defs> in questo modo: <animatemotion dur= begin= fill= > <mpath xlink:href= #id_path /> </animatemotion> 13
14 0!* Come visto in SVG è possibile animare delle primitive grafiche specificando i valori iniziali e finali degli attributi coinvolti in un dato intervallo di tempo. L animazione, per default, si realizza in modo lineare. E possibile specificare un modo diverso mediante la primitiva <calcmode> 6 3 In SVG si può fare riferimento ad eventi esterni, avviati dall utente (es: il click del mouse, il mouseover, il mouseout, ecc.) Gli eventi possono essere gestiti associandogli degli script (si utilizza il linguaggio ECMAscript) che vengono mandati in esecuzione allo scatenarsi dell'evento stesso. "1 Gli eventi principali gestiti da SVG sono: click: evento scatenato dal click del mouse su di un elemento grafico; mousemove: evento associato al movimento del mouse; mouseover: evento scatenato dal passaggio del mouse su di un oggetto grafico; mouseout: evento scatenato quando il puntatore del mouse abbandona l'area di un elemento grafico; mousedown: evento associato alla pressione del tasto del mouse su di un elemento grafico; load: evento scatenato quando il documento SVG viene caricato dal visualizzatore. Circle1.svg E possibile utilizzare un vero e proprio linguaggio di scripting ECMAScript (standardizzato e basato su JavaScript) per la gestione degli eventi. Esempio: <script type="text/ecmascript"> <![CDATA[ function circle_click(evt) { var circle = evt.target; var currentradius = circle.getattribute("r"); if (currentradius == 100) circle.setattribute("r", currentradius*2); else circle.setattribute("r", currentradius*0.5); } ]]> </script> 1( Evt permette di identificare l'elemento grafico a cui abbiamo associato l'evento scatenato e tale informazione viene passata come parametro alle funzioni relative alla gestione degli eventi. Attraverso il metodo target siamo in grado di ottenere un riferimento all'elemento grafico a cui è associato l'evento. L'uso di evt.target ci permette quindi di memorizzare facilmente all'interno di una variabile, un riferimento all'oggetto su cui è stato scatenato l'evento. A Come succede per un file XML o HTML, quando un documento SVG viene caricato dal visualizzatore, viene creata una struttura interna ad albero che rappresenta il documento. Ad esempio: <svg width="100" height="100"> <rect x="10" y="10" width="10" height="10"/> <circle cx="50" cy="50" r="10"/> </svg> Ad ogni tag SVG corrisponde un nodo della struttura. I nodi <rect> e <circle>, essendo definiti all'interno del tag <svg>, vengono chiamati nodi figli di <svg>, mentre <svg> stesso è detto nodo padre. Inoltre il nodo principale del documento <svg> viene chiamato nodo root (radice). SVG mette a disposizione una serie di metodi, che costituiscono l'interfaccia DOM (Document Object Model), per accedere e manipolare i nodi della struttura. 14
15 21! D' Onde.svg <svg id="elementoradice" width="300" height="300" onload="aggiungirect()"> <script type="text/ecmascript"><![cdata[ function aggiungirect(){ var svgdoc=document.getelementbyid("elementoradice"); var newrect=document.createelement("rect"); newrect.setattribute("x",10); newrect.setattribute("y",150); newrect.setattribute("width",250); newrect.setattribute("height",100); newrect.setattribute("style","fill:blue;stroke:black;stroke-width:2;"); svgdoc.appendchild(newrect); } ]]></script> <rect x="10" y="10" width="250" height="100" style="stroke:black;fill:red;stroke-width:2"/> </svg> E possibile animare una curva di Bezier, facendone variare in maniera pseudocasuale i punti di controllo. Nell esempio il path iniziale da animare è: <path id="line" style="fill:#905ca8;fill-opacity:0.5;stroke:#905ca8" d="m 0,150 h 400"/> L animazione ha inizio al verificarsi dell evento onload del tag <svg>. Viene quindi salvato un puntatore all intero documento SVG in una variabile globale. Inoltre viene chiamata la funzione di sistema setinterval, che a sua volta si occupa di richiamare iterativamente la funzione next_frame. function on_load (event){ svgdoc = event.getcurrentnode().getownerdocument(); setinterval ('next_frame()', 100);} 6 '', 6 '', L animazione è realizzata facendo variare i 2 punti di controllo tenendo comunque fermi i punti iniziali e finali. Una volta generati in valori target per i punti di controllo le coordinate correnti vengono gradualmene aumentate o diminuite fino a coincidere esattamente con essi. Le coordinate correnti dei punti di controllo vengono indicate nel codice con le variabili (x0, y0)e (x1, y1) mentre i valori target vengono invece indicati con (tx0, ty0) e (tx1, ty1). La funzione next_frame innanzitutto si occupa di recuperare, tramite I metodi DOM relativi, l handler del path da animare: var linenode = svgdoc.getelementbyid ('line'); if (!linenode) return; A questo punto se necessario vengono generati nuovi valori target per le coordinate dei punti di controllo. In particolare ciò sara vero alla prima invocazione (valori target posti ad -1) oppure quando tutte le coordinate correnti hanno raggiunto i valori target if (tx0 < 0 (tx0 == x0 && ty0 == y0 && tx1 == x1 && ty1 == y1)) { tx0 = Math.floor (400*Math.random()); ty0 = Math.floor (300*Math.random()); tx1 = Math.floor (400*Math.random()); ty1 = Math.floor (300*Math.random()); } 6 '',, Le coordinate correnti vengono indirizzate verso i valori target, ad intervalli di +/- 10 pixel attraverso una ulteriore funzione change_coord(): x0 = change_coord (x0, tx0); y0 = change_coord (y0, ty0); x1 = change_coord (x1, tx1); y1 = change_coord (y1, ty1); Possono quindi essere cambiati gli elementi dell atributo d del path in questione utilizzando le nuove coordinate: linenode.setattribute('d', 'M 0, 300 L 0, 150 C +x0+','+y0+','+x1+','+y1+', 400,150 L 400, 300 z'); 6!! Abbiamo già accennato alla intrinseca struttura ad albero di un documento SVG. Tramite opportuni metodi DOM è possibile accedere alle singole parti. E possibile stravolgere la struttura ad albero di un documento SVG operando delle operazioni di pruning, di inserimento, utilizzando solo degli script. Insert.svg 15
16 6$ + 73 In SVG è possibile utilizzare un insieme di declarative feature s set in grado di generare e descrivere effetti grafici anche complessi. La possibilità di applicare filtri ad elementi grafici di qualsiasi natura (anche testi) li rende uno strumento flessibile e potente. Un filtro per SVG è costituito da una serie di operazioni che applicate ad una data sorgente grafica la modificano, mostrando il risultato direttamente sul device finale. 89 2!! I filtri si definiscono mediante la primitiva <filter>. Il loro utilizzo effettivo si ottiene mediante un idfilter. Ciascun elemento <filter> contiene poi delle primitive figlie che compiono le vere e proprie operazioni grafiche. Il grafico sorgente o l output di un filtro può essere riutilizzato come input. 089 La sintassi specifica di filter è la seguente: <filter id=, filterunits= userspaceonuse objectboundingbox, primitiveunits="userspaceonuse objectboundingbox" x=,y=, width=, heigth=, filterres= xlink:href= > <fe.. > </filter> Il filtro verrà poi applicato ad un qualsiasi oggetto grafico mediante l attributo di stile filter:url(#...) 0!D La sintassi specifica di ciascun primitive filter o filter effect è la seguente: <fe.. x=,y=, width=, heigth=, in= result= >..insieme ai singoli parametri che ciascuno di essi richiede. 16
17 $ Realizza la classica sfocatura regolare, utile ad esempio per creare l ombreggiatura di primitive grafiche: <fegaussianblur in= SourceGraphic, stddeviation=, result= > Si può utilizzare il valore dell attributo result come input per ulteriori filtri. 8 9F8 < 9 L elemento <feoffset> trasla l input: <feoffset in= dx= dy= result= > L elemento <femerge> realizza il merging grafico di più sorgenti: <femerge> <femergenode in= > <femergenode in= > La primitiva <feblend> sovrappone due oggetti grafici, pixel per pixel, secondo diverse modalità: normal multiply screen darken lighten Sintassi: <feblend in2=, in=, mode= L opacità dell immagine risultante qr, date le opacità qa e qb delle immagini di input A e B, si ottiene: qr = 1 - (1-qa)*(1-qb) Il colore finale pixel per pixel cr, si ottiene a partire dai colori ca e cb nelle diverse modalità: normal multiply screen darken lighten cr = (1 - qa) * cb + ca cr = (1-qa)*cb + (1-qb)*ca + ca*cb cr = cb + ca - ca * cb cr = Min ((1 - qa) * cb + ca, (1 - qb) * ca + cb) cr = Max ((1 - qa) * cb + ca, (1 - qb) * ca + cb) : 1!8 : 9 Una delle primitive filtro che nonostante la sua semplicità permette di realizzare interessanti effetti visivi è <feturbulence>, che utilizza la funzione di turbolenza di Perlin: <feturbulence in= type= fractalnoise turbulence basefrequency= numoctaves= Seed= </feturbulence> 17
18 8 <B9 La primitiva <femorphology> realizza le classiche operazioni di Dilation e di Erosion. E possibile specificare come parametro il raggio (o i raggi) del kernel: è un rettangolo di dimensioni 2*x_radius x 2*y_radius. La sintassi: <femorphology in= operator= dilate erode radius= result= /> 8 * <-9 Il classico operatore di convoluzione può essere generato attraverso l utilizzo della primitiva <feconvolvematrix>. E quindi possibile generare effetti di edge detection, sharpening, blurring, ecc. La sintassi: <feconvolvematrix in= order= kernelmatrix= edgemode= duplicate wrap none preservealpha = false true result= <fecolormatrix> permette di applicare delle matrici di trasformazione ai colori; <fecomponenttransfer> come sopra ma agisce solo su una componente. <feimage> permette di utilizzare una sorgente esterna come input per un filtro. "4!! feblend fecolormatrix fecomponenttransfer fecomposite feconvolvematrix fediffuselighting fedisplacementmap feflood fegaussianblur feimage femerge femorphology feoffset fespecularligthing fetile feturbulence $ GG * SVG Mobile SVG Print SVG & Multimedia Databases SVG Software Our research is aimed to find suitable techniques able to translate a standard RGB images in a Vectorial Graphic form preserving perceived quality. SVG allows for three types of graphic objects: Vector graphic shapes (e.g., paths consisting of straight lines and curves), Images, Text (also called glyphs). 18
19 < * Pure SVG Transformation Down Sampling SVG For High-Resolution Prints Data Dependent, Wavelet based Triangulation, Watershed Polygonalization By using an adaptive pipeline it is possible to achieve the better results for the selected device. Phone Embed Dithering SVG Representation SVG For Low-Resolution Displays +B7 +B71-! Starting from an adaptive triangulation reduce the number of triangle merging together, in a proper way. Example of the triangulation obtained without triangles merging (central) and with triangle merging (right). The colored areas are merged triangles. HB KODIM04 KODIM07 KODIM15 KODIM21 Lena m andrill peppers VectorEye SwaterG SVGenie SVGWave graphology image7 PSNR results of 9 standard images, after SVG conversion obtained by the proposed methods DDT (SVGenie) and WBT (SVGWave) compared to the software Vector-Eye and the SVGWave method. PSNR measured in decibels (db) is computed by using: PSNR = 20log MSE! #! "! where MSE is the Mean Square Error between f and F, computed on pixel basis.!! " #"$$%!& 19
20 *! ORIGINAL SWaterG SVGenie Vector Eye SVGWave S. Battiato, G. Gallo, G. Messina SVG Rendering of Real Images Using Data Dependent Triangulation In Proceedings of ACM SCCG'04 - Spring Conferences on Computer Graphics, Budmerice, Slovak Republic - April 2004; S. Battiato, A. Costanzo, G. Di Blasi, G. Gallo, S. Nicotra - SVG Rendering by Watershed Decomposition In Proceedings of SPIE Electronic Imaging Internet Imaging VI - Vol San Josè, USA, January 2005; S. Battiato, G. Barbera, G. Di Blasi, G. Gallo, G. Messina Advanced SVG Triangulation/Polygonalization of Digital Images In Proceedings of SPIE Electronic Imaging Internet Imaging VI - Vol San Josè, USA, January 2005; S. Battiato, G. DiBlasi, G. Gallo, G. Messina, S. Nicotra Advanced SVG Rendering of Digital Images - In Proceedings of 13-th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision 2005, WSCG 2005 Plzen (Czech Republic), February 2005; S. Battiato, G. DiBlasi, G. Gallo, G. Messina, S. Nicotra SVG Rendering for Internet Imaging - To appear in Proceedings of IEEE CAMP'05, International Workshop on Computer Architecture for Machine Perception - Palermo (Italy), July * F My home page: The main page of the group: On-line demo & Results can be available at: svg.dmi.unict.it 20
Standard Vector Graphics (SVG): un linguaggio standard per la grafica 2D ed il web
Standard Vector Graphics (SVG): un linguaggio standard per la grafica 2D ed il web Multimedia Prof. Sebastiano Battiato Outline SVG overview e RoadMap (fonte w3c) Cosa è SVG? Primitive di Base Path, il
Scalable Vector Graphics (SVG) Dr. Salvatore Nicotra ([email protected]) Dr. Sebastiano Battiato ([email protected])
Scalable Vector Graphics (SVG) Dr. Salvatore Nicotra ([email protected]) Dr. Sebastiano Battiato ([email protected]) References and Links SVG Essentials O reilly (2002) SVG Andrew H. Watt Mc Graw
Scalable Vector Graphics
Laboratorio di sistemi interattivi Lezione 16: Linguaggi basati su XML - SVG General Course Information 1 Scalable Vector Graphics Linguaggio utilizzato per descrivere grafica 2D e applicazioni grafiche
SVG SVG. I sistemi di coordinate. Coordinate cartesiane. Unità di misura. Coordinate schermo
Sistemi Multimediali Immagini vettoriali ed SVG Le immagini Esistono due tipologie d'immagini: Immagini Raster Immagini Vettoriali Marco Gribaudo [email protected], [email protected] Le immagini
Indice. Introduzione PARTE PRIMA PRENDERE CONFIDENZA CON SVG 1
V Indice Introduzione XIII PARTE PRIMA PRENDERE CONFIDENZA CON SVG 1 Capitolo 1 Il set di strumenti principali di SVG 3 1.1 Creare e modificare SVG 3 1.2 Editor di testi 3 XML Writer 4 1.3 Package di grafica
La codifica delle immagini
Analogamente possiamo codificare le immagini a colori. In questo caso si tratta di individuare un certo numero di sfumature, gradazioni di colore differenti e di codificare ognuna mediante un'opportuna
SVG Editor. Istituto Italiano Edizioni Atlas 1
SVG Editor SVG-edit è un applicazione per la creazione e modifica di grafica vettoriale in formato svg disponibile on-line. E compatibile con qualsiasi browser, essendo realizzato in linguaggio JavaScript.
Guida all uso di Java Diagrammi ER
Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con
Trasformazioni 2D. Grande differenza rispetto alla grafica raster!
Trasformazioni 2D Il grande vantaggio della grafica vettoriale è che le immagini vettoriali descrivono entità matematiche È immediato manipolare matematicamente tali entità In quasi tutte le manipolazioni
Elaborazione testi: immagini
by Studio Elfra sas Gestione Immagini Aggiornato a Aprile 2009 Informatica di base 1 Elaborazione testi: immagini Il testo di un documento di Word può essere integrato con immagini di vario tipo: 2 1 Elaborazione
Capitolo 3. L applicazione Java Diagrammi ER. 3.1 La finestra iniziale, il menu e la barra pulsanti
Capitolo 3 L applicazione Java Diagrammi ER Dopo le fasi di analisi, progettazione ed implementazione il software è stato compilato ed ora è pronto all uso; in questo capitolo mostreremo passo passo tutta
EasyPrint v4.15. Gadget e calendari. Manuale Utente
EasyPrint v4.15 Gadget e calendari Manuale Utente Lo strumento di impaginazione gadget e calendari consiste in una nuova funzione del software da banco EasyPrint 4 che permette di ordinare in maniera semplice
E possibile modificare la lingua dei testi dell interfaccia utente, se in inglese o in italiano, dal menu [Tools
Una breve introduzione operativa a STGraph Luca Mari, versione 5.3.11 STGraph è un sistema software per creare, modificare ed eseguire modelli di sistemi dinamici descritti secondo l approccio agli stati
Gestione Rapporti (Calcolo Aree)
Gestione Rapporti (Calcolo Aree) L interfaccia dello strumento generale «Gestione Rapporti»...3 Accedere all interfaccia (toolbar)...3 Comandi associati alle icone della toolbar...4 La finestra di dialogo
I file di dati. Unità didattica D1 1
I file di dati Unità didattica D1 1 1) I file sequenziali Utili per la memorizzazione di informazioni testuali Si tratta di strutture organizzate per righe e non per record Non sono adatte per grandi quantità
IL SISTEMA OPERATIVO IL SISTEMA OPERATIVO INTERFACCE TESTUALI INTERFACCE TESTUALI FUNZIONI DEL SISTEMA OPERATIVO INTERFACCE GRAFICHE
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
Come modificare la propria Home Page e gli elementi correlati
Come modificare la propria Home Page e gli elementi correlati Versione del documento: 3.0 Ultimo aggiornamento: 2006-09-15 Riferimento: webmaster ([email protected]) La modifica delle informazioni
La codifica delle immagini
La codifica delle immagini Grafica vettoriale: descrizione di elementi geometrici primitivi, i quali vengono specificati individualmente. Non si descrivono i pixel singolarmente. si definiscono le curve
Animazioni 3D. Informatica Grafica I. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D. Le basi dell'animazione 3D
Informatica Grafica I Marco Gribaudo [email protected] Animazioni 3D L'animazione 3D si basa sugli stessi principi dell'animazione tradizionale. Il filmato viene realizzato attraverso una sequenza di
Capitolo 4 Pianificazione e Sviluppo di Web Part
Capitolo 4 Pianificazione e Sviluppo di Web Part Questo capitolo mostra come usare Microsoft Office XP Developer per personalizzare Microsoft SharePoint Portal Server 2001. Spiega come creare, aggiungere,
Esercizi di JavaScript
Esercizi di JavaScript JavaScript JavaScript é un linguaggio di programmazione interpretato e leggero, creato dalla Netscape. E' presente a patire da Netscape 2 in tutti i browser ed é dunque il linguaggio
Corso di grafica vettoriale
Presentazioni Carmine De Rosa (HCSSLUG) Corso di grafica vettoriale Laboratorio Turing Dip. di Informatica ed Applicazioni Università degli Studi di Salerno Obbiettivi del corso Obbiettivo 1: Fornire le
Riccardo Dutto, Paolo Garza Politecnico di Torino. Riccardo Dutto, Paolo Garza Politecnico di Torino
Integration Services Project SQL Server 2005 Integration Services Permette di gestire tutti i processi di ETL Basato sui progetti di Business Intelligence di tipo Integration services Project SQL Server
Come costruire una presentazione. PowerPoint 1. ! PowerPoint permette la realizzazione di presentazioni video ipertestuali, animate e multimediali
PowerPoint Come costruire una presentazione PowerPoint 1 Introduzione! PowerPoint è uno degli strumenti presenti nella suite Office di Microsoft! PowerPoint permette la realizzazione di presentazioni video
Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
0_Iniziare con GRASS Avvio di Grass e creazione della cartella del Database di GRASS Per chi ha la Virtual Machine: avviare Grass da terminale, andando su Applicazioni Accessori Terminale e scrivere grass
CreateJS: sviluppo web apps, componenti e giochi in HTML <canvas>
CreateJS: sviluppo web apps, componenti e giochi in HTML LIVELLO: PRINCIPIANTE PREREQUESITI: Il partecipante dovrà possedere una certà familiarità con l uso di HTML e Javascript. Le similitudini
FPf per Windows 3.1. Guida all uso
FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete
lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000
Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,
I file PDF possono essere creati : 1. dall interno del programma Adobe 2. Per quelli che lo prevedono direttamente dall interno di altri programmi
I file PDF possono essere creati : 1. dall interno del programma Adobe 2. Per quelli che lo prevedono direttamente dall interno di altri programmi quali: 3. Tutto il pacchetto Office di Microsoft, 4. alcuni
Registratori di Cassa
modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...
Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia
Scuola Digitale Manuale utente Copyright 2014, Axios Italia 1 SOMMARIO SOMMARIO... 2 Accesso al pannello di controllo di Scuola Digitale... 3 Amministrazione trasparente... 4 Premessa... 4 Codice HTML
Linguaggio JavaScript
Linguaggio JavaScript A. Lorenzi, R. Giupponi, D. Iovino LINGUAGGI WEB. LATO CLIENT Atlas Copyright Istituto Italiano Edizioni Atlas Script Il termine script in informatica indica, in generale, un testo
HTML 6. I frame. Sintassi di base. I frame e DOCTYPE FRAME. ...head... <FRAMESET lista_attributi> <FRAME SRC= URL lista_attributi>
FRAME HTML 6 I frame Danno la possibilità di creare finestre multiple all'interno della finestra del browser Si riesce a suddividere la pagina in più sezioni indipendenti, ma che si possono influenzare
XSL: extensible Stylesheet Language
XSL: extensible Stylesheet Language XSL è un insieme di tre linguaggi che forniscono gli strumenti per l elaborazione e la presentazione di documenti XML in maniera molto flessibile. I tre linguaggi devono
2.3 Cenni sui fogli di stile CSS per XML
Fondamenti di Informatica Sistemi di Elaborazione delle Informazioni Informatica Applicata 2.3 Cenni sui fogli di stile CSS per XML Antonella Poggi Anno Accademico 2012-2013 DIPARTIMENTO DI SCIENZE DOCUMENTARIE
Olga Scotti. Basi di Informatica. Il sistema operativo Windows
Basi di Informatica Il sistema operativo Windows Perchè Windows? MS-DOS: Interfaccia di solo testo Indispensabile conoscere i comandi Linux & Co. : Meno diffuso soprattutto nelle aziende Bella interfaccia
Introduzione al Foglio Elettronico
Microsoft Excel Introduzione al Foglio Elettronico Il Foglio Elettronico Si presenta come una grande tabella su un foglio di carta Le celle contengono differenti dati Numeri Testo Date Ecc I dati possono
Processo di rendering
Processo di rendering Trasformazioni di vista Trasformazioni di vista Il processo di visione in tre dimensioni Le trasformazioni di proiezione 2 Rendering nello spazio 2D Il processo di rendering (visualizzazione)
Personalizza. Page 1 of 33
Personalizza Aprendo la scheda Personalizza, puoi aggiungere, riposizionare e regolare la grandezza del testo, inserire immagini e forme, creare una stampa unione e molto altro. Page 1 of 33 Clicca su
Introduzione. Cos'è un programma di grafica vettoriale?
Introduzione Cos'è un programma di grafica vettoriale? Un programma di grafica vettoriale è una applicazione per il disegno che utilizza espressioni matematiche (vettori) per memorizzare gli oggetti grafici
19. LA PROGRAMMAZIONE LATO SERVER
19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici
Immagini vettoriali. Immagini raster
Immagini vettoriali Le immagini vettoriali sono caratterizzate da linee e curve definite da entità matematiche chiamate vettori. I vettori sono segmenti definiti da un punto di origine, una direzione e
GEOMETRIA DELLE MASSE
1 DISPENSA N 2 GEOMETRIA DELLE MASSE Si prende in considerazione un sistema piano, ossia giacente nel pian x-y. Un insieme di masse posizionato nel piano X-Y, rappresentato da punti individuati dalle loro
OSSIF WEB. Manuale query builder
OSSIF WEB Manuale query builder - Maggio 2010 1) Sommario 1) SOMMARIO... 2 INTRODUZIONE... 3 Scopo del documento... 3 Struttura del documento... 3 Descrizione dell interfaccia grafica... 3 SELEZIONE DI
INTERAZIONE CON L UTENTEL
IL SISTEMA OPERATIVO Insieme di programmi che opera al di sopra della macchina fisica, mascherandone le caratteristiche e fornendo agli utenti funzionalità di alto livello. PROGRAMMI UTENTE INTERPRETE
DATA BASE ON LINE (BANCA DATI MODULI SPERIMENTALI)
Progetto regionale antidispersione per favorire l adempimento dell obbligo d istruzione 2 a annualità DATA BASE ON LINE (BANCA DATI MODULI SPERIMENTALI) MANUALE DI UTILIZZO Indice Premessa 3 Ingresso nel
Il sofware è inoltre completato da una funzione di calendario che consente di impostare in modo semplice ed intuitivo i vari appuntamenti.
SH.MedicalStudio Presentazione SH.MedicalStudio è un software per la gestione degli studi medici. Consente di gestire un archivio Pazienti, con tutti i documenti necessari ad avere un quadro clinico completo
Macromedia Flash. Realizzato da Emanuela Scionti
Macromedia Flash Realizzato da Emanuela Scionti Introduzione Utilizzato per creare applicazioni interattive sofisticate per il Web Utilizzato per creare CD-ROM Mezzo ideale per liberare la propria fantasia
Basi di Animazione in Blender
Informatica Avanzata Basi di Animazione in Blender In Blender il punto pivot e' rappresentato da un cerchio viola sull'oggetto. Marco Gribaudo [email protected] Si puo' impostare nella posizione del cursore
Automatizzare i compiti ripetitivi. I file batch. File batch (1) File batch (2) Visualizzazione (2) Visualizzazione
Automatizzare i compiti ripetitivi I file batch Anno accademico 2000-01 1 Spesso capita di dover eseguire ripetutatmente una data sequenza di comandi Introdurli uno a uno da tastiera è un processo lento
4.1.1.1 APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO
4.1 PER INIZIARE 4.1.1 PRIMI PASSI COL FOGLIO ELETTRONICO 4.1.1.1 APRIRE UN PROGRAMMA DI FOGLIO ELETTRONICO L icona del vostro programma Excel può trovarsi sul desktop come in figura. In questo caso basta
RAPPRESENTAZIONE GRAFICA E ANALISI DEI DATI SPERIMENTALI CON EXCEL
RAPPRESENTAZIONE GRAFICA E ANALISI DEI DATI SPERIMENTALI CON EXCEL 1 RAPPRESENTAZIONE GRAFICA Per l analisi dati con Excel si fa riferimento alla versione 2007 di Office, le versioni successive non differiscono
Excel. A cura di Luigi Labonia. e-mail: [email protected]
Excel A cura di Luigi Labonia e-mail: [email protected] Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo
Database 1 biblioteca universitaria. Testo del quesito
Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole
GEOGEBRA I OGGETTI GEOMETRICI
GEOGEBRA I OGGETTI GEOMETRICI PROPRIETA : Finestra Proprietà (tasto destro mouse sull oggetto) Fondamentali: permette di assegnare o cambiare NOME, VALORE, di mostrare nascondere l oggetto, di mostrare
Linguaggio HTML (2) Attributi di <FONT> Per variare lo stile di carattere rispetto al default, si possono utilizzare tre attributi:
Linguaggio HTML (2) Attributi di Per variare lo stile di carattere rispetto al default, si possono utilizzare tre attributi: SIZE= numero per modificare le dimensioni Es:
SITI-Reports. Progetto SITI. Manuale Utente. SITI-Reports. ABACO S.r.l.
Progetto SITI Manuale Utente SITI-Reports ABACO S.r.l. ABACO S.r.l. C.so Umberto, 43 46100 Mantova (Italy) Tel +39 376 222181 Fax +39 376 222182 www.abacogroup.eu e-mail : [email protected] 02/03/2010
Ipsia Monza via Monte Grappa 1 20052 Monza (MI) tel. 039-2003476 fax 039-2003475. Corsi CAD 2D Base. Struttura modulare
Corsi CAD 2D Base Struttura modulare Struttura della Parte I Concetti di base 1.a introduzione al Cad 2 1.b definizione delle viste 2 1.c interscambio dei disegni 2 1.d visualizzazione dei disegni 2 Tot.
Corso di Informatica
CdLS in Odontoiatria e Protesi Dentarie Corso di Informatica Prof. Crescenzio Gallo [email protected] Università degli Studi di Foggia - CdLS in Odontoiatria e Protesi Dentarie Grafica vettoriale!2
Corso di Visione Artificiale. Filtri parte I. Samuel Rota Bulò
Corso di Visione Artificiale Filtri parte I Samuel Rota Bulò Filtri spaziali Un filtro spaziale è caratterizzato da un intorno e un'operazione che deve essere eseguita sui pixels dell'immagine in quell'intorno.
WEBGIS 1.0. Guida per l utente
WEBGIS 1.0 Guida per l utente SOMMARIO 1 INTRODUZIONE...3 2 FUNZIONALITA...4 2.1 Strumenti WebGIS... 4 2.1.1 Mappa... 5 2.1.2 Inquadramento mappa... 6 2.1.3 Toolbar... 7 2.1.4 Scala... 9 2.1.5 Legenda...
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP)
12 - Introduzione alla Programmazione Orientata agli Oggetti (Object Oriented Programming OOP) Programmazione e analisi di dati Modulo A: Programmazione in Java Paolo Milazzo Dipartimento di Informatica,
Il calendario di Windows Vista
Il calendario di Windows Vista Una delle novità introdotte in Windows Vista è il Calendario di Windows, un programma utilissimo per la gestione degli appuntamenti, delle ricorrenze e delle attività lavorative
Testo Esercizio. Un modello è ragionevole quando contiene queste tre caratteristiche.
Testo Esercizio Si consideri la realizzazione di un semplice programma grafico per il disegno di figure geometriche in due dimensioni. Si analizzino i requisiti e se ne rappresentino i risultati in UML
ColorSplitter. La separazione automatica dei colori di Colibri.. Perché ColorSplitter? Come opera ColorSplitter?
ColorSplitter La separazione automatica dei colori di Colibri.. ColorSplitter è una nuova funzionalità aggiunta a Colibri, che permette di elaborare un immagine trasformandola in una separata in canali
. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi
Capitolo Terzo Primi passi con Microsoft Access Sommario: 1. Aprire e chiudere Microsoft Access. - 2. Aprire un database esistente. - 3. La barra multifunzione di Microsoft Access 2007. - 4. Creare e salvare
FINSON EXTRACAD 6 Manuale d uso minimo
FINSON EXTRACAD 6 minimo AVVIO Attraverso l icona ExtraCAD 2D presente sul desktop o tra i programmi del menù Start. In alcuni casi il software potrebbe non essere stato installato nella cartella Programmi,
Guida Software GestioneSpiaggia.it
Caratteristiche Guida Software GestioneSpiaggia.it 1. Gestione prenotazioni articoli (ombrellone, cabina, ecc ) ed attrezzature (sdraio, lettino ecc ) 2. Visualizzazione grafica degli affitti sia giornaliera
PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152)
Commissario Delegato per l Emergenza Bonifiche e la Tutela delle Acque in Sicilia PIANO DI TUTELA DELLE ACQUE DELLA SICILIA (di cui all'art. 121 del Decreto Legislativo 3 aprile 2006, n 152) Sistema WEB-GIS
extensible Markup Language
XML a.s. 2010-2011 extensible Markup Language XML è un meta-linguaggio per definire la struttura di documenti e dati non è un linguaggio di programmazione un documento XML è un file di testo che contiene
LE FUNZIONI A DUE VARIABILI
Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre
SMIL: Synchronized Multimedia Integration Language
SMIL: Synchronized Multimedia Integration Language Giancarlo Fortino [email protected] http://si.deis.unical.it/~fortino/teaching/gdmi/index.htm 1 Cronologia Nov 97: Prima release pubblica di SMIL Apr
Costruzione del layout in gino cms
Costruzione del layout in gino cms Autore: Marco Guidotti - marco.guidotti(at)otto.to.it Versione: 1.0 Data: 2013-06-17 Layout Nell area amministrativa di gino l applicazione Layout permette di gestire
Sistema operativo. Sommario. Sistema operativo...1 Browser...1. Convenzioni adottate
MODULO BASE Quanto segue deve essere rispettato se si vuole che le immagini presentate nei vari moduli corrispondano, con buona probabilità, a quanto apparirà nello schermo del proprio computer nel momento
2.0 Gli archivi. 2.1 Inserire gli archivi. 2.2 Archivio Clienti, Fornitori, Materiali, Noleggi ed Altri Costi. Impresa Edile Guida all uso
2.0 Gli archivi All interno della sezione archivi sono inserite le anagrafiche. In pratica si stratta di tutti quei dati che ricorreranno costantemente all interno dei documenti. 2.1 Inserire gli archivi
WoWords. Guida all uso: creare ed utilizzare le frasi. In questa guida è descritto come creare ed utilizzare le frasi nel software WoWords.
In questa guida è descritto come creare ed utilizzare le frasi nel software WoWords. Premessa Oltre alle singole parole WoWords può gestire intere frasi in inglese. A differenza delle singole parole, le
Il controllo della visualizzazione
Capitolo 3 Il controllo della visualizzazione Per disegnare in modo preciso è necessario regolare continuamente l inquadratura in modo da vedere la parte di disegno che interessa. Saper utilizzare gli
Tricks & Tips. [Access] Tutorial - ActiveX - Controllo Tree View. - Michele de Nittis - Versione: 1 Data Versione: venerdì 30 agosto 2002
Tricks & Tips [Access] - Michele de Nittis - Tutorial - ActiveX - Controllo Tree View Versione: 1 Data Versione: venerdì 30 agosto 2002 1 SOMMARIO PREMESSA...3 INSERIMENTO DEL CONTROLLO...3 AGGIUNTA DELLE
www.atoolsoftware.it
www.atoolsoftware.it import / export dxf import ascii import macchine (configurazione attrezzaggio) Aspan è un programma che tramite il suo CAD/CAM interno permette di realizzare in modo semplice ed immediato
Appunti sull utilizzo del software gvsig, a cura dell ing. Ernesto Sferlazza
GEOREFERENZIAZIONE DI UN IMMAGINE RASTER CON GVSIG. Nella presente esercitazione si procederà a georeferenziare uno stralcio di ortofoto, basandosi a tale scopo sul confronto con una cartografia georeferenziata,
SQL Server 2005. Integration Services. SQL Server 2005: ETL - 1. Integration Services Project
atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and ata Mi ni ng Group of P ol itecnico di Torino atabase and data mining group, SQL Server 2005 Integration Services SQL Server 2005:
Fogli Elettronici: MS Excel utilizzo avanzato
Fogli Elettronici: MS Excel utilizzo avanzato 1 Ripasso 2 1 Selezionare celle e gruppi di celle Una cella in un foglio è individuata dall incrocio tra la riga e la colonna (coordinate della cella) Es:
Algoritmi e strutture dati. Codici di Huffman
Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per
RILIEVO TRIDIMENSIONALE DEL «CONVENTO ROSSO», SOHAG (EGITTO)
1 RILIEVO TRIDIMENSIONALE DEL «CONVENTO ROSSO», SOHAG (EGITTO) DI MASSIMO SABATINI Lo studio finalizzato ad un interesse di carattere statico e conservativo eseguito sulle volumetrie degli oggetti, ha
4. Strumenti di aiuto al lavoro
4. Strumenti di aiuto al lavoro GRIGLIA E SNAP La GRIGLIA è una matrice rettangolare di punti o linee (a seconda dello stile di visualizzazione) disposti secondo un intervallo X e Y che si estende sull'area
Esercizio data base "Biblioteca"
Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni
GestVetrine 1.1 versione novembre 2014
GestVetrine 1.1 versione novembre 2014 0 GestVetrine 1.1 GestVetrine 1.0 Indice Indice pag.1 1. Finalità pag.2 2. Gestione screen pag.2 3. Come Accedere pag.3 4. Come Creare un negozio pag.4 5. Come Creare
EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,
EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area
MArine Coastal Information SysTEm
GUIDA ALL UTILIZZO DELL INTERFACCIA CARTOGRAFICA Il MArine Coastal Information SysTEm è un sistema informativo integrato che permette di gestire dati ambientali interdisciplinari (fisici, chimici e biologici)
UTILIZZO DEI CSS. categoria e lente possiamo aggregare le istruzioni inserite ed avere infondo alla colonna stessa un anteprima.
UTILIZZO DEI CSS FOGLI STILE Il CSS consente di associare regole stilistiche agli elementi del codice HTML come o . Queste regole definiscono l aspetto rappresentativo degli elementi HTML a cui
Introduzione al MATLAB c Parte 2
Introduzione al MATLAB c Parte 2 Lucia Gastaldi Dipartimento di Matematica, http://dm.ing.unibs.it/gastaldi/ 18 gennaio 2008 Outline 1 M-file di tipo Script e Function Script Function 2 Costrutti di programmazione
2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento.
Uso del computer e gestione dei file 57 2.2.2.1 Identificare le diverse parti di una finestra: barra del titolo, barra dei menu, barra degli strumenti, barra di stato, barra di scorrimento. All interno
finestra di manager di progetto o di struttura di progetto FIG.1
Per lanciare il programma cliccare sulla icona di capture oppure da Avvio\Programmi\Orcad Design Desktop\Capture, si giunge nella seguente videata, detta finestra di manager di progetto o di struttura
Plate Locator Riconoscimento Automatico di Targhe
Progetto per Laboratorio di Informatica 3 - Rimotti Daniele, Santinelli Gabriele Plate Locator Riconoscimento Automatico di Targhe Il programma plate_locator.m prende come input: l immagine della targa
Definire gli attributi dei blocchi
Definire gli attributi dei blocchi Attributi:Informazioni associate ad un blocco Definire gli attributi Menu: Disegna Blocco Attributo Comando: DEFATT Utilizzo riga di comando: -DEFATT Note Lo stile di
Il menu File contiene tutti i comandi relativi alle seguenti operazioni:
1 - FILE FIGURA 1.1 Il menu File contiene tutti i comandi relativi alle seguenti operazioni: - apertura e salvataggio di disegni nuovi ed esistenti; - spedizione di disegni tramite email; - collegamento
