Page MenuHome

Curve Cad Tools
Closed, ResolvedPublic

Description

hi, this is the task for the Curve tools design, here we can discuss the introduction of advanced curve functions and the best ways to implement them.
Addons that may be affected by this are:
Simplify Curves, currently in release.
Curve tools 2: currently in contrib
Bezier Cad Tools: https://github.com/Lichtso/curve_cad currently being worked on by @Vladimir Spivak (cwolf3d)
The basic concept here is to design a dedicated toolset for extended curve functionality.
Thanks.

Details

Type
Patch

Event Timeline

Brendon Murphy (meta-androcto) lowered the priority of this task from Needs Triage by Developer to Normal.Jun 15 2019, 3:33 AM

I combined scripts to work with curves.

It is necessary to combine repetitive functionality, throw out or hide unnecessary functions and develop missing functions.

hi, there's a bug in the loft/auto loft, batfinger rewrote that for us a while back, maybe he has some idea there.
There seemed to be a slowdown in ui response with the addon enabled? There's lot's going on, buggy with a build from 2 days ago.
I had some better results with the curve tools in contrib but auto loft was not working in the second part. Part 1 creates the loft, part 2 hooks? the second curve to the loft so you can grab the second curve and move the loft with it. This could always be disabled until sorted.
Possibly it's better to keep Curve tools and Lichtso's curve cad separate? There's room for both?
With Simplify curves, maybe the same applies? The merge by distance function works well and it's small and easily duplicated to slot into panels across a couple of addons.
I'm just thinking that it's easier to maintain smaller blocks of functions than trying to do this all at once. What do you think? I know you've invested considerable time already,
On a side note: this


Fell into my lap today, it's got a couple of issues with polling , it's a good tool, similar but different to bevel/taper.
Thanks, let me know what you think.

The question of combining addons is not fundamental.
Let it be separately. Easier to control the code. And it's easier for authors to understand their code. Include three addons or one on the tab is also not a problem.

The code curve_cad can be taken here https://github.com/Lichtso/curve_cad
Lichtso does not mind, and even very happy.

Comment. Curve_simplify.py has two main functions. Need to give other names.

Brendon Murphy (meta-androcto) triaged this task as Confirmed, Medium priority.Jun 24 2019, 3:10 AM

hi @Vladimir Spivak (cwolf3d)
As you've done so much work on addons in preparation for 2.8, I'm leaving the decisions up to you. If your prepared to maintain and take bug reports for the curve addons then I don't see an issue. We leave curve_simplify as standalone, then the rest is up to you. Of course I'll check, test, report back, I kept curve tools alive for some time but cannot continue with it. The curve cad tools seem nice and useful too. If you feel they are up to standard, you can look at adding them to release. The issue with Auto loft if not solvable can be left out of the ui for now. If you think it's better to merge curve tools and curve cad or keep them separate, maybe It's better to keep them under the 1 init but separate within. I really don't want to add much more to release at this stage so 1 well constructed addon would be better than 2. Let me know what you would like to do here. Thanks.
On a side note, your dimensions script, I remember the original "caliper" addon by macouno, it was very similar but used a bone to control the slider and used drivers to change the measurements. maybe something for 2.81 or add curve?

Raising priority to solve.

Brendon Murphy (meta-androcto) lowered the priority of this task from Confirmed, Medium to Normal.Jul 5 2019, 11:15 AM
Brendon Murphy (meta-androcto) triaged this task as Confirmed, Medium priority.Sep 11 2019, 3:30 AM

hi, @Vladimir Spivak (cwolf3d) Curve Tools is looking the best it has in years. Thank you. If you feel this is something you would like to add to and maintain in release your welcome to. It would be good to add before the 13th or we'll push back again until 2.82.
I see there's some poll issue with fillet and divide not working on created surface in edit mode. *the buttons are not grey out, not sure if it's supposed to work. Was there a "how many selected curves" text entry in the menu at some stage?
I'm getting errors with curve outline also using add curve extras > star and several other objects, mostly when the segments are not joined last to first i think. should be a check needed there also?
Let me know how you feel about this. There's some really good functionality here and with a maintainer such as yourself to back it up there should be no issues adding to release and finalizing bug fixes over the coming month.
It will need to be pretty tidy as everyone will want to use it. Well done. I cannot remember the years we have had this in contrib waiting for someone like you to pick up. Awesome work.
Thanks again.

Thanks for the feedback. I will try to fix all the shortcomings in the near future.

Sorry for the noise just wanted to chime in and in name of all the community thank @Vladimir Spivak (cwolf3d) for these improvements.
This is an important tool for architects and designers working with Blender and we really appreciate your work.

Back on topic: There is this Curve Fillet commercial addon at the Blender market that has very nice "live operator preview" support with direct mouse tweaking interaction like the mesh counterpart.

Would it be possible to add the same to Curve CAD Tools?
This addon seems to be unmaintained and abandoned by the author, it is also for 2.79 only and there are no signs of a port.
I have legally purchased it and it is open source anyway, so if it helps I could share it with you if somehow seeing the code aids in porting the feature.

You can send this addon an email: cwolf3d@gmail.com. I will try to add such functionality.

Updates https://developer.blender.org/rBACbc21cca4a4ae2e42c3e9cdad59d4ea3c42614f82:

  1. Redesigned PathFinder backlight. Now it works through the GPU. Now you need to select splines through Alt + click on the point. Still, have problems with her. No selection by clicking on the spline. And other problems. I will try to decide in the near future. Use it very carefully for now. May spoil your work.
  1. Added highlight curve resolution.
  1. With the permission of Alexander Meißner (Lichtso) added all the operators from the add-on https://github.com/Lichtso/curve_cad

P.S. Returning the counter of selected curves is not a good idea. Because of it, the blender interface slows down (the entire scene is polled at a certain interval) and it prevents some operators from working.

Pretty sure we already have the fillet function in the advanced section.
@Vladimir Spivak (cwolf3d) That makes sense with the selected curves counter. good work removing and identifying the issue.

Error correction, adding a spline selection when clicking (Alt + click) on a spline.

Can I transfer to release 2.81 or is it too late?

@Vladimir Spivak (cwolf3d), sure go ahead. There's plenty of time until release for any bug fixing. Also ver few new things in this release for addons. Go Ahead. :)

hi! I tried to rename the tab to be able to merge the curve tools 2 with other addons: it works for one session, but when I restart blender, the tab resumes the name "Tool".

hi! I tried to rename the tab to be able to merge the curve tools 2 with other addons: it works for one session, but when I restart blender, the tab resumes the name "Tool".

Fixed this behavior in https://developer.blender.org/rBAfb3a669c750facb8e90215bab43280bfa0899204

got some crashers here, breaking addons tests enable/disable failing, duplicated curve simplify functions. enable/disable the addon or enable then run load factory preferences with curve simplify enabled.

hopefully fixed the load tests by unique naming simplify curves addon. currently curve tools has several ui elements failing. curve fillet, divide and scale reset.

closing as resolved. any further issues can be bug reports