几何尺寸与公差论坛------致力于产品几何量公差标准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)
-   -   import annotation (Geometrical tolerance) (http://www.dimcax.com/hust/showthread.php?t=1802)

huangyhg 2008-03-24 09:15 AM

import annotation (Geometrical tolerance)
 
void CSolidWorksGeom::ImportAnnotation()
{
if (!CheckIsSWConnected() || !m_pModelDoc)
return;
// get the first annotation
LPDISPATCH dAnnotation = NULL;

IMODELDOC swModelDoc(m_pModelDoc);
LPDISPATCH dDocExt = swModelDoc.GetExtension();
if (dDocExt)
{
IMODELDOCEXT swModelDocExt(dDocExt);
long lgCount = swModelDocExt.GetAnnotationCount();
m_vParameters = swModelDocExt.GetAnnotations();

LPDISPATCH dNextAnnotation = NULL;
LPDISPATCH dGeomTol = NULL;
for(; dAnnotation; )
{
IANNOTATION swAnnotation(dAnnotation);
long lgType = 0;
lgType = swAnnotation.GetType();
switch (lgType)
{
case swGTol:
dGeomTol = swAnnotation.GetSpecificAnnotation();
ImportGeomTol(dGeomTol);
break;
default:
break;
}
dNextAnnotation = swAnnotation.GetNext();
if (swAnnotation)
swAnnotation.DetachDispatch();
dAnnotation = dNextAnnotation;
}
if (swModelDocExt)
swModelDocExt.DetachDispatch();
}
if (swModelDoc)
swModelDoc.DetachDispatch();
}


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