iCAx开思工具箱

标题: (CAA)如何将草图上一点 与 草图平面同空间曲面的相交线 约束起来? [打印本页]

作者: zsong22    时间: 2012-11-22 15:00
标题: (CAA)如何将草图上一点 与 草图平面同空间曲面的相交线 约束起来?
我在vb里面用宏录制时代码如下:
constraint3.Mode = catCstModeDrivingDimension

Set parameters1 = part1.Parameters

Set reference9 = parameters1.Item("点.16")

Set geometricElements3 = factory2D1.CreateProjections(reference9)

Set geometry2D1 = geometricElements3.Item("标记.1")//标记.1就是相交出来的线条

geometry2D1.Construction = True

Set reference10 = part1.CreateReferenceFromObject(geometry2D1)

Set reference11 = part1.CreateReferenceFromObject(point2D9)//这里是 我要约束的点

Set constraint4 = constraints1.AddBiEltCst(catCstTypeOn, reference10, reference11)

这里面貌似将 相交出来的线 类型进行了转换。因为我在CAA里面直接用草图约束是不能成功的,即便是相交线为一个CATISpecObject类型。
谢谢 你的帮助!{:soso_e176:}

作者: zsong22    时间: 2012-11-22 16:45
也就是说:我用
CATBaseUnknown* UnknownSphere = gsmSphere;
CATISpecObject_var spIntersectLine = NULL_var;
  CATListValCATI2DWFGeometry_var wfList ;
  spIntersectLine = spWF2DFactOnSketch->IntersectGeometry(UnknownSphere, wfList,0,NULL,NULL,0,1);
求到了交线,用:
spConstraint2DFactory->CreateConstraint( spPoint3, NULL, spIntersectLine, NULL, NULL, NULL, NULL, Cst2DType_On, 0, 0 );  
对spPoint3点 与 交线相合约束。  
但是失败了。

求指点  谢谢!{:soso_e176:}
作者: zsong22    时间: 2012-11-23 16:51
CATBaseUnknown* UnknownSphere = gsmSphere;
CATISpecObject_var spIntersectLine = NULL_var;
  CATListValCATI2DWFGeometry_var wfList ;
  spIntersectLine = spWF2DFactOnSketch->IntersectGeometry(UnknownSphere, wfList,0,NULL,NULL,0,1);
wfList[1]->GetFamily(wfList);//wfList[1]是一个CATI2DWFGeometry类型    这几步主要是仿造vb在做。
CATISpecObject_var spIntersectLn = wfList[1];
求到了交线,用:
spConstraint2DFactory->CreateConstraint( spPoint3, NULL, spIntersectLn , NULL, NULL, NULL, NULL, Cst2DType_On, 0, 0 );  
对spPoint3点 与 交线相合约束。  
最后  成功了!  虽然不知道具体的wfList[1]->GetFamily(wfList);什么意思。   希望知道这句话意思的朋友分享一下。  
谢谢 {:soso_e176:}!
作者: lansehaiyu    时间: 2012-12-9 13:18
CATI2DLine_var spLineFeat;CATISpecObject_var CopySelectLine;
spConstraint->CreateConstraint( spLineFeat, NULL,CopySelectLine, NULL, NULL, NULL, NULL,
                                        Cst2DType_On, 0, 0 );
后怎么没有反应呢




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3