创建曲线偏置根据指定矢量
2017-06-04 23:04
417 查看
public int apply_cb() { int errorCode = 0; try { //---- Enter your callback code here ----- TaggedObject[] curves = edge_select0.GetSelectedObjects(); Vector3d vec = vector0.Vector; double distance = double0.Value; //Session theSession = Session.GetSession(); Part workPart = theSession.Parts.Work; NXOpen.Features.OffsetCurveBuilder offsetCurveBuilder1 = workPart.Features.CreateOffsetCurveBuilder(null); Direction direction1 = workPart.Directions.CreateDirection(new Point3d(0, 0, 0), vec, SmartObject.UpdateOption.WithinModeling); //设置曲线偏置方向 offsetCurveBuilder1.AxialOffsetDirection = direction1; //判断选择类型 List<SelectionIntentRule> eList = new List<SelectionIntentRule>(); NXObject seed = null; foreach (var cur in curves) { if (cur is NXOpen.Edge) { NXOpen.EdgeDumbRule edgeDumbRule1 = workPart.ScRuleFactory.CreateRuleEdgeDumb(new Edge[1] { (Edge)cur }); eList.Add(edgeDumbRule1); seed = (NXObject)cur; } else if (cur is NXOpen.Curve) { NXOpen.CurveDumbRule curveDumbRule1 = workPart.ScRuleFactory.CreateRuleCurveDumb(new Curve[1] { (Curve)cur }); eList.Add(curveDumbRule1); seed = (NXObject)cur; } } //为偏置曲线添加规则 offsetCurveBuilder1.CurvesToOffset.AddToSection(eList.ToArray(), seed, null, null, new Point3d(0, 0, 0), Section.Mode.Create, false); offsetCurveBuilder1.Tolerance = 0.001; offsetCurveBuilder1.Offset3dDistance.RightHandSide = distance.ToString(); //设置曲线偏置的类型 offsetCurveBuilder1.Type = OffsetCurveBuilder.Types.Axial3d; //offsetCurveBuilder1.Type = OffsetCurveBuilder.Types.Distance; offsetCurveBuilder1.Commit(); }
相关文章推荐
- QGis(五)矢量图层根据指定字段分级渲染显示
- 根据指定经纬度创建地图并且定位
- 根据指定类名创建实例(Java的反射机制)
- 根据指定类型创建数组
- 根据包名,在指定空间中创建对象
- 根据字符串创建指定的实例
- 根据包名,在指定空间中创建对象
- 根据指定的键从集合中创建键值对集合
- JavaScript根据指定路径创建对象
- 一个向量图像创建为一个矢量插图程序直线和曲线是连接点
- MTK 根据指定时间隐藏显示菜单
- cocos2d-x 根据png序列图创建animation
- Oracle创建序列,在指定的表空间创建表,删除序列
- CBitmap拷贝函数(根据一个CBitmap对象创建另一个相同的CBitmap对象)
- 创建数据库指定字符集
- mysql 可以根据查询结果插入到指定的表中
- sqlserver数据导入mysql二: 根据sqlserver表结构创建mysql表的perl代码
- Oracle创建用户并给用户授权查询指定表或视图的权限
- fopen创建指定大小的文件
- sqlServer通过指定的起始时间,创建该时间段内以年、月、日为时间段的临时表