几何尺寸与公差论坛

 找回密码
 注册
查看: 86|回复: 2

PR 256825 Concenttricity value is about 160mm

[复制链接]
发表于 2009-1-14 20:47:58 | 显示全部楼层 |阅读模式
Concenttricity value is about 160mm
<< Jean Wang  --  09/02/08  18:28:54>>
This version just fixed the concentricity in Legacy mode, but there is another unbelievable value in FCF mode, the value is about 160mm, please see the file fcf_concentricity.rar.
<<END>>

<< Changes made by Neil Kay -- 12/12/08  09:25:53>>
Action:  CMM Group to Yanhua Huang
<<END>>
<< Don Turcotte  --  09/03/08  11:39:04>>
The problem here is that the changes for 252759 were not applied to V42 MR2 nor V43 MR1.  
For V42 MR2, I merged only the changes for FCF since the changes for legacy require additional PR fixes that have not been made to this version.  This fixes the immediate issue of this PR which concerns only FCF concentricity.
For V431 (V43 MR1), I merged all the changes.
For V42 beta, only the changes to Hyperanalctrl4.cpp were needed.  The other changes are already in V42 beta.
Files inserted to server
------------------------
V42R\DIMENS\DIM_CONC.CPP
V42R\HYPER\HYPERANALCTRL4.CPP
V431\DIMENS\DIM_CONC.CPP
V431\HYPER\HYPERANALCTRL4.CPP
V42\HYPER\HYPERANALCTRL4.CPP
<<END>>
<< Changes made by Don Turcotte -- 09/03/08  11:41:07>>
Action:  Don Turcotte to CMM Group, Status:  OPEN to REVIEW
<<END>>
<< Jean Wang  --  09/03/08  21:53:21>>
I uploaded one more time,please check it.
<<END>>
<< Changes made by Don Turcotte -- 09/03/08  09:59:07>>
Action:  Jean Wang to Don Turcotte, Status:  MOREINFO to OPEN
<<END>>
<< Don Turcotte  --  09/02/08  13:09:42>>
Jean,
There is no file attached to this problem report.
<<END>>
<< Changes made by Don Turcotte -- 09/02/08  13:09:42>>
Action:  Don Turcotte to Jean Wang, Status:  OPEN to MOREINFO
<<END>>
<< Changes made by Tim Wernicke -- 09/02/08  10:14:01>>
Action:  Tim Wernicke to Don Turcotte, Assigned:   to Don Turcotte, Priority:  to Stop Rel.
<<END>>
 楼主| 发表于 2009-1-14 20:55:07 | 显示全部楼层

回复: PR 256825 Concenttricity value is about 160mm

V42\HYPER\HYPERANALCTRL4.CPP
  
  else if( dimtype == DIMENSION_CONCENTRICITY ) // PR252759
    {
      CPoint3 vector;
      vector[0] = m_dimanalysis_activex.GetMeasVector2_I();
      vector[1] = m_dimanalysis_activex.GetMeasVector2_J();
      vector[2] = m_dimanalysis_activex.GetMeasVector2_K();

      G3VIEWSET viewset;
      m_pDisplay->GetViews(viewset);
      CTransform ViewTrans;

      ViewTrans.newmat(vector);

      for (int i = 0; i < 4; i++)
      {
        for (int j = 0; j < 3; j++)
        {
          viewset.views[0].Trans[j] = ViewTrans.m_data[j];
        }
      }
      m_pDisplay->SetViews(viewset);
    }
 楼主| 发表于 2009-1-14 20:58:01 | 显示全部楼层

回复: PR 256825 Concenttricity value is about 160mm

V431\DIMENS\DIM_CONC.CPP

  // PR252759 - If legacy concentricity, use the alignment and workplane in effect when feature2 was measured.
  //            We must use a workplane which is relevant to feature2 and not simply any workplane that is
  //                  currently in effect.
  CPCDcommand * pSaveAlign= global_align;
  int saveWorkplane = global_workplane;
  CTransform save_machine2parts;
  CTransform save_cad2parts;
  BOOL bHaveAlignmentData = FALSE;
  if( !m_pPrimary )
  {
    CPCDcommand * pCmd = m_feature2;
    CTransform machine2parts;
    CTransform cad2parts;
    int workplane = -1;
    if( pCmd && pCmd->is_feature() )
      bHaveAlignmentData = ((CPCDbasic_feature*)pCmd)->GetAlignmentData(machine2parts,cad2parts,workplane);
    if( bHaveAlignmentData && global_align )
    {
      save_machine2parts = global_align->get_alignment(MACHINETOPARTS);
      save_cad2parts = global_align->get_alignment(CADTOPARTS);
      global_align->set_alignment(MACHINETOPARTS,machine2parts);
      global_align->set_alignment(CADTOPARTS,cad2parts);
      global_workplane = workplane;
    }
    else
    {
      if( pCmd )
        pCmd = pCmd->prev;
      CPCDcommand *pFeatAlign = NULL;
      int feat_wkpl = -1;
      while( pCmd && (!pFeatAlign || (feat_wkpl == -1)) )
      {
        if( !pFeatAlign )
        {
          switch( pCmd->type() )
          {
          case START_ALIGN:
          case RECALL_ALIGN:
            //case BF2D_ALIGN: // PR244028 - look for the START_ALIGN command
            //case BF3D_ALIGN: // PR244028
            //case ITER_ALIGN: // PR244028
            pFeatAlign = pCmd;
            break;
          }
        }
        if( feat_wkpl == -1 )
        {
          if( pCmd->type() == SET_WORKPLANE )
            feat_wkpl = ((CPCDworkplane*)pCmd)->workplane;
        }
        pCmd = pCmd->prev;
      }
      if( pFeatAlign )
        m_pPartProgram->GetCurrentSettings()->SetCurrentAlignment(pFeatAlign);
      if( feat_wkpl != -1 )
        global_workplane = feat_wkpl;
    }
  }
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|几何尺寸与公差论坛

GMT+8, 2024-12-23 01:01 , Processed in 0.038231 second(s), 19 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表