In general I have a subset of code, from a larger tree, that I want to turn 
into an external compound to use in other trees. This compound if extracted 
verbatim has a set data node in it, applied to a very specific 
parameter(kine.pathcns.prc), just before execute.

But I have two ways that I would like to design it, one with a set data node, 
and the other with just a scalar value output which the set data typically 
receives. I was trying to make it so that both were an option either by a 
Boolean switch or have both simply exist as outputs. Problem was that the 
constraint has never been applied to the object receiving this tree, so the 
parameter doesn't exist and the compound is not validated.

I was confused in that I had applied if conditionals just before execute in the 
past to mute trees or switch between different evaluations to output, what I 
did not realize was that this worked because the parameter pre-existed. Since 
the parameter just doesn't exist in this case it fails and there seems to be no 
"if exists" test.

--
Joey Ponthieux
LaRC Information Technology Enhanced Services (LITES)
Mymic Technical Services
NASA Langley Research Center
__________________________________________________
Opinions stated here-in are strictly those of the author and do not
represent the opinions of NASA or any other party.

From: [email protected] 
[mailto:[email protected]] On Behalf Of Raffaele Fragapane
Sent: Wednesday, July 17, 2013 7:26 PM
To: [email protected]
Subject: Re: set data

I'm not 100% sure I understand what you're trying to do, but if it's of any use 
evaluating and fetching data are completely different things.
You can almost always rely on data for checks (I say almost becuase it's even 
TOO reliable as it lets you use things before you set them, which is a nice 
trick with arrays, but some times bites), evaluation though is strongly rule 
driven and you have to think of it as non-transparent, or at least 
non-manipulatable.
You simply can't rely on checking if something will be evaluated a certain way 
or not, because evaluation itself comes before you could get a result.
It'd be different if you had some of the classic parallel programming devices 
available (barriers, traffic lights, forceful eval ordering and so on), but ICE 
tries hard to maximize performance while exempting the user from dealing with 
those details actually.

On Thu, Jul 18, 2013 at 3:49 AM, Ponthieux, Joseph G. (LARC-E1A)[LITES] 
<[email protected]<mailto:[email protected]>> wrote:
Grahame,

Thanks. I'll try these approaches.

I think the thing that confuses me is that I've used If conditionals to mute 
compounds before, and they've worked. But in this case it won't.

--
Joey Ponthieux
LaRC Information Technology Enhanced Services (LITES)
Mymic Technical Services
NASA Langley Research Center
__________________________________________________
Opinions stated here-in are strictly those of the author and do not
represent the opinions of NASA or any other party.

From: 
[email protected]<mailto:[email protected]>
 
[mailto:[email protected]<mailto:[email protected]>]
 On Behalf Of Grahame Fuller
Sent: Wednesday, July 17, 2013 1:44 PM

To: [email protected]<mailto:[email protected]>
Subject: RE: set data

You can create a compound that just calculates the value, and then let users 
plug that into a Set Data themselves or alternatively create a second compound 
that embeds the first one plus a Set Data. I've used that approach several 
times. Of course, it won't work if the calculation requires an iterative 
execution (like the curve distance/location compounds).

Another possibility is to have output ports for both the value and the set data 
execution. The "display" compounds in the Debugging category are designed like 
that.

gray

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Ponthieux, 
Joseph G. (LARC-E1A)[LITES]
Sent: Wednesday, July 17, 2013 12:48 PM
To: [email protected]<mailto:[email protected]>
Subject: RE: set data

I have a compound that I would like to be used to either apply a computed value 
to a parameter, or alternatively a value to other compounds. I was trying to 
make the compound do double duty as something useful as a standalone node vs a 
node useful to a larger tree.

--
Joey Ponthieux
LaRC Information Technology Enhanced Services (LITES)
Mymic Technical Services
NASA Langley Research Center
__________________________________________________
Opinions stated here-in are strictly those of the author and do not
represent the opinions of NASA or any other party.

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Grahame Fuller

Sent: Wednesday, July 17, 2013 12:11 PM
To: [email protected]<mailto:[email protected]>
Subject: RE: set data

No, the references must get resolved before the tree is even evaluated.

Can you say anything more about the overall problem you are trying to solve? 
There may be another way.

gray

From: 
[email protected]<mailto:[email protected]>
 [mailto:[email protected]] On Behalf Of Ponthieux, 
Joseph G. (LARC-E1A)[LITES]

Sent: Wednesday, July 17, 2013 12:05 PM
To: [email protected]<mailto:[email protected]>
Subject: set data

Is there any way to make a set data node ignore a parameter that does not exist 
because the object it belongs to might not exist?

I've tried using first valid but it can't accept execute. I then tried an if 
conditional  to terminate the execute channel as an option but it does not 
appear to be able to ignore execute whether on or off.



--
Joey Ponthieux
LaRC Information Technology Enhanced Services (LITES)
Mymic Technical Services
NASA Langley Research Center
__________________________________________________
Opinions stated here-in are strictly those of the author and do not
represent the opinions of NASA or any other party.




--
Our users will know fear and cower before our software! Ship it! Ship it and 
let them flee like the dogs they are!

Reply via email to