Commit Graph

13 Commits

Author SHA1 Message Date
balazs-bamer
76c357ad70 Cancelling the just created surface deletes it
Now if the user creates a surface, the cancel in the widget deletes it.
If an already existing one is opened for editing, cancel rejects the
user change in fill type, but the surface remains.
2017-04-17 16:20:44 +02:00
balazs-bamer
29eed4a3f6 Unified UI for Bezier and b-spline surfaces
I have unified the user interface for Bezier and b-spline surfaces.
Based on the selection contents the CmdSurfaceBSurf::isActive method
determines which one can be created, and marks it for the activate
method.

For any sort of inappropriate selection contents, including foreign
shapes or mixture of Bezier and b-spline curves, the tool remains
disabled.
2017-04-17 16:20:44 +02:00
blobfish
9d1dc7d23e task flow
synchronize fill types on setEdit
    finishing up command
    make activate for commands similar
    don't call execute directly
    remove unneeded update calls
2017-04-17 16:20:44 +02:00
balazs-bamer
d5a999447e Dialog with radio buttons for choosing Bezier and b-spline surface fill type
A regular common dialog with apply, cancel and OK buttons allowing
surface fill type selection for Bezier and b-spline surfaces.

The Bezier and b-spline surface functionality now seems to be complete.
2017-04-17 16:20:44 +02:00
balazs-bamer
486578e5b3 diagnostics
Some diagnostics to let me see what happens
2017-04-17 16:20:44 +02:00
balazs-bamer
405fa9c39a One more experiment
No success yet
2017-04-17 16:20:44 +02:00
balazs-bamer
65bd9da6d2 fill type radio buttons - incomplete
I tried to implement a dialog with fill type radio buttons, but no
success yet.
2017-04-17 16:20:44 +02:00
balazs-bamer
c85368bfc0 B-spline surface operation enabled
I have converted Nate's b-spline generation to use my superclass
FeatureBSurf and added it to the GUI. Other half-ready operations as
filling and cut are commented out.

Missing:
- the fill type must be queried from the user. The data panel lets it
modify, but it is not user-friendly.
- b-spline surface is generated, but it covers only a fraction of the
supporting curves. It may lie on OCC error.
2017-04-17 16:20:44 +02:00
balazs-bamer
37406a968e Bezier surface: check selected objects
As the GUI selection changes, the Bezier surface tool avaibility is
always updated, so it is active if and only if 2-4 Bezier curves are
selected.
2017-04-17 16:20:44 +02:00
balazs-bamer
1fb63c097e Refactor and cleanup: FeatureBezSurf
Refactored and cleaned up code for FeatureBezSurf and created a new
common ancestor class for this and FeatureBSplineSurf.
2017-04-17 16:20:44 +02:00
balazs-bamer
66e44578f5 Specify edge name correctly
PropertyLinkSubList does not work without a correctly specified edge name.

Signed-off-by: balazs-bamer <kolaloka@freemail.hu>
2017-04-17 16:20:44 +02:00
balazs-bamer
4f96fa2300 Let the Surface workbench appear and try to create a Bezier surface
Modifications for:
 - let the surface workbench appear
 - use only one Surface menu and toolbar instead of two separate ones
 - create a Bezier surface using 2..4 Bezier curves (does not work yet)
 - use enums for fill type

Signed-off-by: balazs-bamer <kolaloka@freemail.hu>
2017-04-17 16:20:44 +02:00
NateAM
6f4e3acce4 Added Surface module
I have added Nate's SurfaceTools module with the name changed to Surface in all files and filenames.
2017-04-17 16:20:44 +02:00