GPencil: After using eraser when draw primitives, next primitive has missing handles #68021

Closed
opened 2019-07-31 22:44:19 +02:00 by mobin · 28 comments

System Information
Operating system:Windows 10
Graphics card:msi gtx 1050ti

Blender Version
Broken: blender-2.81.0-git.af4dcc6073fa-windows64
Worked: (optional)

Short description of error
problems in the Curve / Line / Circle / Arc / Box tool why handles sometimes appear and sometimes disappear. Of course I'm sure Show Gizmo options are active and I don't use shortcuts
Exact steps for others to reproduce the error

Draw an object with the Curve tool

Handles are present early but disappear after a while

To reproduce:

  1. Add a Arc primitive. Move control points.
  2. Confirm with MMB
  3. Select Eraser Tool and erase some parts.
  4. Select Arc primitive again and draw something-> Handles are missing.
**System Information** Operating system:Windows 10 Graphics card:msi gtx 1050ti **Blender Version** Broken: blender-2.81.0-git.af4dcc6073fa-windows64 Worked: (optional) **Short description of error** problems in the Curve / Line / Circle / Arc / Box tool why handles sometimes appear and sometimes disappear. Of course I'm sure Show Gizmo options are active and I don't use shortcuts **Exact steps for others to reproduce the error** Draw an object with the Curve tool Handles are present early but disappear after a while To reproduce: 1) Add a Arc primitive. Move control points. 2) Confirm with MMB 3) Select Eraser Tool and erase some parts. 4) Select Arc primitive again and draw something-> Handles are missing.
Author

Added subscriber: @Mobin.artworks

Added subscriber: @Mobin.artworks

Added subscriber: @antoniov

Added subscriber: @antoniov

What do you mean with

after a while

...as soon you confirm the primitive, the handles cannot be enabled again. They are only for creation, not to edit later. Maybe you expect to have handles all the time and edit the figure after confirming.

What do you mean with > after a while ...as soon you confirm the primitive, the handles cannot be enabled again. They are only for creation, not to edit later. Maybe you expect to have handles all the time and edit the figure after confirming.
Author

No I know this

But when the shape has not yet been confirmed, the handles will disappear but the angles can be changed without the handle

Only the handles disappear for no reason

No I know this But when the shape has not yet been confirmed, the handles will disappear but the angles can be changed without the handle Only the handles disappear for no reason

Added subscriber: @CharlieJolly

Added subscriber: @CharlieJolly

@CharlieJolly Can you reproduce it? I cannot.

@CharlieJolly Can you reproduce it? I cannot.
Member

@Mobin.artworks I'm unable to reproduce the issue. Are the control points for the start and end points still visible?

@Mobin.artworks I'm unable to reproduce the issue. Are the control points for the start and end points still visible?
Author

No No points are visible

You should work with this tool for at least ten minutes to find out. I suggest drawing a simple character with it

Can I upload a photo or video here to show you?

No No points are visible You should work with this tool for at least ten minutes to find out. I suggest drawing a simple character with it Can I upload a photo or video here to show you?
Member

Yes, more information the better.

Yes, more information the better.
Author

@CharlieJolly Jolly (charlie)

I was able to figure out the cause of this problem!
First, draw a few simple lines with the Curve tool and change the angles with the handles
Then select the Eraser tool and clear a section of lines with it
And now if you choose Curve again and you will notice the disappearance of the handles!
I was able to record a movie from that. How do I send it to you?

@CharlieJolly Jolly (charlie) I was able to figure out the cause of this problem! First, draw a few simple lines with the Curve tool and change the angles with the handles Then select the Eraser tool and clear a section of lines with it And now if you choose Curve again and you will notice the disappearance of the handles! I was able to record a movie from that. How do I send it to you?

@Mobin.artworks How you sue the Eraser tool? select in he toolbar?

I cannot select the Eraser tool (I need press Enter or MMB before)...if you do that..you have confirmed the curve, so you will never get the handles again. If you get the eraser using othe rmodes, tell me how you did it.

To clarify, the primitive tools are not like tools in other softwares where you can create, delete, edit again, etc. This is not supported, maybe in future relases, but now after the creation it converts in a normal stroke and you must modify with sculpt tools or common edit tools like hand drawing strokes.

PS: You can put the video in Dropbox/Youtube, etc and put here the link.

@Mobin.artworks How you sue the Eraser tool? select in he toolbar? I cannot select the Eraser tool (I need press Enter or MMB before)...if you do that..you have confirmed the curve, so you will never get the handles again. If you get the eraser using othe rmodes, tell me how you did it. To clarify, the primitive tools are not like tools in other softwares where you can create, delete, edit again, etc. This is not supported, maybe in future relases, but now after the creation it converts in a normal stroke and you must modify with sculpt tools or common edit tools like hand drawing strokes. PS: You can put the video in Dropbox/Youtube, etc and put here the link.
Author

No, you haven't noticed!

Yes, you press Enter, then select Eraser and clear a part of the line drawn with the Curve tool!

Then select the Curve tool again and start dragging.

The handles no longer exist

No, you haven't noticed! Yes, you press Enter, then select Eraser and clear a part of the line drawn with the Curve tool! Then select the Curve tool again and start dragging. The handles no longer exist
Author
[bandicam 2019-08-02 13-41-34-615.mp4](https://archive.blender.org/developer/F7645420/bandicam_2019-08-02_13-41-34-615.mp4)

Ok, this give us a clue of the problem...the handles are not visible in the "next" arc

Ok, this give us a clue of the problem...the handles are not visible in the "next" arc
Antonio Vazquez self-assigned this 2019-08-02 12:00:53 +02:00
Author

Yes that's right

Yes that's right
Antonio Vazquez changed title from Gp handels to GPencil: After using eraser when draw primitives, next primitive has missing handles 2019-08-02 12:02:41 +02:00
Member

Confirmed.

Not entirely sure why this is happening but if you select the draw tool then the arc tool the control points are visible again.

Confirmed. Not entirely sure why this is happening but if you select the draw tool then the arc tool the control points are visible again.
Author

Yes, that's why I said that it appears for no reason and disappears again

Yes, that's why I said that it appears for no reason and disappears again

I have seen the reason...fixing it

I have seen the reason...fixing it

Added subscriber: @ideasman42

Added subscriber: @ideasman42

I have found the reason.

When you draw a primitive, by default the current brush->gpencil_tool is DRAW, so the following variable is true:

const bool is_paint_tool = (bool)((brush) && (brush->gpencil_tool == GPAINT_TOOL_DRAW));

The problem when you use the erase, the tool change to GPAINT_TOOL_ERASE and the variable above will be false.

To solve the issue, we need set the gpencil_tool to GPAINT_TOOL_DRAW for all primitives. This is the reason when you select again Draw tools, the handles back again.

@ideasman42 How we can set this value and change the brush when select the Primitive Tools (Line, Arc, Box, Curve)? The logic would be set the same Brush used in Draw mode.

I have found the reason. When you draw a primitive, by default the current brush->gpencil_tool is DRAW, so the following variable is true: `const bool is_paint_tool = (bool)((brush) && (brush->gpencil_tool == GPAINT_TOOL_DRAW));` The problem when you use the erase, the tool change to `GPAINT_TOOL_ERASE` and the variable above will be false. To solve the issue, we need set the gpencil_tool to `GPAINT_TOOL_DRAW` for all primitives. This is the reason when you select again Draw tools, the handles back again. @ideasman42 How we can set this value and change the brush when select the Primitive Tools (Line, Arc, Box, Curve)? The logic would be set the same Brush used in Draw mode.
Author

I hope you find a solution

Thank you very, very much

I hope you find a solution Thank you very, very much

@Mobin.artworks Thanks to you for catching the bug and be able to reproduce it.

@Mobin.artworks Thanks to you for catching the bug and be able to reproduce it.
Author

you're welcome. You're great because you make Blender users not alone with their problems and it makes a great sense❤?

you're welcome. You're great because you make Blender users not alone with their problems and it makes a great sense❤?

I have seen this bug has other potential bug "inside". As the primitive is using the current brush, if the material is pinned, the primitive will use the current material and not the pinned material because the active brush is not the same used in Draw Tool.

I have seen this bug has other potential bug "inside". As the primitive is using the current brush, if the material is pinned, the primitive will use the current material and not the pinned material because the active brush is not the same used in Draw Tool.
Member

Same bug appears when switching from 'Fill Tool' to "Primitives".

Same bug appears when switching from 'Fill Tool' to "Primitives".

Proposed fix: D5403

Proposed fix: [D5403](https://archive.blender.org/developer/D5403)

This issue was referenced by 455a1e210b

This issue was referenced by 455a1e210bccccf6fdf7fff5981a2495360e1d58

Changed status from 'Open' to: 'Resolved'

Changed status from 'Open' to: 'Resolved'
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
4 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#68021
No description provided.