Build full JS version

This topic has been viewed 6247 times and has 2 replies
Thread status: Active
Questions about extending features and developing plug-ins [img]http://www.sweethome3d.com/images/flags/en_small.gif[/img]
Post Reply New Topic
buzzz
Posts: 54
Joined: Sun Jun 25, 2017 9:02 am
Country: FR

Build full JS version

Post by buzzz »

Hi All,

So my objective is to create a full JS version of Sweethome.
Basically, my need corresponds to the demo version here :
https://www.sweethome3d.com/SweetHome3DJSOnline.jsp

plus 2 options to save and load project from my local disk.

From what I read, this option has not been considered at present time.
So, from what I see:
- first option is to start from the demo and try to add save/load fonctionalities
- second option : start from the war version and remove the call to the server.

Both sounds difficult, I really do not know what is the less risky option.

Thx for help
User avatar
Puybaret
Posts: 9440
Joined: Mon Nov 07, 2005 12:00 pm
Country: Paris, France
Contact:

Re: Build full JS version

Post by Puybaret »

Doesn't these options already exist as the import and export features in the page https://www.sweethome3d.com/fr/SweetHom ... anager.jsp for identified users?

If you want to remove the use of a server, reading a file from the local disk can be done with HomeRecorder.readHome method with a BlobURLContent built from a file chosen by the user with an [font=courier new]<input type="file">[/font] HTML element (you'll find examples in JSViewFactory.js).
But saving is another story! Even if I recently added the DirectHomeRecorder class to generate a [font=courier new]Home.xml[/font] entry in a ZIP file, there's still no method to generate a SH3X file containing all the resources it needs (images and 3D models), like DefaultHomeOutputStream Java class (a SH3X file is like a SH3D file bu without the old [font=courier new]Home[/font] serialized entry).
By the way, as far as I know, there's no function in JavaScript to write in a local file from a browser. You can write only in local storage or indexedDB.
Emmanuel Puybaret, Sweet Home 3D creator
buzzz
Posts: 54
Joined: Sun Jun 25, 2017 9:02 am
Country: FR

Re: Build full JS version

Post by buzzz »

I see the 9 example files on the demo. They contain http links to zipped .obj files on the server. Why not. It limits the size of the sh3x files !

There is no function in javascript to save to a specific folder on disk. But it is easy to save a file in the download directory. Just remain to move the saved file after that.
Post Reply New Topic

Who is online

Users browsing this forum: No registered users and 2 guests