Editing User:Harman052/GSoc2013/Logs

From BRL-CAD

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision Your text
Line 200: Line 200:
 
===August 06 2013===
 
===August 06 2013===
 
* Took break.
 
* Took break.
 
===August 07 2013===
 
* Went to college for documents related work. Some documents are still left. Need to visit tomorrow. Too tired. :-(
 
 
===August 08 2013===
 
* Submitted the documents to college. Work finished.
 
* Looked into patch #183. Tried to reduce code of those two functions into one. But I suspect about the functionality and purpose of those two functions. Looks like a wrong step taken. Need to concentrate on other patch.
 
 
===August 09 2013===
 
* Searched for various similar implementations in brlcad src to see how to use hooks for bu_log output. Found in mged/cmd.c, util/plot-dm.c
 
* Studying how they are working.
 
 
===August 10 2013===
 
* With the help of example given in bu.h, I implemented error logging feature in journal command. It successfully logs output of bu_log to text file.
 
* Testing changes. With option that I added, on running journal command in MGED in classic mode (using -c option) it displays nothing. On quitting MGED it quits successfully. Looking into the problem.
 
 
===August 11 2013===
 
* On testing, found other problems that are introduced due to my changes. Although most of them are small and serious problem is only when BRL-CAD crashes on running "ls -A" command after reopening journal file in same MGED instance.
 
 
===August 12 2013===
 
* Called in the college. There was misunderstanding in the documents. Fixed it.
 
* I noticed that the problem of patch in classic mode is the same case when we redirect output / error to a text file using ">" and "2>". It redirects all output, and at that time nothing shows on screen.
 
 
===August 13 2013===
 
* Posted summary of efforts of this week to mentors.
 
* Decided and planned what to do and how to do next in the project.
 
* Took break.
 
 
===August 14 2013===
 
* As per my plan, I have to start with on-demand rendering option. Firstly, I sort out different aspects of this option on paper so that I could see the complete flow and what intermediate things I have to add to achieve this functionality. 
 
 
===August 15 2013===
 
* Improved existing code as per HACKING file. However, need to inspect carefully before committing.
 
* Started working on on-demand rendering option as it makes an important part of project.
 
* Set layout according to mockups. Added divs.
 
 
===August 16 2013===
 
* Getting problem with onclick event handler. On clicking the link, function is not being called. Getting error that function not defined, but it is actually defined. Looking into it.
 
 
===August 17 2013===
 
* Still stuck at same problem.
 
* Took short break.
 
 
===August 18 2013===
 
* Finally, "onclick" problem solved. It was a scope problem.
 
* Added "View" and "Hide" links corresponding to each entity name. Working on implementing their corresponding backend functions. 
 
 
===August 19 2013===
 
* Working on "on demand renderer". It has two parts: "On demand drawing" and "on demand deleting". Getting problem with entity display.
 
 
===August 20 2013===
 
* "On demand draw" part done. Actually, earlier I was taking it other way. But looking at some problem on Stack Overflow an idea came that I implemented and it worked. If I did what I planned earlier, no doubt it worked but it would consume more resources and might be less efficient.
 
* Now working on "on demand delete" part.
 
 
===August 21 2013===
 
* Still stuck at "on demand delete" problem. As such it is very small problem but till now unable to find any solution. Explored over the Internet and found one solution but that's not much efficient. Now I asked on Stack Overflow. Here is the link:
 
http://stackoverflow.com/questions/18357529/threejs-remove-object-from-scene
 
 
===August 22 2013===
 
* No useful response on Stack Overflow.
 
* Found one solution of my own but that's not much efficient. Actually in this solution, user can delete entities in reverse order as they are drawn. Before actually implementing it, looking for more efficient one.
 
 
===August 23 2013===
 
* Expanding that "inefficient" solution into useful one finally, "on demand delete" option done in a small standalone application. Now user can delete entities in random order. Next step is to implement it into actual application after testing. :)
 
* Solved few small issues that I got while testing. However, needs more intensive testing. Will share on mailing list once implemented into actual application.
 
 
* Not feeling well.
 
 
===August 24 2013===
 
* Solved various small issues that came up during implementation of "on demand delete option" into application. Now need to use AJAX to call "createOBJ" function (PHP) at a "onclick" event of "view" button.
 
* Fixed issues related to coding standards.
 
* Again not feeling well.
 
 
===August 25 2013===
 
* Working on AJAX request problem. Looking into the documentation. After this has been done, work of demand rendering facility will be finished.
 
 
 
===August 26 2013===                                                 
 
* Took break.
 
                                                                     
 
===August 27 2013===                                                 
 
* On demand entity draw / hide facility implemented.                 
 
* Now Next plans are to add sign-up / sign-in feature so that every user have his / her account and could access and manage uploaded files. Further I'll be adding attractive GUI for easy user experience. But before that, I would test whatever I did till now.
 
* I was successfully able to draw Goliath.c of goliath.g but found few issues.
 
                                                                     
 
===August 28 2013===
 
* While testing with BRL-CAD's default .g files, I noticed various points that needed to be considered to give user a better experience. I'll share them on mailing list.
 
* Now working on sign-up / sign-in feature.
 
 
===August 29 2013===
 
* Searched for sign-up modules on the Internet so that I could change / merge them into one that would be useful for this project.
 
* Found many, but need to combine them and reduce unnecessary features and code.
 
* Sign up feature is implemented, entry is being saved in database.
 
* Working on email verification.
 
 
===August 30 2013===
 
* Email verification is done.
 
* Created login page, landing page, and implemented sessions variables.
 
* Sign-up module is ready. Need testing.
 
 
===August 31 2013===
 
* Now the user is able to create account, login and logout successfully.
 
* Module tested successfully.
 
 
===September 01 2013===
 
* To make actual use of user accounts, I changed the code so that as soon as the user clicks on confirmation link (to activate account), the user directory (same as that of username filled while signing up) is created and a subdirectory "obj" (to store obj files) is also created.
 
 
===September 02 2013===
 
* Getting problem when user uploads a file. After upload, all entities of .g file erased. This was due to path problem. Actually the uploaded file was not being moved to desired directory and instead new empty .g file created in user directory having the same name as that of uploaded file. Anyway, this has been solved. Now the uploaded file is successfully saved in user's directory and with this sign-Up / sign-In work completed.
 
* Testing.
 
 
===September 03 2013===
 
* Testing the application after integrating with signup module. Identified possibilities where improvements can be done; will be added to TODO list.
 
* Added bootstrap CSS and custom CSS to improve look and feel.
 
 
===September 04 2013===
 
* Visited various sites similar to this application to get idea of perfect GUI. My main focus is to first work on the page where user see models and then change other pages accordingly as that page is main focus of this project. I think I need to add few more features to help user to view models in convenient way and since I noticed a lot of scope of this project so I need to discuss with developers about what to be added and what not within the GSoC period.
 
 
===September 05 2013===
 
* Took break.
 
 
===September 06 2013===
 
* Working on feature to enable the user to manage / access uploaded files, load old files from his dashboard.
 
 
===September 07 2013===
 
* Updated todo list on GitHub repository.
 
* Just finished with two new features: Now as the entity added to scene, it gets a random color. Now models look more colorful. At this moment colors being assigned to entities are random, in future this will be brought under control of user.
 
*  http://screencloud.net/v/d2zN
 
* http://screencloud.net/v/va61
 
 
* Secondly, now models are drawn horizontally. Earlier, models drawn tilted (one side raised), were difficult to examine so fixing this just improved usability.
 
* http://screencloud.net/v/yUpN
 
 
===September 08 2013===
 
* Worked on patch to calculate and compare volumes of implicit objects and their brep versions.
 
 
===September 09 2013===
 
* Still working on patch (the shell script), testing, improving it.
 
 
===September 10 2013===
 
* Submitted patch.
 
* Implemented grid in geometry viewer as suggested by Sean.
 
 
===September 11 2013===
 
* After reading Sean's reply, got many ideas about how the requested features can be implemented. Before actually start coding, I want to plan about how the options of such features will be provided to user. Like, if we implement wireframe feature, how user will use it, i.e. whether it should be like each entity should clickable to draw wireframe. Even if the entity is clickable, which button it should be clicked with, right or left. If it is right button, should it have some context menu with many other options?
 
 
* Other case may be to have single checkbox option which when clicked, all entities in the scene will get their wireframes.
 
 
* Also these wireframes can be drawn from left side panel (list of entities) when user hovers an entity.
 
 
* Similar possibilities are also there for transparency option. Need to discuss.
 
 
===September 12 2013===
 
* Assuming that we would have a combination as whole of what I devised yesterday I started working on making entities clickable to get wireframes.
 
* Able to get wireframes on built-in geometry on a user click in a simple standalone application.
 
 
===September 13 2013===
 
* Wireframes implemented on OBJ objects but currently they are very inefficient. The major problem is that sometimes, user clicks at one place, and action is performed somewhere else. That's annoying.
 
* Other problem is, in case if the object is a combination of simpler entities, wireframe cannot be drawn on the whole object with single click; one has to click each component entity to draw its wireframe.
 
* Here is the example: http://screencloud.net/v/ozjo
 
* Earlier lighting was not proper. One side of model always remained in dark. I attached light to movement of camera, so now models are more enlightened.
 
* Added key bindings to see: top(T), bottom(B), left(L), right(R) of model; giving out more touch of BRL-CAD.
 
 
===September 14 2013===
 
* Took break.
 
 
===September 15 2013===
 
* Implemented wireframe option. Now black wireframe appear by default. On pressing "S", model will be shaded with random colour and on pressing "W" wireframe will appear again on whole model.
 
*http://screencloud.net/v/lSaK
 
* http://screencloud.net/v/1wDg
 
* Earlier I reported a problem about slow performance of big / heavy models. Actually, this is not a problem of ThreeJS. Earlier on my Chrome browser canvas renderer was enabled that was not fully able to handle such models. I enabled webGL in settings and tried that heavy model (Goliath.g) once again, and now it is working perfectly just like tiny models.
 
 
===September 16 2013===
 
* Urgent work out of station.
 
 
===September 17 2013===
 
* Urgent work out of station.
 
 
===September 18 2013===
 
* Urgent work out of station.
 
 
===September 19 2013===
 
* Improved GUI of model_display.php.
 
 
===September 20 2013===
 
* Improved CSS of sign-in / sign-up pages and landing page.
 

Please note that all contributions to BRL-CAD may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see BRL-CAD:Copyrights for details). Do not submit copyrighted work without permission!

To edit this page, please answer the question that appears below (more info):

Cancel Editing help (opens in new window)