sensible handling of map==0

This commit is contained in:
nemu 2008-05-16 08:31:52 +00:00
parent d6933bae59
commit 7e646d360a

View File

@ -373,7 +373,10 @@ double PFunction::EvalNode(PFuncTreeNode &node)
} else if (node.fID == PFunctionGrammar::parameterID) {
return fParam[node.fIvalue-1];
} else if (node.fID == PFunctionGrammar::mapID) {
return fParam[fMap[node.fIvalue-1]-1];
if (fMap[node.fIvalue-1] == 0) // map == 0
return 0.0;
else
return fParam[fMap[node.fIvalue-1]-1];
} else if (node.fID == PFunctionGrammar::functionID) {
if (node.fFunctionTag == FUN_COS) {
return cos(EvalNode(node.children[0]));