几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   SolidWorks二次开发 (http://www.dimcax.com/hust/forumdisplay.php?f=111)
-   -   VC&OLE:GetBodyChordTolerance(double & chordTolerance) (http://www.dimcax.com/hust/showthread.php?t=614)

huangyhg 2007-03-27 11:01 AM

VC&OLE:GetBodyChordTolerance(double & chordTolerance)
 
bool GetBodyChordTolerance(double & chordTolerance)
{
bool result = false;
if (!m_dFace)
return result;

IFACE swFace(m_dFace);
LPDISPATCH dBody = swFace.GetBody();
swFace.DetachDispatch();

if (!dBody)
return result;
if (m_pSolidWorksGeom->m_dPreBody == dBody)
{
chordTolerance = m_pSolidWorksGeom->m_swChordTolerance;
result = true;
return result;
}
// get new chord tolerance if new body
m_pSolidWorksGeom->m_dPreBody = dBody;
IBODY swBody (dBody);
VARIANT faceList;
VariantInit (&faceList);
LPDISPATCH dTessellation = swBody.GetTessellation(faceList);
swBody.DetachDispatch();
if (dTessellation)
{

ITESSELLATION swTessellation (dTessellation);
chordTolerance = swTessellation.GetCurveChordTolerance();
swTessellation.DetachDispatch();
m_pSolidWorksGeom->m_swChordTolerance = chordTolerance;

result = true ;
}

return result;
}


所有的时间均为北京时间。 现在的时间是 11:32 PM.