Object Graphics Frontend Alpha1
Bill Denney <[email protected]> Tue, 16 May 2006 09:54:54 -0400 (EDT)
| Newsgroups | gmane.comp.gnu.octave.graphics |
|---|---|
| Message-ID | <[email protected]> |
This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --8323328-1504231197-1147787694=:14189 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed I now have an alpha-quality version of the object graphics system. It is currently a front-end only (i.e. it won't actually make a plot for you now), and so it's really probably just ready for backend developers. Also, it's currently very slow taking about 30 seconds to create the first line (on cygwin which is probably exaggerating the speed issues), but that appears to be an initialization problem because subsequent creation takes only about 2-4 seconds. I have currently only tested the creation of a line, but with all of these disclaimers it is relatively fleshed out. It can create objects with validation of the object as it is created and as properties are set using the set command. It can create figures, axes, and lines. I made every effort to minimize the number of functions that touch the internals, and I've come down to this group: __uiobject_create_object__, __uiobject_grow_list__, __uiobject_handle2idx__, __uiobject_move_object__, delete, get, ishandle, and set. My guess would be that rewriting these as C++ functions would gain the largest speedup (but this is just a guess). It would also allow for the handles themselves to be put into a type that would minimize user interference with the internal variable structure (currently, it's implemented as a global variable that is a cell vector containing structs). Having created at least the beginning of an implementation, there are a few more changes that I'd like to make: Introduce object linking: Essentially, this would allow you to copy objects or properties automatically from one object to one or more others. This would be handled by the frontend and it would allow the removal of the legend type because the line, patch, etc. properties could be automatically inherited from one object to another. It would also allow for cleanup of objects kept in the legend because it would allow for the pseudo-linking that we're doing now to be done away with (the label objects could be removed from the line and patch types). Remove the legend object: It is really more like a separate axis that is a child of another axis-- let's treat it that way (after introducing object linking). Make the group type more flexible: I don't want to have to make every type of graph imaginable (bar, pie, candlestick, etc). More importantly, I want the users to be able to (relatively easily) create their own plot types. Groups are an obvious way to do this. Group already has a "type" attribute that is always supposed to be the string "group". I'd like to add three more fields: "GroupType", "ModificationCallback", and "ExtraData". Grouptype will allow for backends to understand the group's type better (barplot, pieplot, etc could be values of grouptype). The ModificationCallback would allow for the validation and creation of the child objects upon a setting change (it would also require the creation of a currentcallbackobj field in the root object which would function as a stack). The ExtraData field would allow for the storage of the data necessary for creating and maintaining those object types. If we allow groups to be more flexible, we should also allow for new user plot types to be registered in some way. Bill -- "This is perfect -- naked ladies, candy, and corporal punishment. All wrapped up in one cautionary tale. What could be more guy?" -- Jon Scieszka, Guys Read --8323328-1504231197-1147787694=:14189 Content-Type: APPLICATION/octet-stream; name=object-graphics-20060516.tar.gz Content-Transfer-Encoding: BASE64 Content-ID: <[email protected]> Content-Description: Content-Disposition: attachment; filename=object-graphics-20060516.tar.gz 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 dSz9rW7tK/yvMJn+lha6QK4laXW27jJOMam7ZQg4cbe/Jk13lTVi+aR4Z/7N a+Q/y7buaTLgpvxvLwaF+/+zfuP/e5Cnkf8a+a+R//Yu/+Xtki2fCrwOj9AM LuX+UiAVTP07jEfB24JB2uN22V+qW1BlBO7kg/lUpYMp2ZnyGB3hB9UaMMgE o4LD9Cg+Cso16lW1eTdCRoEuawp9bHAqmARD1AFQ24bqX6ri+g66QOi01OZP oyTLP7opb7+6phZVKm90GcuUj2zc65bSip+v/a+v3mPEEnf/lwhpe61jw/5/ Dtu+s/+f9QaN/ucgz8b7v2bfb/b9Zt9fu+9zyEFW9dwrxc5Kq3tYu7PBdXM9 jod9IhtudjbdZ4P3Xdl6RCJmcQG5CzI3qrmGokGlNJZ+h8ClCboJIB6TtjdI VSI+z3s5g9UgAo57E8xWXQrYgfXg4oaxc8X7k+oTpVqp0yrXTctLMIGZUu7Z ylhp3oxGyqmUPSjIr1R6Cc2SjIIiU8Bssbu/SYK01/q8K6lQXTtUObIiKuRy sqLAi6ukLR1aHTQeU1r2DNNoOQ8SWCtyjlboy4nh41j9UgY0qAN0+mj0bnQV y1EmtXdVyo4hHDYSyc/hIRMMwDzkkabi7CWNOx9GvuMwj7b3lwp1J/EePauV YoKXo4L5o32qzfzMy46lhDPC+Sn1t6yXZ49aOZdrqP7j7eWjCcbXenDaeGp/ NBFZPQu/BWDCuNoAj1dWA7btp6Voq9P+d9XEQXkTuVBOh+fgyDfUfIK/HnNT QXGh7wSZ5snKKwMBhKwvzS1EsDsfa7Wo+iJZbAT519/88MUlbePDeA6oQxBc wwwWqztAOYniRI5DdCbBbRsz88l5ScViwlx9beIneOtxfiOY4JJi3JcU40rT zkMIkIo0m9zQJb6xiZLU9RRWnU8xT0L3MKaVpKrctPM+D1G/4sc9/02G4z2f /jbrfwcXL5zz3+nZRb85/x3iafS/zTmwOQfu5xwIa2cxxXd+lxYZfTutLoWq Y9zHFdm7c9Hscjm7W5YgaeIPamERmVBCrdB4+hyCRFqrhJLUhMohj2r+bFDI QatKdlESCsNPKYYA4W9vuhjlbjfBnd/Zs87+b5nFFJX+BmXPJ1wCb9j/X5ye FeL/nfUGzf5/iGej/rfx/2j8Pxr/j6f4f7jrKEdPNrpKHULOIygOAaTzBjtR 9fbjBlLeJCtkVnuqY3W1fzahzjjDfVcS3K8J+uZWcJlz/tUmdYRlQ+BmdpFY JPGtj1mYTQDnEbp+EImU/Ru6aqvufqDugLWZI96wA6cugowiyp2UxL67p4TO 0nGr1/kk313JxW1cGkRDgisF6k4oKzQPpgaRLn0bJFN/gQZ6agJx7aFKHE3B vzgLm2J01SbCQ0C3wZjmZUxGgRTSCcrdxclrhlMam2Jy9M6VFT/KCjyHUl2h 2cWIToJQB/2ZDjfpeigniQrnc2TlCFGqn2nJR7Gv7KIbxwD+0BVjGOgyZCbh yCsDiblurkugVQYXgB5c9EoASvLXoLaKNsmyvhSyqyD0PByZuOT4lOmvoPPT YbckB7sV32hdZCgYuVUFz65+tTzrJp1/Ms+ufuk82/Nsri3j2cOzpDsKW7Dk QwVLPvxqWfJh3yz58L5Y8qE2SyJTKuhfBku6o7COJZtAFbWeNed/26HxSXcC m/T/Z2eu/v/i7LSx/zrI0+j/G/1/o//fu/133hlc5X1yrgY4xLawS8EuGeiZ oBFKDDsaBz0griLE2t1vuqWB+Aav9ekGQ3EqzY5V+WuIfscR0HCekzR1G/BB nZgpGI/DYQhb/2z1p1LRCFvAcgDUhcLwJ96mKOMSYhtbwVmCLIlgg6+V2/nf 4D3DOv8vNfZPNQjYIf5Tr9n/D/M0+3+z/zf7f+n+/9JKUjLEc24YKcNbYz2H OWpgjyFLUjXyyq+Zhvh1ECxSL0v84WuEv4NVVhn76YijFFGcc3CEiVL4cwSb k2NehiudimBjtkN9VoGJMd/fUUWRy32T5bOOrHNf6ltuS721jk59yy2qf+V5 x7KnOlRFdiaW+dtXiiRAt8+UibNPQs0soD+ExhT3VRlYC4JQpR7Ceb9OjQJA WDwX/RQ1PLDFCXu/tFJ2m+gLNIsx8Ccl6tHJvDHgLVTom5hZs/A1cSabN3Tp gqMLbyP4HWTDkw4vBDRzJJ+Cj8FxQcahhaPQOjugLHBlBS9sYgI1+rWH/Abt mUvDxHJTyHDDHlOJ9JsbSibbKKZ4UdRlVlaluFDdTePUvMCviIjoy2MyAk6g zQb+z6smMi3OJiC4iomhagJsUhFiydUlq/xtMPSX7ApIwcpUQLM49wne32Eg /3hOzeGLrdGSUrOr3AXQri/SFHCHmPKpy1IuJwdo45oPLZ2tOt4iweU7U9sQ zTpcVCd+couC6DCezQLimtJxlWSSMLTvdv935T8MjkvGOns0At1o/9l39T9n 52eN/edBnkb+a+S/Rv7bj/5HrZ2lCp8+akxUgka6nVJrrvbbQl4RQdNkADvO m1f2TG7o7TQ/SZBxXHPTymmJPakocjR0207Njc5HfJ0nziBTnTEafih703ws dKV2sav9DepZfqmPu/8PZyCXJcH/HHL/7/XPC/v/6Ytm/z/E0+z/zf7f7P/7 2f/V2qki/uCfpX4Q2+zbNtIq7w8GQm9I9JYo338tPM322zzqcfd/PxoGMDOS A+7/Z4ML9/4Hzv/N/n+Qp2z/b/w/Gv+Pxv/jaf4fah3VugAJPEM59zoOgtKY N2sx4Lk7XsyAP2YtxsZqhpTlDdzrMYO0QhEb1QMzJOkfKFGHwcmuJUBqgxoB MQxKOA4xeV+GEWiAmROrrjGsBFO7Mpl7XAtCFOqR8TTNw+UCh455QZdhTORw IjnprWR+TEIVmtqfzThq9u7uMVrlYQg/1SnkoO9Ck45JZ2IC4fRzsZ4xTouY 9irpy8LZuXISiPxMpsc5RYvrWaOKX3pTKx61Di6cx6bCXOs8elW4VG4/g1HH tS5ady+SGKNRi+ES5mA0EXQ0SbStt6KWw6fYDvU3XQ3mE25Yn3puE5hB1Ac9 WK+u6W8yoJ5eeSZwExMHv91NcTEBwhAKacV0oTymybJYzKiVPfFCch4ywEJr ua50Omzd0wWzhyK2MmPWDZwuKpK3j2BajSgBCie4QSupSvQtvHdraexQnKJB 3eHSizfQ+kqPLrE+whwtd3SdhcTFBXMSq7KKkH0rXT0zjib/73/v/WxuE7kr HbtyajS2+KNM7pNxr1bFUU8JfcI7TqoLr9M4Szb11MJj+lzSLiuzNw1hY9X9 Dp5C/JcgO3T8l7PT3pkb/+W819h/HeTZKP83er9G79fo/dbHfUEpIS+kL2qF tbQLusbhkT8PRiZdi2A1pk/u7aFtDv7VWMMDj8bzMMtQfLeSbGNsOPJt0xWQ SQ2Ofk278vKwkVrsUdeDCv/mCOTV0vSgk48zWcBdTMSCU5dj2RmZOicFA45L lT88l6XDYNlkKo/QnDulaD4FQI9ubHXKCWPF4mEpXXdC51YJVpiWObayatN3 K7MKHcn8Gbeb0jJCn9RLsSuT1Shv56Uqb09Ze+xIerCWsbU9tAFkzpMWHESO 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 --8323328-1504231197-1147787694=:14189 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ Octave-graphics mailing list [email protected] https://www.cae.wisc.edu/mailman/listinfo/octave-graphics --8323328-1504231197-1147787694=:14189--