/* === S Y N F I G ========================================================= */
/*! \file valuenode_segcalctangent.cpp
-** \brief Template File
+** \brief Implementation of the "Segment Tangent" valuenode conversion.
**
** $Id$
**
** \legal
** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley
+** Copyright (c) 2007 Chris Moore
**
** This package is free software; you can redistribute it and/or
** modify it under the terms of the GNU General Public License as
if(x!=ValueBase::TYPE_VECTOR)
throw Exception::BadType(ValueBase::type_name(x));
- segment_=ValueNode_Composite::create(ValueBase::TYPE_SEGMENT);
- amount_=ValueNode_Const::create(Real(0.5));
+ set_link("segment",ValueNode_Const::create(ValueBase::TYPE_SEGMENT));
+ set_link("amount",ValueNode_Const::create(Real(0.5)));
}
ValueNode_SegCalcTangent*
String
ValueNode_SegCalcTangent::get_local_name()const
{
- return _("SegCalcTangent");
+ return _("Segment Tangent");
}
bool
bool
ValueNode_SegCalcTangent::set_link_vfunc(int i,ValueNode::Handle x)
{
- assert(i==0 || i==1);
+ assert(i>=0 && i<link_count());
+
if(i==0)
{
segment_=x;
ValueNode::LooseHandle
ValueNode_SegCalcTangent::get_link_vfunc(int i)const
{
- assert(i==0 || i==1);
+ assert(i>=0 && i<link_count());
+
if(i==0)
return segment_;
if(i==1)
String
ValueNode_SegCalcTangent::link_name(int i)const
{
- assert(i==0 || i==1);
+ assert(i>=0 && i<link_count());
+
if(i==0)
return "segment";
if(i==1)
String
ValueNode_SegCalcTangent::link_local_name(int i)const
{
- assert(i==0 || i==1);
+ assert(i>=0 && i<link_count());
+
if(i==0)
return _("Segment");
if(i==1)