Hello!
I have to do a project for my college. We have a database with
registrations about houses descriptions. Each house is consisted from
simple cube like shapes, one for each room. Each of those shapes has
coordinates width and high. I have to visualize in web environment
those houses. Also the user will be able to rotate each house, zoom
in, zoom out on it, have a camera, change the color (cube faces) or
set a texture of a wall (cube face) and other like these functions.
In order to implement the above application, we said that is a good
idea to do it with HTML5. But I saw that are so many ways, so many
libraries for canvas etc and I am not sure what is the most suitable
way for this project. Also, I have a lot of experience on object
oriented programming but a little with graphics and web design
programming. So, I want to use a library that has a good community and
a lot of tutorials related to my project needs.
I examined a lot of libraries like three.js but I am not sure which to
use. Also, I am not sure how to construct each room. If a use a cube
generation function for each room, I want to be able to can manipulate
each face. Also in order to be able to see inside each room I want to
have a functionality that can remove the celling face of each cube
like shape. For this reason I don’t know if it is better to construct
each cube using rectangles rather using a cube generation function. I
don’t know! Also I think that a have to group some how all those rooms
in order to the user be able to manipulate the whole house.
I checked also the CSS3 way
http://ajaxian.com/archives/animated-css3-cube-using-3d-transforms,
but I found it a bit difficult, it isn’t supported from all browsers
and I don’t know if it is a good solution to have also good rendering
effects, cameras etc.
Also I checked the kineticJS but I am not sure if it is appropriate
because is for 2d shapes. But I think that if I rotate and translate
the cubes that are constructed from rectangles then we got 3d! But I
am not sure…
Three.js and pree3d.js seems a good solutions but I didn’t find a lot
of tutorials for those. I want to use a modern way with a good library
in order to this project can be improved in future.
Please if you can help me!
Thank you