-// Copyright (C) 2014-2020 CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023 CEA/DEN, EDF R&D
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
std::shared_ptr<SketchAPI_Offset> SketchAPI_Sketch::addOffset(
const std::list<std::shared_ptr<ModelAPI_Object> > & theObjects,
const ModelHighAPI_Double & theValue,
- const bool theReversed)
+ const bool theReversed,
+ const std::string & theJointType)
{
std::shared_ptr<ModelAPI_Feature> aFeature =
compositeFeature()->addFeature(SketchPlugin_Offset::ID());
- return OffsetPtr(new SketchAPI_Offset(aFeature, theObjects, theValue, theReversed));
+ return OffsetPtr(new SketchAPI_Offset(aFeature, theObjects, theValue, theReversed, theJointType));
}
//--------------------------------------------------------------------------------------
std::list<std::list<ResultPtr> > aFaces;
edgesOfSketchFaces(aCompFeat, aFaces);
- /// remove faces that must not be dumped
- std::vector< std::list<std::list<ResultPtr>>::iterator> aFacesToRemove;
- for(auto itFaces = aFaces.begin(); itFaces != aFaces.end(); ++itFaces)
- {
- auto & facesGroup = *itFaces;
- std::vector<std::list<ResultPtr>::iterator> subFacestoRemove;
- for(auto itGroup = facesGroup.begin(); itGroup != facesGroup.end(); ++itGroup)
- {
- FeaturePtr aFeature = ModelAPI_Feature::feature(*itGroup);
- if(theDumper.isDumped(aFeature)){
- subFacestoRemove.push_back(itGroup);
- }
- }
- for(auto itGroup :subFacestoRemove){
- facesGroup.erase(itGroup);
- }
-
- if(!facesGroup.size()){
- aFacesToRemove.push_back(itFaces);
- }
- }
- for(auto itFaces :aFacesToRemove){
- aFaces.erase(itFaces);
- }
-
- if(!aFaces.size())
- return;
-
const std::string& aSketchName = theDumper.name(aBase);
std::string aMethodName(".changeFacesOrder");
std::string aSpaceShift(aSketchName.size() + aMethodName.size(), ' ');