예제 #1
0
void CScope::ClearF()
{
	m_TimeListF.clear();
	m_ValueListF.clear();
	UpdateCurve();
	SetValueF(0.0);
}
예제 #2
0
//----------------------------------------------------------------------------------
//! Handle field changes of the field field.
//----------------------------------------------------------------------------------
void StringToCurve::handleNotification (Field * /*field*/)
{
  ML_TRACE_IN("StringToCurve::handleNotification ()");

  UpdateCurve();
  f_OutCurveList->notifyAttachments();
}
예제 #3
0
void CScope::ClearD()
{
	m_TimeListD.clear();
	m_ValueListD.clear();
	UpdateCurve();
	SetValueD(0.0);
}
예제 #4
0
void CScope::ClearE()
{
	m_TimeListE.clear();
	m_ValueListE.clear();
	UpdateCurve();
	SetValueE(0.0);
}
예제 #5
0
void CScope::ClearB()
{
	m_TimeListB.clear();
	m_ValueListB.clear();
	UpdateCurve();
	SetValueB(0.0);
}
예제 #6
0
void CScope::ClearC()
{
	m_TimeListC.clear();
	m_ValueListC.clear();
	UpdateCurve();
	SetValueC(0.0);

}
예제 #7
0
void CScope::ClearA()
{
	m_TimeListA.clear();
	m_ValueListA.clear();
	UpdateCurve();
	SetValueA(0.0);

}
예제 #8
0
bool VCurve2DBase::DataExchangeXML(TiXmlElement *pCurveNode, bool bWrite)
{
  if (!pCurveNode)
    return false;
  const char *szPointNodeName = "point";

  // curve points
  int iCount = GetNumPoints();
  XMLHelper::Exchange_Int(pCurveNode,"numpoints",iCount,bWrite);
  if (bWrite)
  {
    // write out points
    VCurvePoint2D *p = m_pPoints;
    for (int i=0;i<iCount;i++,p++)
    {
      TiXmlElement *pPointNode = XMLHelper::SubNode(pCurveNode,szPointNodeName,bWrite);
      p->DataExchangeXML(pPointNode,bWrite);
    }
  }
  else
  {
    // allocate and read points
    AllocatePoints(iCount);
    int iIndex = 0;   
    TiXmlNode *pFirstPoint = pCurveNode->FirstChild(szPointNodeName);
    if (pFirstPoint)
    {
	    for (TiXmlElement *pPoint=pFirstPoint->ToElement(); pPoint!=NULL; pPoint=pPoint->NextSiblingElement(szPointNodeName),iIndex++)
      {
        VASSERT(iIndex<iCount && "More point nodes defined than defined via 'numpoints' attribute");
        // First point should have x = 0.f
        if (iIndex == 0)
          m_pPoints[iIndex].m_vPos.x = 0.f;
        if (iIndex<iCount)
          m_pPoints[iIndex].DataExchangeXML(pPoint,bWrite);
      }
    }
    UpdateCurve();
  }

  return true;
}
예제 #9
0
void CScope::Clear()//分别删除方波和正弦波相关函数,释放内存
{
	m_TimeListA.clear();
	m_ValueListA.clear();
	m_TimeListB.clear();
	m_ValueListB.clear();
	m_TimeListC.clear();
	m_ValueListC.clear();
	m_TimeListD.clear();
	m_ValueListD.clear();
	m_TimeListE.clear();
	m_ValueListE.clear();
	m_TimeListF.clear();
	m_ValueListF.clear();

	UpdateCurve();
	SetValueA(0.0);
	SetValueB(0.0);
	SetValueC(0.0);
	SetValueD(0.0);
	SetValueE(0.0);
	SetValueF(0.0);

}
예제 #10
0
void StringToCurve::activateAttachments()
{
  UpdateCurve();
  f_OutCurveList->notifyAttachments();
  BaseOp::activateAttachments();
}