No Branch/Tag Specified
main
asset-shelf
brush-assets-project
blender-v2.93-release
blender-v3.3-release
blender-v3.4-release
xr-dev
blender-v3.2-release
blender-v3.1-release
screenshots-manual
gltf_vtree
blender-v2.83-release
blender-v3.0-release
xr-controller-support
studio-sprite-fright
asset-browser-poselib
blender-v2.92-release
blender-v2.91-release
blender-v2.90-release
greasepencil-addon
xr-world-navigation
soc-2019-openxr
blender-v2.82-release
blender-v2.81-release
filebrowser_redesign
blender-v2.80-release
blender2.7
blender-v2.79b-release
blender-v2.79a-release
blender-v2.79-release
fbx_experiments
blender-v2.78b-release
collada-2
blender-v2.78-release
rigify_fixes
fbx_io_export_ignore_parents
v2.93.14
v3.3.3
v2.93.13
v2.93.12
v3.4.1
v3.3.2
v3.4.0
v3.3.1
v2.93.11
v3.3.0
v3.2.2
v2.93.10
v3.2.1
v3.2.0
v2.83.20
v2.93.9
v3.1.2
v3.1.1
v3.1.0
v2.83.19
v2.93.8
v3.0.1
v2.93.7
v3.0.0
v2.93.6
v2.93.5
v2.83.18
v2.93.4
v2.93.3
v2.83.17
v2.93.2
v2.93.1
v2.83.16
v2.93.0
v2.83.15
v2.83.14
v2.83.13
v2.92.0
v2.83.12
v2.91.2
v2.83.10
v2.91.0
v2.83.9
v2.83.8
v2.83.7
v2.90.1
v2.83.6
v2.90.0
v2.83.5
v2.83.4
v2.83.3
v2.83.2
v2.83.1
v2.83
v2.82a
v2.82
v2.81a
v2.81
v2.80
v2.80-rc3
v2.80-rc2
v2.80-rc1
v2.79b
v2.79a
v2.79
v2.79-rc2
v2.79-rc1
v2.78b
v2.78a
v2.78
v2.78-rc2
v2.78-rc1
v2.77a
v2.77
v2.77-rc2
v2.77-rc1
v2.76a
v2.76
v2.76-rc3
v2.76-rc1
v2.75
v2.75-rc2
v2.75-rc1
v2.74
v2.74-rc4
v2.74-rc3
v2.74-rc2
v2.74-rc1
v2.73a
v2.73
v2.73-rc1
v2.72
v2.72-rc1
v2.71
v2.71-rc1
v2.70a
v2.70
v2.70-rc
v2.68
v2.67b
v2.67a
v2.67
v2.66a
v2.66
v2.65a
v2.65
v2.64a
v2.64
v2.63a
v2.63
v2.62
v2.61
v2.60a
v2.53
v2.54
v2.55
v2.56
v2.56a
v2.57
v2.57a
v2.57b
v2.58
v2.58a
v2.59
v2.60
v2.69
Labels
Apply labels
Clear labels
good first issue
legacy module/Animation & Rigging
legacy module/Core
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/User Interface
legacy module/VFX & Video
legacy project/2.81
legacy project/2.82
legacy project/2.83
legacy project/2.90
legacy project/2.92
legacy project/2.93
legacy project/3.0
legacy project/3.1
legacy project/3.2
legacy project/3.4
legacy project/Add-ons (BF-Blender)
legacy project/Add-ons (Community)
legacy project/Alembic
legacy project/Animation & Rigging
legacy project/Asset Browser
legacy project/Automated Testing
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Blender Cloud
legacy project/Code Quest
legacy project/Collada
legacy project/Compositing
legacy project/Core
legacy project/Cycles
legacy project/Datablocks and Libraries
legacy project/Dependency Graph
legacy project/Documentation
legacy project/EEVEE & Viewport
legacy project/Freestyle
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Physics
legacy project/Game Python
legacy project/Game UI
legacy project/Geometry Nodes
legacy project/Good First Issue
legacy project/Grease Pencil
legacy project/Images & Movies
legacy project/Import/Export
legacy project/Infrastructure: Blender Buildbot
legacy project/Infrastructure: Blender Web Assets
legacy project/Infrastructure: Websites
legacy project/Modeling
legacy project/Modifiers
legacy project/Motion Tracking
legacy project/Nodes
legacy project/Nodes & Physics
legacy project/OpenGL Error
legacy project/Overrides
legacy project/Papercut
legacy project/Physics
legacy project/Pillar
legacy project/Pipeline, Assets & I/O
legacy project/Platform: Linux
legacy project/Platform: macOS
legacy project/Platforms, Builds, Tests & Devices
legacy project/Platform: Windows
legacy project/Python API
legacy project/Render & Cycles
legacy project/Render Pipeline
legacy project/Sculpt, Paint & Texture
legacy project/Straightforward Issue
legacy project/Text Editor
legacy project/Tracker Curfew
legacy project/Translations
legacy project/USD
legacy project/User Interface
legacy project/UV Editing
legacy project/VFX & Video
legacy project/Video Sequencer
legacy project/Virtual Reality
papercut
Priority › High
Priority › Low
Priority › Normal
Priority › Unbreak Now!
Status › Archived
Status › Confirmed
Status › Duplicate
Status › Needs Information from Developers
Status › Needs Information from User
Status › Needs Triage
Status › Resolved
straightforward issue
Type › Bug
Type › Design
Type › Known Issue
Type › Patch
Type › Report
Type › To Do
No Label
good first issue
legacy module/Animation & Rigging
legacy module/Core
legacy module/Eevee & Viewport
legacy module/Grease Pencil
legacy module/Modeling
legacy module/Nodes & Physics
legacy module/Pipeline, Assets & IO
legacy module/Platforms, Builds, Tests & Devices
legacy module/Python API
legacy module/Rendering & Cycles
legacy module/Sculpt, Paint & Texture
legacy module/User Interface
legacy module/VFX & Video
legacy project/2.81
legacy project/2.82
legacy project/2.83
legacy project/2.90
legacy project/2.92
legacy project/2.93
legacy project/3.0
legacy project/3.1
legacy project/3.2
legacy project/3.4
legacy project/Add-ons (BF-Blender)
legacy project/Add-ons (Community)
legacy project/Alembic
legacy project/Animation & Rigging
legacy project/Asset Browser
legacy project/Automated Testing
legacy project/BF Blender: 2.8
legacy project/BF Blender: After Release
legacy project/BF Blender: Next
legacy project/BF Blender: Regressions
legacy project/BF Blender: Unconfirmed
legacy project/Blender 2.70
legacy project/Blender Cloud
legacy project/Code Quest
legacy project/Collada
legacy project/Compositing
legacy project/Core
legacy project/Cycles
legacy project/Datablocks and Libraries
legacy project/Dependency Graph
legacy project/Documentation
legacy project/EEVEE & Viewport
legacy project/Freestyle
legacy project/Game Data Conversion
legacy project/Game Engine
legacy project/Game Physics
legacy project/Game Python
legacy project/Game UI
legacy project/Geometry Nodes
legacy project/Good First Issue
legacy project/Grease Pencil
legacy project/Images & Movies
legacy project/Import/Export
legacy project/Infrastructure: Blender Buildbot
legacy project/Infrastructure: Blender Web Assets
legacy project/Infrastructure: Websites
legacy project/Modeling
legacy project/Modifiers
legacy project/Motion Tracking
legacy project/Nodes
legacy project/Nodes & Physics
legacy project/OpenGL Error
legacy project/Overrides
legacy project/Papercut
legacy project/Physics
legacy project/Pillar
legacy project/Pipeline, Assets & I/O
legacy project/Platform: Linux
legacy project/Platform: macOS
legacy project/Platforms, Builds, Tests & Devices
legacy project/Platform: Windows
legacy project/Python API
legacy project/Render & Cycles
legacy project/Render Pipeline
legacy project/Sculpt, Paint & Texture
legacy project/Straightforward Issue
legacy project/Text Editor
legacy project/Tracker Curfew
legacy project/Translations
legacy project/USD
legacy project/User Interface
legacy project/UV Editing
legacy project/VFX & Video
legacy project/Video Sequencer
legacy project/Virtual Reality
papercut
Priority › High
Priority › Low
Priority › Normal
Priority › Unbreak Now!
Status › Archived
Status › Confirmed
Status › Duplicate
Status › Needs Information from Developers
Status › Needs Information from User
Status › Needs Triage
Status › Resolved
straightforward issue
Type › Bug
Type › Design
Type › Known Issue
Type › Patch
Type › Report
Type › To Do
Milestone
Set milestone
Clear milestone
No items
No Milestone
Projects
Set Project
Clear projects
No project
Assignees
Assign users
Clear assignees
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.
No due date set.
Dependencies
No dependencies set.
Reference: blender/blender-addons#53367
Reference in new issue
There is no content yet.
Delete Branch '%!s(<nil>)'
Deleting a branch is permanent. It CANNOT be undone. Continue?
No
Yes
Curve remove doubles addon for Blender 3D
Adds comand "Remove Dobles" for curves in Blender 3D
Sometimes in exported curves in Blender, you can note bugs: some of the curve may not be traced, or artifacts on the extruded wall:
This is becouse of nearby points of Bezier curve. Of course, you can manually delete these points, restore the guides, but there is a faster and more efficient way: add-on "Curve Remove Doubles".
The addon glues nearby points on a single Bézier curve. In fact it is an analogue of the usual Remove Doubles on a mesh, but it is for a curve. But unlike the mesh one, it does not connect the points from different parts of the curves, even if they are on the ends of the two curves. To glue such points, you must first connect them with F-button.
https://github.com/crantisz/blender-curve-remove-doubles-addon
How to use
Fixing curves
Let we have a curve with troubles:
Select all poins, than press W -> Remove Doubles:
Look at result:
Connecting two curves with preservation of guides
Let we have some curves to connecting
First, make segment with F-button. Next W -> Remove Doubles:
If the points don't stuck together - probably they are further than the established limit, press F6 and increase the limit until they are stuck together:
Look at result:
Changed status to: 'Open'
Added subscriber: @crantisz
Added subscriber: @ideasman42
Seems like useful functionality, are you able to port this is Blender's C code?
Some tools as add-ons are fine but this seems like it would fit better as a built-in operation.
Added subscriber: @SteffenD
Added subscriber: @cwolf3d
Added subscriber: @BrendonMurphy
could this be ported to 2.8 or made into a quick hack for c code?
you can grab 2.8 version it on my github: https://github.com/crantisz/blender-curve-remove-doubles-addon/releases
@crantisz
hi again, It seems this is very useful, the issue is how to fit it in and make best use of the addon. Would it work to merge it into the simplify curves addon? Both seem related given they work to optimize/clean up curves?
What do you think? Would you be happy with this?
I added this addon to curve_tools. https://developer.blender.org/diffusion/BAC/browse/master/curve_tools/
But I would like to see it in the main assembly.
And ideally, I would like to see in the main assembly a combine from this add-on
P.S. I can do this. Waiting for an order.
hi, @cwolf3d you would need permissions off https://github.com/Lichtso/curve_cad
I've kept curve tools around for years because it holds some good functionality, it was great to see your activity there.
I think it would be good to start a new task about curve tools so we can work out how to proceed.
I think for now we could add curve remove doubles to simplify curves in release and work out how to proceed with curve tools in the new task.
something like this in the bl_info might work:
Thanks again.
It would be nice, I think
hi again, i'm having some trouble here.
Add a bezier curve, duplicate it in place
Run your addon.
No points are removed.
Adjusting the parameters makes both curves a straight line and removes no doubles.
I would have expected the addon to simply remove/merge the double points as they are overlaying.
I could be misunderstanding what's expected from the addon but felt it's needed to raise this point.
Tested in nightly build from here: https://builder.blender.org/download/
@BrendonMurphy read the description:
Merging points from two different curves looks impossible, because it may require points, connected with more than 2 points, that doesn't supports by Bezier
The typical situation, than it very useful is clearing imported vectors:
thanks for reply, I wonder if Curve Clean Up would be a better name? I was concerned that users may confuse what the addon does with the way mesh remove doubles works.
Let me know. It only took me a few min to add to curve simplify addon, I will be moving the addon forward shortly.
As for me, the work of this addon is similar to the work of the remove doubles mesh. The name Remove Doubles here fits best. Well, you can also call "Merge nearby vertices" or "Merge vertices by distance"
Actually,remove doubles renamed tomerge by distance, so Merge vertices by distance will be better
Raising Priority,
We can merge this easily with Simplify Curves for 2.8 release.
curve_simplify.py
@crantisz I changed name to merge by distance and it works really well. I also did some better tests and it's really a great tool. Thank You.
@cwolf3d I've made a few adjustments here to the bl info It's ok? Probably needs some clean up too.
Simplify curves seems to be bugging out? error in main with to many positional arguments? Can this be confirmed?
Next issue would be location in the menus. Although simplify curves has a long standing appearance in the add curve menu, It really does not not belong there. I would think both could be in the context menu as 2 entries prepended,
They could also be appended into the edit mode Curve menu.
At a later stage or if time permits, simplify curves also needs an operator menu, it would be nice to add some options such as edit/object mode, remove or keep original object.
Let me know what you think.
@BrendonMurphy All your comments about Simplify Curves are absolutely correct.
@BrendonMurphy Can you change autor from crantisz to Michael Soluyanov?
I got permission from Lichtso https://github.com/Lichtso/curve_cad.
At the weekend I will work on a large addon for working with curves (+curve_cad +curve_remove_doubles +curve_tools +some of the functions from add_curve_simple).
I will change autor from crantisz to Michael Soluyanov.
Changed status from 'Open' to: 'Resolved'
@crantisz Added your name.
@cwolf3d great news, I will make a new task shortly.
Closing this task as resolved.