|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Hi,
Inside a loop, i compute a color with this basic code :
#declare thisHSL = rgb <360*i/N, 1, 0.40>;
#declare thisRGB = CHSL2RGB(thisHSL);
Always in the same loop, if i use the color like that :
pigment {rgb thisRGB }
POVRay say : Parse warning : Suspicious expression after rgb.
And after progress in loop, crash !!!
On the other hand, if i use the color like that :
pigment {rgb <thisRGB.red, thisRGB.green, thisRGB.blue> }
all is OK !
Where is a problem ?
I use POV-Ray 3.8.0-alpha10013324.unofficial on Mac.
--
Kurtz le pirate
Compagnie de la Banquise
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I've had to struggle with this many times before.
> Always in the same loop, if i use the color like that :
> pigment {rgb thisRGB }
Try
pigment {color rgb thisRGB }
or
#local Color = thisRGB;
pigment {Color}
Also, provide the details of "crash" - what happens? Is there an output?
Error message?
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Op 02/09/2019 om 17:25 schreef kurtz le pirate:
> Hi,
>
> Inside a loop, i compute a color with this basic code :
> #declare thisHSL = rgb <360*i/N, 1, 0.40>;
> #declare thisRGB = CHSL2RGB(thisHSL);
>
>
> Always in the same loop, if i use the color like that :
> pigment {rgb thisRGB }
>
> POVRay say : Parse warning : Suspicious expression after rgb.
The 'suspicious' expression is that 'rgb' is used twice.
either write:
#declare thisHSL = <rgb*i/N, 1, 0.40>;
without the 'rgb'; or, later in the loop:
pigment {thisRGB}
> And after progress in loop, crash !!!
See Bald Eagle's comment concerning the crash.
>
> On the other hand, if i use the color like that :
> pigment {rgb <thisRGB.red, thisRGB.green, thisRGB.blue> }
>
> all is OK !
>
> Where is a problem ?
>
>
> I use POV-Ray 3.8.0-alpha10013324.unofficial on Mac.
>
>
--
Thomas
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Le 19-09-02 à 11:25, kurtz le pirate a écrit :
> Hi,
>
> Inside a loop, i compute a color with this basic code :
> #declare thisHSL = rgb <360*i/N, 1, 0.40>;
> #declare thisRGB = CHSL2RGB(thisHSL);
>
>
> Always in the same loop, if i use the color like that :
> pigment {rgb thisRGB }
>
> POVRay say : Parse warning : Suspicious expression after rgb.
> And after progress in loop, crash !!!
>
> On the other hand, if i use the color like that :
> pigment {rgb <thisRGB.red, thisRGB.green, thisRGB.blue> }
>
> all is OK !
>
> Where is a problem ?
>
>
> I use POV-Ray 3.8.0-alpha10013324.unofficial on Mac.
>
>
CHSL2RGB() return the result as rgbft<Red, Green, Blue, Filter, Transmit>
thisHSL<R,G,B> get promoted to thisHSL<R,G,B,0,0>
The message come from assigning a 5D vector to a 3D destination : There
is a mismatch.
So, use : pigment {rgbft thisRGB }
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Thanks to all for your help.
Now, i use :
#local thisHSL = rgb <360*i/N, 1, 0.40>;
#local thisRGB = CHSL2RGB(thisHSL);
and
pigment { color rgb <thisRGB,0,0> }
... and all is OK :)
--
Kurtz le pirate
Compagnie de la Banquise
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|