几何尺寸与公差论坛

 找回密码
 注册
查看: 65|回复: 0

PR260122 Profile Report Labels Point to Nothing

[复制链接]
发表于 2009-3-19 20:42:08 | 显示全部楼层 |阅读模式
<< Doug Schueneman  --  02/27/09  10:09:11>>
Tim,
Please set this to stop release.
<<END>>

<< Doug Schueneman  --  02/27/09  10:08:45>>


Steps to reproduce:
Open the attached program and view a CAD or CAD landscape report.

<<END>>



<< Changes made by Doug Schueneman -- 03/12/09  12:30:45>>
Status:  RESOLVED to CLOSED
<<END>>
<< Anis Limaiem  --  03/06/09  14:52:27>>
Reviewed.
<<END>>
<< Changes made by Anis Limaiem -- 03/06/09  14:52:45>>
Action:  Anis Limaiem to Doug Schueneman, Status:  REVIEW to RESOLVED
<<END>>
<< Steve Barber  --  03/05/09  19:43:58>>
Sounds like a good plan to me Don.
<<END>>
<< Don Turcotte  --  03/05/09  17:18:37>>
I have fixed two problems here:
1.  It's not that the report labels are pointing at nothing.  They are pointing at (0,0,0).  This is because CPCDpointcloudOper has not implemented SetIDLeader(...) and GetIDLeader(...).  These methods are implemented in CPCDbasic_feature but CPCDpointcloudOper inherits directly from CPCDcommand and the default implementation in CPCDcommand does nothing.  I have implemented the following methods in CPCDpointcloudOper since they are implemented in CPCDbasic_feature and I am trying to avoid any future problems.
  CPoint3 get_id_position(void);
  void set_id_position(CPoint3);
  CPoint3 get_id_leader(void);
  void set_id_leader(CPoint3);
  void SetIDLeader(CPoint3 pt, LEADER_TYPE eLeaderType);  //task 102318
  CPoint3 GetIDLeader(LEADER_TYPE eLeaderType);           //task 102318
  void SetIDLeader_SecondPt(CPoint3 pt, LEADER_TYPE eLeaderType); // TK102470 - Minjun Wei 19-Jun-2006
  CPoint3 GetIDLeader_SecondPt(LEADER_TYPE eLeaderType);          // TK102470 - Minjun Wei 19-Jun-2006
  void SetIDLeader_2(CPoint3 pt, LEADER_TYPE eLeaderType);        // TK102470 - Minjun Wei 19-Jun-2006
  CPoint3 GetIDLeader_2(LEADER_TYPE eLeaderType);                 // TK102470 - Minjun Wei 19-Jun-2006
  void SetFeatureVector(CPoint3 pt);                              // TK102470 - Minjun Wei 19-Jun-2006
  CPoint3 GetFeatureVector();                                     // TK102470 - Minjun Wei 19-Jun-2006

2.  The CPCDpointcloudOper::draw_element(...) calls SetIDLeader...) but it is using   m_cLocalScanSubSet.getBoundingBox().getCenter(rLeaderPnt);
This is the same position for all the cross section commands which is not useful when displaying labels so I changed this to use m_startPoint.  Now the leader lines of the labels for the four cross section commands in the program draw to different places on the cad as expected.
I'm still not sure if this will draw the label leader lines correctly when there is a quick fixture alignment in effect (Part/Machine setup that changes the default relationship between Cad and Machine).   I would need a program that uses a quick fixture alignment to test this.
I am setting this to Anis to review since I have modified CPCDpointcloudOper.
Fixed in both V432 and V44B.
Files inserted to server
------------------------
V44B\INCLUDE\POINTCLOUDOPER.H
V44B\SOURCE\POINTCLOUDOPER.CPP
V432\INCLUDE\POINTCLOUDOPER.H
V432\SOURCE\POINTCLOUDOPER.CPP
<<END>>
<< Changes made by Don Turcotte -- 03/05/09  17:20:32>>
Action:  Don Turcotte to Anis Limaiem, Status:  OPEN to REVIEW
<<END>>
<< Don Turcotte  --  03/04/09  17:27:19>>
Looks like this may be an issue with the following methods not being implemented in CPCDpointcloudOper.  They are implemented in CPCDbasic_feature but the point cloud oper command inherits directly from CPCDcommand which has no useful implementation of these methods.  I am trying to create a smaller program which shows the problem since the program attached here takes forever to load and run even in release build.
  virtual CPoint3 get_id_position(void);
  virtual void set_id_position(CPoint3);
  virtual CPoint3 get_id_leader(void);
  virtual void set_id_leader(CPoint3);
  virtual void SetIDLeader(CPoint3 pt, LEADER_TYPE eLeaderType);  //task 102318
  virtual CPoint3 GetIDLeader(LEADER_TYPE eLeaderType);           //task 102318
  virtual CPoint3 GetIDSecondLeader(LEADER_TYPE eLeaderType);             // TK102470 - Minjun Wei 19-Jun-2006
  virtual void SetIDLeader_SecondPt(CPoint3 pt, LEADER_TYPE eLeaderType); // TK102470 - Minjun Wei 19-Jun-2006
  virtual CPoint3 GetIDLeader_SecondPt(LEADER_TYPE eLeaderType);          // TK102470 - Minjun Wei 19-Jun-2006
  virtual CPoint3 GetIDSecondLeader_SecondPt(LEADER_TYPE eLeaderType);    // TK102470 - Minjun Wei 19-Jun-2006
  virtual void SetIDLeader_2(CPoint3 pt, LEADER_TYPE eLeaderType);        // TK102470 - Minjun Wei 19-Jun-2006
  virtual CPoint3 GetIDLeader_2(LEADER_TYPE eLeaderType);                 // TK102470 - Minjun Wei 19-Jun-2006
<<END>>
<< Changes made by Don Turcotte -- 03/04/09  17:27:19>>
Action:  Reporting Group to Don Turcotte, Assigned:  Reporting Group to Don Turcotte
<<END>>
<< Neil Kay  --  03/02/09  10:29:38>>
Needs to be added to iteration
<<END>>
<< Doug Schueneman  --  03/01/09  14:29:53>>
It appears as though, for whatever reason, the labels point to the origin of the Arm.
<<END>>
<< Changes made by Tim Wernicke -- 02/27/09  10:16:55>>
Action:  Tim Wernicke to Reporting Group, Assigned:   to Reporting Group, Priority:  Critical to Stop Rel.
<<END>>
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.4 Licensed

© 2001-2023 Discuz! Team.

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