FS#763 - Hatching with just one click

Opened by Christian Aigner (caigner) - Monday, 11 February 2013, 18:34 GMT+2
Task Type Feature Request Main Assigned Andrew (andrew) Ralf Blumhagen (blumi.de) All Low Normal 3.0.0 Undecided Undecided 2 Ralf Blumhagen (blumi.de) (2014-09-24) Christian Aigner (caigner) (2013-05-31) No

Details

My task: To hatch an area.

Right now, if I want to fill an area with a hatch pattern, I have to select all the enclosing objects (lines, arcs) and then I can select the hatch tool. That can be under some circumstances a tedious task.
To illustrate this, I created a simple example (see Attachment 1: Hatching.png).

Step 1: Create a rectangle.
Step 2: Draw four vertical lines.
Step 3: Select the four lines surrounding the first area. –> Problem! The horizontal lines are too long.
Step 4: Divide the long horizontal lines of the rectangle where the vertical lines touch. Now the lines surrounding the three areas can be selected.
Step 5: Hatch the selection. Done.

Just for fun try recreating my second example (see Attachment 2: Hatching2.png)

Therefore I would like to suggest a far more simple approach.

Step 1: Select the Hatch Tool.
Step 2: Click inside the area you would like to be hatched. Done.

Of course that would mean that the hatch style is already pre-defined and can be changed later, if needed.

In this way productivity can be increased by ... [fill in you own estimate] ... times.

Example 2 would need only 13 clicks to hatch all the areas (including the hatch tool button).

Comment by -- (clive) - Monday, 11 February 2013, 21:45 GMT+2

A boundary needs to be defined, so - possibly when first selecting the Hatch tool the 'Hatch' dialog window opens with additional options like:

Select points (internal) to create boundary.

Select entities to create boundary.

Then as you say click inside the enclosed area.

@Andrew what do you think?

Comment by Christian Aigner (caigner) - Monday, 11 February 2013, 23:04 GMT+2

I assume, it should be possible to select one point inside the area, then travel from this point in any direction until you hit a border (=starting point), then follow the border clockwise, travelling from one boundary object to the next, until you end at your starting point. In this way, the program should be able to find the boundary by itself.

Unfortunately my skills, regarding programming this sort of application, are very limited.
Could that be done?