From 3080a753965ab76be7e834ea72cb88b601b87038 Mon Sep 17 00:00:00 2001 From: Artem Zhidkov Date: Mon, 13 Apr 2020 10:18:39 +0300 Subject: [PATCH] Issue #3207: The feature Copy allows to copy a sketch Prohibit to use constructions in the Copy feature. Move SketchCopy feature to the same panel as the Copy feature. --- src/FeaturesPlugin/CMakeLists.txt | 1 + src/FeaturesPlugin/Test/TestCopy_ErrorMsg.py | 39 ++++++++++++++++++++ src/FeaturesPlugin/copy_widget.xml | 1 + src/FeaturesPlugin/plugin-Features.xml | 2 +- src/SketchPlugin/plugin-SketchCopy.xml | 4 +- 5 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 src/FeaturesPlugin/Test/TestCopy_ErrorMsg.py diff --git a/src/FeaturesPlugin/CMakeLists.txt b/src/FeaturesPlugin/CMakeLists.txt index 51d00ae40..78692f28e 100644 --- a/src/FeaturesPlugin/CMakeLists.txt +++ b/src/FeaturesPlugin/CMakeLists.txt @@ -552,6 +552,7 @@ ADD_UNIT_TESTS(TestExtrusion.py Test3033.py Test3076.py Test17909.py + TestCopy_ErrorMsg.py TestCopyFeature.py TestCopyFeatureMoveGroupOfFeature.py TestCopyMoveResult.py diff --git a/src/FeaturesPlugin/Test/TestCopy_ErrorMsg.py b/src/FeaturesPlugin/Test/TestCopy_ErrorMsg.py new file mode 100644 index 000000000..af41f2418 --- /dev/null +++ b/src/FeaturesPlugin/Test/TestCopy_ErrorMsg.py @@ -0,0 +1,39 @@ +# Copyright (C) 2014-2019 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 +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +# +# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +# + +# Checks selection of the whole featurte and move to the end of the group created on results of this feature.. + +from salome.shaper import model + +model.begin() +partSet = model.moduleDocument() +Part_1 = model.addPart(partSet) +Part_1_doc = Part_1.document() +Sketch_1 = model.addSketch(Part_1_doc, model.defaultPlane("XOY")) +SketchCircle_1 = Sketch_1.addCircle(11.02869497636673, 9.8764247475525, 3.312248077480665) +SketchCircle_2 = Sketch_1.addCircle(4.278198729238611, 4.677840612715367, 1.794922837237287) +model.do() +Copy_1 = model.addCopy(Part_1_doc, [model.selection("COMPOUND", "all-in-Sketch_1")], 1) +Copy_2 = model.addCopy(Part_1_doc, [model.selection("COMPOUND", "Sketch_1")], 1) +model.end() + +from ModelAPI import * +aFactory = ModelAPI_Session.get().validators() +assert(not aFactory.validate(Copy_1.feature())) +assert(not aFactory.validate(Copy_2.feature())) diff --git a/src/FeaturesPlugin/copy_widget.xml b/src/FeaturesPlugin/copy_widget.xml index 6f79ca138..104a1ed71 100644 --- a/src/FeaturesPlugin/copy_widget.xml +++ b/src/FeaturesPlugin/copy_widget.xml @@ -5,6 +5,7 @@ shape_types="vertices edges wires faces shells compsolids objects" use_choice="false" concealment="false"> + - + - - + +