11 messaggi dal 11 agosto 2013
Salve a tutti ,
ho avuto in commissione un sito web che deve integrare una pagina per la creazione di una stanza in 2d ( e se ci riesco in 3d ) componibile tramite degli oggetti presenti nel catalogo online che dovrebbero poter essere selezionati e trasportati nell'area che si sta appunto componendo.
Ovviamente ci saranno dei modelli 2d degli oggetti presenti in catalogo memorizzati.
Ora so bene che ci sono software in commercio già pronti ma sparano delle cifre esorbitanti, quindi vorrei optare per lo sviluppo , anche perché non parliamo di grafica stellare ma di base.
Ho iniziato a vedere la classe System.Drawing ma volevo chiedere se qualcuno di voi ha avuto già esperienze con questo genere di cose o ha qualche utile suggerimento :) !

Grazie mille!
11.886 messaggi dal 09 febbraio 2002
Contributi
ciao,
sì, potresti usare System.Drawing per comporre le immagini degli oggetti selezionati dall'utente su un sfondo predefinito (es. una parete spoglia). Questo però sarebbe solo il punto di arrivo, quando ormai sai esattamente quale oggetto piazzare e dove.
Quel che viene prima è un'interfaccia realizzata con HTML, CSS e JavaScript che metta in condizione l'utente di scegliere una parete e di inserirci dentro svariati oggetti. Dovrai fare in modo che possa selezionarli da una o più liste tematiche (es. illuminazione, tappezzeria, mobilio) e che possa poi spostarli o rimuoverli.

Alla fine di ciò, lato client avrai collezionato una lista di oggetti Javascript che ti dicono esattamente quali oggetti sono stati scelti e in che posizione si trovano. Al click di un tasto "Salva", lato server potrai persistere quella lista nel database e/o renderizzarla con le classi del namespace System.Drawing per produrre un'immagine JPG, che l'utente potrà salvare o condividere.

red ha scritto:

e se ci riesco in 3d

Questa è una funzionalità abbastanza importante di cui dovresti valutare subito la fattibilità. Se vuoi realizzare una scena 3d, in cui l'utente può spostarsi, dovrai per lo meno realizzare i modelli 3d di tutti gli oggetti. Altrimenti, se disponi solo di immagini, dovrai accontentarti della tecnica del billboarding (le immagini sono sempre perpendicolari alla visuale) o di altre tecniche per realizzare uno pseudo-3d (es. visuale isometrica).

Se gli oggetti in questione non hanno profondità e quindi sono tutti aderenti alle pareti (es. quadri, tappeti, finestre), con System.Drawing potresti renderizzare singolarmente le 4 pareti, più soffitto e pavimento, per poi montarle in un cubo da visualizzare con krpano, un tool per la visualizzazione di panoramiche. Esempio con foto reali.
http://krpano.com/tours/weingut/
Se osservi il traffico di rete, noterai che il browser carica 6 immagini, una per ciascuna faccia del cubo in cui ti trovi.

ciao,
Moreno
Modificato da BrightSoul il 08 aprile 2014 20.12 -

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.