2010-01-07 21:35:37 +03:00
|
|
|
|
2009-12-13 03:33:26 +03:00
|
|
|
BUGS
|
|
|
|
----
|
2009-12-16 12:19:54 +03:00
|
|
|
o Some invalid DXF data gets pass the import checks and breaks the tessing code
|
2009-12-20 15:48:32 +03:00
|
|
|
o Broken polyhedron() entities are not correctly detected and cause CGAL segfaults
|
2010-01-07 21:35:37 +03:00
|
|
|
o Tesselation via GLU sometimes produces strange results
|
2010-01-10 01:19:32 +03:00
|
|
|
o Non-manifold objects make CGAL crash (e.g. two cubes which touch at one edge)
|
2010-01-15 02:16:08 +03:00
|
|
|
o Export STL: Exports existing CGAL model even though the current model is changed, but not CGAL rendered
|
2009-12-13 03:33:26 +03:00
|
|
|
|
2010-01-07 00:35:31 +03:00
|
|
|
USER INTERFACE
|
2009-12-16 12:19:54 +03:00
|
|
|
--------------
|
2009-12-13 03:33:26 +03:00
|
|
|
o Preferences
|
2010-01-22 15:28:30 +03:00
|
|
|
- Beautify color schemes
|
|
|
|
- Color schemes read from file
|
|
|
|
- Color scheme editor
|
2010-01-15 02:16:08 +03:00
|
|
|
- wireframe width
|
|
|
|
- pointsize
|
2009-12-13 03:33:26 +03:00
|
|
|
- OpenGL params
|
|
|
|
- Default language feature settings
|
2010-01-07 00:35:31 +03:00
|
|
|
- Auto-view CSG/thrown together on load
|
|
|
|
o Export etc.: automatically add missing extension as in SaveAs
|
2009-12-13 03:33:26 +03:00
|
|
|
o Mac OS X:
|
|
|
|
- embed examples into bundle -> separate example menu?
|
2009-12-14 01:51:02 +03:00
|
|
|
- Use examples as default File Open folder
|
2009-12-13 03:33:26 +03:00
|
|
|
- distribute as (self-unpacking?) dmg containing a single .app instead of zip
|
|
|
|
- universal binary -> fix cgal and opencsg
|
|
|
|
o MDI
|
|
|
|
- Think about how to do MDI the right way
|
|
|
|
- Quit vs. Close MainWindow.
|
|
|
|
Today Quit just closes the current window and there is no close function
|
2010-01-15 21:36:28 +03:00
|
|
|
- Ctrl-W should close the current dialog, not the current main window
|
2010-01-07 00:35:31 +03:00
|
|
|
o 3D View
|
2009-12-14 01:51:02 +03:00
|
|
|
- Improve mouse rotation
|
|
|
|
- Add modifier key combos to handle pan on 1 mouse button systems
|
2010-01-07 00:35:31 +03:00
|
|
|
- Show grid
|
|
|
|
- 4 x split view w/orthogonal cameras?
|
2010-01-14 14:14:31 +03:00
|
|
|
- Quick highlighting of object under the cursor in the editor
|
2010-01-21 22:15:41 +03:00
|
|
|
- View All
|
2010-01-22 15:28:30 +03:00
|
|
|
- overlay indicator displaying current view mode
|
2010-01-14 14:14:31 +03:00
|
|
|
o Editor
|
|
|
|
- Autocompletion/hints for builtin (and user-defined) functions/modules
|
|
|
|
- builtin quick function reference/help
|
2010-01-22 15:28:30 +03:00
|
|
|
- Drawer/popup with all modules/functions listed which can be inserted into
|
|
|
|
the editor by clicking or drag&drop -> icons in toolbar?
|
|
|
|
-> This would be moving in the direction of a traditional CAD GUI
|
|
|
|
and needs a fair bit of thinking.
|
2010-01-14 14:14:31 +03:00
|
|
|
- More infrastructur for external editor (or is the reload good enough?)
|
2010-01-15 18:57:27 +03:00
|
|
|
- Evaluate QCodeEdit (http://qcodeedit.edyuk.org)
|
2010-01-22 15:28:30 +03:00
|
|
|
- Display some kind of line wrap indicator
|
|
|
|
- Couple the source code to the AST to allow highlighting selected elements
|
|
|
|
in the source code in the 3D view
|
2010-01-11 20:23:29 +03:00
|
|
|
o Misc
|
2010-01-14 14:14:31 +03:00
|
|
|
- Fix current_win hack
|
2010-01-11 20:23:29 +03:00
|
|
|
- Reload and compile: Ask for confirmation if file is locally edited
|
|
|
|
(make this configurable in preferences?)
|
2010-01-14 00:01:58 +03:00
|
|
|
- Save: Ask for confirmation if file has been externaly changed
|
2010-01-22 15:28:30 +03:00
|
|
|
- Rename OpenCSG and CGAL to smth. not specific to the underlying libraries
|
|
|
|
(e.g Preview, Render)
|
2010-01-07 00:35:31 +03:00
|
|
|
|
2009-12-16 12:19:54 +03:00
|
|
|
ENGINE
|
|
|
|
------
|
2010-01-21 22:15:41 +03:00
|
|
|
o Primitives
|
|
|
|
- Springs, spirals (requested by Cathal Garvey)
|
2009-12-16 12:19:54 +03:00
|
|
|
o 2D Subsystem
|
|
|
|
- Add generic 3D->2D projection statements
|
2010-01-22 15:28:30 +03:00
|
|
|
- 2D->3D using clipping plane
|
2009-12-16 12:19:54 +03:00
|
|
|
o Advanced Transformations
|
|
|
|
- Add statement for 2D and 3D minkowski sum
|
|
|
|
- Add statement for refinement via surface subdivision
|
|
|
|
- Add statement for intersections in cartesian product of childs
|
2010-01-03 12:49:13 +03:00
|
|
|
o Function-Module-Interface
|
|
|
|
- Pass a module instanciation to a function (e.g. for a volume() function)
|
|
|
|
- Pass a function to a module instanciation (e.g. for dynamic extrusion paths)
|
2010-01-08 07:33:32 +03:00
|
|
|
o Language Frontend
|
|
|
|
- Allow local variables and functions everywhere (not only on module level)
|
2010-01-06 06:29:51 +03:00
|
|
|
o DXF Import
|
|
|
|
- Support for POLYLINE entity
|
|
|
|
- Support for SPLINE entity
|
2010-01-14 14:15:22 +03:00
|
|
|
- Support for LEADER entity
|
2010-01-21 14:25:46 +03:00
|
|
|
- Support for MTEXT entity ?
|
2010-01-14 14:14:31 +03:00
|
|
|
- idea: DXF inline - convert from dxf to OpenSCAD syntax -> parametrize dxf content
|
2010-01-14 11:14:52 +03:00
|
|
|
o Mesh optimization on STL export
|
|
|
|
- Remove super small triangles (all sides are short)
|
|
|
|
- Replace super thin triangles (one h is short)
|
2010-01-07 21:44:02 +03:00
|
|
|
o Misc
|
|
|
|
- Add symbolic colors to the color() statement
|
2010-01-09 13:36:07 +03:00
|
|
|
- Go through default values of parameters (e.g. cube() has x,y,z=1 while linear_extrude() has height=100)
|
2010-01-14 14:15:22 +03:00
|
|
|
o Grammar
|
|
|
|
- dim->name -> dim->label
|
2010-01-14 11:39:43 +03:00
|
|
|
- A random(seed) function
|
2010-01-21 22:15:41 +03:00
|
|
|
- import_*() -> *_import() (consistent prefix vs. postfix)
|
2010-01-07 21:44:02 +03:00
|
|
|
|
2010-01-14 14:14:31 +03:00
|
|
|
CODE
|
|
|
|
----
|
|
|
|
|
|
|
|
o Refactor from MainWindow:
|
|
|
|
- CSG data structure (compiled model)
|
|
|
|
- CGAL data structure (compiled model)
|
|
|
|
o C++-ify
|
|
|
|
- Use smart pointers where it makes sense (e.g. instead of homegrown refcount,
|
|
|
|
and to get memory ownership under control)
|
|
|
|
- Use static_cast instead of C-style casts
|
|
|
|
|
2010-01-15 16:02:52 +03:00
|
|
|
INFRASTRUCTURE
|
|
|
|
--------------
|
|
|
|
o Think about making external libraries easier available. Probably mostly convenience.
|
|
|
|
o Use a logging framework to get debugging/info output more under control?
|
|
|
|
(check log4j, google project)
|
|
|
|
|
|
|
|
MISC
|
|
|
|
----
|
|
|
|
o Collect "all" available OpenSCAD scripts from the internets and batch convert them
|
|
|
|
to STL to assist with robustness testing.
|
2010-01-14 14:14:31 +03:00
|
|
|
|