public void Fillet(ksPart iPart, int index, double radius, TeaPotParams teaPotParams) { // Получение интерфейса объекта скругление ksEntity entityFillet = (ksEntity)iPart.NewEntity((int)Obj3dType.o3d_fillet); // Получаем интерфейс параметров объекта скругление ksFilletDefinition filletDefinition = (ksFilletDefinition)entityFillet.GetDefinition(); // Радиус скругления filletDefinition.radius = radius; // Не продолжать по касательным ребрам filletDefinition.tangent = true; // Получаем массив граней объекта ksEntityCollection entityCollectionPart = (ksEntityCollection)iPart.EntityCollection((int)Obj3dType.o3d_face); // Получаем массив скругляемых граней ksEntityCollection entityCollectionFillet = (ksEntityCollection)filletDefinition.array(); entityCollectionFillet.Clear(); //ksEntity ENT = entityCollectionFillet.GetByIndex(0); // Заполняем массив скругляемых объектов entityCollectionFillet.Add(entityCollectionPart.GetByIndex(index)); // Создаем скругление int X = Convert.ToInt32(teaPotParams.TeaPotHandleColor); entityFillet.SetAdvancedColor(X, 2, 2, 2, 2, 1, 2); entityFillet.Create(); }
public override ksEntity Execute() { _extrudeHandleCmd.Execute(); ksEntity fillet = Part.NewEntity((short)Obj3dType.o3d_fillet); ksFilletDefinition filletDefinition = fillet.GetDefinition(); filletDefinition.radius = 1; filletDefinition.tangent = false; ksEntityCollection facesToFillet = filletDefinition.array(); facesToFillet.Clear(); ksEntityCollection partFaces = Part.EntityCollection((short)Obj3dType.o3d_face); for (int i = 0; i < partFaces.GetCount(); i++) { facesToFillet.Add(partFaces.GetByIndex(i)); } fillet.Create(); return(fillet); }
/// <summary> /// Скругление /// </summary> private void Filled(ksEntity ksEntity) { const int grayColor = 16777215; ksEntity ksEntityFilled = (ksEntity)_ksPart.NewEntity( (short)Obj3dType.o3d_fillet); ksFilletDefinition ksFilletDefinition = (ksFilletDefinition)ksEntityFilled.GetDefinition(); ksFilletDefinition.radius = 2; ksFilletDefinition.tangent = false; ksEntityCollection ksEntityCollectionPart = (ksEntityCollection)_ksPart.EntityCollection( (short)Obj3dType.o3d_edge); ksEntityCollection ksEntityCollectionFillet = (ksEntityCollection)ksFilletDefinition.array(); ksEntityCollectionFillet.Clear(); ksEntityCollectionFillet.Add(ksEntityCollectionPart.GetByIndex(1)); ksEntityCollectionFillet.Add(ksEntityCollectionPart.GetByIndex(0)); ksEntityFilled.useColor = 0; ksEntityFilled.SetAdvancedColor(grayColor, 0.9, 0.8, 0.7, 0.6, 1, 0.4); ksEntityFilled.Create(); }