Qui usa la libreria in rete: http://www.elegio.it/svg/libreriasvg1.js.html

Elenco qui i nomi e commenti delle funzioni della libreria

In rete: http://www.elegio.it/utili/utilifunzioni.html
  1. utilifunzioni.aggiungiele(padre,iltipo,stringhinner)
    Amplia dinamicamente il documento HTML aggiungendo le marche che si vogliono ed eventualmente con vari attributi...
  2. utilifunzioni.tantiframe(elpadre,listasiti)
    listasiti deve essere una array di stringhe di indirizzi a cui si vuole puntare. Si possono cambiare gli attributi di ogni iframe aggiungendo un terzo argomento facoltativo.
  3. utilifunzioni.aggiungisvg(padre)
    Qui aggiunge un elemento SVG contenente un rettangolo e con possibilità di fare link ad un indirizzo voluto o standard.
    Il risultato è il vettore degli id creati.
    Il n.0 è quello del rect ossia il rettangolo.
    Il n.1 è quello della a ossia l'aggancio.
    Il n.2 è quello dell'elemento svg.
  4. utilifunzioni.ampliasvg(elpadre,chetipo)
    . Aggiunge un elemento figlio dell'elemento padre che deve essere un svg. Gli attributi dell'eventuale terzo argomento vanno definti come coppie del nome dell'attributo e suo valore. Per esempio:
    [["fill","red"],["d","M 15,25 l 100,130 -50,0 z"]]
    se chetipo vale "path" che ha l'attributo "d".
    chetipo deve essere un elemento figlio di svg.
    Per esempio un g contenuto in un svg.
    Normalmente chetipo deve valere "path". Se si usa un terzo argomento, viene usato per definire gli attributi dell'elemento figlio.
  5. utilifunzioni.tondispari(vp)

    Per la grafica del path con spostamenti relativi

    Passa per i punti pari 0,2,4,6,...e smussa i dispari. Ossia serve per passare da una spezzata lineare ossia bisognerà premettere una "l" ( lineare ) alla semispezzata quadrica, indicata da "q" ossia con uso di archi di parabola.
    La continuità della curva deve essere ottenuta usando dati appropriati del vettore di punti vp.
    Se si vuole usare la direttiva "q" bisogna obbligatoriamente usare questa funzione, altrimenti si crea un pasticcio perché la direttiva "q" richiede DUE punti ma ENTRAMBI riferiti al punto di partenza dell'arco parabolico. Viceversa la direttiva "l" richiede UN SOLO punto riferito ad punto di partenza del segmento lineare.
  6. utilifunzioni.quadripunti(v)
    Quadruplica ( quasi ) i punti di una spezzata lineare. Si tratta di una funzione meno complicata dell'altra che ha bisogno delle direzioni del primo e dell'ultimo punto della spezzata.
  7. utilifunzioni.xtrapunti(v,dini,dfin)
    Dati i punti v della traiettoria e le sue direzioni iniziali dini e finali dfin, quadruplica i punti della traiettoria precalcolata in modo che poi la si possa disegnare con archi di parabola aggiustando i dati con la funzione tondispari.
    Sia dini che dfin sono punti ossia coppie di coordinate cartesiane che servono solo ad indicare le direzioni e dunque possono essere messi a distanza arbitraria dato che, appunto, indicano solo la direzione a monte del punto iniziale e a valle del punto finale.
  8. utilifunzioni.depolarizza(vet)
    Questa funzione consente di usare anche coordinate polari ( raggio ed angolo ) invece che cartesiane. Per attuare la trasformazione del punto dato in coordinate polari bisogna definire il punto come una array di una array ossia racchiudere la coppia di coordinate in doppie parentesi quadre.
    L'angolo va dato in gradi ossia l'angolo retto è 90. Per esempio se scrivo:
    [[25,-18],[-7,15],[[100,30]],[6,9],[23,17]]
    la depolarizza considera in coordinate polari il punto [[100,30]] con angolo di 30 gradi e lo trasforma in coordinate cartesiane.
  9. utilifunzioni.concarray(ara,arb)
    Una curva può essere fatta di varie linee di vario tipo, spezzate lineari o quadriche e tra una curva e l'altra ci possono essere salti o definizioni di posizioni assolute, non relative.
    La concarray concatena almeno 2 o più array alcune delle quali contenenti eventualmente stringhe di direttive tipo "M", "L", "Q", "m", "l", "q".
    Naturalmente è possibile usare anche dati numerici in ogni stringa ossia per esempio scrivere "m 34,-47" per fare uno spostamento relativo al punto finale della curva precedente.
Qua sotto, se Javascript funziona, deve comparire l'elemento SVG con le sue varie linee.