|
发表于 2005-1-25 19:38:00
|
显示全部楼层
请指教
for(int k=0;kstartTransaction();
AcDb3dSolid *pSolidWork = new AcDb3dSolid;
pSolidWork = pWork->GetObject(pTrans,AcDb::kForWrite);
AcDb3dSolid *pSolidTool = new AcDb3dSolid;
pSolidTool = pTool->GetObject(pTrans,AcDb::kForWrite);
AcDbRegion *pRegion = new AcDbRegion;
pRegion = pTool->GetRegion(pTrans,AcDb::kForWrite);
double t = -(76.0417*pi/180);//m_A=-1.5;//
for(int i=0;itransformBy(moved3D(OC[0]-OCL[0],OC[1]-OCL[1],OC[2]-OCL[2]));
MyRotate(pTrans,pSolidWork,secB-firB,rotVB,O);
MyRotate(pTrans,pSolidWork,secA-firA,rotVA,O);
copyAndCut(pSolidWork,pRegion,OC,axisDir);//copy and cut.
pSolidWork->draw();
firB = secB;
firA = secA;
OCL=OC;
t+=m_stept;
}
MyRotate(pTrans,pSolidWork,-secA,rotVA,O);
MyMove(pTrans,pSolidTool,OCL,O);
pRegion->transformBy(moved3D(O[0]-OCL[0],O[1]-OCL[1],O[2]-OCL[2]));
OCL.set(0,0,0);
firA = 0;
//
MyRotate(pTrans,pSolidWork,m_stepg,rotVA,O);
actrTransactionManager->endTransaction();
}
AcTransaction *pTrans
= actrTransactionManager->startTransaction();
AcDb3dSolid *pSolidWork = new AcDb3dSolid;
pSolidWork = pWork->GetObject(pTrans,AcDb::kForWrite);
MyRotate(pTrans,pSolidWork,-secB,rotVB,O);
actrTransactionManager->endTransaction(); |
|