Editing Online Geometry
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 1: | Line 1: | ||
{{DesignDocument}} | {{DesignDocument}} | ||
− | =Aim of | + | =Aim of project= |
The aim of this project is to provide an online service to users of BRL-CAD to view and share their geometric files (BRL-CAD's native .g file) on browser. Currently in initial development stage, project aimed to have more advanced features in near future with ultimate goal to provide geometry editing features by leveraging BRL-CAD's existing code to maximum extent. | The aim of this project is to provide an online service to users of BRL-CAD to view and share their geometric files (BRL-CAD's native .g file) on browser. Currently in initial development stage, project aimed to have more advanced features in near future with ultimate goal to provide geometry editing features by leveraging BRL-CAD's existing code to maximum extent. | ||
Line 21: | Line 21: | ||
Above four operations are performed by following four files: | Above four operations are performed by following four files: | ||
− | + | ||
− | + | * '''upload.php:''' It provides a web interface for user to upload .g file. | |
− | + | ||
− | + | * '''upload_file.php:''' It extracts data that includes name of .g file and that of its entities and pass it to model_display.php. | |
− | + | ||
− | + | * '''model_display.php:''' It provides list of entities for user to choose from. When user clicks the "view" button corresponding to any entity, request is sent to create_obj.php for creating obj file. | |
− | + | ||
− | + | * '''create_obj.php:''' As name suggests, when request received from model_display.php, it run g-obj converter that creates obj and respond with appropriate status. If success, entity is displayed on browser. | |
− | |||
====Extracting name of .g file and that of its entities:==== | ====Extracting name of .g file and that of its entities:==== | ||
Line 39: | Line 38: | ||
====Languages used==== | ====Languages used==== | ||
− | + | * PHP 74.3% | |
− | + | * CSS 13.6% | |
− | + | * JavaScript 12.1% | |
− | |||
− | |||
− | |||
− | |||
====Third party libraries==== | ====Third party libraries==== | ||
− | + | * '''ThreeJS:''' 3D JavaScript webGL library | |
− | + | * '''BootStrap:''' Front-end framework used for CSS work | |
− | + | * '''pace.js:''' Automatic page load progress bar | |
− | + | * '''jquery:''' For AJAX work | |
− | + | * '''Swift Mailer:''' For sending emails | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
====Top level directories==== | ====Top level directories==== | ||
− | + | * '''accounts:''' Sign-in signup module, swift mailer | |
− | + | * '''css:''' images, pace.js | |
− | + | * '''doc:''' html, latex | |
− | + | * '''images''' | |
− | + | * '''js:''' ThreeJS | |
− | + | * '''user_accounts:''' Parent directory for user directories. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
====Other files==== | ====Other files==== | ||
− | + | * '''config.php:''' A global configuration file. | |
− | + | * '''doxyfile:''' Doxygen file. | |
− | + | * '''functions.php:''' PHP functions | |
− | + | * '''geo_viewer.sql:''' Database schema file (.sql) | |
− | + | * '''header.php:''' Common file for header of webpage. (TODO: There are two header.php files, one in root directory and other in accounts/include. One of these duplicate files need to be removed) | |
− | + | * '''README.md''' | |
− | + | * '''variables.php:''' Contain variables. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Further, detailed comments are written in the source code itself. If you still have doubts, questions etc., please contact at brlcad-devel@lists.sourceforge.net or at IRC at #brlcad channel on freenode network. | Further, detailed comments are written in the source code itself. If you still have doubts, questions etc., please contact at brlcad-devel@lists.sourceforge.net or at IRC at #brlcad channel on freenode network. |