|
|
|
|
|
|
| |
| |
|
|
From: Tom Galvin
Subject: How to Build a GUI Extension to POV-Ray for Windows.
Date: 31 Jul 2002 20:46:17
Message: <3d4884d9$1@news.povray.org>
|
|
|
| |
| |
|
|
After a long break, I have started banging my head against the wall trying
to do this. At least this time I think I am making progress. I can at
least compile now without errors and only a hundred or so warnings. I have
been taking notes as I have been going along and I am posting them to here
as I go:
http://www.imp.org/visitors/guiext/cookbook.asp
Any comments, tips, or hints will be much appreciated.
Thanks
Tom
Post a reply to this message
|
|
| |
| |
|
|
From: Andrew Wilcox
Subject: Re: How to Build a GUI Extension to POV-Ray for Windows.
Date: 1 Aug 2002 12:12:16
Message: <3d495de0$1@news.povray.org>
|
|
|
| |
| |
|
|
When I get some time in the next couple of days, I'll try to follow your
cookbook and see how far I get. I'm wanting to write a GUIEXT Java API, but
hadn't had the time to even research where to begin. It may be a week or
two before I get to it, but I'll let you know how far I get following you.
--
#macro Q(A,E,W)box{-A/2,A/2pigment{rgb 9*W}translate E*A+W/1000}#end#macro
M(D,E)#local A=1/pow(3,D);#if(D<3)#local C=D+1;union{M(C,1)M(C,x+y)M(C,x+z)
M(C,y+z)M(C,x+y-z)M(C,x+z-y)M(C,y+z-x)M(C,x-y)M(C,z-x)M(C,y-z)M(C,y-x)M(C,
x-z)M(C,z-y)M( C,x-y-z)M(C,y-x-z)M(C,z-x-y)translate A*E}#else
Q(A,E,x)Q(A,E,y) Q(A,E,z)#end#end union{M(0,0)rotate<45,145,0>translate
z*2}//Andrew
Post a reply to this message
|
|
| |
| |
|
|
From: Vahur Krouverk
Subject: Re: How to Build a GUI Extension to POV-Ray for Windows.
Date: 1 Aug 2002 14:46:51
Message: <3D49823B.3080204@comtrade.ee>
|
|
|
| |
| |
|
|
Tom Galvin wrote:
> After a long break, I have started banging my head against the wall trying
> to do this. At least this time I think I am making progress. I can at
> least compile now without errors and only a hundred or so warnings. I have
> been taking notes as I have been going along and I am posting them to here
> as I go:
>
> http://www.imp.org/visitors/guiext/cookbook.asp
>
> Any comments, tips, or hints will be much appreciated.
>
Some tips for compiling POV-Ray (or more correctly, MegaPov) with
Borland's compiler could be found in thread 'free borland' in this very
same newsgroup, dated 2001-04-17. Perhaps it will help, although it's
not related to GUI Extensions.
Post a reply to this message
|
|
| |
| |
|
|
From: Andrew Wilcox
Subject: Re: How to Build a GUI Extension to POV-Ray for Windows.
Date: 1 Aug 2002 18:38:42
Message: <3d49b872$1@news.povray.org>
|
|
|
| |
| |
|
|
Ok, I'm following your cookbook, and so far so good. I haven't tried a
compile yet, but I got the Borland compiler, and the POV 3.5 source.
There's a type under "Installing POV Source" item number 5. It says:
Copy the file FRAME.H from C:\POVSRC to C:\MYGUIEXT
I think it should read.
Copy the file FRAME.H from C:\POVSRC\SOURCE to C:\MYGUIEXT
At least that's what it is for the 3.5 source.
--
#macro Q(A,E,W)box{-A/2,A/2pigment{rgb 9*W}translate E*A+W/1000}#end#macro
M(D,E)#local A=1/pow(3,D);#if(D<3)#local C=D+1;union{M(C,1)M(C,x+y)M(C,x+z)
M(C,y+z)M(C,x+y-z)M(C,x+z-y)M(C,y+z-x)M(C,x-y)M(C,z-x)M(C,y-z)M(C,y-x)M(C,
x-z)M(C,z-y)M(C,x-y-z)M(C,y-x-z)M(C,z-x-y)translate A*E}#else Q(A,E,x)Q(A,E
,y)Q(A,E,z)#end#end union{M(0,0)rotate<45,145,0>translate z*2}//Andrew
Post a reply to this message
|
|
| |
| |
|
|
From: Andrew Wilcox
Subject: Re: How to Build a GUI Extension to POV-Ray for Windows.
Date: 2 Aug 2002 12:11:33
Message: <3d4aaf35@news.povray.org>
|
|
|
| |
| |
|
|
Ok, I got the guidemo.c compiled and installed into POV-Ray, pretty cool.
I used the following compile arguments with bcc32.exe
bcc32 -WD -O2 -Vx -Ve -X- -a8 -b- -k- -vi -tWD -tWM- -q -lD"" -laa -lTpd -lx
-lGn -lGi -eguiext.pge *.c
Which I got from this web page:
http://www.textpad.com/support/tips/borlandtip.html#dll
Then I modified the PVENGINE.INI file and added followling line. The
guiext.pge is just the temporary name I working under, I'll change it as per
the license agreement when I get to a release point.
ExtDll16=u:\source\com\unpuzzled\d3\guiext\guiext.pge
under the [GUIExtensions] header...
So the file ended up looking like this.
[GUIExtensions]
UseExtensions=1
ExtDll15=D:\Program Files\Moray For Windows\MorayCtrl.DLL
ExtDll16=u:\source\com\unpuzzled\d3\guiext\guiext.pge
Started up POV and to my amazement there it was...
Now I just have to figure out how to implement what I really want it to
do...
--
#macro Q(A,E,W)box{-A/2,A/2pigment{rgb 9*W}translate E*A+W/1000}#end#macro
M(D,E)#local A=1/pow(3,D);#if(D<3)#local C=D+1;union{M(C,1)M(C,x+y)M(C,x+z)
M(C,y+z)M(C,x+y-z)M(C,x+z-y)M(C,y+z-x)M(C,x-y)M(C,z-x)M(C,y-z)M(C,y-x)M(C,
x-z)M(C,z-y)M(C,x-y-z)M(C,y-x-z)M(C,z-x-y)translate A*E}#else Q(A,E,x)Q(A,E
,y)Q(A,E,z)#end#end union{M(0,0)rotate<45,145,0>translate z*2}//Andrew
Post a reply to this message
|
|
| |
| |
|
|
From: Tom Galvin
Subject: Re: How to Build a GUI Extension to POV-Ray for Windows.
Date: 3 Aug 2002 12:02:36
Message: <3d4bfe9c$1@news.povray.org>
|
|
|
| |
| |
|
|
"Andrew Wilcox" <awi### [at] unpuzzledcom> wrote in message
news:3d4aaf35@news.povray.org...
> I used the following compile arguments with bcc32.exe
>
>
bcc32 -WD -O2 -Vx -Ve -X- -a8 -b- -k- -vi -tWD -tWM- -q -lD"" -laa -lTpd -lx
> -lGn -lGi -eguiext.pge *.c
>
<snip>
Wow! Thanks. I just started down playing with the compiler/linker switches
last night at
the airport. Lot's of activity, but little progress. I will update the the
instructions on the
web page this weekend with your findings.
>
> Now I just have to figure out how to implement what I really want it to
> do...
>
I know! That problably will make the initial compile look like a walk in
the park.
Thanks
Tom
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
test post
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I cannot do an (*Instance->Request)(RequestGetVars, &ExternalVars) ; in the
following method. I assume its because POV hasn't fully initialized Instance
yet. I need to know the Instance.HomePath so that I can read my .ini file
and initialize Instance.Enabled correctly.
What do I do?
Is there some place else I can set Enabled after POV has initialized the
DLL? Or do I just have to know the directory where POV is installed,
without being able to ask POV itself?
Thanks in advance,
Andrew Wilcox
--
#macro Q(A,E,W)box{-A/2,A/2pigment{rgb 9*W}translate E*A+W/1000}#end#macro
M(D,E)#local A=1/pow(3,D);#if(D<3)#local C=D+1;union{M(C,1)M(C,x+y)M(C,x+z)
M(C,y+z)M(C,x+y-z)M(C,x+z-y)M(C,y+z-x)M(C,x-y)M(C,z-x)M(C,y-z)M(C,y-x)M(C,
x-z)M(C,z-y)M(C,x-y-z)M(C,y-x-z)M(C,z-x-y)translate A*E}#else Q(A,E,x)Q(A,E
,y)Q(A,E,z)#end#end union{M(0,0)rotate<45,145,0>translate z*2}//Andrew
"Tom Galvin" <tom### [at] dataforgenospamcom> wrote in message
news:3d4884d9$1@news.povray.org...
Post a reply to this message
|
|
| |
| |
|
|
From: Chris Cason
Subject: Re: Trouble persisting Enabled state. Need Help.
Date: 5 Aug 2002 14:20:55
Message: <3d4ec207@news.povray.org>
|
|
|
| |
| |
|
|
"Andrew Wilcox" <awi### [at] unpuzzledcom> wrote in message
news:3d4e8265$1@news.povray.org...
> I cannot do an (*Instance->Request)(RequestGetVars, &ExternalVars) ; in the
> following method. I assume its because POV hasn't fully initialized Instance
> yet. I need to know the Instance.HomePath so that I can read my .ini file
> and initialize Instance.Enabled correctly.
>
> What do I do?
>
> Is there some place else I can set Enabled after POV has initialized the
> DLL? Or do I just have to know the directory where POV is installed,
> without being able to ask POV itself?
You could ask windows for the path to your DLL. Or you could store the state in
the registry instead of an INI file (IMO this is the best choice, POV uses an
INI file because it predates Windows 9x ; you don't have to follow our example).
Alternatively you can look at HKCU\Software\POV-Ray\CurrentVersion\Windows\Home.
Note that v3.1 of POVWIN uses HKLM for this key. If both version are installed,
the HKLM one will point at v3.1, and the HKCU will point at v3.5. But there will
also be an entry in HKLM\Software\POV-Ray\v3.5\Windows\Home pointing at the v3.5
install (provided that the person who installed it had admin rights).
-- Chris
Post a reply to this message
|
|
| |
| |
|
|
From: Andrew Wilcox
Subject: Re: Trouble persisting Enabled state. Need Help.
Date: 5 Aug 2002 15:31:06
Message: <3d4ed27a@news.povray.org>
|
|
|
| |
| |
|
|
Could I put in an HKCU\Software\POV-Ray\GUIEXT\<myguiext> key? Or should I
use a completely different path all together?
The registry would be easier to access anyway, than a file.
--
#macro Q(A,E,W)box{-A/2,A/2pigment{rgb 9*W}translate E*A+W/1000}#end#macro
M(D,E)#local A=1/pow(3,D);#if(D<3)#local C=D+1;union{M(C,1)M(C,x+y)M(C,x+z)
M(C,y+z)M(C,x+y-z)M(C,x+z-y)M(C,y+z-x)M(C,x-y)M(C,z-x)M(C,y-z)M(C,y-x)M(C,
x-z)M(C,z-y)M(C,x-y-z)M(C,y-x-z)M(C,z-x-y)translate A*E}#else Q(A,E,x)Q(A,E
,y)Q(A,E,z)#end#end union{M(0,0)rotate<45,145,0>translate z*2}//Andrew
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|