Jump to content
  • 0

2D Fill in open Elements


zoomer

Question

17 answers to this question

Recommended Posts

  • 3

I vote against anything that removes capabilities from user control. While you might never want to have a filled open 2D object, I have seem any instances where this has been useful in some workflows.

One example is using a 2D polygon to represent a floor in a room that you don't care about the walls and just need to show the doors. By turning off those segments of the poly that represent the doors you can have a single poly that has a fill and gives the desired representation. 

Taking this away would make this workflow much worse. 

If you want, I can give you a script that will set the fill of all open polys to None.

 

  • Like 1
Link to comment
  • -1

Pat, please don't get me wrong,

I think in VW there are sometimes things that I think are completely wrong in itself and contradictory.
Like these fills in open 2D elements, move by points tools with multiple move copies in non-copy mode, ...
and such things that I have never seen happening anywhere else before.

And users are quite creative. It doesn't need long and some find these bugs and start to inverse these
into features and get used to work with these over years.
And each time I make a proposal to fix one of these inconstancies, other users jump out of their boxes and
present loads of workflows where these bug features are mandatory. Half of them would immediately quit
their select service contracts if that would ever change.
That is no accusation at all. They are right !
On the other hand that makes me a little afraid if this way software can get better at all that way and if this
may be part of the reason why a software is as it is although many years of development.
I therefore think it is totally dangerous to release any new Function or Tools that are not ready or not
right. Users will include those imperfections into their workflows and will never give them back.
 

I don't know if I got your Example right but an open 2D Element can give you only one door opening, right ?

I think, if you would have grown up in Vectorworks, without ever having that strange Feature of open Fills,
you would have found another way and would never miss any open Fills.
Like e.g. using one complex 2D Element using Fill but without Stroke Color for all touching Floors that use
the same Material and draw Walls by Lines over it and such. Or I always thought the VW to hide unwanted
Lines in 2D is to add a filled Rectangle on top and such things.

I had to completely understand what you are trying to achieve, to be able to find a solution that is as least as
good as yours with open Fills, if there ever is any.

Link to comment
  • 1
31 minutes ago, zoomer said:

I don't know if I got your Example right but an open 2D Element can give you only one door opening, right ?

No. Using the Hide Edge mode of the Reshape tool allows you to hide or show multiple edges of a polygon. As soon as you make one edge invisible the object is no longer a closed polygon.

As you say, if we had all grown up without the ability we would have found other ways to do things. And IF there were a valid technical reason that the ability needed to be removed I would go along with it.

But for a single person (or 10, 100, 1000, 10,000) out of the 500,000+ users to say that an ability should be taken away because it is not the way they want it to work, I will always vote that change down.

I probably see more different uses of VW than most people as we have nearly every speciality coming to the VW users group.  People are inventive with how they use the software. As I have said elsewhere, more flexibility is always better until it is so flexible that it is not better.

Link to comment
  • 0
13 minutes ago, Pat Stanford said:

No. Using the Hide Edge mode of the Reshape tool allows you to hide or show multiple edges of a polygon. As soon as you make one edge invisible the object is no longer a closed polygon.

What ?

I have to look into that :)

 

13 minutes ago, Pat Stanford said:

And IF there were a valid technical reason that the ability needed to be removed I would go along with it.

It is no technical reason, more an aesthetic or moral approach.
Leaving the flexibility beside for a moment, do you think those things make much sense :
(Yes, I'm sure someone does ...)

But that is what I have to look at all the time.

Screenshot-25.jpg

Screenshot-26.jpg

 

Edited by zoomer
Link to comment
  • 0
18 minutes ago, Pat Stanford said:

No. Using the Hide Edge mode of the Reshape tool allows you to hide or show multiple edges of a polygon. As soon as you make one edge invisible the object is no longer a closed polygon.

Pat, I looked into it.
Now I'm quite speechless about even the existence of this functionality too.

And now I'm even more convinced that, with the less complex, logic and therefore more restricted tools I propagate,
the same result would be achievable even easier at the end.
Maybe just a few clicks more but much less need of concentration.

Link to comment
  • 0

Ouch,
I see the Fill of my reputation Tank is leaking. Maybe it was 2D and not closed.

Looks like I have to learn to live with Fillings when I draw Paths in the future.

 

But thanks Pat,
I learned a new Sketch Workflow, a real world example where people use that feature and for the first time
realized there is a "hide edge" feature in the Reshape Tool anyway. 

Edited by zoomer
Link to comment
  • 0

Nearly always better to add than to subtract. 

Copy the following script. Go to Tools:Plug-in:Plug-in Manager.

Create a New Tool. Name it what you like. Select the new Tool. Click the Edit Script button.

Paste the following script into the edit box and hit OK

Quote

Procedure Unfilled_Polygon;
{©2016 Patrick Stanford}
{Licensed under the GNU Lesser General Public License}
{Creates Open Polygons with no fill and closed polygons with the  active fill}

var H1, Waldo: Handle;

Begin
	CallTool(-207);
	Locus(0,0);
	Waldo:=LNewObj;
	H1:=PrevObj(Waldo);
	DelObject(Waldo);
	Message(Waldo,H1);
	
	If Not IsPolyClosed(H1) Then SetFPat(H1,0);
End;

Run(Unfilled_Polygon);

 

Hit OK.

Hit Close.

Edit your workspace and add the new Tool to a palette.

Select the tool. Draw a closed polygon. It should be filled with your default fill. Draw and open polygon. It should have no fill.

 

Link to comment
  • 0

Thanks Pat.

Just one question before I try.
In my primitive workflow I need to have everything controlled by Classes and set everything to "by Class".
To ensure this I regularly select All to set it by Class.
As everything is nearly 3D only, all Classes need to be set to use Fills.

Does this anyhow interfere with the script ?

Link to comment
  • 0
29 minutes ago, zoomer said:

Thanks Pat.

Just one question before I try.
In my primitive workflow I need to have everything controlled by Classes and set everything to "by Class".
To ensure this I regularly select All to set it by Class.
As everything is nearly 3D only, all Classes need to be set to use Fills.

Does this anyhow interfere with the script ?

It shouldn't, but it will change the setting on the polygon Fill from ByClass to None. Class settings won't be effected at all.

Link to comment
  • 0
25 minutes ago, Pat Stanford said:

I have absolutely no idea what the above means. Can you Rephrase it?

Hi Pat,

some posts above I said that I need all Objects set by Class Attributes. All Classes have Fills.
And because of imports or other things that went wrong, i regularly select All Objects
to set them all back to attributes by Class.
I don't know how scripting and plugins work at all, but you made me think your script
may work by setting all open 2D elements from class to object attributes with out Fill.

So I would overwrite that setting every few weeks.
And I don't think the script will convert all 2D Elements again to no Fill by Object.

But that isn't such a big deal, I just tried to explain.

Thanks for your script,
the next time I will get annoyed by open Fills I will install it.

Link to comment
  • 0

Am I missing something here but isn't this simply a matter of having the class set to no fill??

No, you have not missed anything except that Zoomer wants to work in a way that VW does not work.

He want a type of object that NEVER has a fill if it is an open polygon and ALWAYS has a fill if it is closed AND if he does a global reset of all objects to ByClass AND that class has a fill set, then that fill will not be reset to ByClass but will remain NoFill for open objects.

I actually think this might be achievable with a little more work that the 10 minute script I posted yesterday. If I ever have time I might see what I can do.

Link to comment
  • 0

I gave this Feature request a lot of thought. I think the solution could be as follows:

At creation any open polygon should be without fill. This would be the desired result in 99% of cases. After that everything should be as it is today.

 If you need it filled, based on my unscientific guess in 1% of cases, there would be one additional work step. So in 99% of cases you would save one work step.

Edited by Thomas Wagensommerer
Link to comment
  • 0
9 hours ago, Alan Woodwell said:

Am I missing something here but isn't this simply a matter of having the class set to no fill??
Feel free to tell me to get back in my box if I am off track>

Hi Alan,
yes, that is one possibility :)
But we are just arguing because I think Open 2D's should never have a Fill because it is inconsistent and
wrong by definition and should go completely.
And as it is, users start to use also inconsistencies as features over time.
In that case I did not expect and couldn't imagine that someone will really need it.
But The first example I learned was illustrated by Pat who uses Filled Open 2D's for plan sketches.
And it was also extended in VW by the option to hide more edges, which Pat included in his workflow and
now relies on Filled Open 2D Elements and fights for it. And I learned he doesn't like any function of VW taken
away in general.
Likely there are even a lot more people who use Filled Open 2D geometry in there Workflow.
Everything fine so far.

 

8 hours ago, Pat Stanford said:

1. No, you have not missed anything except that Zoomer wants to work in a way that VW does not work.

2. He want a type of object that NEVER has a fill if it is an open polygon
3. and ALWAYS has a fill if it is closed
4. AND if he does a global reset of all objects to ByClass AND that class has a fill set, then that fill will not be reset to ByClass but will remain NoFill for open objects.

1. I think that's polemic,
You could argue that way each time someone wants a bug eliminated or a new feature.
"You are using it wrong"
I just don't like if VW disturbs my work with inconsistencies.

2. Yes, open Elements never filled.
3. No. Closed 2D's CAN have Fills, but don't need to
As I do 2D's "mostly" to create 3D from them, I mostly want Fills. But not necessarily

4. If Open 2D's are never filled, everything is fine and works automatically.


In VW we have a Single Mode Line Tool only,
everything more complex, like drawing a path with more than 2 Vertices needs the Polygon or Polyline Tool.
And this may create a Fill around a Line, if Fill is activated which doesn't make sense and looks horrible.

 

So here my initial stage for a solution :

1. Open 2D's have Fill surpressed by Default, until they get closed.
2. There is a new Checkbox in 2D Elements : "Force Fill" in case not closed.
3. Hide Edge Option in Reshape Tool will work also with closed 2D'S, just hides Edges.

(No need to "unclose" an 2D Element first,
No need to convert rectangle before manually,
which are just limits either)

The "Force Fill" Option could be System wide, File wide or Object based.
Once set, it will remember that choice for the next time 2D Elements will be drawn.

 

This way I had no longer to see Lines surrounded by arbitrary Fills.
Pat could keep all his Features + gets a few new Options.
And VW would get a little more consistent from one side.

Edited by zoomer
Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...