-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ongoing ~ Exporters / JSON Output #5
Comments
hi theo, thank you for the good points. i agree the work was amazing, fun and useful. sure i would be willing to continue. i see it as open source, though, not entrepreneurial. i can imagine renaming from 'exporter' to 'graphics pipeline facet streamer' or some subset thereof :-) cheers jeremy |
Hey @theo-armour, unfortunately I wasn't able to attend the hackathon but I heard about this project afterwards and am very interested. I have been working on my own three.js viewer for OpenStudio models. However, if this project is taking off I would prefer to use this and just have OpenStudio export the correct format or make OpenStudio three.js enabled, whatever the term is :-) I really do hope this project continues and would be happy to devote energy here that I would have otherwise done on my own. What is the best place to start? Where is there a description of the JSON format? Once I have a JSON file is there some example code I should use to load and render it? Thanks for all the hard work this weekend, |
@jeremytammik / Jeremy
FOSS forever: no question but 'yes' in my mind. I used the word 'entrepreneurial' in the sense that there could be payable work for, say, large-enterprise-level customization. More about all this in an upcoming issue/message. @macumber / Dan Thank you for the kind words. And may I return the compliment as OpenStudio certainly seems to be hot stuff these days And I have had very much the same thoughts. The winning 'Pollinator' team was sitting next to us during the Hackathon and I felt that we could have built and incorporated a 3D viewer for their efforts if we had been given just five or ten minutes more time. (Or am I just saying that because of sleep deprivation ;-)
https://github.com/mrdoob/three.js/wiki And perhaps some fellow team members might have suggestions - as to folders in our various repos that you might look at. It might help if you let us know what language and/or tools you are considering using.
Have a look at the va3c viewer And http://mrdoob.github.io/three.js/editor/ I hope that very soon we have an update that loads and opens any Three.js JSON file... Theo |
Hi Theo, It was a lot of fun. When’s the next one? I’m willing and interested to keep moving it forward – as with anyone who has a day job, I’d imagine that the amount of time I can spend will vary wildly depending on what’s going on elsewhere. I think the most important thing we could do for the community in the short term is attempt to document somehow what we learned about the JSON/Three.js version 4 format. I’m not sure what the right venue right format would be. If nothing else, we can always go the “blog” route and just rely on Google to help people find it. There is nothing in the Revit Exporter side of the project that used GPL. Best Regards, From: Theo Armour [mailto:[email protected]] Hi Team This message is particularly for the peeps that worked on the Grasshopper, Revit and Max exporters. Other issues/emails from will cover other aspects of the va3c post-mortem. First, the work was amazing. More Descriptive Title I propose a name change. When you 'export' something the traditional meaning of the word is that a thing leaves one place and goes to another place and the original place is left empty . The work you did over the weekend was not about taking things out of data files and transferring those things to another file. On the contrary, your work enabled the original data to be viewed in a new way. Your work enables adds capability to the original. So can we think of a better and more informative title for the activity? Some thoughts/buzzwords on the activity:
Can you think of on or two words that might be more fun and a better explanation than 'exporter'? License and Copyrights All work is currently licensed under the MIT license which is just about the simplest most open most 'do anything you want with the stuff' license there is. We are allowed to congratulate ourselves for being nice people. Nonetheless it would be a good thing for you to check if any of the material you produced contain material with a more restrictive license such as GPL or - 'heavens forbid' - a 'all rights reserved' unlicense. We are all listed by name and with organization and GitHub user name as contributors to the va3c intellectual property. I believe this is sufficient data to establish a joint copyright. If anybody wishes to state additional information regarding contact details or specific areas of concentration please inform us and Josh or Femi or I will add this to the contributors table or feel free to add the data yourself. Afterlife / Ongoing Activity
[Disclaimer: I vote 'yes' and would be happy to draft read me files etc.]
Theo — |
Hi all, One thought I had for an additional feature would be a capture button, where a user (e.g. a client) could screenshot a view and then go into a markup mode where they could draw on the image using a red pen or something. They could then share it back to the team. |
Zach Your enthusiasm, your knowledge of the tools available on web and your desire to keep learning are all great. Thank you for being a team member.
Could you open up a new issue with this item and add the new wishlist label to it? I will respond there.
How about coming up with some new projects or places where the va3c could be applied? |
@theo-armour - thanks for the great follow up. I agree, the work was amazing! I'm still buzzing from the energy last weekend... I agree with @jeremytammik and @theo-armour - the work should stay free and open source, and if any one of us happens to land a consulting gig building something custom for a client based on this work, that's great! @theo-armour - I personally don't mind the 'exporter' part of the descriptions. I think 'streamer' implies live data, and that in fact we are exporting models in a web-viewable format. Other opinions out there? @macumber Dan - It would be INCREDIBLE if we could get OpenStudio exporting to va3c! In addition to @theo-armour's suggestions, I'd urge you to look at the files in this organization's json repo - all of those have been produced with our exporters and are able to be parsed with our viewer (the most recent ones are probably the best examples). We are going to work on documenting the JSON format further - more effort is certainly needed on that front. I am certainly interested in progressing this project over the next few months - we have lots of applications for the work at TT, and based on the initial response and feedback, I think we are really on to something, and that the work deserves a chance to blossom over the summer. |
Ben
I don't mind the term either. But it so reminds me of people, in years gone I think what you got us going with is going to be new and disruptive. Theo On Thu, May 22, 2014 at 1:13 PM, Benjamin Howes [email protected]:
|
hi theo, i think it would be a great idea to update the revit exporter to add support for the new version of the viewer. i am also perfectly happy to rename it from exporter to 'web embedder' or something like that. what is the easiest way to determine what the new file format is? simply pick the simplest possible new sample file and reverse engineer it? can you point to the applicable documentation? thank you! cheers jeremy |
Jeremy I think the most wonderful thing would be to add 'revit' as a folder with https://github.com/mrdoob/three.js/tree/master/utils/exporters It would be approriate to inform Mr.doob of such an intention and ask for https://github.com/mrdoob/three.js/issues The format should follow the guidelines on the wiki: https://github.com/mrdoob/three.js/wiki Exported files should be tested against the Three.js Editor - as well as http://mrdoob.github.io/three.js/editor/ The VA3C Viewer closely follows the examples set in the Three.js Editor. No I have started a sample files guidelines for the vA3C viewer here: https://github.com/va3c/va3c.github.io/blob/master/sample-file-guidelines.md Theo On Fri, Aug 29, 2014 at 4:25 AM, Jeremy Tammik [email protected]
|
Hi Theo, Thank you for the helpful overview and explanation! I'll have a go at it asap. Cheers, Jeremy |
Hi Theo, Just one little bit more detail more, please. I would like to use the three.js editor to determine exactly what the JSON file produced by the Revit exporter should optimally look like. In the three.js editor, I see several different export options: geometry, object, scene. I noticed somewhere that you said we could mingle and mix different JSON files in the viewer provided no scene was defined in any of them. Is that correct, or did I misunderstand something? As far as I know, the Revit exporter currently defines a scene. Should I better remove that? Thank you! Cheers, Jeremy |
Jeremy
Yes, it does.
Yes, please. I will add something like this to the guidelines: Create a scene if the export includes aspects such as camera positions and Create an object if the export contains material information such as color Create geometry if the export is material 'agnostic' Feel free to ask more detailed questions and I will do my best to reply. I should also point out that I have been dealing with .obj, js/.json, .stl, Theo On Tue, Sep 2, 2014 at 11:54 AM, Jeremy Tammik [email protected]
|
Hi Theo, Great, thank you very much for that, it clarifies a lot. How nice that our exports work well. Let's see what we can do to improve that still further :-) Cheers, Jeremy |
Hi Theo, Looking into exporting objects... that does not seem quite as easy as I imagined. I tried to export two cubes from the three.js editor, and that is not possible. I am forced to select exactly one object. How can I use that for the Revit exporter? Is there a way to create a top level container object, e.g. 'building' or 'model', and then populate it with the BIM elements like walls and floors as sub-objects? Currently, it seems that we are using the scene for exactly that purpose, to provide a container. Cheers, Jeremy |
Jeremy
You are not the first to run into this issues and, so, yes there is. If you look at the vA3C version of the Three.js Editor: http://va3c.github.io/viewer/va3c-editor/r1/va3c-editor-r1.html In the Edit menu, you will see an ugly menu item titled "update all to with source code here: https://github.com/va3c/viewer/blob/gh-pages/va3c-editor/r1/js/Menubar.Edit.js Using this command creates a parent and makes everybody else a child. This is but one of several enhancements to the editor I worked on, but the Theo On Tue, Sep 2, 2014 at 12:46 PM, Jeremy Tammik [email protected]
|
Hi Theo, I replaced the top level container in the JSON file by an Object3D instead of Scene. The geometry comes across fine. The new test output models live in the RvtVa3c models subfolder: https://github.com/va3c/RvtVa3c/tree/master/models They are named wall_2015.rvt.js, wall_brick.rvt.js and rac_basic_sample_project_obj.rvt.js. The first wall has a default material set, the second brick, so it should be reddish, and the third is the large sample model that you already saw and used. However, the colour and material seems to be lost, and all is rendered in black or dark grey. I made no changes to the material handling and see no obvious differences, so I have no idea what might be going wrong. Can you see anything? How come I see colours in the built-in rac_basic_sample_project model in the vA3C editor? I would like to get this material issue fixed before going further. I would actually also like to add support for textures. Thank you! Cheers, Jeremy |
Hi Jeremy That was quick.
Interesting. I see the colors in all the models. I am using the file open I have also added links to the three new files to the vA3C JSON menu. This I have looked at the new files using Chrome, FF & IE on Windows 8.1as well Questions: Are you using vA3C Viewer R6 (which I have now set as the default even Also there can be issues where lights keep being added each time you load a Sometimes WebGL gets trashed internally. The fix is to close all browser Can you think of anyway for me to reproduce the problem you are having? Thanks also for the spelling corrections. Theo On Wed, Sep 3, 2014 at 7:02 AM, Jeremy Tammik [email protected]
|
Hi Theo, Thank you for checking, the good news, your appreciation and adding the new sample models. I see them listed in the R6 menu. However: The R6 viewer does not work at all for me right now. The menu displays, but the underlying main pane just says "404 - There isn't a GitHub Page here" and shows nothing else. Aaah, I think I see the problem now. I am inserting just the BIM as an object, and the scene has no lights at all. So, of course, everything looks black. I added the model to the three.js editor again and then added a light, and, bingo, I see some colour. Problem resolved. I now added a new little enhancement, a name property for the materials. The two new sample models wall_2015.rvt.js and wall_brick.rvt.js mentioned above have been regenerated with the enhancement. I also added a new larger sample model, rac_basic_sample_project_site.rvt.js, which includes the house plus the surrounding building site terrain and stuff, with material names assigned. Maybe it would make sense to add those to the menu instead of the ones you took yesterday. Ok, I'll start looking into adding this to the list of three.js exporters as well, then. Mrdoob already gave his thumbs-up for that. Thank you! Cheers, Jeremy |
Jeremy
Bingo! Thanks for this clue. My guess is that you have downloaded the viewer and are running it locally. https://github.com/va3c/viewer/blob/gh-pages/va3c-viewer-html5/r6/jafo-file-open.js#L10-18 But the bigger concern - and the probable cause of the 404 error is here: https://github.com/va3c/viewer/blob/gh-pages/va3c-viewer-html5/r6/jafo-file-open.js#L20-21 My base path ends up looking like this: file:///C:/Users/theo/Dropbox/Public/git-repos/va3c.github.io/ The Viewer adds specific endings depending on the circumstance For example, entering JAFO.template in the console should bring up a file For example, my path looks like this: file:///C:/Users/theo/Dropbox/Public/git-repos/ [Note, there is nothing in the file that is visible ;-] Since it is not working for you, we need to figure out whether this is a In any case, could you also try load the Viewer via the web - and seeing if http://va3c.github.io/viewer/va3c-viewer-html5/latest/
Yes, Lambert and Phong shading both need lights to see the colors. The
Double Yay! Theo On Thu, Sep 4, 2014 at 4:36 AM, Jeremy Tammik [email protected]
|
i added a new simple revit model, little_house.rvt.js: https://github.com/va3c/RvtVa3c/blob/master/models/little_house.rvt.js it is just minimal documentation and a pointer to the real thing. please feel free to edit if you see anything to add or improve. no idea when it will be merged into the master branch. |
the revit exporter is now in the official three.js dev branch: https://github.com/mrdoob/three.js/tree/dev/utils/exporters/revit |
Jeremy It shall be written at some time long in the future: 'And this is how the development of architecture went from being the Theo On Mon, Sep 15, 2014 at 11:30 PM, Jeremy Tammik [email protected]
|
hi theo, you were asking for more revit models. i see you added two new models yourself in a new subfolder https://github.com/va3c/RvtVa3c/tree/master/models-rvt thank you. i fixed the typos in your readme :-) i also added all the standard revit sample models to the already existing models folder: https://github.com/va3c/RvtVa3c/tree/master/models the complete set includes: rac_advanced_sample_project.rvt -- Architectural advanced some of the resulting JSON files were over 100 MB in size, in which case i replaced them by zip compressed versions. i hope this helps. cheers jeremy |
i am a bit worried that we are misusing git storing these huge sample files here... i exceeded the 100 MB file size and had a horrible time cleaning up again after myself, finally resorting to 'git rebase' after the 'BFG Repo-Cleaner' failed... |
hi theo, added all six standard revit sample models and committed release 2015.0.0.24. did you add that gh-pages branch? what use is it? how can i get rid of it, or at least retain the master branch as default? thank you! cheers jeremy |
Jeremy gh-pages See:
Setting master branch as default: But if you do that, please still copy every file to to the gh-pages Of course, there is always Theo's way of doing things - which is the lazy, Do everything in gh-pages branches. Let the gh-pages branch be the 'master' This means everything is instantly available on the web as soon as you This also means that GitHub can be your ginormous free data repository. The My feeling is that you are the 'owner' of https://github.com/va3c/RvtVa3c Just remember, when you want a file to be callable by the vA3C Viewer then File Sizes Revit Exporter I ask this because of the two Revit files I found on http://grabcad.com Viewer R6 Thus I will be very pleased when it is finished - though I may not be This begs the question: Then what should the next tick release do? And I BTW, does anybody besides me have a Google Cardboard (Occulus for the Theo On Mon, Sep 22, 2014 at 1:40 PM, Jeremy Tammik [email protected]
|
hi theo, thank you very much for your interesting explanation of the gh-pages. that sounds very useful indeed. i'll have to try it out myself soon! the json exporter may well decrease the file size by eliminating useless repetitions of the same data. for instance, in some file formats, e.g. STEP, you can define simple things, like the 3D point at the origin, as many times as you like, with separate identities. more complex structures can be repeated as well, of course. post-processing the file and replacing all the identical objects by one single instance can easily reduce the file size by a huge factor. yes, sorry, the exporter add-in will only run inside Revit itself and requires a full installation. viewer R6 sounds exciting. thank you for that! nope, i have no Google Cardboard. some colleagues of mine are getting Oculus headsets soon... cheers jeremy |
Hi Team
This message is particularly for the peeps that worked on the Grasshopper, Revit and Max exporters.
Other issues/emails from will cover other aspects of the va3c post-mortem.
First, the work was amazing.
More Descriptive Title
I propose a name change. When you 'export' something the traditional meaning of the word is that a thing leaves one place and goes to another place and the original place is left empty .
The work you did over the weekend was not about taking things out of data files and transferring those things to another file.
On the contrary, your work enabled the original data to be viewed in a new way. Your work enables adds capability to the original.
So can we think of a better and more informative title for the activity?
Some thoughts/buzzwords on the activity:
Can you think of on or two words that might be more fun and a better explanation than 'exporter'?
License and Copyrights
All work is currently licensed under the MIT license which is just about the simplest most open most 'do anything you want with the stuff' license there is. We are allowed to congratulate ourselves for being nice people. Nonetheless it would be a good thing for you to check if any of the material you produced contain material with a more restrictive license such as GPL or - 'heavens forbid' - a 'all rights reserved' unlicense.
We are all listed by name and with organization and GitHub user name as contributors to the va3c intellectual property. I believe this is sufficient data to establish a joint copyright. If anybody wishes to state additional information regarding contact details or specific areas of concentration please inform us and Josh or Femi or I will add this to the contributors table or feel free to add the data yourself.
Afterlife / Ongoing Activity
[Disclaimer: I vote 'yes' and would be happy to draft read me files etc.]
Theo
The text was updated successfully, but these errors were encountered: