|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Tom Melly <tom### [at] tomandlucouk> wrote:
: What are the chances of having this warning removed?
What should be done is that the warning is replaced with an error.
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp wrote:
> What should be done is that the warning is replaced with an error.
That's a bit extreme, isn't it? It is obviously easier, from a user's
standpoint, to type scale y*.1 than scale <1,.1,1>, and most of us do it
anyway, ignoring the warning. The fact that POV is internally groaning because
we tried to divide by zero should be immaterial to the user, who assumes by
scaling only one axis that the other ones will not be scaled by anything.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
In article <3C07F02B.A1CD5A65@aol.com> , Dave Dunn <poi### [at] aolcom>
wrote:
> That's a bit extreme, isn't it? It is obviously easier, from a user's
> standpoint, to type scale y*.1 than scale <1,.1,1>, and most of us do it
I think you got something wrong here! scale y*.1 is perfectly equivalent
with scale <1,.1,1> in POV-Ray and has nothing to do with what Warp is
talking about...
Thorsten
____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde
Visit POV-Ray on the web: http://mac.povray.org
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
On Fri, 30 Nov 2001 22:01:49 +0100, Thorsten Froehlich wrote:
> In article <3C07F02B.A1CD5A65@aol.com> , Dave Dunn <poi### [at] aolcom>
> wrote:
>
>> That's a bit extreme, isn't it? It is obviously easier, from a user's
>> standpoint, to type scale y*.1 than scale <1,.1,1>, and most of us do it
>
> I think you got something wrong here! scale y*.1 is perfectly equivalent
> with scale <1,.1,1> in POV-Ray and has nothing to do with what Warp is
> talking about...
Actually, it's equivalent to scale <0,.1,0> (except that we change it to
<1,.1,1> and print a warning) and is in fact exactly what Warp is talking
about: he thinks the warning should be an error instead. Or at least it
appears so to me; perhaps he would like to clarify.
--
#local R=rgb 99;#local P=R-R;#local F=pigment{gradient x}box{0,1pigment{gradient
y pigment_map{[.5F pigment_map{[.3R][.3F color_map{[.15red 99][.15P]}rotate z*45
translate x]}]#local H=pigment{gradient y color_map{[.5P][.5R]}scale 1/3}[.5F
pigment_map{[.3R][.3H][.7H][.7R]}]}}}camera{location.5-3*z}//only my opinions
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
x, y and z are just *shortcuts* for <1,0,0> <0,1,0> and <0,0,1>
respectively. As you know vectors aren't used exclusively for
transformations (i.e. rotations, translations and scale), so they must work
the same way in any circumstance. I mean, if I write y, I mean <0,1,0> (what
otherwise?). So, since rotate, translate and scale need a vector, and since
x, y and z are those vectors I mentioned above and HAVE to work the same way
everywhere, if you write scale 2*x the parser HAS to read <2,0,0>. I
personally never used to scale individual axes, but think that those
warnings are just enough.
--
Jonathan.
"Dave Dunn" <poi### [at] aolcom> ha scritto nel messaggio
news:3C07F02B.A1CD5A65@aol.com...
>
>
> Warp wrote:
>
> > What should be done is that the warning is replaced with an error.
>
> That's a bit extreme, isn't it? It is obviously easier, from a user's
> standpoint, to type scale y*.1 than scale <1,.1,1>, and most of us do it
> anyway, ignoring the warning. The fact that POV is internally groaning
because
> we tried to divide by zero should be immaterial to the user, who assumes
by
> scaling only one axis that the other ones will not be scaled by anything.
>
>
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
In article <slr### [at] fwicom> , Ron Parker
<ron### [at] povrayorg> wrote:
> Actually, it's equivalent to scale <0,.1,0> (except that we change it to
> <1,.1,1> and print a warning) and is in fact exactly what Warp is talking
> about: he thinks the warning should be an error instead. Or at least it
> appears so to me; perhaps he would like to clarify.
You are right. In fact I never knew that the syntax would cause a warning
in the first place as it (obviously) doesn't in translate or rotate i
assumed scale, also slightly different works the same. IMO, it should not be
a warning at all and just silently work...
Thorsten
____________________________________________________
Thorsten Froehlich, Duisburg, Germany
e-mail: tho### [at] trfde
Visit POV-Ray on the web: http://mac.povray.org
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Thorsten Froehlich wrote:
> IMO, it should not be a warning at all and just silently work...
That was exactly my point. For once we agree ; }
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ron Parker <ron### [at] povrayorg> wrote:
: Actually, it's equivalent to scale <0,.1,0> (except that we change it to
: <1,.1,1> and print a warning) and is in fact exactly what Warp is talking
: about: he thinks the warning should be an error instead. Or at least it
: appears so to me; perhaps he would like to clarify.
Exactly. As scaling by zero is illegal, then an error should be issued,
as with all illegal values.
Think about this:
camera { look_at 0 }
Having the camera location and look_at in the same point is illegal, and
thus an error is issued. POV-Ray doesn't (and shouldn't!) assume that
"oh, the user just mistyped this number, I'll convert it to 'look_at z' for
him".
--
#macro N(D,I)#if(I<6)cylinder{M()#local D[I]=div(D[I],104);M().5,2pigment{
rgb M()}}N(D,(D[I]>99?I:I+1))#end#end#macro M()<mod(D[I],13)-6,mod(div(D[I
],13),8)-3,10>#end blob{N(array[6]{11117333955,
7382340,3358,3900569407,970,4254934330},0)}// - Warp -
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Warp wrote:
> Exactly. As scaling by zero is illegal, then an error should be issued,
> as with all illegal values.
I am perfectly happy with the current behavior and with respect choose
to disagree with your suggestion.
> Think about this:
I would rather not.
--
Ken Tyler
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Ken wrote:
> I am perfectly happy with the current behavior and with respect choose
> to disagree with your suggestion.
At the risk of flogging this topic beyond death, I would like to point out that
the default values for translate and rotate are <0,0,0>, but that the default
values for scale are <1,1,1>. In other words, and object that has not been
translated has a default translation of zero on all axes because it hasn't been
translated yet. The same object, if it has been created at a given size, is
scaled to 1 on all axes. In this way, we can move an object along x by typing
"translate x*4," because this is, in effect, a translation of <4,0,0>. In order
to maintain consistency at the user level (I keep hearing that things should
hold true in every case, a scale of our object along y by 2 should be able to
be written "scale y*2," returning the defaults, for an equivalent expression of
<1,2,1>. IMO, the warning (and certainly not an error) should not be given,
because the original assumption that default scaling should be <0,0,0>, is
wrong.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|