a4-dev team mailing list archive
-
a4-dev team
-
Mailing list archive
-
Message #00047
Re: merge per trasformazioni
Andrea Corbellini spiffera, alle Monday 31 May 2010 circa:
> Per lxml sono d'accordo con te: è effettivamente più comodo dei moduli
> nella libreria standard. Ma per quanto riguarda numpy: quali sono le
> feature che ci servono?
matrici e relative (veloci) operazioni.
Visto che in pratica la trafsormazione da applicare al sistema di
riferimento è data dalla matrice, ci viene comodo parlare in questi
termini.
> I metadati correntemente non vengono utilizzati. L'unica cosa che
> sappiamo su di essi è che sono contenuti in un oggetto JSON all'interno
> del file SVG. Ora c'è da decidere cosa mettere esattamente in quei
> metadati. Io farei una cosa del genere:
>
> {"path": ["frame-1", "frame-2", ...]}
>
> Dove "path" identifica il percorso della presentazione e "frame-X" sono
> degli ID di oggetti contenuti nel file XML.
Ok, volevo capire se avevi pensato ad qualosa di piu' strutturato. Ma per
cominciare parto con questo.
> > 3) ho aggiunto una keyword al costruttore di Presentation(), per
> > riuscire ad aprire anche SVG fatti alla bisogna senza stare a
> > scrivere i metadati della presentazione.
>
> Con il tuo branch e quello di Gualano siamo molto vicini ad usare i
> metadati, quindi tra poco questa modifica potrebbe portare a dei
> problemi.
Tipo?
> > 4) funziona: :D
> >
> > >>>filename='/home/gaspa/Projects/a4/a4-textbox/svg/A4testdrive.svg'
> > >>>pres = presentation.Presentation(filename,force_loading=True)
> > >>>pres.get_item_properties_by_id('rect2816-4')
> >
> > REDUCE: [[0.76962955, -0.63849069000000003, 0.63849069000000003,
> > 0.76962955, 0.0, 0.0]]
> > Out[12]:
> > {'height': 91.428573999999998,
> >
> > 'rotation': 0.69253557787351905,
> > 'transform': array([[ 0.76962955, 0.63849069, 0. ],
> >
> > [-0.63849069, 0.76962955, 0. ],
> > [ 0. , 0. , 1. ]]),
> >
> > 'width': 172.85714999999999,
> > 'x': 44.288573999999997,
> > 'y': 362.78784000000002}
>
> Bello, ma... esattamente quei numeri a cosa servono? Potresti creare un
> oggetto Transformation con dei comodi commenti/docstring al posto di
> usare un dizionario?
Certo, ma per cominciare partirei con questo. I dict() son comodi e veloci.
Se vediamo che serve qualcosa di piu' complicato si fa in fretta a
sottoclassare dict, e finchè non serve è inutile scriverlo, IMHO.
Vorrei cercare di avere uno scheletro funzionante il prima possibile, tutto
qua.
Comunque, appena ho un secondo (direi stasera/notte) sistemo il merge, poi
cercherei di andare avanti.
ciaociao
--
-gaspa-
-----------------------------------------------
-------- https://launchpad.net/~gaspa ---------
----- HomePage: http://gaspa.yattaweb.it ------
-Il lunedi'dell'arrampicatore: www.lunedi.org -
References