|
|
|
|
|
|
| |
| |
|
|
|
|
| |
| |
|
|
I know what ifdef does (the example below shows me using it)...
//#declare text2use = 2;
box {
<-10,0,11>,<10,10,10>
#ifdef(text2use)
texture { pigment { White } }
#else
texture { pigment { Green } }
#end
}
.... but I'm struggling to understand when you would use it. Why would you refer
to a variable you've not defined? Isn't that just sloppy coding.
Has anyone got/had a real-use case for this command? I'd love to know what I'm
missing out on.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Le 03/03/2014 18:49, FNH nous fit lire :
> I know what ifdef does (the example below shows me using it)...
>
> //#declare text2use = 2;
>
> box {
> <-10,0,11>,<10,10,10>
>
> #ifdef(text2use)
> texture { pigment { White } }
> #else
> texture { pigment { Green } }
> #end
>
> }
>
> .... but I'm struggling to understand when you would use it. Why would you refer
> to a variable you've not defined? Isn't that just sloppy coding.
>
> Has anyone got/had a real-use case for this command? I'd love to know what I'm
> missing out on.
>
>
you can define variable in code, but also in command line.
the most traditional use is the classical protection of include file: if
the value already exist, skip the definition.
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
Le_Forgeron <jgr### [at] freefr> wrote:
> Le 03/03/2014 18:49, FNH nous fit lire :
> > I know what ifdef does (the example below shows me using it)...
> >
> > //#declare text2use = 2;
> >
> > box {
> > <-10,0,11>,<10,10,10>
> >
> > #ifdef(text2use)
> > texture { pigment { White } }
> > #else
> > texture { pigment { Green } }
> > #end
> >
> > }
> >
> > .... but I'm struggling to understand when you would use it. Why would you refer
> > to a variable you've not defined? Isn't that just sloppy coding.
> >
> > Has anyone got/had a real-use case for this command? I'd love to know what I'm
> > missing out on.
> >
> >
>
> you can define variable in code, but also in command line.
>
> the most traditional use is the classical protection of include file: if
> the value already exist, skip the definition.
Excellent, I'll have try using as a command line switch. Thanks :)
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
"FNH" <nomail@nomail> wrote:
> I know what ifdef does (the example below shows me using it)...
>
> //#declare text2use = 2;
>
> box {
> <-10,0,11>,<10,10,10>
>
> #ifdef(text2use)
> texture { pigment { White } }
> #else
> texture { pigment { Green } }
> #end
>
> }
>
> .... but I'm struggling to understand when you would use it. Why would you refer
> to a variable you've not defined? Isn't that just sloppy coding.
>
> Has anyone got/had a real-use case for this command? I'd love to know what I'm
> missing out on.
It is just to ensure that a certain thing exists. Your code will use this thing
and you can define a default value, if you have not defined it earlier - may be
at the command line or with an earlier include or within the code itself.
Best regards,
Michael
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
| |
|
|
> I know what ifdef does (the example below shows me using it)...
>
> //#declare text2use = 2;
>
> box {
> <-10,0,11>,<10,10,10>
>
> #ifdef(text2use)
> texture { pigment { White } }
> #else
> texture { pigment { Green } }
> #end
>
> }
>
> .... but I'm struggling to understand when you would use it. Why would you refer
> to a variable you've not defined? Isn't that just sloppy coding.
>
> Has anyone got/had a real-use case for this command? I'd love to know what I'm
> missing out on.
>
>
It's often used in includes. Some uses are:
Make sure that you don't re-parse a file that's been included before.
Take a look at the base includes, they all have this construct:
#ifndef(Include_File_Flag)
#declare Include_File_Flag=version;
...body of the include file goes here...
#end
Have some defaults parameters that you can optionaly define before
calling an include or a macro.
Alain
Post a reply to this message
|
|
| |
| |
|
|
|
|
| |
|
|