Older blog entries for crj (starting at number 10)

The Open Cascade documentation uses frames and some thing called webhelp from blue sky software which is a java front end that drives the whole thing. You can imagine how netscape on linux works with this. :) My experience is that netscape freezes 60% of the time when trying to access the documentation. Then if it does work, it may get out of whack, get lost, and you will have to restart netscape again to get it to work. The really silly thing is that this is just the index system. The actual documentation pages are just static html.

So I spent about 2 hours with ls, grep, sed, and vim and made a really ugly single static page to get at all the documentation. I also added a very useful page/index for browsing all the header files. Makes it pretty easy to check out the interfaces. download

Started to check out the Open Cascade WOK. WOK stands for Workshop Organization Kit and it is a development environment. This looks like a very powerful tool that might be applied to large other projects. An alternative to automake/autoconf, a special emacs mode, and CDL, a meta language for designing c++ applications. Very interesting indeed. Check out the users guide (pdf file).

Finally got back to implimenting my plugin menu system for FREEdraft II, the quest for cad, or whatever it shall be, and stayed up way too late last night doing so.

I think that the optimum length of a day should be about 28-30 hours. 20-22 hours of activity, and 8 solid hours of sleep. This 24 hour day is way too short. Otherwise why don't I ever feel tired at 2AM? Couldn't have anything to do with drinking 2 litres of Coke in the evening?

I wonder if the rotation of the earth could be slowed down somehow. Maybe by placing huge fusion-powered rocket motors in space and attaching them with cables to locations on the equator. No? I guess environmentalists would be all upset or something. I guess I should just put black construction paper up on all the windows and just start syncronizing my "days" with indoor lighting on timers.

Confirmed that my problem was gcc 2.91 vs 2.95 kinda thing. Installed 2.95 and now I am all powerful.

Got a little system going developed where a family of classes can be dynamically loaded and instansiated, which is what I need for my menu handling module. groove.

GO RED WINGS!

codic gave me some tangy code for dynamic loading of libraries in C++, but I can't get it to compile. My current guess is that the template member functions with which it is implemented are not supported until gcc 2.95 ( I have 2.91). Can anyone confirm this?

--

Listening to Englishtown 9/3/77... What a sweet Eyes!

--

Wrote the big check to the IRS paying for my good foutune yesterday. Hope all you students who are getting my money, via the force of government, to pay for your brainwashing are happy with your subsidy. (not!)

And to the un-subsidized... I salute you.

What the heck happened to my certification? I don't post a diary entry for 4 days and I am stripped of my Journeyer certification and become a lowly observer, with no holy powers at all?

Just when I saw an article that I wanted to comment on, I have no power to comment.

I don't understand this system I guess. :)

Oh golly! my cert is back. thanks!

----------------

As for my WORK, today I am prototyping an new menu system based on plugins.

I have put the 2D drawing services into a package/distribution where is can be maintained and used sepearatly from FREEdraft. Now I am getting back to the actual porting of the system. One of the things I want to do is to develop a plugin based command and menu system. I've wanted to do this for a long time - the way I do the menu system now really really sucks hard.

I wonder if there is a generic plugin system for C++ out there that I can adapt to my needs? Right now I am trying to use the plugin manager from Mindseye, but as there are no actual plugins in Mindseye, its kind of tricky to visualize what a plugin object should look like, and exactly how it should be build. developing...

Got the 2D viewer at least doing something with V. This was a lot more trouble than getting the 3D to work, as 2D drawing services in Cascade are not really available yet, or at least so cryptically documentend it is near impossible to figure out they work. What I ended up doing is taking a lot if code out of the samples program. Seems to work, but the 2dView::Fitall() function does not seem to work on the hand rolled InteractiveObjects. Hmmm. Getting there...

Got the Cascade 3d viewer working in V experimentally. Now I can proceed with using the 2d viewer and 2d graphic objects in FREEdraft.

If this works it will make designing new features into FREEdraft much much easier.

I can then look at OCAF and see what it can do. I wonder what it might be good for in non CAD applications?

Imagine having preprocessor macros leak into your program from a common library header file which turns

foo::Status()

into

foo::int()

or

bar::Convex()

into

bar::2()

Well actually I don't have to imagine. Because thats what will happen if you happen to #include<Xlib.h> and have the balls to have a member function named Status or Convex, which it turns out are X11 macros! Stupid little useless macros even. Well isn't that smart. "Um Nobody would ever want to use the word 'Status' or 'Convex' in a program!" Like they could'nt have used X11_Convex or something.

Just micro ranting cause it took me two hours to figure out what was going on. :)

Worked some on FREEdraft conversion project. Converted Drawable entity classes to use the open cascade Geom2d_Geomtry types. Looking at how/if to apply the Graphic2d classes. They look mighty attractive.

Dinner: Stir fryed half a chicken breast, sliced, in chili sauce and garlic with red pepper - in a small amount of way hot peanut oil. And served it over steamed brocolli and asparagus. It was super yummy. A Coke to drink, of course.

1 older entry...

New Advogato Features

New HTML Parser: The long-awaited libxml2 based HTML parser code is live. It needs further work but already handles most markup better than the original parser.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!