Monday, May 22, 2006
Confessions of an uber-geek
I have been spending my lunch hours for the past week or so prototyping a class that will be the first of many for my upcoming computerized home brewery... I figured that while it may be a year or so (or more) before we start constructing it, I could start dabbling with a user interface and figuring out how to display items. My plan is to make the interface layout configurable and customizable such that anyone that wanted to use it in their own home systems could easily do so. I don't think I'll be able to slap that level of generality on the back-end state machine for valve / pump / temperature controls, but we'll see.
The screenshot you see to the left is my test application for clsPipe, a very generic class that allows the user to run pipe based on a collection of points. You can easily turn various properties on and off to render it in a different way... in this case, it looks like we're running Budweiser through the lines... But you can easily specify the color of the pipe & liquid as well.
I also added a couple of routines to quickly and easily render tubing coils, not that homebrewers ever use such things... The routines are flexible enough to even allow shell & tube arrangements (such as a counterflow chiller) to be rendered without much difficulty.
This class would probably be used primarily for hard-piped configurations... I figure the next logical extension of the class (or perhaps a new one) will be to allow users to run "tubing" lines through some points and render them using Bezier curves and maybe some bitmap overlays...
Of course I still need to work on how to render tanks, pumps, valves, etc, but I already have some ideas for that running around in my head... I also want to make the graphics such that they can be "animated"... which shouldn't be too hard.
Again, its just a beginning on the long road to getting a working computerized system, but I have a feeling this dream will come true... I've got the skills to make sure it does ;-)
The screenshot you see to the left is my test application for clsPipe, a very generic class that allows the user to run pipe based on a collection of points. You can easily turn various properties on and off to render it in a different way... in this case, it looks like we're running Budweiser through the lines... But you can easily specify the color of the pipe & liquid as well.
I also added a couple of routines to quickly and easily render tubing coils, not that homebrewers ever use such things... The routines are flexible enough to even allow shell & tube arrangements (such as a counterflow chiller) to be rendered without much difficulty.
This class would probably be used primarily for hard-piped configurations... I figure the next logical extension of the class (or perhaps a new one) will be to allow users to run "tubing" lines through some points and render them using Bezier curves and maybe some bitmap overlays...
Of course I still need to work on how to render tanks, pumps, valves, etc, but I already have some ideas for that running around in my head... I also want to make the graphics such that they can be "animated"... which shouldn't be too hard.
Again, its just a beginning on the long road to getting a working computerized system, but I have a feeling this dream will come true... I've got the skills to make sure it does ;-)